はじめに
この記事では、Asanaに登録されたタスク情報をもとに、週報を自動生成し、LINE WORKSに投稿する仕組みの作り方について紹介します。これにより、毎週手動で行っていた週報の作成・送信作業を自動化し、負担を軽減することが目的です。
Asana、GitHub Actions、LINE WORKS を組み合わせる理由
チームではAsanaでタスク管理を行っており、そのデータを使えば正確な週報を自動で作成できます。定期実行には、無料で使えるGitHub Actionsを活用し、サーバー不要で自動処理が可能です。
完成した週報はLINE WORKSで共有しているため、出力先をLINE WORKSにすればコピー&ペーストも不要になります。このように、Asanaで情報を集め、GitHub Actionsで処理し、LINE WORKSで共有する流れを作ることで、報告業務を効率化しました。
システム全体の概要

- Asana: タスク情報の管理
- GitHub Actions: スケジュール実行+Asana、LINEWOKRS API連携 + 週報生成
- LINEWORKS: 週報の送信先
必要な準備
- Asana APIの設定
- LINEWORKS API の設定
- GitHub Actions の設定
Asana APIの準備
Asanaは、チームの仕事やタスクを整理・共有できるプロジェクト管理ツールです。リストやカンバン方式、ガントチャートなど、見やすい形式で作業の流れを把握できるのが特徴です。
Asana APIの設定
Asana APIを使えば、Asanaのタスクやプロジェクトを外部アプリケーションから操作・連携することができ、業務の自動化や効率化が実現できます。
Asana APIを使用するために、Access Tokenと呼ばれるものを取得します。
Asana Developer Consoleへアクセス
LINEWORKSの準備
トークグループ専用Bot作成
APIトークンの取得
GitHub Actions の実装
GitHub Actionsは、GitHubリポジトリ上でソフトウェア開発のワークフローを自動化、カスタマイズ、実行できるツールです。CI/CD(継続的インテグレーション/継続的デリバリー)を含むさまざまなタスクを自動化するために使用されます。
ワークフローの作成
- GitHubリポジトリの作成
secrets
の設定(APIトークンを環境変数に格納)schedule
を使って毎週特定の曜日・時間に実行- Asana API からタスク情報を取得
- LINEWORKS API にリクエストを送信してメッセージ投稿
コード例の紹介
main.yml
(GitHub Actions の設定)script.js
/script.py
(Asana からデータ取得&LINEWORKS に送信)
実行結果の確認と運用
LINEWORKS に送信された週報(サンプル)

まとめ
システム導入後のメリット(時間短縮、手間削減、ミス防止)
読者へのメッセージ(「ぜひ試してみてください!」)