[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-2272":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":8,"htmlUrl":8,"language":9,"languages":8,"totalLinesOfCode":8,"stars":10,"forks":11,"watchers":12,"openIssues":13,"contributorsCount":13,"subscribersCount":13,"size":13,"stars1d":13,"stars7d":13,"stars30d":14,"stars90d":13,"forks30d":13,"starsTrendScore":13,"compositeScore":15,"rankGlobal":8,"rankLanguage":8,"license":8,"archived":16,"fork":16,"defaultBranch":17,"hasWiki":18,"hasPages":16,"topics":19,"createdAt":8,"pushedAt":8,"updatedAt":20,"readmeContent":21,"aiSummary":22,"trendingCount":13,"starSnapshotCount":13,"syncStatus":11,"lastSyncTime":23,"discoverSource":24},2272,"code_minions","pony-maggie\u002Fcode_minions","pony-maggie",null,"Python",161,2,106,0,35,1.43,false,"main",true,[],"2026-06-12 02:00:39","# code_minions\n\n> An AI-native software delivery workflow engine: from PRD to implementation,\n> verification, and git PR\u002FMR.\n\n📚 **Docs:** [quickstart](docs\u002Fquickstart.md) · [skills](docs\u002Fskills.md) · [workflows](docs\u002Fworkflows.md)\n\n🇨🇳 **中文**：[README_zh.md](README_zh.md)\n\n## What It Is\n\n`code_minions` is an AI-native software delivery workflow engine for turning a\nPRD into shipped code. It connects the full engineering loop: product\nrequirements, task planning, Jira-style work tracking, AI implementation,\ntest-driven verification, code review, delivery reports, and GitHub PR \u002F GitLab\nMR creation.\n\nInstead of treating an AI coding agent as a one-off chat session,\n`code_minions` runs the development process as a resumable, auditable workflow.\nEach run has declared inputs, isolated workspaces, structured state, explicit\ngates, and reproducible artifacts, so long-running autonomous work can be\ninspected, resumed, and landed like normal engineering work.\n\nThe core product model:\n\n- **End-to-end PRD-to-PR automation:** built-in workflows can parse a PRD,\n  derive implementation tasks, create external tickets, generate commits,\n  verify the result, compile a report, and open the final PR\u002FMR.\n- **Model-provider agnostic:** LLM calls go through LiteLLM, so the same\n  workflows can run on most mainstream model providers by changing\n  `devflow.yaml` and exporting the matching API key.\n- **External systems via MCP:** Jira, GitHub, and similar products are connected\n  through `.mcp.json`, letting workflow steps operate across the tools your team\n  already uses.\n- **Composable skills:** each workflow step is a skill. Skills use Claude-style\n  `SKILL.md` frontmatter, optional local tool capability limits, and optional\n  deterministic `entrypoint-script` code.\n- **Project-aware execution:** `AGENTS.md` is injected into LLM-driven skill\n  prompts so implementation follows your repo conventions, stack rules, and\n  delivery contract.\n\n## Architecture\n\n[![code_minions layered architecture](docs\u002Fassets\u002Farchitecture-en.svg)](docs\u002Fassets\u002Farchitecture-en.svg)\n\n## Install\n\n`code-minions` is not published on PyPI yet. Install from source:\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fmalu\u002Fcode-minions.git\ncd code-minions\npip install -e .\n```\n\nRequires Python 3.11+.\n\nIf you are contributing to `code_minions` itself and need local test\u002Flint\ntools, install the development extras:\n\n```bash\npip install -e '.[dev]'\n```\n\n## Two-Minute Smoke Test\n\n```bash\ncd your-project\ncode-minions init .\ncode-minions run hello-world --input name=world\ncode-minions list-runs\ncode-minions status \u003Crun-id>\n```\n\n`hello-world` needs no LLM key, no MCP server, and no git repo. It verifies\nproject initialization, run storage, scratch workspace creation, and\ndeterministic skill execution. Code-changing PRD workflows still require a\nlocal git repo with at least one commit.\n\nFor PRD workflows, include a `Delivery Contract` \u002F `delivery_profile` in the\nPRD so the run knows the required product shape, language, build system, test\ncommand, required files, and forbidden product languages. See\n[PRD template](docs\u002Fprd-template.md) for Swift macOS, Go service, Python CLI,\nand React examples.\n\n## Model Providers\n\n`code_minions` is designed to be model-provider agnostic. It uses LiteLLM under\nthe hood, so OpenAI, Anthropic, Gemini, DeepSeek, MiniMax, Ollama, and other\nLiteLLM-compatible providers share the same workflow engine. In the common\ncloud-provider case, setup is just:\n\n1. Add provider\u002Fmodel entries to `devflow.yaml`.\n2. Export the referenced API key environment variables.\n3. Set `llm.default` to the fallback provider, and optionally set\n   `llm.roles` for role-specific providers.\n\nExample:\n\n```yaml\nllm:\n  default: minimax\n  roles:\n    implementer: minimax\n    reviewer: anthropic\n  providers:\n    openai:\n      model: gpt-5.5\n      api_key_env: OPENAI_API_KEY\n    anthropic:\n      model: claude-sonnet-4-6\n      api_key_env: ANTHROPIC_API_KEY\n    gemini:\n      model: gemini-3.1-pro-preview\n      api_key_env: GEMINI_API_KEY\n    minimax:\n      model: MiniMax-M2.7\n      api_key_env: MINIMAX_API_KEY\n      api_base: https:\u002F\u002Fapi.minimaxi.com\u002Fv1\n```\n\n`llm.roles` is optional. When present, a skill whose `SKILL.md` declares a\nmatching `role` uses that provider instead of `llm.default`. The built-in\nimplementation loop declares `role: implementer`, and `ai-code-review` declares\n`role: reviewer`, so implementation and AI review calls can run on different\nmodels\u002Fproviders. Each role provider must also be listed under `llm.providers`\nand have its API key available. Deterministic product\u002Fbrowser acceptance skills\ndo not use an LLM provider.\n\nFor provider details, Jira\u002FGitHub MCP examples, and full PRD-to-PR\nprerequisites, follow the [quickstart](docs\u002Fquickstart.md).\n\n### Runtime Observability\n\nEach run writes structured runtime events to `.devflow\u002Fruns.db` in the\n`run_events` table. Long LLM\u002Ftool\u002Ftest operations now record started,\nfinished, and failed events with provider\u002Fmodel, role, timeout, attempt,\nduration, compact output sizes, and failure classification. Large prompts and\nraw tool outputs are not stored in the event payload; events keep sizes,\nmetadata, classifications, and artifact paths.\n\nUseful environment knobs:\n\n- `CODE_MINIONS_LLM_TIMEOUT_SECONDS` controls the provider request timeout.\n- `CODE_MINIONS_CONTEXT_BUDGET_CHARS` controls when long agent conversations\n  are compacted before the next model call.\n\n## Built-In Workflows\n\n| Workflow | Use It When | Minimal Command |\n|---|---|---|\n| `hello-world` | You want to verify installation and runtime basics without AI or external services. | `code-minions run hello-world --input name=world` |\n| `summarize-file` | You want a small AI smoke test: deterministic file read, then one LLM call for a summary. | `code-minions run summarize-file --input file=.\u002FREADME.md` |\n| `react-vite-prd-to-commit` | You want the same local commit flow, but with React + TypeScript + Vite rules pinned up front. | `code-minions run react-vite-prd-to-commit --input prd=.\u002Fmy-prd.md` |\n| `swift-xcodegen-prd-to-commit` | You want the same local commit flow, but with Swift + SwiftUI + XcodeGen rules pinned up front. | `code-minions run swift-xcodegen-prd-to-commit --input prd=.\u002Fmy-prd.md` |\n| `go-service-prd-to-commit` | You want the same local commit flow, but with Go service rules pinned up front. | `code-minions run go-service-prd-to-commit --input prd=.\u002Fmy-prd.md` |\n| `python-cli-prd-to-commit` | You want the same local commit flow, but with Python CLI rules pinned up front. | `code-minions run python-cli-prd-to-commit --input prd=.\u002Fmy-prd.md` |\n| `python-web-prd-to-commit` | You want the local commit flow for Python FastAPI services, with a dedicated planner that keeps small APIs in one canonical app task. | `code-minions run python-web-prd-to-commit --input prd=.\u002Fmy-prd.md` |\n| `react-vite-prd-to-pr` | You want the full PR path with React + TypeScript + Vite rules pinned up front. | `code-minions run react-vite-prd-to-pr --input prd=.\u002Fmy-prd.md --input project_key=ABC --input epic_title=\"Feature\"` |\n| `python-cli-prd-to-pr` | You want the full PR path with Python CLI rules pinned up front. | `code-minions run python-cli-prd-to-pr --input prd=.\u002Fmy-prd.md --input project_key=ABC --input epic_title=\"Feature\"` |\n| `python-web-prd-to-pr` | You want the full PR path for Python FastAPI services with canonical app\u002Fpackage gates. | `code-minions run python-web-prd-to-pr --input prd=.\u002Fmy-prd.md --input project_key=ABC --input epic_title=\"Feature\"` |\n\nFor PRD runs, prefer the workflow that names your stack. Stack-specific\nworkflows pin delivery rules before parsing and planning, so they are more\npredictable and do not rely on runtime stack inference. `python-web-prd-to-commit`\nis more than a thin alias: it uses a FastAPI-specific planner that keeps small\nservices in one canonical `src\u002F\u003Cpackage>\u002Fapp.py` implementation task.\n\nFor PRD-to-PR runs, prefer a stack-specific workflow when one matches the\nproject. These use the same Jira\u002FGitHub delivery path while pinning the stack\nbefore parsing and planning:\n\n```bash\ncode-minions run python-cli-prd-to-pr \\\n  --input prd=.\u002Fmy-prd.md \\\n  --input project_key=ABC \\\n  --input epic_title=\"Text count CLI\"\n\ncode-minions run react-vite-prd-to-pr \\\n  --input prd=.\u002Fmy-prd.md \\\n  --input project_key=ABC \\\n  --input epic_title=\"Kanban web app\"\n\ncode-minions run python-web-prd-to-pr \\\n  --input prd=.\u002Fmy-prd.md \\\n  --input project_key=ABC \\\n  --input epic_title=\"Inventory API\"\n```\n\nAfter a run:\n\n```bash\ncode-minions status \u003Crun-id>\nls .devflow\u002Fruns\u002F\u003Crun-id>\u002F\ncode-minions resume \u003Crun-id>\n```\n\nPRD-to-PR workflows only open the final pull request when product acceptance\npasses. If acceptance fails, the PR step is skipped and the run is marked\n`completed_with_issues`; inspect the run worktree and `report.md` before\nresuming or making manual fixes.\n\nPRD workflows that deliver a Web UI run browser acceptance before product\nacceptance. Supported stacks produce `.devflow\u002Fbrowser-evidence\u002F` artifacts\nsuch as desktop\u002Fmobile screenshots, console diagnostics, layout metrics, and\nscenario results. Generated unit tests and browser\u002Fproduct acceptance remain\nseparate quality signals in the final report.\n\nFor code-changing runs, the engine creates a new branch named\n`code-minions\u002F\u003Crun-id>` from the project repository's current `HEAD`, not\nnecessarily from the remote default branch. Implementation commits live on that\nbranch inside `.devflow\u002Fruns\u002F\u003Crun-id>\u002Fworktree`. `*-prd-to-commit` workflows do\nnot merge the branch back into your checked-out project automatically. After\nreviewing the worktree and `report.md`, merge the branch back into your project\nbranch:\n\n```bash\ngit switch main\ngit merge --no-ff code-minions\u002F\u003Crun-id>\ngit worktree remove .devflow\u002Fruns\u002F\u003Crun-id>\u002Fworktree\ngit branch -d code-minions\u002F\u003Crun-id>\n```\n\n`*-prd-to-pr` workflows use the same run branch and worktree, then push that\nbranch to `origin` and open a PR when product acceptance passes; they do not\nmerge the PR.\n\nSee [quickstart](docs\u002Fquickstart.md#land-worktree-results) for review,\nconflict, and cleanup notes.\n\n`code-minions run` prints live step progress while it is attached. For long\nworkflows, open another terminal and use `status` or `list-runs` to inspect the\nsame run.\n\nSee [workflows](docs\u002Fworkflows.md) for workflow YAML details and [skills](docs\u002Fskills.md)\nfor custom skill authoring.\n\n## Web Dashboard\n\n```bash\ncode-minions web\n```\n\nOpen `http:\u002F\u002F127.0.0.1:8080\u002F` to view runs, inspect step status, start workflows\nfrom a form, and receive live SSE updates for Web-started runs.\n\nCurrent limits:\n\n- localhost-only by default; remote binds require\n  `code-minions web --host 0.0.0.0 --enable-remote --auth-token \u003Ctoken>`\n- CLI-started runs appear in the Web UI but do not stream live across processes\n- Web `Cancel` is advisory and Web `Resume` is currently synchronous\n\n## How It Works\n\n1. `code-minions run [workflow]` loads workflow YAML from the configured `workflow.search_paths` or built-ins.\n2. If `[workflow]` is omitted, `devflow.yaml -> workflow.default` is used; an explicit CLI workflow always overrides it.\n3. The engine creates the workflow's workspace: a scratch directory, the project root in read-only mode, or `.devflow\u002Fruns\u002F\u003Crun-id>\u002Fworktree` on a branch like `code-minions\u002F\u003Crun-id>`.\n4. DAGRunner executes each step in dependency order.\n5. Deterministic skills run their declared `entrypoint-script`; LLM skills read `SKILL.md` + `AGENTS.md` and call allowed tools within any declared `tool-capabilities`.\n6. Run state is stored in `.devflow\u002Fruns.db`, enabling status inspection and resume. Successful runs also append deterministic local facts to `.devflow\u002Fmemory.md`, which future LLM prompts can read alongside `AGENTS.md`.\n\n## Built-In Skills\n\n`hello-world`, `summarize-file`, `parse-prd`, `plan-tasks`,\n`create-jira-tickets`, `implement-with-tdd`, `ai-code-review`,\n`compile-report`, and `open-github-pr`.\n\nInspect them locally:\n\n```bash\ncode-minions skill list\ncode-minions skill info parse-prd\ncode-minions skill test\n```\n\n## License\n\nMIT.\n","code_minions 是一个基于AI的软件交付工作流引擎，能够从产品需求文档（PRD）到代码实现、验证以及Git PR\u002FMR的全流程自动化。其核心功能包括端到端的PRD到PR自动化处理、支持多种主流模型提供商的模型无关性、通过MCP连接外部系统如Jira和GitHub、可组合的技能模块化设计以及项目感知执行等。这些特点使得code_minions特别适合需要高效管理和自动化软件开发流程的团队使用，尤其适用于希望将AI集成进日常工程实践以提高生产力的场景。","2026-06-11 02:49:11","CREATED_QUERY"]