framework_eng/skills/spec-writing/spec-standard/SKILL.md
A universal skill for writing specifications (SDD). Defines the spec structure, RFC 2119, and the quality checklist regardless of the task execution mode.
npx skillsauth add steelmorgan/1c-agent-based-dev-framework spec-standardInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill does not choose an execution mode (subagent/linear) - only the structure, RFC 2119, and the quality checklist.
| Task type | Spec needed | Rationale | |------------|-------------|-------------| | New functionality | MUST | Captures scope, requirements, alternatives, and the chosen solution. | | Bug fix with architectural impact | MUST | The change in structure/behavior must be justified. | | Simple local bug fix | MAY | A short description without a full spec is acceptable if the change is isolated. | | Large refactoring | SHOULD | Transparency about boundaries and consequences of the changes is needed. |
The specification MUST be written in Russian - section headings, descriptions, requirements, scenarios. The exception is code and metadata identifiers (module names, attributes, variables), which remain unchanged.
# SPEC-NNN: [Краткое название]
Статус: Черновик | Ревью | Утверждена | Реализована
Date: YYYY-MM-DD
## Контекст и постановка проблемы
## Requirements (RFC 2119)
### MUST
### SHOULD
### MAY
### MUST NOT
## Границы
### Входит в scope
### Не входит в scope
## Рассмотренные варианты
## Выбранное решение
## Технический дизайн
### Объекты метаданных (создаёт пользователь)
### Модули (пишет агент)
### Поток данных
## План тестирования (TDD)
### Тестовые пользователи (Test Users)
Если тесты (unit / BDD / integration) зависят от ролей, прав или контекста пользователя, спека ОБЯЗАНА содержать секцию «Test Users» (или эквивалент) со следующими правилами:
- Перечислять **только реально существующих** в целевой базе пользователей (логин + состав ролей + ссылка на источник: предзагруженный профиль, fixture, final-report связанной задачи и т.п.).
- **Запрещены placeholder-имена** («User1», «TestUser», «Manager_NoRole»), а также вымышленные ФИО без подтверждённого соответствия реальному аккаунту в базе («Сидоров», «Иванов» — если такого пользователя в базе нет).
- Для каждого test user указать минимум: логин, состав ролей, источник, тестовый сценарий-применение.
- Если подходящий пользователь **неизвестен** или **не существует** — Analyst задаёт `clarification_needed` пользователю в clarification round, а не выдумывает имя. Допустимо предложить пользователю кандидатов на создание (с указанием ролей), но имя должно быть подтверждено.
- Если test user должен быть **создан администратором** перед запуском (manual data prep) — это явно фиксируется отдельным пунктом в `manual-test-scenario.md` или эквивалентном артефакте, с описанием шагов создания.
**Почему:** placeholder-имена в спеке приводят к Vanessa-сценариям типа «Не смог подключить TestClient <Сидоров>» и проваливают весь Vanessa-уровень. Tester / Scenario-Coder не могут «угадать» реального пользователя и теряют часы на диагностику.
## Приёмочные сценарии (BDD)
## Открытые вопросы
## Журнал решений (ADR)
| Keyword | Meaning | Usage rule | |---------|---------|------------| | MUST | Mandatory | Without this, the requirement is considered unmet. | | SHOULD | Strongly recommended | Deviation is allowed only with explicit justification. | | MAY | Optional | An enhancement that does not block acceptance. | | MUST NOT | Prohibited | An explicit restriction, violation is unacceptable. |
Requirements must be:
For tasks with a specification, decomposition is mandatory (a separate JSON file Task Breakdown). The specification should include a link to the JSON and/or a brief summary.
The quality control process is outside this skill: task-breakdown (§3 Linear - self-check, §4 Subagent - cross-review).
Review checklist:
| Mistake | Consequence | |---------|-------------| | Mixing the problem and the solution in Context | It is unclear what needs to be fixed | | Vague requirements without RFC 2119 | The work cannot be accepted unambiguously | | Empty Out of scope | Scope creep | | Missing task decomposition | Weak traceability | | Contradictions Requirements ↔ Technical Design | Implementation errors |
tools
Diagnostics for Vanessa Automation runs. Use when a feature scenario failed, artifacts were not created, or you need to classify a failure after launch.
tools
Creating and refining Vanessa Automation feature scenarios based on real project requirements. Use when you need to write or update a scenario test, not just run it.
tools
--- name: v8-session-manager description: Use when working with the 1С session manager (v8-session-manager) - launch, configuration, connecting 1С clients, reading session_list, calling proxied MCP-tools from 1С extensions, diagnostics. Triggers: mention of `v8-session-manager`, `session_list`, 1С extension MCP showcase, error “no active sessions” / “session_id required”, connecting a client to the manager via `mcpMode=ws`. provides_capabilities: # Built-in manager tools — always available whi
tools
Use when Codex needs to manage v8-runner on local 1C projects through the CLI: configure v8project.yaml, initialize infobases or EDT workspaces, build sources from Designer or EDT, run syntax checks and tests, dump infobase changes, convert source formats, load or export artifacts, launch 1C clients, or choose safe 1C automation command sequences.