factory-runbook について
factory-runbookは、ソフトウェアファクトリーのオーケストレーター向けに公開手順と共通の実行契約を定めるスキルです。実行ブランチ、許可パスのコミット、ドラフトMRまたはPRを扱いますが、承認やマージは行いません。
主な機能
- 01決定的なブランチ・公開手順
- 02許可パスのみのステップ別コミット
- 03ドラフトMRまたはPRの作成
- 04再利用可能な実行・トラッカー契約
- 05実行コンテキストのガード
活用シーン
- 01ファクトリー実行の変更を公開
- 02各ステップで許可パスだけをコミット
- 03ファクトリースキルに共通契約を提供
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ tikalk/ adlc-team-skills --skill factory-runbookインストール後、Claude Code で/factory-runbookを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
mission-template.ymlreferences/executor.mdissues-provider.ymllanes.mdmission-brief-template.mdrun-context.mdtracker-integration.mdscripts/bash/commit-step.shopen-mr.shresolve-mr-ownership.shrun-branch.shscripts/powershell/commit-step.ps1open-mr.ps1resolve-mr-ownership.ps1run-branch.ps1README(原文)English
プロジェクトの README よりこの README の日本語訳はまだありません。以下は英語の原文です。日本語の紹介はページ上部をご覧ください。
factory-runbook
What this skill does
factory-runbook is the shared run mechanics of the software factory. It has
two halves:
- Publish procedure (below) — the deterministic branch → commit → push → draft-MR/PR sequence every factory run ends with. Factory orchestrators invoke this skill for their publish step; it is also directly usable to post a run's changes.
- Run contracts (
references/) — the executor loop, tracker integration, lanes, brief/provider templates, and run-context rules that factory skills borrow by path instead of copying.
It never approves or merges. The engine's gate after the step is the approval.
Direct-invocation guard: publishing needs a run context — ADLC_RUN_ID
(and usually ADLC_ISSUE_REF plus ADLC_STEP_OUTPUT) from a factory run, or
explicit orchestrator-provided args (orchestrator name, step id, output type,
paths). Never invent a branch name, a step, or paths to commit. Without a run
context and without them, state what is missing and stop.
Publish procedure — read this first
Requires: nothing — this skill is self-contained. (Borrowers declare the
reverse: adlc-cli skills add tikalk/adlc-team-skills --skill factory-runbook.)
- Start:
bash {REPO_ROOT}/.agents/skills/factory-runbook/scripts/bash/run-branch.sh [--kind <intent|code>]— on Windows, the PowerShell twin (every helper has one underscripts/powershell/). Checks out the run branch (factory/intent/<repo>-<iid>fromADLC_ISSUE_REFfor intent runs — the default;factory/mission/<repo>-<iid>with--kind codefor mission code runs) in the project root, reusing it or continuing fromorigin. Shared by both intent lanes and with re-dispatches. WithoutADLC_RUN_IDthis is a no-op. - Run the lifecycle steps. After each step that changed files:
bash {REPO_ROOT}/.agents/skills/factory-runbook/scripts/bash/commit-step.sh --orchestrator <name> --step <id> --output-type <draft|decision|artifact-ref|findings> --summary "<one line, no issue text>" --records <IDs> -- <paths the step wrote, moved or deleted>. Stages ONLY allowlisted paths; printssha: <sha>orsha: nonefor the step's bus marker. - Before returning, always:
bash {REPO_ROOT}/.agents/skills/factory-runbook/scripts/bash/open-mr.sh [--kind <intent|code>]— pushes the run branch only, finds or opens one draft MR (merge commit, no squash; Issue milestone applied inline, Issue assignees else the runner's own account, pertracker-integration.mdOperation 11; the deterministic resolver{REPO_ROOT}/.agents/skills/factory-runbook/scripts/bash/resolve-mr-ownership.shitself runs at caller/completion, not insideopen-mr.sh), and theagent-authoredstamp likewise lives at completion (mission Phase 6, orchestrator §7 hygiene — not in this helper). It writesmr_urltoADLC_STEP_OUTPUT. Pass--kind codefor code missions (factory/mission/*branch). Call it whatever the outcome — an empty run opens nothing and the gate shows no link. Also write a one-lineconclusioninto the same JSON object, preserving existing keys. - Never ask for approval or wait for an answer here. A helper's non-zero exit (refused path, missing committer identity, tracker scope) stops the run — report it, do not work around it.
Outside a factory run the helpers do nothing unless the user opted in
(adlc.commit_steps: true in .adlc/init-options.json, or --commit
forwarded to commit-step.sh); run-branch.sh and open-mr.sh never act
without ADLC_RUN_ID.
Only an orchestrator-invoked runbook commits, pushes and opens the MR, and only through these helpers; lifecycle skills never do.
Run contracts (references/)
| File | Borrowed by |
|---|---|
executor.md | every Kind-A orchestrator (step schema, run state, lanes, gates, converge) |
tracker-integration.md | tracker-integrated skills (comment bus, labels, lease, provider ops, MR ownership) |
lanes.md | lane-based dispatch consumers |
mission-brief-template.md | brief/milestone authors (queue, orchestrator) |
issues-provider.yml | provider resolution template (setup writes the repo copy) |
run-context.md | run-mode vs local-session rules |
mission-template.yml | run policy defaults (execution, supervision, budgets) |