アプリ・Webサービス・業務ツールの制作を、証拠分析→確定的な初稿→要件定義→体験設計→機能分解→実装→品質ゲート→リリース判定の手順ゲート制で進めるスキル。質問で要件を埋めるのではなく、依頼文・既存コード・資料・ログから最有力案を選び、動く成果物を先に出して差分で改善する。ユーザーが「アプリを作りたい」「ツールを作って」「〜を自動化したい」「システム化したい」「要件定義」「仕様を決めたい」「UI/UXを設計して」「体験を良くしたい」「機能を洗い出して」「MVPを決めたい」「品質チェック」「リリースしていいか判断して」などと言ったら必ず使用する。外部データの取込・マスタ・締め処理を伴う業務システムでは references/data-lifecycle.md も併用する。新規・既存を問わずアプリの制作・改善・リニューアルで使用する。
run-goal-elicit
タスクの目的・背景・ゴールが曖昧なとき、既存コンテキストからAIが仮想ヒアリング済みとして最適ゴールと完了チェックリストを推定し goal-spec.json に固めたいときに使う。
含まれるファイル(2)
- SKILL.md9.9 KB
- schemas/goal-spec.schema.json3.6 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-goal-elicit
Purpose & Output Contract
ユーザーの曖昧な要求と既存コンテキストから 目的・背景・ゴール をAIが推定し、ゴール達成の 完了チェックリスト を作って goal-spec.json に固める。run-goal-seek の入力になる。
- 入力:
topic(任意。省略時は会話履歴・変更差分・周辺ファイルから推定) - 出力:
eval-log/goal-spec.json(固定パス、プロジェクトルート基準。schemas/goal-spec.schema.json準拠) - 完了条件:
purpose/background/goal/checklist(1 項目以上) が全て確定し、schema 検証を通過する。
境界
手順の実行はしない(それは run-goal-seek の責務)。本スキルは「何を達成すれば完了か」を定義するだけ。具体的な達成手順は書かない。
用途の使い分け(重複回避): 本スキルは汎用タスクのゴール抽出専用で、出力は goal-spec.json(run-goal-seek が消費)。新しい Skill を作る場合のゴール抽出は run-goal-elicit を呼ばず、run-skill-elicit の Step 4.4 が skill-brief.json 内に goal/purpose_background/checklist を直接埋める(型が異なる: 本スキルの checklist は {id,criterion,done,verify_by} 構造化オブジェクト、brief の checklist は文字列配列)。両者を混用・相互変換しない。
主要ルール
- ユーザーに追加質問しない: AI が「既にヒアリング済み」と仮定し、会話履歴・リポジトリ状態・関連ファイルから最尤の目的/背景/ゴールを推定する。
- ゴールは観測可能な完了形で 1 文。「頑張る」「改善する」等の判定不能な表現は不可。
- チェックリストは二値判定可能な受入基準にする。手順(「Edit で X する」)をチェック項目にしない。
- 情報が不足しても停止しない。合理的な仮定を
constraintsまたはopen_questionsに明示し、実行可能なgoal-spec.jsonを必ず出す。 - 決定論的に検査できる項目は
verify_byをscript/lint/testにして後段の## 検証へ寄せる。 - 成果物の渡し先が分かっていれば
handoff_targetsに後続 Capability 名を入れる。
ゴールシーク実行
固定手順は書かない。毎周「ゴール・目的/背景・チェックリスト」を読み、その時点で最適な手順を AI が生成・実行する。詳細は
../run-build-skill/references/goal-seek-paradigm.md。
ゴール (Goal)
eval-log/goal-spec.json が schema 検証を通過し、目的・背景・ゴール・完了チェックリストが全て埋まった状態。
目的・背景 (Why)
ゴールシーク実行 (run-goal-seek) は「何を満たせば完了か」が無いと回せない。固定手順ではなくゴールとチェックリストを起点にするため、まず到達点を言語化する必要がある。
完了チェックリスト (Checklist)
- C1: 目的 (purpose) を 1〜3 文で抽出した
- C2: 背景 (background) を 1〜3 文で抽出した
- C3: ゴール (goal) を観測可能な完了形 1 文で確定した
- C4: 完了チェックリスト (checklist) を二値判定可能な項目で 1 件以上作った
- C5:
eval-log/goal-spec.jsonがschemas/goal-spec.schema.json検証を通過した
ゴールシークループ
正本 ../run-build-skill/references/goal-seek-paradigm.md の 6 ステップに従う。ただし Anchor Step (Step 5: 中間成果物スナップショット) は適用除外 (出力が goal-spec.json 1 点の単発完結で、周回ドリフトの余地が小さいため)。本スキル固有の差分のみ記す:
- Step 1 で会話履歴・
topic・関連ファイル・直近 diff から「仮想ヒアリング結果」を作る。 - Step 2 で複数の候補ゴールを内部比較し、最も制約充足度が高い 1 件を
goalに採用する。 - 推定根拠が弱い項目は
constraintsに仮定として残し、未確定だが実行を止めるべきでない事項だけopen_questionsに記録する。
検証
python3 - "$PWD/eval-log/goal-spec.json" "$PWD/plugins/harness-creator/skills/run-goal-elicit/schemas/goal-spec.schema.json" <<'PY'
import json, sys
spec = json.load(open(sys.argv[1], encoding="utf-8"))
schema = json.load(open(sys.argv[2], encoding="utf-8"))
req = schema["required"] # schema 正本から required を実読 (ハードコード drift 防止)
missing = [k for k in req if not spec.get(k)]
assert not missing, f"必須欠落: {missing}"
assert len(spec["checklist"]) >= 1, "checklist は1件以上必要"
# checklist 各項目のキー照合: schema items.required + verify_by (主要ルール5: run-goal-seek 決定論検査の前提)
item_req = set(schema["properties"]["checklist"]["items"]["required"]) | {"verify_by"}
for i, item in enumerate(spec["checklist"]):
lack = item_req - set(item)
assert not lack, f"checklist[{i}] キー欠落: {sorted(lack)}"
print(f"goal-spec.json OK (required={req} / checklist {len(spec['checklist'])} 項目キー照合済)")
PY
注意点
- ユーザー負担の最小化: 追加質問を前提にしない。曖昧さは AI が最尤仮説として補い、根拠と仮定を spec に残す。
- ゴールに手順を混ぜない: ゴールは「状態」、チェックリストは「受入基準」。手順は
run-goal-seekが都度生成する。 - 抽出できない時は止めない: 合理的な仮定で spec を出し、後段の検証で仮定が破綻した場合だけ
open_issuesに差し戻す。
追加リソース
schemas/goal-spec.schema.json— 出力契約の正本../run-goal-seek/SKILL.md— このspecを消費する実行スキル../run-build-skill/references/goal-seek-paradigm.md— ゴールシークの正本定義
レビュー
まだレビューはありません。使ってみた感想をお寄せください。
同じリポジトリのスキル
概要と使いどころ
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 基準で機械検証したいときに使う。