Skip to content
Back to skills

Openspec Workflow

ASecurity

Skill de governança SDLC com OpenSpec para desenvolvimento guiado por especificação (Spec-Driven Development). Use quando precisar planejar mudanças, executar opsx-propose, estruturar proposal.md, design.md e tasks.md, validar conformidade com openspec validate --strict e gerenciar o ciclo de vida de mudanças.

  • 6 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 20, 2026
ai-agentspythongobash

Works with

  • cli

Security analysis

A100/100

Scanned September 20, 2026

npx -y skills add emilianoeloi/cowboy --skill openspec-workflow --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Openspec Workflow?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Openspec Workflow
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/emilianoeloi-openspec-workflow/badge)](https://www.skillsdirectory.com/skills/emilianoeloi-openspec-workflow)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: openspec-workflow
description: Skill de governança SDLC com OpenSpec para desenvolvimento guiado por especificação (Spec-Driven Development). Use quando precisar planejar mudanças, executar opsx-propose, estruturar proposal.md, design.md e tasks.md, validar conformidade com openspec validate --strict e gerenciar o ciclo de vida de mudanças.
license: MIT
metadata:
  author: local
  version: "1.0"
---

# Skill — OpenSpec Workflow (SDLC)

Este skill define o padrão operacional do **OpenSpec** como framework obrigatório de especificação no SDLC (Software Development Life Cycle) do projeto.

---

## 🎯 Objetivo e Princípios

O OpenSpec estabelece o desenvolvimento guiado por especificação (*Spec-Driven Development*), garantindo que:
1. **Nenhum código é escrito sem especificação prévia.**
2. **Mudanças são atômicas, rastreáveis e versionadas em `openspec/changes/<change-name>/`.**
3. **O ciclo de vida da mudança é validado mecanicamente via CLI antes e depois da implementação.**
4. **Alinhamento com o Harness Gate**: O estado da mudança é sincronizado com o CLI de fases (`scripts/harness/phase_cli.py`).

---

## 📂 Estrutura de uma Change OpenSpec

Toda proposta de mudança reside em `openspec/changes/<change-name>/` e contém 4 artefatos canônicos:

```
openspec/changes/<change-name>/
├── .openspec.yaml    ← Metadados da change (schema, data, flags)
├── proposal.md       ← Motivação, escopo, capacidades e impacto
├── design.md         ← Decisões de arquitetura, contratos e alternativas
└── tasks.md          ← Checklist determinístico organizado por fases
```

---

## 🚀 Operações do Ciclo de Vida (SDLC)

### 1. `opsx-propose` (Proposição de Mudança)

Objetivo: Criar e validar os artefatos de planejamento sem tocar em código de produção.

#### Passo a Passo:
1. **Definir nome da change**: Formato estrito em kebab-case (ex.: `adicionar-operacao-modulo`, `implementar-funcao-logaritmo`).
2. **Definir fase no harness**:
   ```bash
   python3 scripts/harness/phase_cli.py set proposal <change-name>
   ```
   *Nota: O hook `pre-tool-write-guard.py` garante que apenas caminhos de planejamento (`openspec/`, `spdd/`) possam ser editados.*
3. **Criar diretório**: `openspec/changes/<change-name>/`.
4. **Criar `.openspec.yaml`**:
   ```yaml
   schema: spec-driven
   created: YYYY-MM-DD
   skip_specs: false # ou true se for documentação/tooling pura
   ```
5. **Criar `proposal.md`**:
   - `## Why`: Por que a mudança é necessária?
   - `## What Changes`: O que muda especificamente?
   - `## Capabilities`: Novas capacidades (`### New Capabilities`) e modificadas (`### Modified Capabilities`).
   - `## Impact`: Dependências, arquivos afetados, risco.
6. **Criar `design.md`**:
   - `## Context`: Estado atual do sistema.
   - `## Architecture & Design Decisions`: Decisões técnicas (ex.: variáveis COBOL em Working-Storage, novas instruções PROCEDURE DIVISION, tratamento de erro de divisão por zero).
   - `## Trade-offs & Alternatives Considered`: Alternativas avaliadas.
7. **Criar `tasks.md`**:
   Checklist hierárquico estruturado pelas fases:
   - `## 1. Fase 1 - Propose (OpenSpec)`
   - `## 2. Fase 2 - Analysis (OpenSPDD)`
   - `## 3. Fase 3 - Canvas (OpenSPDD REASONS)`
   - `## 4. Fase 4 - Generate (Implementação COBOL)`
   - `## 5. Fase 5 - Review & Docs (Validação)`
8. **Validar a Change**:
   ```bash
   openspec validate <change-name> --strict
   ```

---

### 2. `opsx-apply` (Acompanhamento e Conclusão)

Objetivo: Validar que todas as tarefas foram cumpridas pelo agente de código e que a mudança está pronta para archive.

#### Passo a Passo:
1. O agente de implementação marca as tarefas concluídas em `tasks.md`:
   ```markdown
   - [x] 1.1 Criar proposta OpenSpec
   - [x] 2.1 Concluir análise SPDD
   - [x] 3.1 Gerar REASONS Canvas
   - [x] 4.1 Implementar em src/CALCULADORA.cbl
   - [x] 4.2 Compilar com cobc -x
   - [x] 4.3 Passar nas fitness functions (make fitness)
   ```
2. Executar validação final:
   ```bash
   openspec validate <change-name> --strict
   ```

---

### 3. `opsx-archive` (Opcional - Arquivamento)

Quando a change é finalizada e mergeada:
```bash
openspec archive <change-name>
```

---

## 🛡️ Regras de Ouro OpenSpec

1. **Nunca pule `openspec validate <change-name> --strict`**. Se a validação falhar, o plano é inválido.
2. **Kebab-case obrigatório**: Sempre use nomes em minúsculas com hífen.
3. **Tarefas atômicas**: Cada item em `tasks.md` deve ser verificável com sim/não.
4. **Zero código na proposal**: Não edite `src/` ou `docs/` durante a fase `proposal`.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.