ultragoal について
ultragoalは、複数のセッションにまたがる大きな目標を進めるためのエージェントスキルです。作業を出荷可能なフェーズに分け、受け入れ基準、証拠、状態を記録して中断後の再開を支援します。
主な機能
- 01長期目標のフェーズ分割
- 02受け入れ基準と追跡表の管理
- 03フェーズごとの検証証拠の記録
- 04状態ファイルからの再開
- 05単一ファイルのHTMLレポート生成
活用シーン
- 01複数フェーズにわたる製品の構築と公開
- 02新しいセッションで未完了の目標を再開
- 03フェーズおよび最終受け入れ条件の検証
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ huytieu/ cog-second-brain --skill ultragoalインストール後、Claude Code で/ultragoalを入力して読み込まれたか確認します。
詳細
Ultragoal — 1 回の実行ではリリースできないほど大きな目標を達成するクローズドループ
ultragoal は、複数のセッションにまたがる北極星のような目標を指す用語です。リポジトリをフォークし、優れた部分を組み合わせて、1 つの製品をリリースします。/closed-loop の実行は、ループを通じて行う 1 つのタスクです。ultragoal は、複数のフェーズからなる 連鎖 であり、各フェーズはそれぞれ完全なクローズドループの実行です。進捗を追跡することで、コンテキストのないセッションでも再開できます。
基本ルール(dwarves-kit に由来し、全面的に採用):作業者は自分の宿題を自分で採点しません。また、誤りはセッションをまたいで積み重なるため、最後だけでなく各フェーズを検証します。
使用するタイミング
/ultragoal <name>— 既存の ultragoal を再開または進めます/ultragoal new "<north-star>"— 新しい目標を設定します/ultragoal status— レジストリにあるすべての ultragoal の状況を報告します- 起動するフレーズ:「これを ultragoal にして」「これは長期的な目標です」「時間をかけてこれらを 1 つの製品にまとめて」
単一実行で完了する作業(その場合は /closed-loop)には使用しないでください。また、ユーザーが依頼していないのに開始しないでください。目安として、フェーズへの分解が必要で、今日中に完了しないなら、それは ultragoal です。
ファイル(目標ごとに 1 つのフォルダー)
| ファイル | 役割 |
|---|---|
04-projects/harness/ultragoals.md | レジストリ:すべての ultragoal、状況、現在のフェーズ |
04-projects/<goal>/spec.md | 契約:北極星 + AC-n の受け入れ基準 + フェーズ P0…Pn + トレーサビリティマトリックス |
04-projects/<goal>/STATUS.md | 継続的な台帳:フェーズの状態、現在のフェーズ、未解決の AC-n、次のアクション(ここから再開) |
04-projects/<goal>/evidence/P<n>/ | フェーズごとのエビデンス一式(ledger.md + CP-* ファイル) |
コードがある場合、そのコードは Vault の外部(例:~/code/<goal>/)に置きます。spec/status/evidence は Vault に保管します。
フェーズ 0 — 設定(/ultragoal new)
- 何をもって「完了」とするかを表す北極星を、1 文でユーザーに確認します。
../closed-loop/references/spec-template.mdから04-projects/<goal>/spec.mdを作成します:- 北極星のステートメント
- 反証可能な
AC-nの受け入れ基準(目標全体の完了条件を定義します) - フェーズ分解
P0…Pn— 各フェーズはリリース可能な増分であり、AC-nの一部に対応します - トレーサビリティマトリックス(
AC-n↔ フェーズ ↔ 状況)
STATUS.mdを作成し(以下のテンプレートを参照)、レジストリに行を追加します。
記録:bash .claude/lib/checkpoint.sh record 04-projects/<goal>/evidence/P0 CP-1 PASS "N criteria, M phases"
フェーズループ(すべてのフェーズで実施。レーンを格下げしない)
各フェーズで完全なクローズドループを実行します。tiny によるショートカットはしないでください。Ultragoal は、その仕組み上 full レーンです。
select next phase from STATUS.md
│
▼
CP-2 PLAN tasks for this phase ↔ AC-n → evidence/P<n>/CP-2-plan.md
│
▼
CP-3 BUILD worker implements (traced to AC-n); returns paths only
│
▼
CP-3v VERIFY task-verifier (fresh context, read-only) → evidence rows per AC-n
│ ├── FAIL:fixable → fix-agent (max 2) → re-verify
│ └── FAIL:escalate → stop, escalate to the user
▼
CP-4 INTEGRATE integration-verifier → does this phase wire correctly with prior phases?
│ (always run for ultragoals — cross-phase regression is the main risk)
▼
CP-5 ACCEPT observe the artifact (curl / screenshot / re-fetch), not the tool return
│ EVIDENCE AC-n | CP-5 | PASS | <observation> | <artifact>
▼
CP-6 SHIP external mutation? → Review Gate: you approve. Internal? → auto.
│
▼
update STATUS.md (phase → done, advance current phase, log open AC-n)
│
▼
CP-7 RETRO /retro 04-projects/<goal>/evidence/P<n> → harvest + STATUS
各ベリファイアーの EVIDENCE 行をすべて evidence/P<n>/ledger.md に統合します。
2 つの受け入れゲート
- フェーズごと(CP-5): フェーズを完了とする前に、そのフェーズが対象とするすべての
AC-nに PASS 行がある必要があります。 - 北極星(最終): ultragoal の完了を宣言する前に、新しいコンテキストのベリファイアーを起動します。その唯一の役割は、spec のマトリックスを確認することです。すべてのフェーズを通じて、すべての
AC-nに 1 行以上の PASS エビデンスがある必要があります。PASS エビデンスのないAC-nはリリースではなく、未達項目です。これは CP-5 に相当する ultragoal レベルのゲートです。
North-star acceptance:
read spec.md matrix (all AC-n)
read every evidence/P*/ledger.md
for each AC-n: assert ≥1 PASS row exists, artifact re-observed
any miss → list open AC-n, STATUS stays "in progress", do NOT declare done
HTML レポート(各フェーズゲートと最終段階で再生成)
すべての ultragoal には、すべてを網羅する自己完結型の HTML レポートが 1 つあります。north-star、ライブステータス、すべてのフェーズ、pass/open/fail を記載した完全な AC-n トレーサビリティテーブル、フェーズごとのエビデンス行(スクリーンショットは data: URI として埋め込み)、および未解決項目/次のアクションのブロックを含みます。これはエビデンス台帳の、人が読める形での表示です。
- テンプレート:
../closed-loop/references/report-template.html(テーマ対応、カードではなく行を使用)。コピーしてから、spec.md+STATUS.md+evidence/P*/をもとに、すべての{{token}}と/ブロックを埋めます。編集して埋めてください。パーサーは作成しないでください。 - 成果物のパス:
04-projects/<goal>/report.html。各フェーズで上書きする 1 ファイルです(常に現在の真実を反映します)。 - タイミング: 各フェーズゲート(CP-6)で再生成し、最終的な north-star の承認時にも再生成します。最終レポートでは、すべての
AC-nに PASS 行がなければなりません。pill が 1 つでもopenなら、目標は完了していません。 - 自己完結型のみ: すべてをインライン化し、スクリーンショットを
data:URI として埋め込みます。これにより、Artifact として公開した場合も動作します(外部ホストへのアクセスはブロックされます)。Artifact として公開する前に、artifact-designスキルを読み込んでください。 - 表示する:
SendUserFile 04-projects/<goal>/report.html(display: render)を使ってユーザーが開けるようにするか、共有可能なリンクとしてArtifact経由で公開します。
STATUS.md テンプレート
# <Goal> — status ledger
North-star: <one sentence>
Spec: 04-projects/<goal>/spec.md · Registry: 04-projects/harness/ultragoals.md
Current phase: P<n> · Overall: <not-started|in-progress|blocked|done>
## Phases
| Phase | AC covered | State | Evidence | Notes |
|---|---|---|---|---|
| P0 | AC-1,AC-2 | done | evidence/P0/ | <one line> |
| P1 | AC-3 | in-progress | evidence/P1/ | <what's left> |
## Open AC-n (no PASS row yet)
- AC-3 — <why still open>
## Next action (resume cold from here)
<the single next concrete step + any user-gated decision waiting>
コールドスタートからの再開(最も一般的な開始方法)
他にコンテキストがない状態で /ultragoal <name> を実行する場合:
04-projects/<goal>/STATUS.mdの「Next action」と「Open AC-n」を読みます。- 現在のフェーズについて、仕様書の該当フェーズのみを読みます(段階的開示)。
- 現在のフェーズのフェーズループを実行します。
- 統合検証でリグレッションが見つかった場合を除き、すでに
doneとマークされたフェーズはやり直しません。
ルール
- レーンを決して格下げしないでください。 ultragoal 内の 1 行だけのフェーズであっても、CP-3v + CP-4 を実行します。目的は正しさを積み重ねることです。
- UI/UX フェーズは視覚的に検証します。 フェーズが UI/UX フローに関わる場合は、browser-harness(
evidence_shot/FlowRecorder.save_gif/pixel_diff)でレンダリングされたエビデンスを取得し、画像を確認し、視覚的な不具合を修正してから再取得します。DOM のチェックだけで承認してはいけません。メディアはevidence/P<n>/に保存し、report.htmlに反映します。CLAUDE.md → Visual Verification を参照してください。 - 検証担当者には新しいコンテキストを与えます。
task-verifier、integration-verifier、north-star verifier にはパスだけを渡します。ワーカーの出力を貼り付けてはいけません(CLAUDE.md の新規コンテキスト分離)。 - 検証担当者は読み取り専用です。 ファイルの編集や外部状態の変更はできません。
- 外部への操作はすべてゲートで止めます。 公開/デプロイ/プッシュは、ユーザーの承認を得るため CP-6 で待機します(Review Gate = ユーザーの承認)。
- 目標の進捗状況を示す信頼できる情報源は、1 つの STATUS.md です。 各フェーズの終了時に更新してください。更新しないと実態とずれていきます。
- CLAUDE.md に従ってモデルを振り分けます:Sonnet ワーカーが構築/収集/検証を行い、Opus リードが推論、分解、統合を行います。
エスカレーション用テンプレート
ULTRAGOAL ESCALATED — <goal> / P<n>
Last CP: <CP-id> | Open AC: <list without PASS rows>
Evidence: 04-projects/<goal>/evidence/P<n>/
Decision needed: <one question>
登録済み ultragoals
最新の一覧:04-projects/harness/ultragoals.md。各 ultragoal には専用の 04-projects/<goal>/ フォルダーがあり、spec.md、STATUS.md、evidence/、report.html を格納します。