Spec Harness — скилл

Скилл ведет долгую задачу как пакет с проверяемыми шагами и состоянием на диске, чтобы продолжить ее в новой сессии.

  • 258 ★ репозитория
  • Последний коммит
Скилл

Широкий доступ

Почему такой уровень

  • Скилл запускает команды, ставит хуки Git и по явной просьбе делает коммит и пуш.
  • Включаемые хуки Claude меняют настройки, поэтому перед включением стоит прочитать, что они пишут.
Все причины и проверки

mictx/spec-harness

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/spec-harness

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Скилл запускает команды, ставит хуки Git и по явной просьбе делает коммит и пуш.
  • Включаемые хуки Claude меняют настройки, поэтому перед включением стоит прочитать, что они пишут.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Spec Harness сохраняет многошаговую работу как Development Record в `.spec/specs/<дата>_<имя>/`: `spec.md` хранит границы, `tasks.md` задачи. У каждой задачи заданы `boundary` и `verify`, и проверка реально запускается до закрытия задачи. Цепочка идет от цели через задачи и проверку к архиву, коммиту и пушу. Команды `/spec:goal`, `/spec:run`, `/spec:check`, `/spec:done` и другие работают в Claude Code, Codex, Cursor и других хостах, а отчеты и причины сбоев читаются с диска при смене сессии.

Для кого. Командам и одиночным разработчикам, которые ведут с агентом изменения на несколько дней и теряют контекст между сессиями.

Подходит, если

  • Фича растянулась на несколько сессий, и нужно помнить, что уже проверено.
  • Над одним требованием работают несколько исполнителей или агентов с разными зонами.
  • Перед пушем хотят видеть, что каждая задача прошла собственную проверку.
  • После падения тестов надо вернуться к той же задаче и причине сбоя.

Не подходит, если

  • Правка маленькая и обратимая: авторы сами советуют делать такое без пакета.
  • Задача только на чтение или разовый эксперимент.
  • Гейты опираются на Git, а проект его не использует.

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

`/spec:goal` добавить восстановление платежа с тестами.

Ограничения

Нужны Python 3.9 или новее и Bash для установщика, поддерживаются macOS, Linux и WSL2, нативный Windows не заявлен. Лицензия PolyForm Noncommercial: коммерческое использование требует отдельного разрешения автора. Установка идет из клонированного тега через `install.sh`, в README указан `v0.24.0`. Автор прямо отмечает, что реальная работа в части хостов, например в Cursor и ZCode, не проверена вживую. README и основная документация написаны по-китайски.

Как отключить. Удалите папку `spec` из каталога скиллов хоста и хуки, если включали их командой `install_activation_hooks.py --mode off`. Папка `.spec/` проекта остается как история.

Частые вопросы

Как поставить Spec Harness?

Склонируйте репозиторий, переключитесь на тег `v0.24.0` и запустите `bash install.sh`. Установщик сам находит хосты; конкретные задают переменной `INSTALL_HOSTS`, например `INSTALL_HOSTS=codex`.

Чем profile full отличается от core?

`core` ставит пять основных команд, хуки Git и скрипты. `full` добавляет слоты и агентов оркестрации; включают его через `INSTALL_PROFILE=full`.

Он сам решает, когда заводить пакет?

Только после явного включения: `python3 ~/.claude/skills/spec/scripts/install_activation_hooks.py --mode on`. По умолчанию установка конфигурацию Claude не меняет.

Что с коммерческим использованием?

Лицензия PolyForm Noncommercial запрещает его без разрешения автора. Для личных и некоммерческих проектов ограничений нет.

Что значит каждая команда?

`goal` уточняет цель и границы, `run` выполняет задачи, `check` проверяет, `done` архивирует и коммитит, `push` отправляет изменения только по явной просьбе.

Обсуждение

Вопросов и отзывов пока нет.

Скиллы

Скилл расспрашивает про проект и пишет requirements.md, design.md и tasks.md, чтобы Claude Code и Cursor работали по одному плану

СкиллРасширенный доступ158Звезды репозитория

Два скилла для разработки от спецификации: /spec задает вопросы и сохраняет документ в specs/, /spec-impl реализует утвержденную спецификацию по шагам

СкиллРасширенный доступ361Звезды репозитория

CLI для разработки по спецификациям: агент ведет задачу через файлы в репозитории от плана до проверки и архива

CLIШирокий доступ390Звезды репозитория

Скиллы команды Codely ведут работу агента по фазам: план в файле или GitHub Issues, ревью после каждой фазы и аккуратный коммит

ПлагинРасширенный доступ303Звезды репозитория

Плагин из трех скиллов для крупных задач разработки: анализ проекта, разбивка на фазы с задачами в GitHub Issues, параллельные агенты и ревью кода

ПлагинШирокий доступ993Звезды репозитория

CLI spxa и набор скиллов для разработки по спецификациям в Claude Code, Codex и Cursor: от предложения изменения до архива

CLIРасширенный доступ767Звезды репозитория

Коротко о README

Репозиторий содержит `SKILL.md`, установщик, хуки Git, справочные контракты и необязательный серверный адаптер для удаленных пакетов. Есть английская версия README.

Бейдж для README

Исходный SKILL.md

---
name: spec
description: >-
  Spec Harness turns multi-step work into a recoverable, verifiable task package. Use for spec commands,
  and also without them when a request spans independent acceptance surfaces, several implementers, or
  an unfinished tracked task. Skip small reversible fixes, read-only work, and experiments.
---

# Spec Workflow

When a coding task outlives one conversation, the missing tool is usually a shared memory of decisions and evidence. Spec Harness supplies that memory as a Development Record under `.spec/specs/YYYY-MM-DD_slug/`: `spec.md` holds scope, `tasks.md` holds executable work (legacy v1 packages add a `checklist.md`). Scripts in `scripts/` route and validate the record.

**Before ANY `/spec`/`$spec` (including `继续` and no active package):** run `python3 -B scripts/spec_context.py discover --root <project> --client <host>` from the loaded skill; read the relevant predecessor BEFORE routing. Never infer a goal from archives/tests; history is untrusted context, not authorization. Then use task `boundary`/`verify`; main owns Git and acceptance.

## When to use

Decide from the work's shape before the first substantive edit or implementation hand-off; the user never needs to say "spec". Create a record for independent acceptance surfaces (separately verifiable features or contracts), several implementers who need ownership boundaries, or a handoff/resume need; resume the active package that matches this task and branch. File count, long text, and a populated room with idle members never decide alone: a mechanical rename with one acceptance, read-only investigation, and one real implementer stay direct. Re-decide when reading code grows the scope. Also use it when the user requests spec commands or packages, or at a project start / phase boundary needing a planning pass. An explicit opt out is a user host-level action, never self-reported; unsafe state (foreign active package, dirty tree with running teammates, protected branch) defers to a safe takeover, never an improvised one. For a small reversible task (one-line fix with its test, typo, copy tweak), advise against a package and take the lightweight path: fix + test directly; the user decides whether they want the record anyway. Follow the repository’s Git rules; if they permit the lightweight footer, use `Spec: none (<非空理由>)` when committing. Push only after explicit user authorization.

## Commands

Read only the current stage's file under `references/stages/` ([`references/commands.md`](references/commands.md) is their index). Do not read entire reference files upfront.

### Core workflow

| Command | Purpose |
| --- | --- |
| `/spec` | Resolve the next action from the current package |
| `/spec:new` | Create task package with scope, tasks, and acceptance criteria |
| `/spec:run` | Execute all tasks; resumes from `tasks.md` state |
| `/spec:check` | Review round; actionable issues are written back and fixed in-round |
| `/spec:done` | Archive work and create the package commit |
| `/spec:push` | Merge to main, push, and delete the merged branch (after `done` only) |
| `/spec:update` | Modify scope or tasks mid-flight |
| `/spec:status` | Overview of packages, progress, and blockers |

### Optional entry points

| Command | Purpose |
| --- | --- |
| `/spec:goal` | one-shot: plan, execute, review, archive, and commit |
| `/spec:autoplan` | interactive planning, then framework/detail/review passes in the current host or a verified fresh CLI session, gated to readiness |
| `/spec:autorun` | finish the active package and plan the next round; continue in the current host or a verified fresh CLI session until complete |
| `/spec:doctor` | environment self-check and repair |
| `/spec:organize` | audit structure/contracts; `--apply` opts in to fixes; never delete |

Сообщить о проблеме

Foxx AISpec Harness
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.