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

openspec-sync-specs · lis186 — скилл для Claude Code: установка и работа

Скилл переносит изменения из delta-спецификаций в основные спецификации OpenSpec, сохраняя остальные требования. Изменения остаются активными, без архивации.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add lis186/ccxray --skill openspec-sync-specs -a claude-code
Открыть на GitHub

Что делает openspec-sync-specs

Скилл синхронизирует спецификации из каталога изменений OpenSpec с основными файлами проекта. Он читает описания добавленных, изменённых, удалённых и переименованных требований, затем вносит соответствующие правки в openspec/specs/. При этом существующие сценарии и разделы, которых не касаются изменения, сохраняются.

Если имя изменения не задано, скилл получает список через openspec list --json и предлагает пользователю выбрать вариант. Автоматически выбирать изменение нельзя. Для каждой спецификации он сопоставляет delta-файл с основной версией, а при отсутствии основной спецификации создаёт её с разделами Purpose и Requirements. В конце показывает, какие требования добавлены, изменены, удалены или переименованы.

Для работы требуется установленный openspec CLI. Скилл не архивирует изменение: оно остаётся активным до отдельной архивации после завершения реализации. Повторный запуск рассчитан на сохранение того же результата.

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

  • Перенести новые требования из delta-спецификации в основную
  • Добавить сценарий к существующему требованию без копирования всего блока
  • Обновить формулировки и сценарии изменённых требований
  • Удалить устаревшие требования или переименовать их
  • Создать основную спецификацию для новой возможности

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

  • Синхронизируй изменения из OpenSpec в основные спецификации для изменения add-user-profiles.
  • Посмотри доступные изменения через OpenSpec и предложи мне выбрать, чьи требования нужно перенести.
  • Примени новые сценарии из delta-спецификаций, сохрани остальные требования и покажи итоговые правки.

Как установить openspec-sync-specs

1Через Skills CLI (Vercel)

npx skills add lis186/ccxray --skill openspec-sync-specs -a claude-code

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

~/.claude/skills/openspec-sync-specs/SKILL.md

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

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

Вопросы о openspec-sync-specs

Как установить openspec-sync-specs в Claude Code?

Выполни npx skills add lis186/ccxray --skill openspec-sync-specs -a claude-code. Файл скилла будет доступен по пути ~/.claude/skills/openspec-sync-specs/SKILL.md.

Что делает openspec-sync-specs?

Он переносит изменения из delta-спецификаций в основные файлы OpenSpec, сохраняя незатронутые требования и сценарии. После синхронизации изменение остаётся активным.

Нужно ли архивировать изменение после синхронизации?

Нет, скилл не архивирует изменение. Архивацию можно выполнить отдельно после завершения реализации.

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

SKILL.md · MIT
---
name: openspec-sync-specs
description: Sync delta specs from a change to main specs. Use when the user wants to update main specs with changes from a delta spec, without archiving the change.
license: MIT
compatibility: Requires openspec CLI.
metadata:
  author: openspec
  version: "1.0"
  generatedBy: "1.2.0"
---

Sync delta specs from a change to main specs.

This is an **agent-driven** operation - you will read delta specs and directly edit main specs to apply the changes. This allows intelligent merging (e.g., adding a scenario without copying the entire requirement).

**Input**: Optionally specify a change name. If omitted, check if it can be inferred from conversation context. If vague or ambiguous you MUST prompt for available changes.

**Steps**

1. **If no change name provided, prompt for selection**

   Run `openspec list --json` to get available changes. Use the **AskUserQuestion tool** to let the user select.

   Show changes that have delta specs (under `specs/` directory).

   **IMPORTANT**: Do NOT guess or auto-select a change. Always let the user choose.

2. **Find delta specs**

   Look for delta spec files in `openspec/changes/<name>/specs/*/spec.md`.

   Each delta spec file contains sections like:
   - `## ADDED Requirements` - New requirements to add
   - `## MODIFIED Requirements` - Changes to existing requirements
   - `## REMOVED Requirements` - Requirements to remove
   - `## RENAMED Requirements` - Requirements to rename (FROM:/TO: format)

   If no delta specs found, inform user and stop.

3. **For each delta spec, apply changes to main specs**

   For each capability with a delta spec at `openspec/changes/<name>/specs/<capability>/spec.md`:

   a. **Read the delta spec** to understand the intended changes

   b. **Read the main spec** at `openspec/specs/<capability>/spec.md` (may not exist yet)

   c. **Apply changes intelligently**:

      **ADDED Requirements:**
      - If requirement doesn't exist in main spec → add it
      - If requirement already exists → update it to match (treat as implicit MODIFIED)

      **MODIFIED Requirements:**
      - Find the requirement in main spec
      - Apply the changes - this can be:
        - Adding new scenarios (don't need to copy existing ones)
        - Modifying existing scenarios
        - Changing the requirement description
      - Preserve scenarios/content not mentioned in the delta

      **REMOVED Requirements:**
      - Remove the entire requirement block from main spec

      **RENAMED Requirements:**
      - Find the FROM requirement, rename to TO

   d. **Create new main spec** if capability doesn't exist yet:
      - Create `openspec/specs/<capability>/spec.md`
      - Add Purpose section (can be brief, mark as TBD)
      - Add Requirements section with the ADDED requirements

4. **Show summary**

   After applying all changes, summarize:
   - Which capabilities were updated
   - What changes were made (requirements added/modified/removed/renamed)

**Delta Spec Format Reference**

```markdown
## ADDED Requirements

### Requirement: New Feature
The system SHALL do something new.

#### Scenario: Basic case
- **WHEN** user does X
- **THEN** system does Y

## MODIFIED Requirements

### Requirement: Existing Feature
#### Scenario: New scenario to add
- **WHEN** user does A
- **THEN** system does B

## REMOVED Requirements

### Requirement: Deprecated Feature

## RENAMED Requirements

- FROM: `### Requirement: Old Name`
- TO: `### Requirement: New Name`
```

**Key Principle: Intelligent Merging**

Unlike programmatic merging, you can apply **partial updates**:
- To add a scenario, just include that scenario under MODIFIED - don't copy existing scenarios
- The delta represents *intent*, not a wholesale replacement
- Use your judgment to merge changes sensibly

**Output On Success**

```
## Specs Synced: <change-name>

Updated main specs:

**<capability-1>**:
- Added requirement: "New Feature"
- Modified requirement: "Existing Feature" (added 1 scenario)

**<capability-2>**:
- Created new spec file
- Added requirement: "Another Feature"

Main specs are now updated. The change remains active - archive when implementation is complete.
```

**Guardrails**
- Read both delta and main specs before making changes
- Preserve existing content not mentioned in delta
- If something is unclear, ask for clarification
- Show what you're changing as you go
- The operation should be idempotent - running twice should give same result

© openspec · MIT · lis186/ccxray

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

Все скиллы по теме «Тексты и документация» →

Сначала — openspec-sync-specs от других авторов.

openspec-sync-specs openspec Переносит дельта-спецификации из активного изменения OpenSpec в основные файлы требований без отправки задачи в архив. CX Codex +1 3 800установок grill-with-docs Matt Pocock Скилл проводит жёсткое интервью по плану или дизайну и по ходу создаёт ADR и глоссарий. Подойдёт перед началом сложной разработки. 1 219 756установок skill-creator официальный anthropics Помогает создать новый скилл, доработать существующий и проверить результат через тестовые промпты и оценки. 414 180установок setup-matt-pocock-skills Matt Pocock Скилл настраивает репозиторий для инженерных скиллов Matt Pocock: задаёт трекер задач, метки триажа и расположение доменной документации. Запустите его перед первым использованием остальных скиллов. 1 052 851установок handoff Matt Pocock Собирает текущий диалог в документ передачи, чтобы другой агент продолжил работу с нужным контекстом. Нужен при смене сессии или исполнителя. 1 038 491установок triage Matt Pocock Скилл проводит issue и внешние PR через роли триажа, проверку и подготовку брифа для агента. Подойдёт мейнтейнеру, который разбирает очередь задач. 990 453установок domain-modeling Matt Pocock Скилл помогает уточнять термины проекта, вести GLOSSARY.md и фиксировать архитектурные решения в ADR. Нужен, когда модель предметной области меняется. 876 391установок

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

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

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