spec-design
/spec-design
Pisze artefakty OpenSpec design.md i tasks.md dla funkcji opartej na specyfikacji, czyli projekt techniczny i listę zadań.
- Autor
- komluk ↗
- Repozytorium
- scaffolding ↗
- Licencja
- MIT
- Ostatnia zmiana repozytorium
- 27.10.2026
Ocena i bezpieczeństwo
- Pliki w paczce
- 1
- Skrypty
- 0
- Komentarze HTML
- 0
- Adresy URL w SKILL.md
- 0
Brak sygnałów. Repozytorium zmienione 27.10.2026, bez odwołań do wycofanych modeli i API.
MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.
Co robi i kiedy
Pisze artefakty OpenSpec design.md i tasks.md dla funkcji opartej na specyfikacji, czyli projekt techniczny i listę zadań.
Oryginalny opis (EN)
Write OpenSpec design.md and tasks.md artifacts. TRIGGER when: producing a technical design or task checklist for a spec-driven feature. SKIP: writing proposal.md (use spec-research); executing tasks.md (use spec-develop).
Jak działa
- Prerequisite
- design.md
- tasks.md
- Quality Checklist
Podgląd SKILL.md
---
name: spec-design
description: "Write OpenSpec design.md and tasks.md artifacts. TRIGGER when: producing a technical design or task checklist for a spec-driven feature. SKIP: writing proposal.md (use spec-research); executing tasks.md (use spec-develop)."
---
# OpenSpec Design & Tasks Writing
Guide for creating `design.md` (WHAT + HOW) and `tasks.md` (implementation checklist).
## Prerequisite
Read `{specs_path}/proposal.md` first. Reference its capabilities and impact sections.
**Path Enforcement**: The `specs_path` MUST be `.scaffolding/conversations/{UUID}/specs/` where `{UUID}` is a valid UUID (format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`). NEVER use descriptive folder names.
`.scaffolding/conversations/` is a symlink to `<share>/projects/<repo-name>/conversations` (paths below are unchanged; always go through the symlink).
## design.md
### Output Path
Write to: `{specs_path}/design.md`
### Required Sections
| Section | Purpose | Format |
|---------|---------|--------|
| **Context** | Background, current state, constraints | Prose |
| **Goals / Non-Goals** | Scope boundaries | Bullet lists |
| **Specifications** | Requirements + scenarios | GIVEN/WHEN/THEN |
| **Decisions** | Technical choices + rationale | Decision: Why X over Y |
| **Risks / Trade-offs** | Known limitations | [Risk] -> Mitigation |
| **Migration Plan** | Deploy + rollback steps | Checklist (if applicable) |
| **Open Questions** | Unresolved items | Numbered list |
### Specification Format
```markdown
### Requirement: user-session-timeout
The system SHALL terminate idle sessions after 30 minutes.
#### Scenario: session expires after inactivity
- **GIVEN** a user has an active session
- **WHEN** no activity occurs for 30 minutes
- **THEN** the session is invalidated and user is redirected to login
```
Rules:
- Use SHALL/MUST for normative requirements (avoid should/may)
- Every requirement MUST have at least one scenario
- Each scenario is a potential test case
- Map capabilities from proposal.md to requirement groups
### Decision Format
```markdown
## Decisions
### Use Redis for session storage
**Alternatives**: PostgreSQL, in-memory
**Rationale**: Sub-millisecond lookups, built-in TTL, already in stack
```
### Scaffolding Constraints
Include in all designs:
- Max 200 lines per Edit operation
- Files must stay under 500 lines
- Backend validation: `pytest`; Frontend: `npm run validate`
- Map steps to specific workflow chain agents
## tasks.md
### Output Path
Write to: `{specs_path}/tasks.md`
### Format Rules
| Rule | Detail |
|------|--------|
| Group by `## N. Group Name` | Numbered headings |
| Checkbox per task | `- [ ] N.M Task description` |
| Dependency order | Tasks ordered by what must come first |
| File paths | Include target file path in task |
| Acceptance criteria | Each task independently verifiable |
| Validation step | Include `pytest` / `npm run validate` per group |
| Size | Each task completable in one session |
### Template
```markdown
## 1. Setup
- [ ] 1.1 Create `./backend` module structure
- [ ] 1.2 Add dependencies to `requirements.txt`
## 2. Core Implementation
- [ ] 2.1 Implement service in `./backend/service.py`
- [ ] 2.2 Add Pydantic schemas in `./backend/schemas.py`
- [ ] 2.3 Add router in `./backend/router.py`
- [ ] 2.4 Run validation: `pytest`
## 3. Frontend + Tests
- [ ] 3.1 Add types to `app/frontend/src/types/index.ts`
- [ ] 3.2 Create component, add unit + integration tests
- [ ] 3.3 Run validation: `npm run validate && pytest`
```
## Quality Checklist
- [ ] design.md references proposal.md capabilities
- [ ] Every requirement has GIVEN/WHEN/THEN scenarios
- [ ] Decisions include alternatives considered
- [ ] Risks have specific mitigations
- [ ] tasks.md uses checkbox format (`- [ ]`)
- [ ] Tasks ordered by dependency
- [ ] Each group has a validation step
- [ ] File paths included in task descriptions
Wersje
| Repozytorium | Wynik | Licencja |
|---|---|---|
| Ta strona · komluk/scaffolding | 100 | MIT |
| kamioj/spec-workflow | 90 | MIT |
Migawka bazy z 28.10.2026 · wersja paczki b08851f89b8a (skrót SHA-256 całej paczki)
Pobrania w ostatnich 30 dniach: 0 · ranking
Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.
Podobne skille
- 100spec-review
Weryfikuje wykonaną pracę względem artefaktów OpenSpec, design.md i tasks.md, bez przeglądu zabezpieczeń. - 100spec-research
Pisze artefakt proposal.md w OpenSpec z uzasadnieniem, zakresem i wpływem funkcji, bez projektu technicznego. - 100spec-propose
Przygotowuje artefakty zmiany OpenSpec na nowej gałęzi: proposal.md, delta specs, design.md i tasks.md, instaluje reguły fal dla równoległych zadań, waliduje i commituje. - 100spec
Ocenia rozmiar zmiany i pisze właściwe dokumenty specyfikacji: projekt, propozycję, zadania albo walidację, przed kodowaniem. - 100openspec
Konfiguruje OpenSpec, narzędzie CLI, w którym agent kodujący pisze plan do przeglądu przed zmianą kodu: propozycję, wymagania ze scenariuszami, projekt i listę zadań, z walidacją i archiwizacją zmian. - 100openspec-design
Tworzy artefakty projektowe OpenSpec: design.md, kontrolę kontekstów ograniczonych oraz diagramy C4, ER lub przepływu przed zadaniami.