{"id":51618333,"url":"https://github.com/shumatsumonobu/github-agentic-workflows-demo","last_synced_at":"2026-07-12T16:31:04.359Z","repository":{"id":367621550,"uuid":"1281286617","full_name":"shumatsumonobu/github-agentic-workflows-demo","owner":"shumatsumonobu","description":"Stop writing YAML. Start telling AI what to do.","archived":false,"fork":false,"pushed_at":"2026-06-26T19:49:04.000Z","size":54,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-26T20:19:12.840Z","etag":null,"topics":["agentic-workflows","ai","automation","gemini","github-actions"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shumatsumonobu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-26T12:00:44.000Z","updated_at":"2026-06-26T19:49:09.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/shumatsumonobu/github-agentic-workflows-demo","commit_stats":null,"previous_names":["shumatsumonobu/github-agentic-workflows-demo"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/shumatsumonobu/github-agentic-workflows-demo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shumatsumonobu%2Fgithub-agentic-workflows-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shumatsumonobu%2Fgithub-agentic-workflows-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shumatsumonobu%2Fgithub-agentic-workflows-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shumatsumonobu%2Fgithub-agentic-workflows-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shumatsumonobu","download_url":"https://codeload.github.com/shumatsumonobu/github-agentic-workflows-demo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shumatsumonobu%2Fgithub-agentic-workflows-demo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35396896,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-12T02:00:06.386Z","response_time":87,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agentic-workflows","ai","automation","gemini","github-actions"],"created_at":"2026-07-12T16:31:01.265Z","updated_at":"2026-07-12T16:31:04.335Z","avatar_url":"https://github.com/shumatsumonobu.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GitHub Agentic Workflows Demo\n\n[GitHub Agentic Workflows](https://github.blog/changelog/2026-06-11-github-agentic-workflows-is-now-in-public-preview/) を試すためのデモリポジトリ\n\n- **GitHub Actions** — リポジトリの自動化を YAML で定義する仕組み\n  1. コードがプッシュされたらテストを走らせる\n  2. PR が来たらビルドする\n  3. issue が立ったら担当者をアサインする\n- **課題** — YAML の記法を覚える必要があり、ロジックも自分で書く\n- **Agentic Workflows** — やりたいことを日本語で書くだけで AI が実行してくれる\n  - YAML もロジックも書かなくていい\n  - 例: 「issue が来たらラベルをつけて」と書くだけ\n\n## このデモで試せること\n\n以下の2つの Agentic Workflow（Markdown ファイル）が `.github/workflows/` に入っている\n\n| ファイル | 何が起きるか |\n|---------|------------|\n| **issue-triage.md** | issue が作られたらラベルを自動付与（bug / feature / question / documentation） |\n| **ci-doctor.md** | CI が失敗したらログを読んで原因をコメント |\n\n## コスト\n\n- **GitHub Actions**: パブリックリポなので無料\n- **AI 推論（Gemini）**: Google AI Studio の無料枠で動く\n\n## セットアップ\n\nこのリポを fork した場合、ワークフローファイルは既に入っている。シークレット設定（手順 #3）だけで動く。\n\n自分のリポに導入する場合は #0 から順に進めてください。\n\n### 前提\n\n- [GitHub CLI](https://cli.github.com/) がインストール済み\n- [Google AI Studio](https://aistudio.google.com/apikey) で Gemini API キーを発行済み\n\n### 手順\n\n```bash\n# 0. GitHub CLI の認証（workflow スコープが必須）\n#    未設定だと gh aw が「not authenticated」になる\ngh auth login --scopes repo,workflow\n\n# 1. gh-aw 拡張をインストール\ngh extension install github/gh-aw\n\n# 2. Agentic Workflows の設定ファイルを追加（git init とは別物）\ngh aw init\n\n# 3. Gemini API キーをリポのシークレットに登録\ngh secret set GEMINI_API_KEY\n\n# 4. ワークフローを追加\n#    → .github/workflows/ に Markdown ファイルが生成される\n#    ⚠️ Windows（Git Bash）ではウィザードが動かない場合がある\n#    　 その場合は .md を手動で作成（詳細は下の「ワークフローの追加方法」）\ngh aw add-wizard githubnext/agentics/issue-triage\ngh aw add-wizard githubnext/agentics/ci-doctor\n\n# 5. .github/workflows/*.md を読んで .lock.yml（YAML）を自動生成\n#    --approve: シークレット（GEMINI_API_KEY）の使用を承認\ngh aw compile --approve\n\n# 6. コミット \u0026 プッシュ\ngit add .github/workflows/\ngit commit -m \"Add agentic workflows\"\ngit push\n```\n\n### ワークフローの追加方法\n\n手順 #4 には2つの方法がある\n\n| 方法 | やり方 | 備考 |\n|------|--------|------|\n| **ウィザード** | `gh aw add-wizard githubnext/agentics/issue-triage` | 対話形式で案内してくれる。Linux / macOS / WSL 向き |\n| **手動** | `.github/workflows/xxx.md` を自分で書く | Windows（Git Bash）ではこちらが確実 |\n\nどちらも最終的に `.github/workflows/` に Markdown + `.lock.yml` ができる。入口が違うだけ。\n\n手動で書く場合のフォーマットはこのリポの `issue-triage.md` / `ci-doctor.md` を参考にしてください。\n\nAPI キーはリポのシークレットに保存する（手順 #3）。Markdown 側は `engine: gemini` と書くだけで、実行時に自動で繋がる。キーがコードに載ることはない。\n\n## 仕組み\n\nセットアップで実行したコマンドの流れはこう。\n\n```\nMarkdown で定義 → gh aw compile → YAML に変換 → GitHub Actions が実行\n```\n\n### AI はどこで使われるのか\n\nAI は「YAML を書いてくれる」わけではない。**ワークフローが動くとき、人間の代わりに判断してくれる**。\n\n| | 従来の Actions | Agentic Workflows |\n|---|---|---|\n| **誰が判断するか** | ルール通りに機械的に処理 | AI が内容を読んで自分で判断 |\n| **例** | 正規表現でログを grep して該当行を貼る | ログ全体を読んで原因と修正案をコメント |\n\n### 書き方の比較\n\n従来の YAML\n\n```yaml\non:\n  issues:\n    types: [opened]\njobs:\n  triage:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/github-script@v7\n        with:\n          script: |\n            const { title, body } = context.payload.issue;\n            const text = `${title} ${body}`.toLowerCase();\n            const labels = [];\n            if (text.includes('bug') || text.includes('error')) labels.push('bug');\n            if (text.includes('feature')) labels.push('feature');\n            if (!labels.length) labels.push('question');\n            await github.rest.issues.addLabels({ ...context.repo, issue_number: context.issue.number, labels });\n```\n\nAgentic Workflows の Markdown\n\n```markdown\n---\non:\n  issues:\n    types: [opened]\nengine:\n  id: gemini\n---\n\n新しい issue の内容を読んで、適切なラベルをつけてください\n- bug: バグ報告\n- feature: 機能リクエスト\n- question: 質問\n- documentation: ドキュメント関連\n```\n\n## リポの中身\n\n```\n├── package.json\n├── src/\n│   ├── utils.js              ← add / subtract / multiply / divide の4関数\n│   └── utils.test.js         ← vitest で6テスト\n└── .github/workflows/\n    ├── aw.json               ← gh aw init で生成された設定\n    ├── ci.yml                ← push / PR 時にテスト実行\n    ├── issue-triage.md       ← issue 自動ラベル付け（Agentic Workflow）\n    ├── issue-triage.lock.yml ← ↑ から自動生成された YAML\n    ├── ci-doctor.md          ← CI 失敗分析（Agentic Workflow）\n    └── ci-doctor.lock.yml    ← ↑ から自動生成された YAML\n```\n\nシンプルな Node.js プロジェクト + CI だけの最小構成\n\nissue トリアージは issue を立てるだけで試せる。CI 失敗分析は `utils.js` を壊してプッシュするだけ。\n\n```bash\nnpm install\nnpm test\n```\n\n## Author\n\n**週末ものづくり部** — [@shumatsumonobu](https://x.com/shumatsumonobu)\n\n## License\n\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshumatsumonobu%2Fgithub-agentic-workflows-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshumatsumonobu%2Fgithub-agentic-workflows-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshumatsumonobu%2Fgithub-agentic-workflows-demo/lists"}