{"id":34821483,"url":"https://github.com/silver2dream/ai-workflow-kit","last_synced_at":"2026-02-25T05:30:13.572Z","repository":{"id":329687978,"uuid":"1118906994","full_name":"silver2dream/ai-workflow-kit","owner":"silver2dream","description":"AI-assisted development workflow kit for Spec → Implement → PR → Merge automation","archived":false,"fork":false,"pushed_at":"2026-02-05T11:24:41.000Z","size":1452,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-05T21:58:08.160Z","etag":null,"topics":["ai-workflow-automation","claude-code","codex-cli","developer-tools","github-actions","spec-driven"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/silver2dream.png","metadata":{"files":{"readme":"README-zh-TW.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2025-12-18T13:02:51.000Z","updated_at":"2026-02-05T11:16:35.000Z","dependencies_parsed_at":"2026-01-19T13:02:21.103Z","dependency_job_id":null,"html_url":"https://github.com/silver2dream/ai-workflow-kit","commit_stats":null,"previous_names":["silver2dream/ai-workflow-kit"],"tags_count":69,"template":false,"template_full_name":null,"purl":"pkg:github/silver2dream/ai-workflow-kit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silver2dream%2Fai-workflow-kit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silver2dream%2Fai-workflow-kit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silver2dream%2Fai-workflow-kit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silver2dream%2Fai-workflow-kit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/silver2dream","download_url":"https://codeload.github.com/silver2dream/ai-workflow-kit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/silver2dream%2Fai-workflow-kit/sbom","scorecard":{"id":1240705,"data":{"date":"2025-12-24T06:45:38Z","repo":{"name":"github.com/silver2dream/ai-workflow-kit","commit":"75171aaa16b564f43d2d2aee43b7513937659d69"},"scorecard":{"version":"v5.3.0","commit":"c22063e786c11f9dd714d777a687ff7c4599b600"},"score":5,"checks":[{"name":"Code-Review","score":0,"reason":"Found 0/10 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#code-review"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#dependency-update-tool"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#binary-artifacts"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#security-policy"}},{"name":"Maintained","score":0,"reason":"project was created within the last 90 days. Please review its contents carefully","details":["Warn: Repository was created within the last 90 days."],"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql.yml:19","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:20","Info: topLevel 'contents' permission set to 'read': .github/workflows/ci.yml:10","Info: topLevel 'contents' permission set to 'read': .github/workflows/codeql.yml:12","Warn: topLevel 'contents' permission set to 'write': .github/workflows/release.yml:10","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:10","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#token-permissions"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:47: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:64: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:76: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/ci.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:78: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:89: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:91: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:98: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/scorecard.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/scorecard.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/scorecard.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/scorecard.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/scorecard.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/scorecard.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/scorecard.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/silver2dream/ai-workflow-kit/scorecard.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .ai/scripts/generate.sh:74","Warn: pipCommand not pinned by hash: .github/workflows/ci.yml:31","Warn: pipCommand not pinned by hash: .github/workflows/ci.yml:32","Info:   0 out of  20 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 third-party GitHubAction dependencies pinned","Info:   0 out of   3 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#cii-best-practices"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v0.1.0 not signed: https://api.github.com/repos/silver2dream/ai-workflow-kit/releases/272485712","Warn: release artifact v0.0.16 not signed: https://api.github.com/repos/silver2dream/ai-workflow-kit/releases/272352634","Warn: release artifact v0.0.15 not signed: https://api.github.com/repos/silver2dream/ai-workflow-kit/releases/272097006","Warn: release artifact v0.0.14 not signed: https://api.github.com/repos/silver2dream/ai-workflow-kit/releases/272033698","Warn: release artifact v0.0.13 not signed: https://api.github.com/repos/silver2dream/ai-workflow-kit/releases/272028462","Warn: release artifact v0.1.0 does not have provenance: https://api.github.com/repos/silver2dream/ai-workflow-kit/releases/272485712","Warn: release artifact v0.0.16 does not have provenance: https://api.github.com/repos/silver2dream/ai-workflow-kit/releases/272352634","Warn: release artifact v0.0.15 does not have provenance: https://api.github.com/repos/silver2dream/ai-workflow-kit/releases/272097006","Warn: release artifact v0.0.14 does not have provenance: https://api.github.com/repos/silver2dream/ai-workflow-kit/releases/272033698","Warn: release artifact v0.0.13 does not have provenance: https://api.github.com/repos/silver2dream/ai-workflow-kit/releases/272028462"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#signed-releases"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 21 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#sast"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#fuzzing"}},{"name":"Branch-Protection","score":4,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Info: 'branch protection settings apply to administrators' is required to merge on branch 'main'","Warn: 'stale review dismissal' is disabled on branch 'main'","Warn: branch 'main' does not require approvers","Warn: codeowners review is not required on branch 'main'","Warn: 'last push approval' is disabled on branch 'main'","Info: 'up-to-date branches' is required to merge on branch 'main'","Info: status check found to merge onto on branch 'main'","Info: PRs are required in order to make changes on branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#branch-protection"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#license"}},{"name":"Contributors","score":0,"reason":"project has 0 contributing companies or organizations -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#contributors"}},{"name":"CI-Tests","score":10,"reason":"15 out of 15 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/c22063e786c11f9dd714d777a687ff7c4599b600/docs/checks.md#ci-tests"}}]},"last_synced_at":"2025-12-24T12:07:38.663Z","repository_id":329687978,"created_at":"2025-12-24T12:07:38.663Z","updated_at":"2025-12-24T12:07:38.663Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29152145,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T02:39:25.012Z","status":"ssl_error","status_checked_at":"2026-02-06T02:37:22.784Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["ai-workflow-automation","claude-code","codex-cli","developer-tools","github-actions","spec-driven"],"created_at":"2025-12-25T14:43:28.079Z","updated_at":"2026-02-25T05:30:13.561Z","avatar_url":"https://github.com/silver2dream.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AWK - AI Workflow Kit\n\n[![CI](https://img.shields.io/badge/GitHub%20Actions-CI-2088FF?logo=githubactions\u0026logoColor=white)](.github/workflows/ci.yml)\n[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/silver2dream/ai-workflow-kit/badge)](https://securityscorecards.dev/viewer/?uri=github.com/silver2dream/ai-workflow-kit)\n[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](LICENSE)\n[![Go](https://img.shields.io/badge/Go-1.25%2B-00ADD8?logo=go\u0026logoColor=white)](https://go.dev/)\n[![Bash](https://img.shields.io/badge/Bash-required-4EAA25?logo=gnubash\u0026logoColor=white)]()\n[![GitHub CLI](https://img.shields.io/badge/gh-required-181717?logo=github\u0026logoColor=white)](https://cli.github.com/)\n\n\u003e 「睡前啟動，早上收割」的 AI 開發工作流 Kit：以 **Spec → 實作 → PR → 合併** 為主線，搭配 **Claude Code (Principal)** + **Codex (Worker)** 完成閉環；Spec 格式與 **Kiro** 相容。\n\n[![下載](https://img.shields.io/badge/下載-最新版本-brightgreen?style=for-the-badge\u0026logo=github)](https://github.com/silver2dream/ai-workflow-kit/releases/latest)\n\n[English](README.md) | [繁體中文](README-zh-TW.md)\n\n---\n\n## 📋 目錄\n\n- [特色](#-特色)\n- [架構概覽](#-架構概覽)\n- [技術棧](#-技術棧)\n- [專案結構](#-專案結構)\n- [快速開始](#-快速開始)\n- [設定](#-設定)\n- [Directory Monorepo 範例](#-directory-monorepo-範例)\n- [CI](#-ci)\n- [評估](#-評估)\n- [文件](#-文件)\n- [貢獻](#-貢獻)\n- [授權](#-授權)\n\n---\n\n## ✨ 特色\n\n### 核心工作流\n- **Spec 驅動**：讀取 `.ai/specs/\u003cname\u003e/tasks.md`（Kiro 相容）決定下一步\n- **GitHub 作為狀態機**：Issues/PR + labels 追蹤進度\n- **派工 + 審查閉環**：派工給 Worker 產 PR，再由 Principal 審查、合併或退回產生修正 issue\n\n### Kit 品質\n- **Offline Gate**：離線可驗證（不需網路）\n- **Strict mode**：`--strict` 強制 audit 無 P0（適用 CI/發布前）\n- **Extensibility checks**：檢查 CI 是否會被 `feat/example` 觸發（避免分支對齊誤判）\n\n---\n\n## 🏗️ 架構概覽\n\n```\n┌─────────────────────────────────────────────────────────────┐\n│                                                              │\n│  You ──► awkit kickoff ──► Claude Code (Principal)            │\n│                              │                               │\n│                              ├─► read specs/tasks.md          │\n│                              ├─► create GitHub Issue          │\n│                              ├─► dispatch to Codex (Worker)   │\n│                              ├─► review PR                    │\n│                              ├─► merge or reject              │\n│                              └─► loop                         │\n│                                                              │\n│  Morning ──► gh pr list ──► harvest                            │\n│                                                              │\n└─────────────────────────────────────────────────────────────┘\n```\n\n完整架構文件：`docs/ai-workflow-architecture.md`\n\n---\n\n## 🛠️ 技術棧\n\n### Offline（必備）\n- `bash`（Windows: Git Bash / WSL）\n- `git`\n- `go` 1.25+\n\n### Offline（可選）\n- `python3` + `pyyaml` + `jsonschema` + `jinja2`（僅供 legacy 腳本使用；生成功能已內建於 `awkit`）\n\n### Online / E2E（選配）\n- `gh`（GitHub CLI）+ `gh auth login`\n- `claude`（Claude Code）\n- `codex`（Worker）\n\n---\n\n## 📁 專案結構\n\n```\n.\n├── .ai/                         # kit (config/templates/rules/specs)\n│   ├── config/workflow.yaml     # main config\n│   ├── templates/               # generators (CLAUDE/AGENTS/CI)\n│   ├── rules/                   # architecture + git workflow rules\n│   ├── docs/evaluate.md         # evaluation standard\n│   └── specs/                   # Kiro-style specs\n├── .github/workflows/ci.yml     # root CI example\n├── backend/                     # directory example (Go)\n└── frontend/                    # directory example (Unity skeleton)\n```\n\n---\n\n## 🚀 快速開始\n\n### 0) 安裝 `awkit`（建議）\n\n`awkit` 是跨平台的 AWK 安裝 CLI（命名為 `awkit` 是為了避免和系統內建的 `awk` 指令衝突）。\n\n```bash\ncurl -fsSL https://github.com/silver2dream/ai-workflow-kit/releases/latest/download/install.sh | bash\n```\n\nWindows（PowerShell）：\n\n```powershell\nirm https://github.com/silver2dream/ai-workflow-kit/releases/latest/download/install.ps1 | iex\n```\n\n把 AWK 安裝到你的專案：\n\n```bash\n# 在當前目錄初始化 AWK\nawkit init\n\n# 使用 preset 並自動建立專案結構\nawkit init --preset go --scaffold\n\n# Monorepo：React + Go\nawkit init --preset react-go --scaffold\n\n# 預覽會建立哪些檔案\nawkit init --preset python --scaffold --dry-run\n```\n\n### 可用的 Presets\n\n| 類別 | Presets |\n|------|---------|\n| Single-Repo | `generic`, `go`, `python`, `rust`, `dotnet`, `node` |\n| Monorepo | `react-go`, `react-python`, `unity-go`, `godot-go`, `unreal-go` |\n\n執行 `awkit list-presets` 查看詳細說明。scaffold 檔案結構請參考 [Getting Started](docs/getting-started.md)。\n\n注意：`awkit install` 是 `awkit init` 的別名（向後相容）。\n\n### 0.1) 更新 `awkit`\n\n確認版本與更新：\n\n```bash\nawkit version\nawkit check-update\n```\n\n更新 CLI：\n\n```bash\ncurl -fsSL https://github.com/silver2dream/ai-workflow-kit/releases/latest/download/install.sh | bash\n```\n\n更新專案內的 kit 檔案（保留你的 workflow.yaml）：\n\n```bash\nawkit upgrade\nawkit generate\n```\n\n其他更新選項：\n\n```bash\n# 只套用不同的 preset 到 workflow.yaml\nawkit init --preset react-go --force-config\n\n# 升級 kit 檔案，並覆蓋 workflow.yaml（需要 --preset）\nawkit upgrade --force-config --preset react-go\n\n# 完整重置：更新 kit 檔案並套用 preset 到 workflow.yaml\nawkit init --preset react-go --force\n```\n\n### 1) 生成輸出\n\n```bash\nawkit generate\n```\n\n### 2)（選配）跑完整工作流\n\n```bash\ngh auth login\n\n# 使用 awkit CLI（建議）\nawkit kickoff --dry-run    # 預覽會執行什麼\nawkit kickoff              # 啟動工作流\nawkit kickoff --resume     # 從上次狀態恢復\nawkit validate             # 只驗證設定\n\n# Legacy bash 腳本已移除；請使用上方的 awkit 命令\n```\n\n停止：\n\n```bash\ntouch .ai/state/STOP\n```\n\n---\n\n## ⚙️ 設定\n\n主設定：`.ai/config/workflow.yaml`\n\n### Repo type\n\nAWK 支援三種專案結構類型，在 `.ai/config/workflow.yaml` 中設定：\n\n| Type | 說明 | 使用情境 |\n|------|------|----------|\n| `root` | 單一 repository | 獨立專案 |\n| `directory` | Monorepo 子目錄 | 共用 .git 的 monorepo |\n| `submodule` | Git submodule | 獨立 .git 的 monorepo |\n\n**各類型行為差異：**\n- **root**：所有操作在 repo 根目錄執行。Path 必須是 `./`。\n- **directory**：操作在 worktree root 執行，變更限定在子目錄。\n- **submodule**：commit/push 先在 submodule 執行，再更新 parent reference。\n\n範例：\n```yaml\nrepos:\n  - name: backend\n    path: backend/\n    type: directory  # 或: root, submodule\n    language: go\n    verify:\n      build: \"go build ./...\"\n      test: \"go test ./...\"\n```\n\n### Specs\n\nSpec 資料夾結構（Kiro 相容）：\n\n```\n.ai/specs/\u003cfeature-name\u003e/\n├── requirements.md   # optional\n├── design.md         # optional\n└── tasks.md          # required\n```\n\n要啟用 spec，將 spec 資料夾名稱加入 `.ai/config/workflow.yaml` 的 `specs.active`。\n\n---\n\n## 📦 Directory Monorepo 範例\n\n這個 repo 內建一個可用的 directory 範例：\n\n- `backend/`：最小 Go module + unit test（`go test ./...`）\n- `frontend/`：Unity skeleton（CI 只做結構與 JSON sanity，不需要 Unity Editor）\n- Spec 範例：`.ai/specs/example/`\n- 入門指南：`docs/getting-started.md`\n\n---\n\n## 🔁 CI\n\nRoot CI workflow：`.github/workflows/ci.yml`\n\n**使用者專案：**\n- `awkit init` 會自動為你的專案建立 CI workflow\n- `awkit upgrade` 會自動遷移舊版 CI 設定（移除過時的 `awk` job）\n\n**此 repo（awkit 本身）：**\n此 repo 內建的是手寫 CI 範例。`awkit generate` 預設不會改動 workflows；需要從模板生成時才使用 `--generate-ci`。\n\n包含：\n- AWK evaluation：`awkit evaluate --offline` 與 `--offline --strict`\n- Kit tests：`go test ./...`\n- Backend：`go test ./...`（在 `backend/`）\n- Frontend：`frontend/Packages/manifest.json` JSON 檢查 + 資料夾存在性\n\n---\n\n## 🧪 評估\n\n- 僅供 kit 維護者 / CI 使用，一般使用者可跳過。\n- 標準：`.ai/docs/evaluate.md`\n- 執行器：`awkit evaluate`\n\n---\n\n## 📚 文件\n\n### 使用者文件\n\n| 文件 | 說明 |\n|------|------|\n| [Getting Started](docs/user/getting-started.md) | 快速入門指南 |\n| [Configuration](docs/user/configuration.md) | workflow.yaml 參考 |\n| [Troubleshooting](docs/user/troubleshooting.md) | 錯誤排解 |\n| [FAQ](docs/user/faq.md) | 常見問題 |\n\n### 開發者文件\n\n| 文件 | 說明 |\n|------|------|\n| [Architecture](docs/developer/architecture.md) | 系統內部架構 |\n| [API Reference](docs/developer/api-reference.md) | Scripts \u0026 modules |\n| [Contributing](docs/developer/contributing.md) | 開發指南 |\n| [Testing](docs/developer/testing.md) | 測試框架 |\n\n### 其他\n\n- [Architecture Overview](docs/ai-workflow-architecture.md) - 高階系統設計\n\n---\n\n## 🤝 貢獻\n\n詳見 [Contributing Guide](docs/developer/contributing.md)：\n- 開發環境設定\n- 程式碼規範\n- PR 工作流\n\n快速參考：\n- 分支策略與 commit 格式：`.ai/rules/_kit/git-workflow.md`\n- PR base 預設 target `feat/example`\n\n---\n\n## 📄 授權\n\n本專案採用 [Apache License 2.0](LICENSE) 授權。\n\n## 🔒 安全性與信任\n\nAWK 遵循開源安全最佳實踐，並由 [OpenSSF Scorecard](https://securityscorecards.dev/) 持續監控。\n\n[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/silver2dream/ai-workflow-kit/badge)](https://securityscorecards.dev/viewer/?uri=github.com/silver2dream/ai-workflow-kit)\n\n### 安全功能\n\n| 功能 | 狀態 | 說明 |\n|------|------|------|\n| **SECURITY.md** | ✅ | 弱點回報政策與 SLA |\n| **Branch Protection** | ✅ | 必要的審查與 CI 檢查 |\n| **CI/CD** | ✅ | 所有 PR 自動化測試 |\n| **Dependency Updates** | ✅ | 已啟用 Dependabot |\n| **Static Analysis** | ✅ | CodeQL 掃描 |\n| **Token Permissions** | ✅ | 最小化 GitHub token 權限 |\n\n完整安全政策與弱點回報方式請參閱 [SECURITY.md](SECURITY.md)。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsilver2dream%2Fai-workflow-kit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsilver2dream%2Fai-workflow-kit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsilver2dream%2Fai-workflow-kit/lists"}