@dynamicworks/br-openspec 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/README.md +210 -0
- package/README.pt-BR.md +212 -0
- package/bin/openspec.js +3 -0
- package/dist/cli/index.d.ts +2 -0
- package/dist/cli/index.js +484 -0
- package/dist/commands/change.d.ts +35 -0
- package/dist/commands/change.js +278 -0
- package/dist/commands/completion.d.ts +72 -0
- package/dist/commands/completion.js +258 -0
- package/dist/commands/config.d.ts +36 -0
- package/dist/commands/config.js +553 -0
- package/dist/commands/feedback.d.ts +9 -0
- package/dist/commands/feedback.js +184 -0
- package/dist/commands/schema.d.ts +6 -0
- package/dist/commands/schema.js +869 -0
- package/dist/commands/show.d.ts +14 -0
- package/dist/commands/show.js +133 -0
- package/dist/commands/spec.d.ts +15 -0
- package/dist/commands/spec.js +226 -0
- package/dist/commands/tools.d.ts +11 -0
- package/dist/commands/tools.js +252 -0
- package/dist/commands/validate.d.ts +24 -0
- package/dist/commands/validate.js +295 -0
- package/dist/commands/workflow/index.d.ts +17 -0
- package/dist/commands/workflow/index.js +12 -0
- package/dist/commands/workflow/instructions.d.ts +29 -0
- package/dist/commands/workflow/instructions.js +328 -0
- package/dist/commands/workflow/new-change.d.ts +11 -0
- package/dist/commands/workflow/new-change.js +44 -0
- package/dist/commands/workflow/schemas.d.ts +10 -0
- package/dist/commands/workflow/schemas.js +35 -0
- package/dist/commands/workflow/shared.d.ts +57 -0
- package/dist/commands/workflow/shared.js +117 -0
- package/dist/commands/workflow/status.d.ts +14 -0
- package/dist/commands/workflow/status.js +76 -0
- package/dist/commands/workflow/templates.d.ts +16 -0
- package/dist/commands/workflow/templates.js +70 -0
- package/dist/core/archive.d.ts +11 -0
- package/dist/core/archive.js +322 -0
- package/dist/core/artifact-graph/graph.d.ts +56 -0
- package/dist/core/artifact-graph/graph.js +141 -0
- package/dist/core/artifact-graph/index.d.ts +8 -0
- package/dist/core/artifact-graph/index.js +14 -0
- package/dist/core/artifact-graph/instruction-loader.d.ts +143 -0
- package/dist/core/artifact-graph/instruction-loader.js +217 -0
- package/dist/core/artifact-graph/outputs.d.ts +14 -0
- package/dist/core/artifact-graph/outputs.js +39 -0
- package/dist/core/artifact-graph/resolver.d.ts +81 -0
- package/dist/core/artifact-graph/resolver.js +258 -0
- package/dist/core/artifact-graph/schema.d.ts +13 -0
- package/dist/core/artifact-graph/schema.js +108 -0
- package/dist/core/artifact-graph/state.d.ts +12 -0
- package/dist/core/artifact-graph/state.js +31 -0
- package/dist/core/artifact-graph/types.d.ts +45 -0
- package/dist/core/artifact-graph/types.js +43 -0
- package/dist/core/available-tools.d.ts +17 -0
- package/dist/core/available-tools.js +43 -0
- package/dist/core/command-generation/adapters/amazon-q.d.ts +13 -0
- package/dist/core/command-generation/adapters/amazon-q.js +26 -0
- package/dist/core/command-generation/adapters/antigravity.d.ts +13 -0
- package/dist/core/command-generation/adapters/antigravity.js +26 -0
- package/dist/core/command-generation/adapters/auggie.d.ts +13 -0
- package/dist/core/command-generation/adapters/auggie.js +27 -0
- package/dist/core/command-generation/adapters/bob.d.ts +14 -0
- package/dist/core/command-generation/adapters/bob.js +45 -0
- package/dist/core/command-generation/adapters/claude.d.ts +13 -0
- package/dist/core/command-generation/adapters/claude.js +50 -0
- package/dist/core/command-generation/adapters/cline.d.ts +14 -0
- package/dist/core/command-generation/adapters/cline.js +27 -0
- package/dist/core/command-generation/adapters/codebuddy.d.ts +13 -0
- package/dist/core/command-generation/adapters/codebuddy.js +28 -0
- package/dist/core/command-generation/adapters/codex.d.ts +16 -0
- package/dist/core/command-generation/adapters/codex.js +39 -0
- package/dist/core/command-generation/adapters/continue.d.ts +13 -0
- package/dist/core/command-generation/adapters/continue.js +28 -0
- package/dist/core/command-generation/adapters/costrict.d.ts +13 -0
- package/dist/core/command-generation/adapters/costrict.js +27 -0
- package/dist/core/command-generation/adapters/crush.d.ts +13 -0
- package/dist/core/command-generation/adapters/crush.js +30 -0
- package/dist/core/command-generation/adapters/cursor.d.ts +14 -0
- package/dist/core/command-generation/adapters/cursor.js +44 -0
- package/dist/core/command-generation/adapters/factory.d.ts +13 -0
- package/dist/core/command-generation/adapters/factory.js +27 -0
- package/dist/core/command-generation/adapters/gemini.d.ts +13 -0
- package/dist/core/command-generation/adapters/gemini.js +26 -0
- package/dist/core/command-generation/adapters/github-copilot.d.ts +13 -0
- package/dist/core/command-generation/adapters/github-copilot.js +26 -0
- package/dist/core/command-generation/adapters/iflow.d.ts +13 -0
- package/dist/core/command-generation/adapters/iflow.js +29 -0
- package/dist/core/command-generation/adapters/index.d.ts +32 -0
- package/dist/core/command-generation/adapters/index.js +32 -0
- package/dist/core/command-generation/adapters/junie.d.ts +13 -0
- package/dist/core/command-generation/adapters/junie.js +26 -0
- package/dist/core/command-generation/adapters/kilocode.d.ts +14 -0
- package/dist/core/command-generation/adapters/kilocode.js +23 -0
- package/dist/core/command-generation/adapters/kiro.d.ts +13 -0
- package/dist/core/command-generation/adapters/kiro.js +26 -0
- package/dist/core/command-generation/adapters/lingma.d.ts +13 -0
- package/dist/core/command-generation/adapters/lingma.js +30 -0
- package/dist/core/command-generation/adapters/opencode.d.ts +13 -0
- package/dist/core/command-generation/adapters/opencode.js +29 -0
- package/dist/core/command-generation/adapters/pi.d.ts +18 -0
- package/dist/core/command-generation/adapters/pi.js +55 -0
- package/dist/core/command-generation/adapters/qoder.d.ts +13 -0
- package/dist/core/command-generation/adapters/qoder.js +30 -0
- package/dist/core/command-generation/adapters/qwen.d.ts +13 -0
- package/dist/core/command-generation/adapters/qwen.js +26 -0
- package/dist/core/command-generation/adapters/roocode.d.ts +14 -0
- package/dist/core/command-generation/adapters/roocode.js +27 -0
- package/dist/core/command-generation/adapters/windsurf.d.ts +14 -0
- package/dist/core/command-generation/adapters/windsurf.js +51 -0
- package/dist/core/command-generation/generator.d.ts +21 -0
- package/dist/core/command-generation/generator.js +27 -0
- package/dist/core/command-generation/index.d.ts +22 -0
- package/dist/core/command-generation/index.js +24 -0
- package/dist/core/command-generation/registry.d.ts +36 -0
- package/dist/core/command-generation/registry.js +98 -0
- package/dist/core/command-generation/types.d.ts +56 -0
- package/dist/core/command-generation/types.js +8 -0
- package/dist/core/completions/command-registry.d.ts +7 -0
- package/dist/core/completions/command-registry.js +462 -0
- package/dist/core/completions/completion-provider.d.ts +60 -0
- package/dist/core/completions/completion-provider.js +102 -0
- package/dist/core/completions/factory.d.ts +64 -0
- package/dist/core/completions/factory.js +75 -0
- package/dist/core/completions/generators/bash-generator.d.ts +32 -0
- package/dist/core/completions/generators/bash-generator.js +174 -0
- package/dist/core/completions/generators/fish-generator.d.ts +32 -0
- package/dist/core/completions/generators/fish-generator.js +157 -0
- package/dist/core/completions/generators/powershell-generator.d.ts +33 -0
- package/dist/core/completions/generators/powershell-generator.js +208 -0
- package/dist/core/completions/generators/zsh-generator.d.ts +44 -0
- package/dist/core/completions/generators/zsh-generator.js +250 -0
- package/dist/core/completions/installers/bash-installer.d.ts +87 -0
- package/dist/core/completions/installers/bash-installer.js +319 -0
- package/dist/core/completions/installers/fish-installer.d.ts +43 -0
- package/dist/core/completions/installers/fish-installer.js +143 -0
- package/dist/core/completions/installers/powershell-installer.d.ts +102 -0
- package/dist/core/completions/installers/powershell-installer.js +400 -0
- package/dist/core/completions/installers/zsh-installer.d.ts +125 -0
- package/dist/core/completions/installers/zsh-installer.js +450 -0
- package/dist/core/completions/templates/bash-templates.d.ts +6 -0
- package/dist/core/completions/templates/bash-templates.js +24 -0
- package/dist/core/completions/templates/fish-templates.d.ts +7 -0
- package/dist/core/completions/templates/fish-templates.js +39 -0
- package/dist/core/completions/templates/powershell-templates.d.ts +6 -0
- package/dist/core/completions/templates/powershell-templates.js +25 -0
- package/dist/core/completions/templates/zsh-templates.d.ts +6 -0
- package/dist/core/completions/templates/zsh-templates.js +36 -0
- package/dist/core/completions/types.d.ts +79 -0
- package/dist/core/completions/types.js +2 -0
- package/dist/core/config-prompts.d.ts +9 -0
- package/dist/core/config-prompts.js +34 -0
- package/dist/core/config-schema.d.ts +86 -0
- package/dist/core/config-schema.js +213 -0
- package/dist/core/config.d.ts +18 -0
- package/dist/core/config.js +38 -0
- package/dist/core/converters/json-converter.d.ts +6 -0
- package/dist/core/converters/json-converter.js +51 -0
- package/dist/core/global-config.d.ts +44 -0
- package/dist/core/global-config.js +125 -0
- package/dist/core/index.d.ts +2 -0
- package/dist/core/index.js +3 -0
- package/dist/core/init.d.ts +37 -0
- package/dist/core/init.js +549 -0
- package/dist/core/is-project-initialized.d.ts +12 -0
- package/dist/core/is-project-initialized.js +18 -0
- package/dist/core/legacy-cleanup.d.ts +162 -0
- package/dist/core/legacy-cleanup.js +515 -0
- package/dist/core/list.d.ts +9 -0
- package/dist/core/list.js +172 -0
- package/dist/core/migration.d.ts +23 -0
- package/dist/core/migration.js +109 -0
- package/dist/core/parsers/change-parser.d.ts +13 -0
- package/dist/core/parsers/change-parser.js +197 -0
- package/dist/core/parsers/markdown-parser.d.ts +26 -0
- package/dist/core/parsers/markdown-parser.js +228 -0
- package/dist/core/parsers/requirement-blocks.d.ts +37 -0
- package/dist/core/parsers/requirement-blocks.js +201 -0
- package/dist/core/parsers/spec-structure.d.ts +9 -0
- package/dist/core/parsers/spec-structure.js +88 -0
- package/dist/core/profile-sync-drift.d.ts +38 -0
- package/dist/core/profile-sync-drift.js +200 -0
- package/dist/core/profiles.d.ts +26 -0
- package/dist/core/profiles.js +40 -0
- package/dist/core/project-config.d.ts +64 -0
- package/dist/core/project-config.js +224 -0
- package/dist/core/schemas/base.schema.d.ts +13 -0
- package/dist/core/schemas/base.schema.js +13 -0
- package/dist/core/schemas/change.schema.d.ts +73 -0
- package/dist/core/schemas/change.schema.js +31 -0
- package/dist/core/schemas/index.d.ts +4 -0
- package/dist/core/schemas/index.js +4 -0
- package/dist/core/schemas/spec.schema.d.ts +18 -0
- package/dist/core/schemas/spec.schema.js +15 -0
- package/dist/core/shared/index.d.ts +8 -0
- package/dist/core/shared/index.js +8 -0
- package/dist/core/shared/skill-generation.d.ts +49 -0
- package/dist/core/shared/skill-generation.js +96 -0
- package/dist/core/shared/tool-detection.d.ts +71 -0
- package/dist/core/shared/tool-detection.js +158 -0
- package/dist/core/specs-apply.d.ts +73 -0
- package/dist/core/specs-apply.js +393 -0
- package/dist/core/styles/palette.d.ts +7 -0
- package/dist/core/styles/palette.js +8 -0
- package/dist/core/templates/index.d.ts +8 -0
- package/dist/core/templates/index.js +9 -0
- package/dist/core/templates/skill-templates.d.ts +20 -0
- package/dist/core/templates/skill-templates.js +19 -0
- package/dist/core/templates/types.d.ts +19 -0
- package/dist/core/templates/types.js +5 -0
- package/dist/core/templates/workflows/apply-change.d.ts +10 -0
- package/dist/core/templates/workflows/apply-change.js +308 -0
- package/dist/core/templates/workflows/archive-change.d.ts +10 -0
- package/dist/core/templates/workflows/archive-change.js +271 -0
- package/dist/core/templates/workflows/bulk-archive-change.d.ts +10 -0
- package/dist/core/templates/workflows/bulk-archive-change.js +492 -0
- package/dist/core/templates/workflows/continue-change.d.ts +10 -0
- package/dist/core/templates/workflows/continue-change.js +232 -0
- package/dist/core/templates/workflows/explore.d.ts +10 -0
- package/dist/core/templates/workflows/explore.js +463 -0
- package/dist/core/templates/workflows/feedback.d.ts +9 -0
- package/dist/core/templates/workflows/feedback.js +108 -0
- package/dist/core/templates/workflows/ff-change.d.ts +10 -0
- package/dist/core/templates/workflows/ff-change.js +198 -0
- package/dist/core/templates/workflows/new-change.d.ts +10 -0
- package/dist/core/templates/workflows/new-change.js +21 -0
- package/dist/core/templates/workflows/onboard.d.ts +10 -0
- package/dist/core/templates/workflows/onboard.js +21 -0
- package/dist/core/templates/workflows/propose.d.ts +10 -0
- package/dist/core/templates/workflows/propose.js +216 -0
- package/dist/core/templates/workflows/sync-specs.d.ts +10 -0
- package/dist/core/templates/workflows/sync-specs.js +272 -0
- package/dist/core/templates/workflows/upstream-sync.d.ts +10 -0
- package/dist/core/templates/workflows/upstream-sync.js +116 -0
- package/dist/core/templates/workflows/verify-change.d.ts +10 -0
- package/dist/core/templates/workflows/verify-change.js +21 -0
- package/dist/core/tools-manager.d.ts +56 -0
- package/dist/core/tools-manager.js +215 -0
- package/dist/core/update.d.ts +77 -0
- package/dist/core/update.js +538 -0
- package/dist/core/validation/constants.d.ts +34 -0
- package/dist/core/validation/constants.js +40 -0
- package/dist/core/validation/types.d.ts +18 -0
- package/dist/core/validation/types.js +2 -0
- package/dist/core/validation/validator.d.ts +33 -0
- package/dist/core/validation/validator.js +419 -0
- package/dist/core/view.d.ts +8 -0
- package/dist/core/view.js +169 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/messages/index.d.ts +867 -0
- package/dist/messages/index.js +1960 -0
- package/dist/prompts/searchable-multi-select.d.ts +28 -0
- package/dist/prompts/searchable-multi-select.js +160 -0
- package/dist/telemetry/config.d.ts +38 -0
- package/dist/telemetry/config.js +136 -0
- package/dist/telemetry/index.d.ts +31 -0
- package/dist/telemetry/index.js +165 -0
- package/dist/ui/ascii-patterns.d.ts +16 -0
- package/dist/ui/ascii-patterns.js +133 -0
- package/dist/ui/welcome-screen.d.ts +10 -0
- package/dist/ui/welcome-screen.js +147 -0
- package/dist/utils/change-metadata.d.ts +51 -0
- package/dist/utils/change-metadata.js +147 -0
- package/dist/utils/change-utils.d.ts +62 -0
- package/dist/utils/change-utils.js +121 -0
- package/dist/utils/command-references.d.ts +18 -0
- package/dist/utils/command-references.js +20 -0
- package/dist/utils/file-system.d.ts +41 -0
- package/dist/utils/file-system.js +302 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/index.js +9 -0
- package/dist/utils/interactive.d.ts +18 -0
- package/dist/utils/interactive.js +21 -0
- package/dist/utils/item-discovery.d.ts +4 -0
- package/dist/utils/item-discovery.js +72 -0
- package/dist/utils/match.d.ts +3 -0
- package/dist/utils/match.js +22 -0
- package/dist/utils/shell-detection.d.ts +20 -0
- package/dist/utils/shell-detection.js +41 -0
- package/dist/utils/task-progress.d.ts +8 -0
- package/dist/utils/task-progress.js +37 -0
- package/package.json +84 -0
- package/schemas/spec-driven/schema.yaml +153 -0
- package/schemas/spec-driven/templates/design.md +19 -0
- package/schemas/spec-driven/templates/proposal.md +23 -0
- package/schemas/spec-driven/templates/spec.md +8 -0
- package/schemas/spec-driven/templates/tasks.md +9 -0
- package/scripts/postinstall.js +83 -0
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
export function getContinueChangeSkillTemplate() {
|
|
2
|
+
return {
|
|
3
|
+
name: 'openspec-continue-change',
|
|
4
|
+
description: 'Continue trabalhando em uma change do BR-OpenSpec criando o próximo artifact. Use quando o usuário quiser progredir sua change, criar o próximo artifact ou continuar seu workflow.',
|
|
5
|
+
instructions: `Continue trabalhando em uma change criando o próximo artifact.
|
|
6
|
+
|
|
7
|
+
**Entrada**: Opcionalmente especifique um nome de change. Se omitido, verifique se pode ser inferido do contexto da conversa. Se vago ou ambíguo, você DEVE solicitar as changes disponíveis.
|
|
8
|
+
|
|
9
|
+
**Passos**
|
|
10
|
+
|
|
11
|
+
1. **Se nenhum nome de change for fornecido, solicite a seleção**
|
|
12
|
+
|
|
13
|
+
Execute \`openspec list --json\` para obter as changes disponíveis ordenadas pela mais recentemente modificada. Depois use a ferramenta **AskUserQuestion** para permitir que o usuário selecione em qual change trabalhar.
|
|
14
|
+
|
|
15
|
+
Apresente as 3-4 changes mais recentemente modificadas como opções, mostrando:
|
|
16
|
+
- Nome da change
|
|
17
|
+
- Schema (do campo \`schema\` se presente, caso contrário "spec-driven")
|
|
18
|
+
- Status (por exemplo, "0/5 tasks", "completo", "sem tarefas")
|
|
19
|
+
- Quão recentemente foi modificada (do campo \`lastModified\`)
|
|
20
|
+
|
|
21
|
+
Marque a change mais recentemente modificada como "(Recomendada)" já que é provavelmente o que o usuário quer continuar.
|
|
22
|
+
|
|
23
|
+
**IMPORTANTE**: NÃO adivinhe ou selecione automaticamente uma change. Sempre deixe o usuário escolher.
|
|
24
|
+
|
|
25
|
+
2. **Verifique o status atual**
|
|
26
|
+
\`\`\`bash
|
|
27
|
+
openspec status --change "<nome>" --json
|
|
28
|
+
\`\`\`
|
|
29
|
+
Analise o JSON para entender o estado atual. A resposta inclui:
|
|
30
|
+
- \`schemaName\`: O schema de workflow sendo usado (por exemplo, "spec-driven")
|
|
31
|
+
- \`artifacts\`: Array de artifacts com seu status ("done", "ready", "blocked")
|
|
32
|
+
- \`isComplete\`: Booleano indicando se todos os artifacts estão completos
|
|
33
|
+
|
|
34
|
+
3. **Aja com base no status**:
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
**Se todos os artifacts estão completos (\`isComplete: true\`)**:
|
|
39
|
+
- Parabenize o usuário
|
|
40
|
+
- Mostre o status final incluindo o schema usado
|
|
41
|
+
- Sugira: "Todos os artifacts criados! Agora você pode implementar esta change ou arquivá-la."
|
|
42
|
+
- PARE
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
**Se os artifacts estão prontos para criar** (status mostra artifacts com \`status: "ready"\`):
|
|
47
|
+
- Escolha o PRIMEIRO artifact com \`status: "ready"\` da saída do status
|
|
48
|
+
- Obtenha suas instruções:
|
|
49
|
+
\`\`\`bash
|
|
50
|
+
openspec instructions <artifact-id> --change "<nome>" --json
|
|
51
|
+
\`\`\`
|
|
52
|
+
- Analise o JSON. Os campos-chave são:
|
|
53
|
+
- \`context\`: Contexto do projeto (restrições para você - NÃO inclua na saída)
|
|
54
|
+
- \`rules\`: Regras específicas do artifact (restrições para você - NÃO inclua na saída)
|
|
55
|
+
- \`template\`: A estrutura a ser usada para seu arquivo de saída
|
|
56
|
+
- \`instruction\`: Orientação específica do schema
|
|
57
|
+
- \`outputPath\`: Onde escrever o artifact
|
|
58
|
+
- \`dependencies\`: Artifacts concluídos para ler como contexto
|
|
59
|
+
- **Crie o arquivo do artifact**:
|
|
60
|
+
- Leia quaisquer arquivos de dependências concluídos para contexto
|
|
61
|
+
- Use \`template\` como a estrutura - preencha suas seções
|
|
62
|
+
- Aplique \`context\` e \`rules\` como restrições ao escrever - mas NÃO copie-os para o arquivo
|
|
63
|
+
- Escreva no caminho de saída especificado nas instruções
|
|
64
|
+
- Mostre o que foi criado e o que agora está desbloqueado
|
|
65
|
+
- PARE após criar UM artifact
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
**Se nenhum artifact estiver pronto (todos bloqueados)**:
|
|
70
|
+
- Isso não deveria acontecer com um schema válido
|
|
71
|
+
- Mostre o status e sugira verificar problemas
|
|
72
|
+
|
|
73
|
+
4. **Após criar um artifact, mostre o progresso**
|
|
74
|
+
\`\`\`bash
|
|
75
|
+
openspec status --change "<nome>"
|
|
76
|
+
\`\`\`
|
|
77
|
+
|
|
78
|
+
**Saída**
|
|
79
|
+
|
|
80
|
+
Após cada invocação, mostre:
|
|
81
|
+
- Qual artifact foi criado
|
|
82
|
+
- Schema de workflow sendo usado
|
|
83
|
+
- Progresso atual (N/M completos)
|
|
84
|
+
- Quais artifacts agora estão desbloqueados
|
|
85
|
+
- Prompt: "Quer continuar? Basta me pedir para continuar ou me dizer o que fazer em seguida."
|
|
86
|
+
|
|
87
|
+
**Diretrizes de Criação de Artifacts**
|
|
88
|
+
|
|
89
|
+
Os tipos de artifact e sua finalidade dependem do schema. Use o campo \`instruction\` da saída das instruções para entender o que criar.
|
|
90
|
+
|
|
91
|
+
Padrões comuns de artifacts:
|
|
92
|
+
|
|
93
|
+
**Schema spec-driven** (proposal → specs → design → tasks):
|
|
94
|
+
- **proposal.md**: Pergunte ao usuário sobre a change se não estiver claro. Preencha Por Que, O Que Muda, Capabilities, Impacto.
|
|
95
|
+
- A seção Capabilities é crítica - cada capability listada precisará de um arquivo spec.
|
|
96
|
+
- **specs/<capability>/spec.md**: Crie um spec por capability listada na seção Capabilities do proposal (use o nome da capability, não o nome da change).
|
|
97
|
+
- **design.md**: Documente decisões técnicas, arquitetura e abordagem de implementação.
|
|
98
|
+
- **tasks.md**: Divida a implementação em tarefas com checkbox.
|
|
99
|
+
|
|
100
|
+
Para outros schemas, siga o campo \`instruction\` da saída do CLI.
|
|
101
|
+
|
|
102
|
+
**Guardrails**
|
|
103
|
+
- Crie UM artifact por invocação
|
|
104
|
+
- Sempre leia artifacts de dependência antes de criar um novo
|
|
105
|
+
- Nunca pule artifacts ou crie fora de ordem
|
|
106
|
+
- Se o contexto estiver incerto, pergunte ao usuário antes de criar
|
|
107
|
+
- Verifique se o arquivo do artifact existe após escrever antes de marcar progresso
|
|
108
|
+
- Use a sequência de artifacts do schema, não assuma nomes específicos de artifacts
|
|
109
|
+
- **IMPORTANTE**: \`context\` e \`rules\` são restrições para VOCÊ, não conteúdo para o arquivo
|
|
110
|
+
- NÃO copie blocos \`<context>\`, \`<rules>\`, \`<project_context>\` para o artifact
|
|
111
|
+
- Eles guiam o que você escreve, mas nunca devem aparecer na saída`,
|
|
112
|
+
license: 'MIT',
|
|
113
|
+
compatibility: 'Requer openspec CLI.',
|
|
114
|
+
metadata: { author: 'openspec', version: '1.0' },
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
export function getOpsxContinueCommandTemplate() {
|
|
118
|
+
return {
|
|
119
|
+
name: 'OPSX: Continue',
|
|
120
|
+
description: 'Continue trabalhando em uma change - crie o próximo artifact (Experimental)',
|
|
121
|
+
category: 'Workflow',
|
|
122
|
+
tags: ['workflow', 'artifacts', 'experimental'],
|
|
123
|
+
content: `Continue trabalhando em uma change criando o próximo artifact.
|
|
124
|
+
|
|
125
|
+
**Entrada**: Opcionalmente especifique um nome de change após \`/opsx:continue\` (por exemplo, \`/opsx:continue add-auth\`). Se omitido, verifique se pode ser inferido do contexto da conversa. Se vago ou ambíguo, você DEVE solicitar as changes disponíveis.
|
|
126
|
+
|
|
127
|
+
**Passos**
|
|
128
|
+
|
|
129
|
+
1. **Se nenhum nome de change for fornecido, solicite a seleção**
|
|
130
|
+
|
|
131
|
+
Execute \`openspec list --json\` para obter as changes disponíveis ordenadas pela mais recentemente modificada. Depois use a ferramenta **AskUserQuestion** para permitir que o usuário selecione em qual change trabalhar.
|
|
132
|
+
|
|
133
|
+
Apresente as 3-4 changes mais recentemente modificadas como opções, mostrando:
|
|
134
|
+
- Nome da change
|
|
135
|
+
- Schema (do campo \`schema\` se presente, caso contrário "spec-driven")
|
|
136
|
+
- Status (por exemplo, "0/5 tasks", "completo", "sem tarefas")
|
|
137
|
+
- Quão recentemente foi modificada (do campo \`lastModified\`)
|
|
138
|
+
|
|
139
|
+
Marque a change mais recentemente modificada como "(Recomendada)" já que é provavelmente o que o usuário quer continuar.
|
|
140
|
+
|
|
141
|
+
**IMPORTANTE**: NÃO adivinhe ou selecione automaticamente uma change. Sempre deixe o usuário escolher.
|
|
142
|
+
|
|
143
|
+
2. **Verifique o status atual**
|
|
144
|
+
\`\`\`bash
|
|
145
|
+
openspec status --change "<nome>" --json
|
|
146
|
+
\`\`\`
|
|
147
|
+
Analise o JSON para entender o estado atual. A resposta inclui:
|
|
148
|
+
- \`schemaName\`: O schema de workflow sendo usado (por exemplo, "spec-driven")
|
|
149
|
+
- \`artifacts\`: Array de artifacts com seu status ("done", "ready", "blocked")
|
|
150
|
+
- \`isComplete\`: Booleano indicando se todos os artifacts estão completos
|
|
151
|
+
|
|
152
|
+
3. **Aja com base no status**:
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
**Se todos os artifacts estão completos (\`isComplete: true\`)**:
|
|
157
|
+
- Parabenize o usuário
|
|
158
|
+
- Mostre o status final incluindo o schema usado
|
|
159
|
+
- Sugira: "Todos os artifacts criados! Agora você pode implementar esta change com \`/opsx:apply\` ou arquivá-la com \`/opsx:archive\`."
|
|
160
|
+
- PARE
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
**Se os artifacts estão prontos para criar** (status mostra artifacts com \`status: "ready"\`):
|
|
165
|
+
- Escolha o PRIMEIRO artifact com \`status: "ready"\` da saída do status
|
|
166
|
+
- Obtenha suas instruções:
|
|
167
|
+
\`\`\`bash
|
|
168
|
+
openspec instructions <artifact-id> --change "<nome>" --json
|
|
169
|
+
\`\`\`
|
|
170
|
+
- Analise o JSON. Os campos-chave são:
|
|
171
|
+
- \`context\`: Contexto do projeto (restrições para você - NÃO inclua na saída)
|
|
172
|
+
- \`rules\`: Regras específicas do artifact (restrições para você - NÃO inclua na saída)
|
|
173
|
+
- \`template\`: A estrutura a ser usada para seu arquivo de saída
|
|
174
|
+
- \`instruction\`: Orientação específica do schema
|
|
175
|
+
- \`outputPath\`: Onde escrever o artifact
|
|
176
|
+
- \`dependencies\`: Artifacts concluídos para ler como contexto
|
|
177
|
+
- **Crie o arquivo do artifact**:
|
|
178
|
+
- Leia quaisquer arquivos de dependências concluídos para contexto
|
|
179
|
+
- Use \`template\` como a estrutura - preencha suas seções
|
|
180
|
+
- Aplique \`context\` e \`rules\` como restrições ao escrever - mas NÃO copie-os para o arquivo
|
|
181
|
+
- Escreva no caminho de saída especificado nas instruções
|
|
182
|
+
- Mostre o que foi criado e o que agora está desbloqueado
|
|
183
|
+
- PARE após criar UM artifact
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
**Se nenhum artifact estiver pronto (todos bloqueados)**:
|
|
188
|
+
- Isso não deveria acontecer com um schema válido
|
|
189
|
+
- Mostre o status e sugira verificar problemas
|
|
190
|
+
|
|
191
|
+
4. **Após criar um artifact, mostre o progresso**
|
|
192
|
+
\`\`\`bash
|
|
193
|
+
openspec status --change "<nome>"
|
|
194
|
+
\`\`\`
|
|
195
|
+
|
|
196
|
+
**Saída**
|
|
197
|
+
|
|
198
|
+
Após cada invocação, mostre:
|
|
199
|
+
- Qual artifact foi criado
|
|
200
|
+
- Schema de workflow sendo usado
|
|
201
|
+
- Progresso atual (N/M completos)
|
|
202
|
+
- Quais artifacts agora estão desbloqueados
|
|
203
|
+
- Prompt: "Execute \`/opsx:continue\` para criar o próximo artifact"
|
|
204
|
+
|
|
205
|
+
**Diretrizes de Criação de Artifacts**
|
|
206
|
+
|
|
207
|
+
Os tipos de artifact e sua finalidade dependem do schema. Use o campo \`instruction\` da saída das instruções para entender o que criar.
|
|
208
|
+
|
|
209
|
+
Padrões comuns de artifacts:
|
|
210
|
+
|
|
211
|
+
**Schema spec-driven** (proposal → specs → design → tasks):
|
|
212
|
+
- **proposal.md**: Pergunte ao usuário sobre a change se não estiver claro. Preencha Por Que, O Que Muda, Capabilities, Impacto.
|
|
213
|
+
- A seção Capabilities é crítica - cada capability listada precisará de um arquivo spec.
|
|
214
|
+
- **specs/<capability>/spec.md**: Crie um spec por capability listada na seção Capabilities do proposal (use o nome da capability, não o nome da change).
|
|
215
|
+
- **design.md**: Documente decisões técnicas, arquitetura e abordagem de implementação.
|
|
216
|
+
- **tasks.md**: Divida a implementação em tarefas com checkbox.
|
|
217
|
+
|
|
218
|
+
Para outros schemas, siga o campo \`instruction\` da saída do CLI.
|
|
219
|
+
|
|
220
|
+
**Guardrails**
|
|
221
|
+
- Crie UM artifact por invocação
|
|
222
|
+
- Sempre leia artifacts de dependência antes de criar um novo
|
|
223
|
+
- Nunca pule artifacts ou crie fora de ordem
|
|
224
|
+
- Se o contexto estiver incerto, pergunte ao usuário antes de criar
|
|
225
|
+
- Verifique se o arquivo do artifact existe após escrever antes de marcar progresso
|
|
226
|
+
- Use a sequência de artifacts do schema, não assuma nomes específicos de artifacts
|
|
227
|
+
- **IMPORTANTE**: \`context\` e \`rules\` são restrições para VOCÊ, não conteúdo para o arquivo
|
|
228
|
+
- NÃO copie blocos \`<context>\`, \`<rules>\`, \`<project_context>\` para o artifact
|
|
229
|
+
- Eles guiam o que você escreve, mas nunca devem aparecer na saída`
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
//# sourceMappingURL=continue-change.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skill Template Workflow Modules
|
|
3
|
+
*
|
|
4
|
+
* This file is generated by splitting the legacy monolithic
|
|
5
|
+
* templates file into workflow-focused modules.
|
|
6
|
+
*/
|
|
7
|
+
import type { SkillTemplate, CommandTemplate } from '../types.js';
|
|
8
|
+
export declare function getExploreSkillTemplate(): SkillTemplate;
|
|
9
|
+
export declare function getOpsxExploreCommandTemplate(): CommandTemplate;
|
|
10
|
+
//# sourceMappingURL=explore.d.ts.map
|