アプリ・Webサービス・業務ツールの制作を、証拠分析→確定的な初稿→要件定義→体験設計→機能分解→実装→品質ゲート→リリース判定の手順ゲート制で進めるスキル。質問で要件を埋めるのではなく、依頼文・既存コード・資料・ログから最有力案を選び、動く成果物を先に出して差分で改善する。ユーザーが「アプリを作りたい」「ツールを作って」「〜を自動化したい」「システム化したい」「要件定義」「仕様を決めたい」「UI/UXを設計して」「体験を良くしたい」「機能を洗い出して」「MVPを決めたい」「品質チェック」「リリースしていいか判断して」などと言ったら必ず使用する。外部データの取込・マスタ・締め処理を伴う業務システムでは references/data-lifecycle.md も併用する。新規・既存を問わずアプリの制作・改善・リニューアルで使用する。
run-plugin-package-check
plugin package を出荷前に検査したいとき、PKG-001〜015 gate を一括実行したいときに使う。
インストール方法を見る含まれるファイル(15)
- SKILL.md12.2 KB
- prompts/R1-orchestrate.md10.1 KB
- prompts/R2-gate-decide.md9.2 KB
- references/resource-map.yaml1.3 KB
- schemas/run-report.schema.json1.1 KB
- scripts/aggregate-pkg-findings.py3.8 KB
- scripts/lint-pkg-009.py2.6 KB
- scripts/run-pkg-015.py6.2 KB
- scripts/run-plugin-validate-strict.sh1.8 KB
- scripts/sandbox-plugin-lifecycle.py14.8 KB
- scripts/smoke-plugin-install.sh806 B
- scripts/smoke-plugin-uninstall.sh782 B
- scripts/smoke-plugin-upgrade.sh784 B
- scripts/validate-plugin-permissions.py6.9 KB
- workflow-manifest.json5.9 KB
SKILL.md(原文)
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Pre-choice usable artifact execution
Purpose & Output Contractの最小の実成果物をmain contextで作成する。effect別のparse/open・secret・irreversible・corrupt guardだけを実行し、現物path・digest・開き方を提示してから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-plugin-package-check
Purpose & Output Contract
36章 Plugin Package Harness Contract の PKG-001〜015 gate を plugin 単位で一括実行する orchestrator。25章 §runbook の Step 5(PKG completeness check)として run-build-skill 直後・run-elegant-review 直前に挟まる。
入力:
plugin: "harness-creator" # 必須
phase: 0 # {0, 1, 2, all}。既定 0。⚠️出荷前検査は必ず --phase all を明示。省略時(=0)は PKG-001〜009 のみ走り 010〜015 が黙って未検査=subset PASS が緑に見える false green。0/1/2 は反復途中の部分検査用
pkg: null # 個別 PKG ID 指定(例: "PKG-010,PKG-013a")。null なら phase 全件
dry_run: false # true なら scripts を呼ばず計画のみ表示
output_dir: "eval-log/<plugin>/" # 既定値、27章 §3.1 規約
出力:
eval-log/<plugin>/pkg-<id>/<YYYY-MM-DD>-<run>.json(各 PKG ID の個別ログ、27章 §3.1)eval-log/<plugin>/pkg-summary/<YYYY-MM-DD>-<run>.json(schemas/run-report.schema.json準拠)- stdout に verdict サマリ markdown
- 35章
pkg_check_failedfailure_mode への observable 配線(fail 時のみ)
完了条件:
- Phase 0 = PKG-001〜009 全 pass / not_applicable
- Phase 1 = + PKG-010 pass
- Phase 2 = + PKG-011〜015 pass
- 1 件でも
failなら exit 1、run-skill-createパイプライン側で停止
Key Rules
- PKG ID 定義は ref-pkg-contract 経由: 本 skill で再定義しない
- PKG-002〜008 / PKG-014 は assign-plugin-package-evaluator に委譲: Skill tool 経由で
context: fork - PKG-001/009/010〜013/015 は本 skill が直接実装: 各 scripts を sub-process で実行
package_mode: skill-onlyplugin に対する適用範囲: PKG-002/004 のみ実行、それ以外はnot_applicable- eval-log パス独自定義禁止: 27章 §3.1 規約厳守
- 35章 observable 配線:
verdict.fail > 0のときpkg_check_failedを.claude/logs/に 1 行 append(schema は 35章 §observables) dry_run=trueでも計画 JSON は出力: 副作用なし、stdout に実行予定 PKG ID 列挙- PKG-013 は単独実行不可: 必ず 013a/b/c/d 4 件に展開
ゴールシーク実行
固定手順は書かず、ゴール+チェックリストへ向け都度手順を生成・反復する。正本: ../run-build-skill/references/goal-seek-paradigm.md。
ゴール (Goal)
対象 plugin の指定 phase に属する全 PKG gate が pass / not_applicable で確定し、schemas/run-report.schema.json 準拠の pkg-summary JSON と verdict markdown が eval-log/<plugin>/ 配下に保存された状態になっている。
目的・背景 (Why)
25章 §runbook Step 5(契約適合)として出荷前に PKG-001〜015 を機械検査し、規範採点や elegance lint と直交した「契約準拠」を保証するため。fail を残したまま下流パイプラインへ流すと不整合 package が出荷される。
完了チェックリスト (Checklist)
- phase に対応する PKG gate を全件評価した(Phase0=001〜009 / Phase1=+010 / Phase2=+011〜015)
- PKG-002〜008・014 は
assign-plugin-package-evaluatorへcontext: forkで委譲済み - PKG-013 を 013a〜d の 4 件へ展開して集約した
- 各 PKG ログを
eval-log/<plugin>/pkg-<id>/<date>-<run>.json(27章 §3.1)へ append-only 保存した - pkg-summary JSON が
schemas/run-report.schema.jsonを通過する -
verdict.fail > 0のときpkg_check_failedを.claude/logs/に 1 行だけ emit した - fail が 1 件でもあれば exit 1、全 pass/not_applicable なら exit 0
ゴールシークループ
正本 6 ステップ(現状評価→手順生成→実行→検証→Anchor Step→反復、既定 5 周)に従う。未達チェック項目を埋める最短手順をその場で生成する。下記「局面カタログ」は順序固定ではなく、その周回で未達な gate に応じて都度選ぶ。
局面カタログ(順序は都度判断)
[Step 0] 入力検証 + package_mode 読込
│
▼
[Step 1] PKG-001 公式 CLI strict validate
│ scripts/run-plugin-validate-strict.sh
▼
[Step 2] PKG-002〜008 委譲
│ Skill(assign-plugin-package-evaluator, target_plugin=<name>, context=fork)
▼
[Step 3] PKG-009 外部参照ゼロ
│ scripts/lint-pkg-009.py --skills-dir plugins/<name>/skills --fail-on-external
▼ (phase >= 1)
[Step 4] PKG-010 install smoke
│ scripts/smoke-plugin-install.sh
▼ (phase >= 2)
[Step 5] PKG-011〜012 smoke
│ smoke-plugin-uninstall.sh / smoke-plugin-upgrade.sh
▼
[Step 6] PKG-013a〜d permission scope
│ scripts/validate-plugin-permissions.py --check 013<a-d>
▼
[Step 7] PKG-014 runtime contract
│ assign-plugin-package-evaluator (delegated, --check pkg-014)
▼
[Step 8] PKG-015 rubric 違反率
│ scripts/run-pkg-015.py --plugin <name> --log-dir eval-log/<name> --out eval-log/<name>/pkg-015/rubric-violation.json
│ (履歴 bootstrap 中は明示 not_applicable、開each 時は fail、それ以外は pass へ正規化)
▼
[Step 9] findings 集約 + observable 配線
│ scripts/aggregate-pkg-findings.py
▼
[Step 10] run-report.json 生成 + verdict markdown 出力
Phase 別の実行 Step は workflow-manifest.json phases[].id 参照。
役割直交(Step 5 / 5.5 / 6)
25章 runbook での位置づけ:
| Step | 役割 | 担当 skill |
|---|---|---|
| 5 | 契約適合: PKG-001〜015 機械検査 | 本 skill |
| 5.5 | 設計 elegance: 30 思考法 × 4 条件 lint | run-elegant-review v2 |
| 6 | 規範採点: rubric 適合度 | assign-skill-design-evaluator |
3 つは責務直交。本 skill は規範ではなく契約準拠を見る。
Gotchas
- PKG-001 の公式 CLI が未配備の環境:
claude plugin validateコマンド未インストール時はstatus: skip+skip_reason="claude CLI not found"を残し exit 1 にしない(環境依存差を吸収) - PKG-010 install smoke の sandboxing: local marketplace install は実環境に副作用。
--dry-runまたは専用 sandbox dir を必須化(実装スクリプト側で隔離) - PKG-013 sub-check の合算: 1 件でも fail なら PKG-013 全体を fail として集約。サマリ表記は
PKG-013(a:pass, b:fail, c:pass, d:pass) - 35章 observable 配線の二重発火禁止: 1 run につき 1 line。複数 PKG fail でも
pkg_check_failedevent は集約して 1 件 eval-log/<plugin>/の append-only: 過去ログを上書き禁止(27章 §10 アンチパターン #6 準用)- 兄弟 plugin
skill-governance-lintが未導入の環境: PKG-009 (lint-pkg-009.py)、PKG-010 (sandbox-plugin-lifecycle.py)、PKG-015 (run-pkg-015.py) は同梱 resolver で兄弟 plugin を探し、見つからなければ推測 path で lint を呼ばずに止まる。PKG-009/015 は停止理由をstatus: failのログに残すので、skill-governance-lint を install してから再実行する
Additional Resources
prompts/R1-orchestrate.md— Step 0〜10 の制御プロンプト(R1)prompts/R2-gate-decide.md— phase 別完了判定(R2)schemas/run-report.schema.json— run 全体集約 JSONscripts/run-plugin-validate-strict.sh— PKG-001 公式 CLI ラッパーscripts/smoke-plugin-install.sh— PKG-010 install smokescripts/smoke-plugin-uninstall.sh— PKG-011scripts/smoke-plugin-upgrade.sh— PKG-012scripts/sandbox-plugin-lifecycle.py— PKG-010〜012 を一時 Claude home で実行する決定論 lifecycle harnessscripts/validate-plugin-permissions.py— PKG-013a〜dscripts/lint-pkg-009.py— skill-governance-lint の外部参照 lint を resolver 経由で起動 (PKG-009)scripts/run-pkg-015.py— rubric lint の bootstrap/breach を PKG status へ正規化scripts/aggregate-pkg-findings.py— Step 9 集約- 子 skill:
assign-plugin-package-evaluator(PKG-002〜008, PKG-014) - 参照 skill:
ref-pkg-contract - 設計書: 36章(正本)、27章 §3.1/§4.1、34章 Phase 0/1/2、35章 observables、34a §4
レビュー
まだレビューはありません。使ってみた感想をお寄せください。
同じリポジトリのスキル
概要と使いどころ
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 基準で機械検証したいときに使う。