アプリ・Webサービス・業務ツールの制作を、証拠分析→確定的な初稿→要件定義→体験設計→機能分解→実装→品質ゲート→リリース判定の手順ゲート制で進めるスキル。質問で要件を埋めるのではなく、依頼文・既存コード・資料・ログから最有力案を選び、動く成果物を先に出して差分で改善する。ユーザーが「アプリを作りたい」「ツールを作って」「〜を自動化したい」「システム化したい」「要件定義」「仕様を決めたい」「UI/UXを設計して」「体験を良くしたい」「機能を洗い出して」「MVPを決めたい」「品質チェック」「リリースしていいか判断して」などと言ったら必ず使用する。外部データの取込・マスタ・締め処理を伴う業務システムでは references/data-lifecycle.md も併用する。新規・既存を問わずアプリの制作・改善・リニューアルで使用する。
run-governance-adapters
governance出力adapterの利用可能性を確認したいとき、入出力契約と代替経路を安全に特定したいときに使う。
含まれるファイル(1)
- SKILL.md5.7 KB
SKILL.md(原文)
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Pre-choice usable artifact execution
Purpose & Output Contractの最小の実回答をmain contextで作成する。secret・欠測・矛盾のminimal guardだけを実行し、根拠refつきの現物をそのまま提示してからaccept-as-is/light/standard/detailedを記録する。accept-as-isはそのままhandoff完了とし、後続sectionを実行しない。
Post-choice selected improvement execution
以下の既存workflow・goal-seek・評価・修正sectionはlight/standard/detailedが記録されてsemantic_evaluator_startedへ遷移した場合だけ実行する。release/exhaustiveは別の明示eventを必要とする。
run-governance-adapters
Runtime root contract
runtime_root_policy: host-skill-pathを適用する。- Claude Codeでは
CLAUDE_PLUGIN_ROOTをplugin rootとして使用する。 - Codexではホストが提示したこの
SKILL.mdのabsolute pathから、plugin manifestを持つ祖先を上方探索して論理PLUGIN_ROOTを解決する。 cwdからplugin rootを推測せず、literal placeholderをshellへ渡さない。各shell invocation内で解決済みabsolute pathをPLUGIN_ROOTに設定する。prompts/配下はこのowner Skill契約を継承する。
Purpose & Output Contract
scripts/adapters/のadapterを列挙し、選択したadapterのhelpと入出力契約を確認したうえで、副作用を持たない範囲 (--help と --dry-run) だけを実行してSink Contract v1.0のJSON resultとexit codeを報告する。
Key Rules
- plugin rootは
${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}で解決する。 - adapter名を実在一覧から選び、path traversalを許可しない。
- credentialや送信先を推測しない。
- 本skillは外部書込を実行しない (
effect: conversation-outputの実体的根拠)。sink_http.py/sink_notion.py/sink_sheets.py/sink_slack.pyは script header でnetwork: trueを宣言し、keychain由来のcredentialで実際にPOSTするため、本skillからは--dry-run付きでのみ起動する。--dry-run無しの実送信とdispatch.pyの実配送は本skillの責務外であり、external_mutation_guard(preview→confirm→authorize→execute の受領証フロー) を持つ呼び出し元skillへ委譲する。委譲先が無い場合は実行せず未対応理由として停止する。 - 実行許可は「credentialを参照しない呼び出し」であり、
--dry-runはその十分条件にすぎない。--dry-runを持たないresolve_route.pyはnetwork: false/write-scope: noneの純読取なので--registry付きの通常起動も許可する。配送先の代替経路そのものを確認するときはdispatch.py --dry-runを使う。 - credentialは実送信経路でのみ解決される (
scripts/secret_helper.py経由の遅延解決)。--helpと--dry-runはkeychain provider (skill-governance-secretsのsecrets/keychain_helper.py) が未配備でも成立し、実送信時のみ未配備がstatus: failure/ exit 2として現れる。
ゴールシーク実行
対象adapter、入力、期待出力を確定し、python3 "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/scripts/adapters/<adapter>.py" --helpで契約を確認する。未解決入力がなくなった場合だけ--dry-run付きで起動する。
検証
exit codeと、adapterが返すSink Contract v1.0のJSON result (status / adapter / location / external_id / dry_run) を報告する。これはexternal-mutation guardの受領証 (preview/confirmation/authorization/completion) とは別物であり、本skillはguard受領証を発行しない。未対応adapterと実送信要求は理由付きで停止する。
レビュー
まだレビューはありません。使ってみた感想をお寄せください。
同じリポジトリのスキル
概要と使いどころ
Webアプリの準備→要件定義→設計→実装→公開→品質ゲートを実行する内部オーケストレーター。Claude Codeの /build-app /improve-app、Codexの $build-app / $improve-app から明示的に委譲された場合、custom agent起動時、または利用者が $app-orchestrator を明示した場合だけ使用する。一般のアプリ相談から暗黙起動しない。
run-extract-blueprint が生成した章別ブループリントの忠実性を独立 context で評価したいとき、事実/推測区別と粒度と被覆を検証し draft_hash に束縛した PASS/FAIL verdict をローカル品質ゲート (C01 の周回内の受入判定・差し戻し) へ渡したいときに使う。
確認点で利用者が見る深さを選んだあと打ち合わせ資料を作り手とは別の目で確かめたいとき、正確さ・言葉・見た目・シンプルさの指摘を資料の編集なしで受け取りたいときに使う。
生成した handout 資料が初心者に伝わるか読みやすさレビューを依頼したいとき、独立 context のレビュアーから指摘と根拠つきの verdict を回収したいときに使う。
Notion ページを描画する直前に粒度を検証したいとき、info-collector-agent ページと同等の section 充足度を section_canonical_map 基準で機械検証したいときに使う。