К основному содержанию
скилл CX Codex

Скилл ultragoal для Claude Code: план, журнал и /goal

Делит бриф на упорядоченные цели и ведёт дописываемый журнал в .omc/ultragoal, чтобы прогресс пережил перезапуск сессии.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add Yeachan-Heo/oh-my-claudecode --skill ultragoal -a claude-code
Открыть на GitHub

Что делает ultragoal

Скилл превращает бриф в список историй с порядком, счётчиком попыток и доказательствами по каждой. Состояние лежит в репозитории, в .omc/ultragoal, а журнал только дописывается — поэтому работа не рассыпается при новой сессии или смене worktree.

Внутри набор подкоманд omc ultragoal: create-goals строит план, complete-goals берёт следующую историю или возвращается к текущей, checkpoint фиксирует результат, record-review-blockers дописывает историю-блокер, status показывает срез. Режим по умолчанию — aggregate, одна директива /goal на весь прогон; с --claude-goal-mode per-story своя директива будет у каждой истории. Две сессии в одном каталоге без --plan-id перезапишут план друг друга.

Главное ограничение: из оболочки /goal не выставить. Скилл пишет артефакты и печатает текст передачи для агента, а набрать /goal <цель> в сессии должен сам человек. Снапшот через --claude-goal-json годится только для сверки журнала и не проходит проверку PreToolUse. Последнюю историю закрывают после того, как aiSlopCleaner, verification и codeReview дадут чистый результат.

Какие задачи решает

  • разбить крупный бриф на упорядоченные истории
  • не потерять прогресс при перезапуске сессии или смене worktree
  • зафиксировать доказательства по каждой закрытой истории
  • дописать историю-блокер после грязного ревью
  • посмотреть, на какой истории стоит работа

Примеры запросов агенту

  • Разбей бриф из plan.md на цели: omc ultragoal create-goals --brief-file plan.md
  • Продолжи с omc ultragoal complete-goals и покажи, какой /goal мне набрать
  • Закрой историю: omc ultragoal checkpoint --goal-id G001-... --status complete --evidence "тесты и PR"

Как установить ultragoal

1Через Skills CLI (Vercel)

npx skills add Yeachan-Heo/oh-my-claudecode --skill ultragoal -a claude-code

2Вручную: положить файлы

~/.claude/skills/ultragoal/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/ultragoal/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о ultragoal

Как установить ultragoal в Claude Code?

Выполните npx skills add Yeachan-Heo/oh-my-claudecode --skill ultragoal -a claude-code. Файл скилла появится по пути ~/.claude/skills/ultragoal/SKILL.md.

Что делает ultragoal?

Делит бриф на упорядоченные цели и ведёт по ним дописываемый журнал в .omc/ultragoal. Ещё печатает текст передачи, по которому агент понимает, как вести /goal в текущей сессии.

Может ли ultragoal сам выставить /goal?

Нет. Из оболочки состояние /goal не меняется: скилл только пишет файлы и печатает подсказку, а команду вводит пользователь в сессии.

Исходный текст

SKILL.md · MIT
---
name: ultragoal
description: Durable multi-goal workflow that persists plan/ledger artifacts under .omc/ultragoal and prints Claude /goal handoff text for the active session
argument-hint: "<brief or subcommand>"
level: 3
---

<Purpose>
Ultragoal breaks a brief into an ordered set of goals, records start/checkpoint/blocker/failure events in a durable append-only ledger, and tells the active Claude agent how to drive the Claude Code `/goal` slash command alongside the plan. It does not — and cannot — mutate Claude `/goal` state from the shell; it persists durable repo state and prints a model-facing handoff that the active agent must act on in-session.
</Purpose>

<Use_When>
- The user wants a durable, repo-native way to track an ultragoal across multiple Claude sessions or worktrees
- The work is large enough to warrant multiple ordered "stories" with attempt counts and per-story evidence
- The user wants the final completion gated behind ai-slop-cleaner + verification + $code-review
- The user wants the active Claude `/goal` directive coordinated with the ledger so that a session restart does not lose progress
</Use_When>

<Do_Not_Use_When>
- The task is a single small change — use direct delegation or `ralph` instead
- The user wants the assistant to literally invoke `/goal` itself from the shell — that is not possible; `omc ultragoal` only writes artifacts and prints handoff text
- The user wants a planning-only artifact with no execution loop — use `plan` instead
</Do_Not_Use_When>

<Why_This_Exists>
Claude Code `/goal` is a session-scoped Stop hook: it blocks the session from stopping until a condition holds, and auto-clears on success. That is a great single-session execution primitive, but it loses state across sessions and does not by itself enforce a final review gate. `omc ultragoal` adds a durable plan, ledger, and gating layer so a long multi-step initiative can survive session restarts, fresh worktrees, and review iterations while still leveraging Claude `/goal` to keep the active agent focused.
</Why_This_Exists>

<How_To_Use>

On plugin-only installs where `omc` is not on `PATH`, replace the `omc` prefix in
the commands below and in generated handoffs with `oh-my-claudecode.js`, or use
`node <plugin-root>/bin/oh-my-claudecode.js`.

1. Create a plan from a brief:
   ```
   omc ultragoal create-goals --brief-file plan.md
   ```
   Or with explicit stories:
   ```
   omc ultragoal create-goals --brief "ship the migration" \
     --goal "Schema::Add new columns" \
     --goal "Backfill::Backfill rows in batches" \
     --goal "Cutover::Drop old columns and switch reads"
   ```
   The default mode is `aggregate` (one Claude `/goal` covers the run).
   Pass `--claude-goal-mode per-story` if you want each story to have its own `/goal`.

   **Multi-repo workspaces / parallel sessions:** when several Claude sessions
   in the same workspace need to run `/ultragoal` concurrently, pass either
   `--plan-id <stable-id>` or `--auto-plan-id` so the plan is written to
   `.omc/ultragoal/plans/{planId}/` instead of the shared single-plan path.
   Without that flag, two sessions creating goals would clobber each other.
   `--auto-plan-id` derives `{epochMs}-{slug}` from the brief title. Then thread
   the same `--plan-id <id>` through every subsequent subcommand in that session.
   Use `omc ultragoal list-plans` to enumerate available planIds when needed.

2. Start (or resume) the next story:
   ```
   omc ultragoal complete-goals [<goal-id>]
   ```
   With no goal id, this preserves the default behavior of resuming the active story or starting the first pending story. With a goal id, OMC targets exactly that named eligible story (a pending story may be started out of order); it never falls through to another story. An active different story, unknown id, completed or review-blocked story, or failed story without `--retry-failed` is rejected without state mutation. An in-progress named story is resumed without changing its attempt. This prints a model-facing handoff. The active Claude agent must read it and:
   - Set the native Claude `/goal` for this session — in standalone Claude Code neither the
     shell nor the agent can do it, so ask the user to type `/goal <aggregate objective>` and
     wait. `--claude-goal-json` (below) reconciles the ledger only and does not satisfy the
     PreToolUse `/goal` guard, which blocks tool calls until it observes an active `/goal`.
   - Work the story.
   - When the story is complete (and for the final story, after the full quality gate), share back a snapshot of the active `/goal` state and call `checkpoint`.

3. Checkpoint a story:
   ```
   omc ultragoal checkpoint --goal-id G001-... --status complete \
     --evidence "tests/files/PR evidence" \
     --claude-goal-json '{"goal":{"objective":"...","status":"active"}}'
   ```
   For the final story, also pass `--quality-gate-json` containing
   `aiSlopCleaner`, `verification`, and `codeReview` evidence (all clean).

4. If the final review is not clean, do NOT mark complete. Record blockers:
   ```
   omc ultragoal record-review-blockers --goal-id G00X-... \
     --title "Resolve final code-review blockers" \
     --objective "Fix the listed review findings and rerun final gates" \
     --evidence "<the review findings>" \
     --claude-goal-json '{"goal":{"objective":"...","status":"active"}}'
   ```
   This appends a new blocker story and keeps the Claude `/goal` active.

5. Inspect state at any time:
   ```
   omc ultragoal status
   ```

</How_To_Use>

<Important_Limitations>
- The shell cannot invoke or mutate Claude Code `/goal` state. `omc ultragoal` only persists durable artifacts and prints instructions that the active Claude agent reads and acts on in-session.
- Snapshots passed via `--claude-goal-json` are model-supplied proof of the active `/goal` state; OMC validates them for textual consistency with the plan's expected objective and ledger event, but it cannot independently observe Claude `/goal` state. They do not satisfy the PreToolUse `/goal` guard, which requires an actual active `/goal` — a host-injected snapshot or the native `/goal` the user set in-session.
- If the Claude `/goal` slash command is renamed or restructured, only the handoff wording needs to change; the reconciliation logic is name-agnostic.
</Important_Limitations>

## Parallel session caveats

- **Multi-repo workspace anchor:** drop a `.omc-workspace` marker at the parent directory so multiple sessions across sub-repos share one `.omc/`. Resolution order: `OMC_STATE_DIR > .omc-workspace > git > cwd`. See `docs/REFERENCE.md`.
- **Session id source:** OMC_SESSION_ID env var wins in CLI contexts; hook payload data.session_id wins in hook contexts.
- **Plan id (when applicable):** Two runs in the same workspace will conflict on shared plan artifacts. Use distinct session IDs (the hook payload session_id is already isolated per Claude Code session), or pass `--plan-id` to keep parallel ultragoal runs on separate ledgers.
- **Parallel verdict:** supported (each session writes its own session-scoped state)

© Yeachan-Heo · MIT · Yeachan-Heo/oh-my-claudecode

Похожие скиллы

Все скиллы по теме «Настройка агента: память, контекст, субагенты» →
task-estimator marks97 Скилл считает сроки задач по вашей же измеренной истории, а не по наитию модели. Пригодится, когда надо назвать ETA для фичи, бага или миграции. CX Codex +1 748установок openspec-apply-change openspec Скилл запускает пошаговую реализацию задач из спецификации OpenSpec в кодовой базе. Пригодится, когда нужно взять готовое изменение и выполнить пункты из плана разработки. CX Codex +1 4 000установок leanspec codervisor Учит агента вести разработку через спеки: сначала фиксируем замысел, потом код. Работает с markdown, GitHub Issues, Azure DevOps и Jira. CX Codex +1 1 000установок close-month официальный anthropics Закрывает бухгалтерские книги, сверяет транзакции с платёжными системами, обновляет прогноз на 30/60/90 дней и собирает пакет отчётов. CX Codex +1 1 800установок trade-accounting agipro Ведёт бухгалтерию торговых операций: журнал проводок, отчёт о прибылях, баланс и денежный поток. CX Codex +1 454установок cargo-orchestration getcargo Скилл запускает действия, воркфлоу и батчи в Cargo через CLI, рисует графы узлов и отвечает на SQL-запросы по таблицам запусков. CX Codex +1 9 900установок

Из того же набора28

self-improve Запускает автономный цикл улучшения кода: исследует репозиторий, проверяет планы и сравнивает результаты бенчмарков. Нужен для итераций по заданной метрике. CX Codex +1 736установок ask Скилл для маршрутизации промптов через локальные CLI разных моделей (Claude, Codex, Gemini, Cursor и других) с сохранением результатов как артефактов. CX Codex +1 716установок verify Скилл превращает «должно работать» в проверяемые доказательства: что запускали, что прошло, что осталось непроверенным. CX Codex +1 647установок skillify Превращает удачный многошаговый сценарий из текущей сессии в готовый черновик навыка с frontmatter и критериями проверки. CX Codex +1 643установок debug Находит причины сбоев в текущей сессии Claude Code или кодовой базе через анализ логов, трейсов и состояния агента. Пригодится при поломке хуков или сценариев. CX Codex +1 634установок remember Скилл помогает выбрать, куда отправить найденное знание: в память проекта, рабочие заметки или документацию. Спасает находки от затеривания в истории чата. CX Codex +1 623установок wiki Ведёт markdown-базу знаний по проекту в .omc/wiki/: страницы, индекс и журнал операций сохраняются между сессиями. CX Codex +1 614установок autoresearch Ведёт одну миссию по кругу: правка, прогон эвалюатора, запись результата в JSON и markdown-лог. Пригодится, когда нужен долгий перебор гипотез с историей, а не одна попытка. CX Codex +1 581установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой