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-prompt-creator-7layer
doc/prompt-creator/ を harness-creator 仕様準拠で plugins/prompt-creator/ へ移植した正本。SKILL.md/SubAgent 各 300 行以下、Progressive Disclosure 厳守。
Purpose & Output Contract
ユーザー要求またはヒアリング結果から、成果物としての 7 層構造プロンプト を生成する。
禁則: 入力根拠の捏造、必須 Layer の省略、Layer 単位の生成と検証を省いた一括生成は禁止する。
7 層: L1 基本定義 / L2 ドメイン定義 / L3 インフラストラクチャ / L4 共通ポリシー / L5 エージェント定義 / L6 オーケストレーション / L7 ユーザーインタラクション。
Layer 5 はゴールシーク型 (達成ゴール+完了チェックリスト+実行方式)。固定手順は書かず、手順はエージェントが実行時に自律生成する。
本スキルの責務は エンドユーザー向け成果物プロンプトの生成 に純化する。SubAgent .md の Prompt Templates / Self-Evaluation への注入は、owner_agent 指定時のみ行う付随機能 (legacy) であり、本スキルの主目的ではない。
入力: --responsibility-id <R-id> (skill-local-v1 既定で必須、brief.responsibilities[].id と 1:1) / --output <path> (省略時は規約パス自動解決) / --target-agent (任意、owner_agent がある場合のみ注入) / --skill-brief / --format (md 既定、yaml は内部正規形または legacy 互換) / --inject-sections (既定: "Prompt Templates,Self-Evaluation")
出力 (path_convention で切替):
skill-local-v1 (既定): plugins/<plugin>/skills/<skill>/prompts/<R-id>-<slug>.md — references/prompt-placement-convention.md (harness-creator 側) 準拠、validate-build-trace.py が正規表現と sha256 で機械検証
agents-legacy (--responsibility-id 省略時のみ): plugins/<plugin>/agents/prompts/<role>.yaml — 後方互換、brief.responsibilities[] が空の ref/wrap/delegate 用
- 対象 SubAgent .md への自動注入 (Edit、owner_agent がある場合のみ)
eval-log/prompt-build-trace.json (run-prompt-create/schemas/build-trace.schema.json 互換)
eval-log/prompt-creator-trace.json (worker-local trace。必須フィールド: path_convention, responsibility_id, layer_artifact_path, sha256)
完了条件: verify-completeness.py PASS + validate-prompt.py PASS + owner_agent 指定時の lint-agent-prompt-section.py PASS(未指定は理由付きN/A) + C1-C4 設計評価 PASS (worker 内蔵ゲート: assign-prompt-design-evaluator を fork し findings 出力のみ受領。呼出元が同等ゲートを機械証跡 (design-findings JSON) で保証する場合のみ免除)。run-build-skill Step 7.5 直呼びでも同一の設計保証が成立する (経路非依存)。
Key Rules
- Script First: 決定論的処理は python3 スクリプト。LLM は意味判断のみ。
- 1 Layer = 1 出力: 一括生成禁止、Layer 単位生成→merge。
- 質ベース判定: 「実行可能か/検証可能か」。数量カウント禁止。
- Progressive Disclosure:
references/ は Phase 直前で必要分のみ読込。
- 目的+背景併記: 全ルール/制約に併記 (
writing-style-principles.md)。
- 300 行制約: SKILL.md / SubAgent 各 300 行以下。
- ループ整合性: run-build-skill 呼出でも owner_agent 指定時だけ
lint-agent-prompt-section.py 通過必須(未指定は理由付きN/A)。FAIL 時最大 3 回自律修正→未達なら orchestrator 差戻。
- 責務境界: 主責務は7層の成果物プロンプト生成。owner_agent 指定時だけ Prompt Templates / Self-Evaluation の2節へ注入する。agentの実行骨格は run-build-skill が担当する。
- Markdown 既定: prompt 出力は Markdown 形式 (
.md) を既定とする。論理構造の正本は references/seven-layer-format.md。内部正規形は YAML (scaffold/merge/verify の前提) とし、最終成果物は convert-format.py で Markdown へ変換する。references/seven-layer-markdown-template.md は提示形式の補助テンプレ。
- ゴールシーク: Layer 5 に固定手順 (思考プロセスのステップ列挙) を書かない。達成ゴール+完了チェックリストを宣言し、手順は実行時にエージェントが自律生成する。
verify-completeness.py が固定手順を検出したら FAIL。
- 冪等更新 (重複回避・上書き優先): 既存プロンプトを改善するときは闇雲に追加せず、先に既存を原子要素へ分解・分析し、類似要素があれば上書き統合・無ければ新規追加する。同一意図の要素が 2 つ以上残ったら FAIL。正本
references/idempotent-update-policy.md。
- セッション分離: ゴールシーク反復は SubAgent / エージェントチームで分離 context で実行する。中間探索情報を親 context に流さず、親へは最終差分と完了判定のみ返す (現セッション汚染防止)。
End-to-End Flow
Phase 1 ヒアリング委譲 (run-prompt-elicit) [delegate] hearing-result/brief 供給時 skip
↓
Phase 2 Prompt 作成シート生成+導出確認 [script→LLM] brief.user_confirmed で skip
↓
Phase 3 フォーマット選択 (yaml/md/json/xml) [LLM] brief 供給時/ループ時 skip (md 既定)
↓
Phase 4-A Layer 単位生成 (L1→L7) [script→LLM] generate-prompt
↓
Phase 4-B 4 パス品質レビュー [script→LLM] review-prompt
↓
Phase 4-C 自律改善 (最大 3 回+Anchor 記録) [LLM]
↓
Phase 4-D フォーマット変換+注入 [script + Write/Edit]
↓
Phase 5 戻り検証+設計ゲート (C1-C4) [script + evaluator fork]
詳細 (各 Phase のゴール+完了条件+判断基準): references/workflow-guide.md
Steps (局面カタログ)
本節は各局面のゴール+完了条件+判断基準のみを宣言する。実行順・依存関係・fatal exit code の機械正本は workflow-manifest.json (phases[].dependsOn)。手順はゴールシークループ (5.4 実行方式相当) で都度立案し、固定ステップ列挙を持たない。
| Phase | ゴール (到達状態) | 完了条件 (機械判定) | 判断基準 / skip 条件 |
|---|
| 1 ヒアリング | 検証済み hearing-result が存在する | validate-prompt.py --phase hearing exit 0 | hearing-result / brief 供給時は skip。無ければ run-prompt-elicit へ委譲 (interview-user agent を直接呼ばない: 収集正本の二重経路を作らないため) |
| 2 シート生成+導出確認 | goals/checklist を含む内部正規形材料が確定 | generate-sheet.py + validate-sheet.py exit 0 | brief.user_confirmed=true なら導出確認 skip。単独起動時のみユーザー承認を取る |
| 3 フォーマット選択 | 出力 format が一意確定 | format ∈ {md,yaml,json,xml} (md 既定) | brief 供給時 / ループ呼出時は md 既定で skip。単独起動時のみ AskUserQuestion。YAML は内部正規形または legacy 互換に限定 |
| 4-A Layer 単位生成 | 7 層 (または brief.layers_required サブセット) の Layer 別 artifact が揃う | 各 layer artifact 実在 + merge-layers.py exit 0 | 1 Layer = 1 出力 (一括生成禁止)。prompt-creator-generate-prompt fork。Layer 役割・依存方向の正本: references/seven-layer-format.md |
| 4-B 4 パスレビュー | Pass 0 (動的基準生成)〜Pass 4 の findings が確定 | 全 Pass PASS または修正指示付き findings | prompt-creator-review-prompt fork。基準: references/quality-criteria.md |
| 4-C 自律改善 | 完了チェックリスト全充足 or 上限到達 | verify-completeness.py (+--layers サブセット時) + validate-prompt.py --phase prompt exit 0 | 最大 3 回。冪等更新 (idempotent-update-policy.md)。各周回末に Anchor 追記 (下記契約) |
| 4-D 変換+注入 | 最終成果物出力 + (owner_agent 時) 注入完了 | convert-format.py exit 0、注入 diff が inject-sections 内 | 注入セクション名は不変契約 (下記) |
| 5 戻り検証+設計ゲート | 全機械ゲート+C1-C4 設計ゲート PASS | verify-completeness.py / validate-prompt.py exit 0 + owner_agent 指定時だけ lint-agent-prompt-section.py exit 0(未指定N/A) + C1-C4 findings PASS + log-usage.py 記録 | FAIL は Phase 4-A 再起動 (最大 3 周)。設計ゲート免除は呼出元の機械証跡がある場合のみ |
Phase 4-C アンカー契約 (goal-seek-paradigm 準拠)
各周回末に eval-log/prompt-creator-intermediate.jsonl へ 1 行 append する: original_goal (全周回不変) / current_goal_snapshot / delta_from_original / merged_directive_for_next / drift_signal。schema 正本は harness-creator run-build-skill/schemas/goal-seek-loop.schema.json の intermediate_artifacts[] (本 skill で再宣言しない)。次周回の手順立案は直前行の merged_directive_for_next + original_goal を必須入力とする。drift_signal が stagnant/widening/oscillating で 2 周連続なら orchestrator へ差し戻す。
worker 内蔵ゲート (経路非依存の品質保証)
C1-C4 設計評価は worker の完了条件に内蔵する: assign-prompt-design-evaluator を fork (read-only・findings 出力のみ) して PASS を得る。呼出元 (例: run-prompt-create Step 3b) が同等ゲートを機械証跡 (design-findings JSON パス) で保証する場合のみ免除。これにより run-build-skill Step 7.5 直呼び・orchestrator 経由・手動起動のどの経路でも同一の設計保証が成立する。
呼出元非依存の不変契約
- 注入の構造ID
prompt_templates / self_evaluation は不変。表示名は明示 ja / en または対象agentの正規見出しから継承し、日本語では プロンプトの型 / 自己採点、英語では Prompt Templates / Self-Evaluation を使う。同一agent内で混在させない (lint-agent-prompt-section.py の検証契約と 1:1)。
- brief 供給時は Phase 1-3 の全ユーザー対話を skip し、導出確認は brief の
user_confirmed に委譲する (orchestrator の user_question_budget=1 違反を防ぐ)。
Gotchas
- 7 層一括生成禁止 (Layer 単位→merge)。
- 「3 つ以上」型禁止→質ベース判定。
- 長文フィールド禁止 (要素原子性、1 値 50 文字目安)。
- 外部依存不持込 → YAML は python3 標準ライブラリのみで手書きシリアライズ。
- doc/prompt-creator/ は deprecated、正本は plugins/。
- 自律修正 3 回上限、超過時 orchestrator 差戻。
- 7層本文と発話・自己採点の2節の骨格生成禁止 (run-build-skill 責務)。
- Layer 5 固定手順禁止 (「推論手順/思考プロセス/手順/Steps」見出し配下の連番列挙、l5-contract v2.0.0)。ゴール定義+完了チェックリスト+実行方式で宣言。
- ヒアリングで固定手順を収集しない (goals/checklist を収集、steps は廃止)。
- 既存改善時の重複追加禁止 (分析せず追加で肥大化させない)。類似は上書き統合。
- ゴールシークを現セッション直書きで回さない (SubAgent/チームで分離、中間情報を親に漏らさない)。
- Phase 1 で interview-user agent を直接呼ばない (ヒアリング経路は run-prompt-elicit へ一本化。二重経路は収集正本のドリフト源)。
- Anchor 未記録のまま Phase 4-C を反復しない (intermediate.jsonl 追記は各周回末の必須ステップ)。
Additional Resources
references/seven-layer-format.md — 7層の論理構造の正本 (Phase 4-A 直前読込)
references/workflow-guide.md — Phase 1-4 詳細
references/quality-criteria.md — 4 パス評価基準 + §8 冪等更新基準
references/idempotent-update-policy.md — 既存改善時の重複回避・上書き優先・セッション分離 (Phase 4-B/4-C 直前読込)
references/writing-style-principles.md — 記述スタイル
references/prompt-sheet-template.md — シート項目
schemas/hearing-result.schema.json — legacy sheet/scaffold 入力スキーマ (raw hearing の正本は run-prompt-elicit 側)
- 子 agent:
plugins/prompt-creator/agents/prompt-creator-{generate-prompt,review-prompt}.md (ヒアリングは run-prompt-elicit へ委譲)
- caller:
plugins/harness-creator/skills/run-build-skill (Step 7.5)
- 戻り検証:
plugins/skill-governance-lint/scripts/lint-agent-prompt-section.py
- 設計ゲート:
plugins/prompt-creator/skills/assign-prompt-design-evaluator (C1-C4、fork・findings 出力のみ)
- Anchor schema 正本:
plugins/harness-creator/skills/run-build-skill/schemas/goal-seek-loop.schema.json (intermediate_artifacts[])