jarvis-ai-framework 1.0.0
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/AGENTS.md +416 -0
- package/LICENSE +21 -0
- package/README.md +190 -0
- package/agents/AGENTS.md +234 -0
- package/agents/README.md +309 -0
- package/agents/engineering/data/eng.data-engineer.agent.md +309 -0
- package/agents/engineering/eng.agent.md +303 -0
- package/agents/engineering/eng.bug-hunter.md +386 -0
- package/agents/engineering/eng.cybersecurity.agent.md +503 -0
- package/agents/engineering/eng.dev-code-reviewer.md +148 -0
- package/agents/engineering/eng.docs-writer.md +152 -0
- package/agents/engineering/eng.frontend.agent.md +117 -0
- package/agents/engineering/eng.rpa.agent.md +215 -0
- package/agents/engineering/eng.tech-analyst.agent.md +102 -0
- package/agents/engineering/eng.ux-designer.agent.md +193 -0
- package/agents/engineering/qa/eng.qa.cypress-specialist.md +109 -0
- package/agents/engineering/qa/eng.qa.quality-champion-task-agent.md +85 -0
- package/agents/engineering/qa/eng.qa.quality-strategist.md +111 -0
- package/agents/engineering/qa/eng.qa.test-architect.md +400 -0
- package/agents/engineering/qa/eng.qa.test-planner.md +477 -0
- package/agents/engineering/qa/eng.qa.testing-engineer.md +339 -0
- package/agents/product/prod.pm-checker.md +52 -0
- package/bin/commands/docs-publish.js +184 -0
- package/bin/commands/docs-sync.js +139 -0
- package/bin/commands/info.js +87 -0
- package/bin/commands/init.js +237 -0
- package/bin/commands/install-rtk.js +90 -0
- package/bin/commands/list.js +48 -0
- package/bin/commands/qa-signoff.js +112 -0
- package/bin/commands/whoami.js +43 -0
- package/bin/jarvis.js +159 -0
- package/bin/lib/auth/session.js +56 -0
- package/bin/lib/config/constants.js +123 -0
- package/bin/lib/config/ide-config.js +233 -0
- package/bin/lib/core/scanner.js +124 -0
- package/bin/lib/core/sync-engine.js +551 -0
- package/bin/lib/docs/fetch-file.sh +41 -0
- package/bin/lib/docs/publish-file.sh +284 -0
- package/bin/lib/docs/validate-frontmatter.js +157 -0
- package/bin/lib/env-loader.js +198 -0
- package/bin/lib/tasks/comment.js +131 -0
- package/bin/lib/utils/git-parser.js +145 -0
- package/bin/lib/utils/logger.js +104 -0
- package/bin/lib/utils/npmrc-parser.js +106 -0
- package/bin/lib/utils/paths.js +55 -0
- package/bin/lib/utils/ui.js +59 -0
- package/bin/lib/vcs/api.js +312 -0
- package/bin/lib/vcs/create-issue.js +43 -0
- package/bin/lib/vcs/create-merge.js +43 -0
- package/bin/lib/vcs/fetch-raw.js +30 -0
- package/bin/postinstall.js +41 -0
- package/members.md +25 -0
- package/package.json +55 -0
- package/rules/AGENTS.md +205 -0
- package/rules/engineering/data/data-rules.md +200 -0
- package/rules/engineering/eng-rules.md +243 -0
- package/rules/engineering/eng-security-rules.md +186 -0
- package/rules/engineering/eng.breakdown-subtasks-rules.md +585 -0
- package/rules/engineering/eng.bump-rules.md +27 -0
- package/rules/engineering/eng.docs-scraping-rules.md +64 -0
- package/rules/engineering/eng.downstream-flow-rules.md +297 -0
- package/rules/engineering/eng.integrations-rules.md +73 -0
- package/rules/engineering/eng.plan-rules.md +333 -0
- package/rules/engineering/eng.pr-rules.md +359 -0
- package/rules/engineering/eng.pre-pr-rules.md +103 -0
- package/rules/engineering/eng.start-rules.md +246 -0
- package/rules/engineering/eng.tech-spec-rules.md +968 -0
- package/rules/engineering/eng.work-rules.md +312 -0
- package/rules/engineering/frontend/eng.frontend-rules.md +147 -0
- package/rules/engineering/qa/eng.qa.cypress-standards-rules.md +259 -0
- package/rules/engineering/qa/eng.qa.exploratory-session-rules.md +137 -0
- package/rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md +181 -0
- package/rules/engineering/qa/eng.qa.tech-spec-validation-criteria-rules.md +120 -0
- package/rules/engineering/rpa/eng.rpa-rules.md +230 -0
- package/rules/product/README.md +24 -0
- package/rules/product/prod-rules.md +151 -0
- package/rules/rtk-rules.md +68 -0
- package/skills/AGENTS.md +290 -0
- package/skills/SKILLS-ROADMAP.md +333 -0
- package/skills/churn-audit/SKILL.md +385 -0
- package/skills/context-detect/SKILL.md +399 -0
- package/skills/context-detect/assets/context-profile-template.md +127 -0
- package/skills/docs-central/README.md +310 -0
- package/skills/docs-central/SKILL.md +423 -0
- package/skills/docs-index/SKILL.md +377 -0
- package/skills/eng-ai-engineer/SKILL.md +296 -0
- package/skills/eng-arch-c4/SKILL.md +358 -0
- package/skills/eng-arch-c4/assets/example-code.md +189 -0
- package/skills/eng-arch-c4/assets/example-component.md +105 -0
- package/skills/eng-arch-c4/assets/example-container.md +104 -0
- package/skills/eng-arch-c4/assets/example-context.md +81 -0
- package/skills/eng-backend/SKILL.md +776 -0
- package/skills/eng-browser-extension-builder/SKILL.md +385 -0
- package/skills/eng-cybersecurity/SKILL.md +645 -0
- package/skills/eng-data-bi/SKILL.md +199 -0
- package/skills/eng-data-debug/SKILL.md +307 -0
- package/skills/eng-data-engineer/SKILL.md +256 -0
- package/skills/eng-data-onboard/SKILL.md +310 -0
- package/skills/eng-data-orchestrator/SKILL.md +426 -0
- package/skills/eng-design-system/SKILL.md +619 -0
- package/skills/eng-docs-write/SKILL.md +312 -0
- package/skills/eng-frontend/SKILL.md +913 -0
- package/skills/eng-jira-comment/SKILL.md +17 -0
- package/skills/eng-microfrontend/SKILL.md +602 -0
- package/skills/eng-ms-trace/SKILL.md +469 -0
- package/skills/eng-nestjs/SKILL.md +791 -0
- package/skills/eng-performance-engineer/SKILL.md +312 -0
- package/skills/eng-pr/SKILL.md +339 -0
- package/skills/eng-qa-a11y-audit/SKILL.md +269 -0
- package/skills/eng-qa-bug-report/SKILL.md +1088 -0
- package/skills/eng-qa-bug-report/TASK_MANAGERS.md +138 -0
- package/skills/eng-qa-cypress-e2e/SKILL.md +177 -0
- package/skills/eng-qa-dev-guide/SKILL.md +164 -0
- package/skills/eng-qa-e2e/SKILL.md +400 -0
- package/skills/eng-qa-e2e-spec-writer/SKILL.md +322 -0
- package/skills/eng-qa-exploratory/SKILL.md +188 -0
- package/skills/eng-qa-gate/SKILL.md +370 -0
- package/skills/eng-qa-gate/assets/checklist-validacao.md +291 -0
- package/skills/eng-qa-graphql-contract/SKILL.md +256 -0
- package/skills/eng-qa-quality-report/SKILL.md +412 -0
- package/skills/eng-qa-test-plan/SKILL.md +466 -0
- package/skills/eng-qa-test-plan/assets/test-coverage-template.md +92 -0
- package/skills/eng-qa-test-plan/assets/test-patterns.md +178 -0
- package/skills/eng-qa-testsprite/SKILL.md +325 -0
- package/skills/eng-qa-testsprite/references/testsprite-mcp.md +224 -0
- package/skills/eng-qa-unit-test/SKILL.md +471 -0
- package/skills/eng-rabbitmq/SKILL.md +661 -0
- package/skills/eng-scraper/SKILL.md +683 -0
- package/skills/eng-scraper-robot-builder/SKILL.md +370 -0
- package/skills/eng-security-patch/SKILL.md +378 -0
- package/skills/eng-security-triage/SKILL.md +266 -0
- package/skills/eng-task-comment/SKILL.md +60 -0
- package/skills/eng-tech-analyst/SKILL.md +529 -0
- package/skills/eng-threat-model/SKILL.md +161 -0
- package/skills/init-jarvis/SKILL.md +1304 -0
- package/skills/init-jarvis/assets/mcp-configs.md +389 -0
- package/skills/init-jarvis/assets/onboarding-checklist.md +104 -0
- package/skills/init-jarvis/assets/setup-guide.md +360 -0
- package/skills/lovable-prompt-generator/SKILL.md +304 -0
- package/skills/prod-roadmap-report/README.md +303 -0
- package/skills/prod-roadmap-report/SKILL.md +198 -0
- package/skills/prod-roadmap-report/commands/status.compiled.single.team.md +23 -0
- package/skills/prod-roadmap-report/commands/status.list.projects.md +17 -0
- package/skills/prod-roadmap-report/commands/status.memory.md +192 -0
- package/skills/prod-roadmap-report/commands/status.roadmap.preview.md +94 -0
- package/skills/prod-roadmap-report/references/detailed-guide.md +236 -0
- package/skills/prod-roadmap-report/rules/detailed-guide.md +237 -0
- package/skills/prod-roadmap-report/rules/status-report-rules.md +44 -0
- package/skills/prod-roadmap-report/templates/template-multiple-teams-compiled-status.md +53 -0
- package/skills/prod-roadmap-report/templates/template-projects-list.md +23 -0
- package/skills/prod-roadmap-report/templates/template-single-team-compiled-status.md +60 -0
- package/skills/prod-roadmap-report/templates/template-single-team-status.md +49 -0
- package/skills/prod-specs/SKILL.md +108 -0
- package/skills/prod-specs/references/prod.spec.clarify.md +176 -0
- package/skills/prod-specs/references/prod.spec.epic.md +107 -0
- package/skills/prod-specs/references/prod.spec.frd.md +135 -0
- package/skills/prod-specs/references/prod.spec.issue.md +145 -0
- package/skills/prod-specs/references/prod.spec.prd.md +118 -0
- package/skills/prod-specs/rules/prod-spec-rules.md +186 -0
- package/skills/prod-specs/templates/prod-breakdown-template.md +136 -0
- package/skills/prod-specs/templates/prod-epic-template.md +76 -0
- package/skills/prod-specs/templates/prod-frd-template.md +172 -0
- package/skills/prod-specs/templates/prod-issue-template.md +68 -0
- package/skills/prod-specs/templates/prod-prd-full-template.md +159 -0
- package/skills/prod-specs/templates/prod-prd-template.md +173 -0
- package/skills/prod-specs-update/SKILL.md +272 -0
- package/skills/report-issue/SKILL.md +156 -0
- package/taxonomy.md +270 -0
- package/templates/AGENTS.md +189 -0
- package/templates/CDD aplicado a Prompts.md +182 -0
- package/templates/ENV-template.md +187 -0
- package/templates/engineering/AGENTS-template.md +71 -0
- package/templates/engineering/ARD-template.md +193 -0
- package/templates/engineering/CONTACTS-template.md +135 -0
- package/templates/engineering/PR-template.md +40 -0
- package/templates/engineering/RFC-Playbook.md +325 -0
- package/templates/engineering/RFC-template.md +199 -0
- package/templates/engineering/architecture-template.md +277 -0
- package/templates/engineering/breakdown-subtasks-template.md +582 -0
- package/templates/engineering/c4-model-template.md +516 -0
- package/templates/engineering/data-contract-template.md +135 -0
- package/templates/engineering/data-pipeline-template.md +163 -0
- package/templates/engineering/plan-template.md +255 -0
- package/templates/engineering/qa/eng.qa.quality-gate-examples-template.md +311 -0
- package/templates/engineering/qa/eng.qa.quality-gate-report-template.md +249 -0
- package/templates/engineering/qa/qa.cypress-test-template.md +172 -0
- package/templates/engineering/qa/qa.exploratory-session-template.md +148 -0
- package/templates/engineering/qa/qa.quality-report-template.md +130 -0
- package/templates/engineering/qa/qa.release-signoff-template.md +54 -0
- package/templates/engineering/qa/qa.sprint-plan-template.md +49 -0
- package/templates/engineering/swagger-template.md +145 -0
- package/templates/engineering/tech-spec-template.md +497 -0
- package/templates/engineering/work-progress-template.md +155 -0
- package/workflows/AGENTS.md +240 -0
- package/workflows/README.md +160 -0
- package/workflows/all-tools.md +11 -0
- package/workflows/engineering/data/data.contract.md +202 -0
- package/workflows/engineering/data/data.new-pipeline.md +234 -0
- package/workflows/engineering/eng.breakdown-subtasks.md +420 -0
- package/workflows/engineering/eng.bug-audit.md +591 -0
- package/workflows/engineering/eng.build-tech-spec.md +1116 -0
- package/workflows/engineering/eng.create-ard-from-code.md +259 -0
- package/workflows/engineering/eng.create-ard.md +382 -0
- package/workflows/engineering/eng.create-rfc.md +245 -0
- package/workflows/engineering/eng.debug.md +479 -0
- package/workflows/engineering/eng.docs.md +40 -0
- package/workflows/engineering/eng.light-arch.md +84 -0
- package/workflows/engineering/eng.plan.md +213 -0
- package/workflows/engineering/eng.pr.md +466 -0
- package/workflows/engineering/eng.pre-pr.md +167 -0
- package/workflows/engineering/eng.review.md +185 -0
- package/workflows/engineering/eng.rpa.robot.md +342 -0
- package/workflows/engineering/eng.security-audit.md +312 -0
- package/workflows/engineering/eng.security-incident.md +275 -0
- package/workflows/engineering/eng.security-pipeline.md +210 -0
- package/workflows/engineering/eng.security-review.md +235 -0
- package/workflows/engineering/eng.start.md +494 -0
- package/workflows/engineering/eng.work.md +558 -0
- package/workflows/engineering/frontend/eng.frontend-component.md +190 -0
- package/workflows/engineering/frontend/eng.frontend-perf-audit.md +375 -0
- package/workflows/engineering/frontend/eng.frontend-review.md +185 -0
- package/workflows/engineering/qa/eng.qa-dev-quality-guide.md +51 -0
- package/workflows/engineering/qa/eng.qa-e2e-test-generation.md +51 -0
- package/workflows/engineering/qa/eng.qa-exploratory-session.md +60 -0
- package/workflows/engineering/qa/eng.qa-quality-gate-validation.md +202 -0
- package/workflows/engineering/qa/eng.qa-quality-report.md +83 -0
- package/workflows/engineering/qa/eng.qa-refinement-entry.md +83 -0
- package/workflows/engineering/qa/eng.qa-release-signoff.md +170 -0
- package/workflows/engineering/qa/eng.qa-sprint-planning.md +100 -0
- package/workflows/engineering/ta/eng.ta.atendimento.md +93 -0
- package/workflows/product/prod.roadmap.preview.md +110 -0
- package/workflows/product/prod.spec.breakdown.md +163 -0
- package/workflows/product/prod.spec.clarify.md +178 -0
- package/workflows/product/prod.spec.epic.md +154 -0
- package/workflows/product/prod.spec.frd.md +96 -0
- package/workflows/product/prod.spec.issue.md +145 -0
- package/workflows/product/prod.spec.md +60 -0
- package/workflows/product/prod.spec.prd.md +100 -0
- package/workflows/taxonomy.md +92 -0
- package/workflows/warm-up.md +574 -0
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: prod.spec.issue
|
|
3
|
+
description: Criar um especificação de issues como Histórias de Usuário, Tarefas técnicas e bugs, seguindo as melhores práticas de gestão de produto e projeto.
|
|
4
|
+
auto_execution_mode: 3
|
|
5
|
+
env_file: "@/ENV.md"
|
|
6
|
+
recommended_model: gpt-4o
|
|
7
|
+
model_tier: medium
|
|
8
|
+
model_justification: Criação de issues é estruturada e segue templates, requer boa compreensão mas não raciocínio extremamente complexo
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Fluxo de Criação de Issues
|
|
12
|
+
|
|
13
|
+
Antes de iniciar, revise o arquivo de regras invioláveis em `$PROD_RULES/**/*.*`.
|
|
14
|
+
|
|
15
|
+
Este fluxo orienta você na criação de issues (histórias de usuários, tarefas, bugs etc) bem definidas usando o template `$PROD_TEMPLATES/prod-issue-template.md`. Cada issue deve ser uma unidade de trabalho autocontida que pode ser completada dentro de uma única sprint.
|
|
16
|
+
|
|
17
|
+
Uma issue é a menor unidade de trabalho que pode ser feita. Ela deve entregar valor sozinha. Ela precisa ser o menor tamanho possível para entregar rápido e com qualidade, mas não pode ser tão pequena que não entrega valor percebido para o usuário ou para o produto.
|
|
18
|
+
|
|
19
|
+
Um grupo de histórias de um mesmo assunto podem formar um épico.
|
|
20
|
+
|
|
21
|
+
## Quando Usar
|
|
22
|
+
- Ao decompor épicos em histórias de usuário implementáveis
|
|
23
|
+
- Criar tarefas técnicas
|
|
24
|
+
- Criar requisitos não funcionais
|
|
25
|
+
- Documentar e rastrear bugs
|
|
26
|
+
- Quando você precisa capturar trabalho que não requer documentação completa de PRD
|
|
27
|
+
- Para qualquer item de trabalho que precisa ser rastreado em uma sprint ou que necessita ser feita no projeto
|
|
28
|
+
- Para criar ou modificar novas funcionalidades, jornadas, ações de usuário e outras modificações dentro do projeto
|
|
29
|
+
|
|
30
|
+
## Pré-requisitos
|
|
31
|
+
- Entendimento claro do trabalho a ser feito. Leia a PRD, épicos, histórias criadas anteriormente para entender o contexto a ser feito.
|
|
32
|
+
- Entenda também últimos commits do projeto e outras alterações que possam ter sido feitas em sessões anteriores
|
|
33
|
+
- Se não houver uma PRD ou épico relacionado, sugira para o usuário a criação do épico ou da PRD, mas é totalmente opcional
|
|
34
|
+
- Referências de design (para histórias de usuário)
|
|
35
|
+
- Quaisquer restrições técnicas ou requisitos relevantes
|
|
36
|
+
|
|
37
|
+
## Resultado Final
|
|
38
|
+
- Siga a estrutura exata do template `$PROD_TEMPLATES/prod-issue-template.md`
|
|
39
|
+
- Convenção de nomenclatura: `{issue_type}-{id}-{issue_name}.md` (ex: story-123-fluxo-lembrar-senha.md)
|
|
40
|
+
- O idioma do arquivo deve corresponder ao idioma de interação do usuário
|
|
41
|
+
- Se o usuário não tiver um título claro, crie um título baseado no conteúdo do arquivo e no contexto do épico
|
|
42
|
+
- Uma História ou Task pode ou não ter subtasks. Sugira as subtasks que são as menores partes da issue para guiar o PM ou o Dev na criação dessas histórias ou tasks.
|
|
43
|
+
- Se o usuário pedir para salver no Jira, procure no arquivo ENV.md se há o link do board e projeto Jira e salve o projeto no board correto.
|
|
44
|
+
- Se você não encontrar as informações do board ou projeto correto do Jira, não faça nada, pergunte para o usuário quais são as informações corretas necessárias para você executar essa tarefa.
|
|
45
|
+
|
|
46
|
+
## Estrutura da Issue
|
|
47
|
+
|
|
48
|
+
### 1. Título e Metadados
|
|
49
|
+
- **Título**: Título claro e orientado à ação (ex: "Implementar Formulário de Login do Usuário")
|
|
50
|
+
- **PRD Relacionada**: Link para a PRD pai, se aplicável
|
|
51
|
+
- **Épico Relacionado**: Link para o épico pai, se aplicável
|
|
52
|
+
- **Tipo**: História/Tarefa/Bug
|
|
53
|
+
- **Prioridade**: Alta/Média/Baixa
|
|
54
|
+
|
|
55
|
+
### 2. Contexto
|
|
56
|
+
|
|
57
|
+
Deve descrever o contexto do problema ou funcionalidade a ser implementada:
|
|
58
|
+
- Informações de contexto
|
|
59
|
+
- Valor de negócio
|
|
60
|
+
- Como se encaixa no panorama maior
|
|
61
|
+
- Qualquer pesquisa de usuário ou dados relevantes
|
|
62
|
+
|
|
63
|
+
Para resumir a ação final que deve ser feita, use o formato abaixo:
|
|
64
|
+
```
|
|
65
|
+
**Como** [papel do usuário]
|
|
66
|
+
**Eu quero** [objetivo]
|
|
67
|
+
**Para que** [benefício/valor]
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
#### Assets de Design
|
|
71
|
+
- Links para mockups/wireframes
|
|
72
|
+
- Referências do design system
|
|
73
|
+
- Links de protótipos
|
|
74
|
+
|
|
75
|
+
Se usuário não tiver fornecido os links ou os assets de design, questione se podemos avançar sem eles. Se ele aprover, continue. Se ele entregar os assets, liste-os no template. Se ele enviar imagens, utilize-as como referência, entendendo os principais pontos e fluxos descritos no design.
|
|
76
|
+
|
|
77
|
+
### 3. Critérios de Aceitação
|
|
78
|
+
- Siga o formato do template
|
|
79
|
+
- Agrupe critérios relacionados sob subtítulos claros
|
|
80
|
+
- Inclua todos os cenários possíveis e casos extremos
|
|
81
|
+
- Seja específico sobre elementos de UI e comportamento
|
|
82
|
+
- Inclua estados de erro e validações
|
|
83
|
+
|
|
84
|
+
Exemplo:
|
|
85
|
+
```
|
|
86
|
+
#### Fluxo de Autenticação
|
|
87
|
+
- Quando o usuário clicar no botão "Login" na página inicial, o sistema exibe modal de login
|
|
88
|
+
- Quando o usuário inserir formato de email inválido, o sistema exibe mensagem de erro abaixo do campo
|
|
89
|
+
- Quando a autenticação falhar, o sistema mostra mensagem de erro específica
|
|
90
|
+
- Após login bem-sucedido, o sistema redireciona para o dashboard do usuário
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### 4. Requisitos Técnicos
|
|
94
|
+
Nesse bloco, você deve ser explicito sobre como serão organizados os requisitos técnicos e defuncionamento. Utilize FRD para descrever os requisitos técnicos.
|
|
95
|
+
- Orientações de implementação (sugestões, não requisitos)
|
|
96
|
+
- Considerações de performance
|
|
97
|
+
- Requisitos de segurança
|
|
98
|
+
- Requisitos de dados
|
|
99
|
+
- Dependências
|
|
100
|
+
|
|
101
|
+
### 5. Casos Extremos e Tratamento de Erros
|
|
102
|
+
- Liste potenciais casos extremos
|
|
103
|
+
- Defina como o sistema deve lidar com cada caso
|
|
104
|
+
- Inclua mensagens de erro amigáveis ao usuário
|
|
105
|
+
|
|
106
|
+
### 6. Fora do Escopo
|
|
107
|
+
- Declare claramente o que não está incluído
|
|
108
|
+
- Referencie melhorias futuras se necessário
|
|
109
|
+
|
|
110
|
+
## Melhores Práticas
|
|
111
|
+
|
|
112
|
+
### Para Histórias de Usuário
|
|
113
|
+
- Foque nas necessidades do usuário, não na implementação
|
|
114
|
+
- Deixe as histórias descritivas para que agentes de IA possam construir as features corretas
|
|
115
|
+
- Torne-as independentes e negociáveis. As histórias devem entregar valor para o usuário ou para o produto en suas entregas.
|
|
116
|
+
- Elas devem ser o menor tamanho possível para entregar rápido e com qualidade, mas não pode ser tão pequena que não entrega valor percebido para o usuário ou para o produto.
|
|
117
|
+
- Garanta que sejam valiosas para os usuários
|
|
118
|
+
|
|
119
|
+
### Para Tarefas
|
|
120
|
+
- Seja específico sobre o que precisa ser feito
|
|
121
|
+
- Inclua critérios de sucesso
|
|
122
|
+
- Anote quaisquer dependências
|
|
123
|
+
- Estime o esforço se possível
|
|
124
|
+
- Torne-as independentes e negociáveis
|
|
125
|
+
- Elas devem ser o menor tamanho possível para entregar rápido e com qualidade, mas não pode ser tão pequena que não entrega valor percebido para o usuário ou para o produto.
|
|
126
|
+
|
|
127
|
+
### Para Bugs
|
|
128
|
+
- Inclua passos para reproduzir
|
|
129
|
+
- Peça para o usuário se ele tem evidências como vídeos ou imagens para adicionar na história. Se ele enviar, coloque o link no arquivo final, e salve os arquivos em `<project-path>/docs/master-docs/assets/`
|
|
130
|
+
- Documente comportamento esperado vs. real
|
|
131
|
+
- Pergunte detalhes do ambiente, erros no console, mensagens de erro do próprio produto
|
|
132
|
+
- Solicite informações de identificação do cliente, o fluxo que ele seguiu para reproduzir o erro, e quaisquer outros detalhes que possam ajudar a reproduzir o erro
|
|
133
|
+
|
|
134
|
+
## Armadilhas Comuns
|
|
135
|
+
- Critérios de aceitação vagos ou incompletos
|
|
136
|
+
- Casos extremos faltando
|
|
137
|
+
- Descrições excessivamente técnicas
|
|
138
|
+
- Falta de critérios claros de sucesso
|
|
139
|
+
- Não vincular ao trabalho relacionado
|
|
140
|
+
|
|
141
|
+
## Pontos de Integração
|
|
142
|
+
- **PRDs**: Devemos atualizar a PRD com as modificações feitas nas FRDs, sem abordar o micro, mas alterações de alto nível.
|
|
143
|
+
- **FRDs**: Devemos atualizar a FRD com as modificações feitas nas issues, sem abordar o micro, mas alterações de alto nível.
|
|
144
|
+
- **Épicos**: Issues como Histórias ou Tasks devem se encaixar no escopo do épico
|
|
145
|
+
- **Código**: Devem referenciar ID da issue nos commits
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: prod.spec
|
|
3
|
+
description: Guia o usuário para construir especificações macro ou micro de produto, como PRDs, histórias, tarefas, RFDs e outros.
|
|
4
|
+
auto_execution_mode: 3
|
|
5
|
+
env_file: "@/ENV.md"
|
|
6
|
+
recommended_model: claude-sonnet-4-20250514
|
|
7
|
+
model_tier: medium
|
|
8
|
+
model_justification: Especificações de produto requerem compreensão de requisitos e estruturação de documentos
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Iniciar uma especificação
|
|
12
|
+
|
|
13
|
+
Estas instruções ajudam a orientar o usuário que deseja começar a construir uma especificação. Esta especificação pode variar desde um PRD, história de usuário até tarefas. Devemos orientá-lo nessa construção de forma que a especificação, seja ela macro ou micro seja criada de acordo com as instruções e padrões do projeto.
|
|
14
|
+
|
|
15
|
+
## Quando usar
|
|
16
|
+
- Esse comando serve para unificar a criação de todos os tipos de especificações do projeto.
|
|
17
|
+
- Ao iniciar uma nova especificação de projeto ou modificar um PRD existente
|
|
18
|
+
- Quando não souber qual tipo de especificação criar
|
|
19
|
+
- Quando precisar criar novas ou editar FRDs
|
|
20
|
+
- Quando precisar criar novos ou editar épicos, issues, tasks, stories e bugs
|
|
21
|
+
- Quando precisar de orientação sobre o tipo de documentação a ser gerada
|
|
22
|
+
|
|
23
|
+
## Instruções
|
|
24
|
+
|
|
25
|
+
- **Sessões de produto**: rascunhos WIP em `$SESSIONS_DIR/prod/{TASK_MANAGER_KEY}/`. A spec canônica fica em `$PROD_DOCS` (não substituir).
|
|
26
|
+
- **Regras do projeto**: Sempre revise os arquivos de regras invioláveis em `$PROD_RULES/**/*.*`.
|
|
27
|
+
- **Projeto existente ou novo**: entenda se o projeto é novo ou se já é um projeto em andamento, que tenha uma base de código já construída.
|
|
28
|
+
- Procure no diretório por documentações já existentes, como PRDs, FRDs, ARDs, issues, etc. Procure na pasta toda, mas comece procurando em `$PROD_DOCS`.
|
|
29
|
+
- Verifique se já há código disponível no projeto, analisando também se existe um respositório git disponível. Se existir, analise os últimos 5 pushs feitos para entender as mudanças recentes.
|
|
30
|
+
- Se for um projeto existente, mas sem documentação:
|
|
31
|
+
- Confirme com o usuário que esse é um projeto existente, mas que você não encontrou documentação, e sugira iniciar a criação de uma PRD inicial para o projeto. Se usuário quiser criar PRD, siga as instruções em `$PROD_FLOWS/prod.spec.prd.md`
|
|
32
|
+
- Se for um projeto existente, e já tem documentação, mas está espalhada ou não na estrutura como esperada por esse framework:
|
|
33
|
+
- Confirme com o usuário que você encontrou documentação existente, mas que ela não está na estrutura esperada por esse framework.
|
|
34
|
+
- Então, sugira ao usuário que organize a documentação existente em uma estrutura adequada para esse framework. E que que você pode fazer isso para ele seguindo o modelo e estrutura desse framework.
|
|
35
|
+
- Se for um novo projeto:
|
|
36
|
+
- Avance para iniciar a PRD do projeto com as instruções em `$PROD_FLOWS/prod.spec.prd.md`
|
|
37
|
+
- Se for um projeto existente, que já tem uma estrutura `$PROD_DOCS`:
|
|
38
|
+
- Pergunte para o usuário qual documentação ele deseja criar:
|
|
39
|
+
- PRD
|
|
40
|
+
- FRD
|
|
41
|
+
- ARD
|
|
42
|
+
- Issue (story, task ou bug)
|
|
43
|
+
- **Uso adequado dos comandos e instruções**:
|
|
44
|
+
- Para PRD use as instruções em `$PROD_FLOWS/prod.spec.prd.md`
|
|
45
|
+
- Para FRD use as instruções em `$PROD_FLOWS/prod.spec.frd.md`
|
|
46
|
+
- Para ARD use as instruções em `$PROD_FLOWS/prod.spec.ard.md`
|
|
47
|
+
- Para Issue use as instruções em `$PROD_FLOWS/prod.spec.issue.md`
|
|
48
|
+
- Para clarificar e revisar qualquer tipo de especificação, use as instruções em `$PROD_FLOWS/prod.spec.clarify.md`
|
|
49
|
+
- Para quebrar uma especificação grande em fatias (versões / épicos / histórias), use `$PROD_FLOWS/prod.spec.breakdown.md`
|
|
50
|
+
- Para criar épicos, use as instruções em `$PROD_FLOWS/prod.spec.epic.md`
|
|
51
|
+
- **Idioma**: Mantenha o mesmo idioma da interação com o usuário, sendo que o idioma padrão é português brasileiro
|
|
52
|
+
- **Faça suposições informadas**: Use o contexto, padrões de mercado e padrões comuns para preencher os gaps que a documentação ou a falta de informação não estiver cobrindo
|
|
53
|
+
- **Não seja verboso**: Evite fazer muitas perguntas para o usuário ao criar ou atualizar uma especificação. Seja direto e objetivo. Se perguntar, faça perguntas estratégicas e suficientes para que o usuário dê informações relevantes para a criação ou modificação com eficácia.
|
|
54
|
+
- **Perguntas para direcionar o usuário**: Use perguntas estratégicas para entender o escopo, objetivo e contexto da especificação que o usuário deseja criar ou modificar:
|
|
55
|
+
- Se o usuário fornecer informações junto com a resposta da questão, utilize-as para enriquecer o seu contexto.
|
|
56
|
+
- Sempre faça perguntas em mensagens distintas, para não complicar o fluxo de conversa.
|
|
57
|
+
- Só faça as perguntas necessárias para entender o contexto e o escopo do produto.
|
|
58
|
+
- Evite fazer perguntas redundantes ou que não agreguem valor à especificação.
|
|
59
|
+
- Se o usuário não responder uma pergunta, não repita a mesma pergunta novamente, mas continue com o fluxo com as informações disponíveis.
|
|
60
|
+
- Se o usuário responder com uma resposta que não se encaixa nas opções, pergunte novamente de forma clara e objetiva, mas guarde a informação que ele forneceu.
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: prod.spec.prd
|
|
3
|
+
description: Alterar ou criar um especificação de produto PRD - Product Requirement Document seguindo o template especificado, regras invioláveis, possibilitando a utilização por agentes de IA e humanos.
|
|
4
|
+
auto_execution_mode: 3
|
|
5
|
+
env_file: "@/ENV.md"
|
|
6
|
+
model_tier: high
|
|
7
|
+
model_justification: PRDs requerem análise profunda de requisitos, estruturação de documentos complexos e compreensão de contexto de negócio
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# PRD - Product Requirement Document
|
|
11
|
+
|
|
12
|
+
Este comando tem como objetivo criar, atualizar ou editar uma PRD seguindo o template especificado e as instruções.
|
|
13
|
+
|
|
14
|
+
Antes de iniciar, revise o arquivo de regras invioláveis em `$PROD_RULES/**/*`. Se você não estiver familiarizado com essa variável, leia as regras diretamente na pasta `.$IDE/rules/product/**/*.*`.
|
|
15
|
+
|
|
16
|
+
Utilize o `$ARGUMENTS` que o usuário passar como ponto de partida e para entender o contexto do que foi pedido.
|
|
17
|
+
<requirement>
|
|
18
|
+
#$ARGUMENTS
|
|
19
|
+
</requirement>
|
|
20
|
+
|
|
21
|
+
## Skills que devem ser usadas
|
|
22
|
+
|
|
23
|
+
Utilize a Skill tool para executar as skills necessárias:
|
|
24
|
+
|
|
25
|
+
- **Para gerar ou modificar especificações de produto** use a Skill tool para executar a skill `prod-specs` para gerar o output final de acordo com os padrões estabelecidos;
|
|
26
|
+
|
|
27
|
+
## Busca no Central Docs (condicional)
|
|
28
|
+
|
|
29
|
+
Se `CENTRAL_DOCS_REPO` definido no ENV.md:
|
|
30
|
+
|
|
31
|
+
1. **Para iteração de PRD existente:**
|
|
32
|
+
- Executar busca automática no central-docs:
|
|
33
|
+
```bash
|
|
34
|
+
jarvis docs sync --silent
|
|
35
|
+
```
|
|
36
|
+
- Buscar PRD relacionado usando:
|
|
37
|
+
- Nome/contexto do PRD fornecido pelo usuário
|
|
38
|
+
- Jira ID (se disponível)
|
|
39
|
+
- Tags semânticas
|
|
40
|
+
- Se PRD encontrado no central-docs:
|
|
41
|
+
- Carregar automaticamente como base para iteração
|
|
42
|
+
- Informar ao usuário: "✅ PRD encontrado no central-docs: [nome]"
|
|
43
|
+
- Usar como contexto para a skill `prod-specs`
|
|
44
|
+
- Se não encontrado:
|
|
45
|
+
- Perguntar ao usuário se tem PRD localmente
|
|
46
|
+
- Continuar com fluxo normal
|
|
47
|
+
|
|
48
|
+
2. **Para PRD novo:**
|
|
49
|
+
- Pular busca no central-docs
|
|
50
|
+
- Continuar com criação normal
|
|
51
|
+
|
|
52
|
+
## Instruções
|
|
53
|
+
|
|
54
|
+
- Se o usuário forneceu ou está atuando em um projeto existente, priorize obter informações sobre o projeto a partir de:
|
|
55
|
+
- **Central-docs** (se configurado) - busca automática de PRDs existentes
|
|
56
|
+
- Documentação existente (README, docs/, PRDs, FRDs, ARDs, etc.)
|
|
57
|
+
- Commits recentes para entender o que está sendo desenvolvido
|
|
58
|
+
- Arquivos de AI como CLAUDE.md e AGENTS.md para obter informações estruturadas sobre o contexto do projeto/produto.
|
|
59
|
+
- Para fazer perguntas para o usuário, tente usar o tool `AskUserQuestion` se ele estiver disponível no seu ambiente
|
|
60
|
+
- Use a Skill tool para executar a skill `prod-specs` para gerar o output final de acordo com os padrões estabelecidos, enviando as informações que encontrou como contexto
|
|
61
|
+
- Quando receber output disponibilizado pela skill, mostre para o usuário o resultado final para a aprovação e validação.
|
|
62
|
+
- Quando confirmado e validado pelo usuário:
|
|
63
|
+
- Se o usuário estiver modificando ou atualizando uma spec existente, salve o arquivo modificado
|
|
64
|
+
- Se for uma spec nova:
|
|
65
|
+
- Salve na pasta `$PROD_DOCS` seguindo todos os padrões de nomenclatura e estrutura de pastas já estabelecidos em `$PROD_RULES/**/*`
|
|
66
|
+
|
|
67
|
+
## Publicação no Central Docs (condicional)
|
|
68
|
+
|
|
69
|
+
Após salvar o PRD localmente e obter aprovação do usuário:
|
|
70
|
+
|
|
71
|
+
1. Se `CENTRAL_DOCS_REPO` definido no ENV.md:
|
|
72
|
+
- Perguntar ao usuário:
|
|
73
|
+
```
|
|
74
|
+
Deseja publicar este PRD no repositório central de documentação?
|
|
75
|
+
- ( ) Sim, publicar agora
|
|
76
|
+
- ( ) Não, vou publicar depois manualmente
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
2. Se **Sim**:
|
|
80
|
+
- Extrair o slug do nome do arquivo (ex: `prd-wallet.md` → `wallet`)
|
|
81
|
+
- Executar:
|
|
82
|
+
```bash
|
|
83
|
+
jarvis docs publish \
|
|
84
|
+
--file {caminho_do_prd} \
|
|
85
|
+
--tipo prd \
|
|
86
|
+
--feature {slug}
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
3. Informar resultado:
|
|
90
|
+
- ✅ Sucesso: "PRD publicado no central-docs. MR criado: [URL]"
|
|
91
|
+
- ❌ Erro: Exibir mensagem de erro e orientar troubleshooting
|
|
92
|
+
|
|
93
|
+
4. Se **Não**:
|
|
94
|
+
- Informar: "Para publicar depois, execute: `jarvis docs publish --file {caminho} --tipo prd --feature {slug}`"
|
|
95
|
+
|
|
96
|
+
5. Se `CENTRAL_DOCS_REPO` não estiver definido:
|
|
97
|
+
- Informar: "Para habilitar publicação automática, configure `CENTRAL_DOCS_REPO` no ENV.md"
|
|
98
|
+
|
|
99
|
+
> **Nota**: A publicação cria um Merge Request no GitLab. O PRD só será visível no central-docs após aprovação e merge do MR.
|
|
100
|
+
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Gerencia o arquivo taxonomy.md de forma segura (CRUD de opções organizacionais)
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# taxonomy
|
|
6
|
+
|
|
7
|
+
Gerencia o arquivo `taxonomy.md` que define as opções válidas para SQUAD, HUB, POSITION e AREA.
|
|
8
|
+
|
|
9
|
+
## Uso
|
|
10
|
+
|
|
11
|
+
Este command invoca o skill `taxonomy-manager` para operações CRUD seguras:
|
|
12
|
+
|
|
13
|
+
### Listar opções
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
/taxonomy list SQUADS
|
|
17
|
+
/taxonomy list HUBS
|
|
18
|
+
/taxonomy list POSITIONS
|
|
19
|
+
/taxonomy list AREAS
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
### Adicionar nova opção
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
/taxonomy add SQUADS MOBILE "Time focado em desenvolvimento mobile nativo"
|
|
26
|
+
/taxonomy add HUBS DEVOPS "DevOps e infraestrutura"
|
|
27
|
+
/taxonomy add POSITIONS PRINCIPAL "Principal Engineer"
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### Atualizar descrição
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
/taxonomy update SQUADS CORE "Nova descrição do time"
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Remover opção
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
/taxonomy remove SQUADS MOBILE
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### Validar estrutura
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
/taxonomy validate
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Sintaxe
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
Skill("taxonomy-manager", "$ARGUMENTS")
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Onde `$ARGUMENTS` é um dos formatos:
|
|
55
|
+
- `list <CATEGORIA>`
|
|
56
|
+
- `add <CATEGORIA> <NOME> <DESCRIÇÃO>`
|
|
57
|
+
- `update <CATEGORIA> <NOME> <NOVA_DESCRIÇÃO>`
|
|
58
|
+
- `remove <CATEGORIA> <NOME>`
|
|
59
|
+
- `validate`
|
|
60
|
+
|
|
61
|
+
## Exemplos
|
|
62
|
+
|
|
63
|
+
### Adicionar novo squad
|
|
64
|
+
```
|
|
65
|
+
/taxonomy add SQUADS DATA "Time de Data Science e Analytics"
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Listar todas as positions
|
|
69
|
+
```
|
|
70
|
+
/taxonomy list POSITIONS
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### Remover hub obsoleto
|
|
74
|
+
```
|
|
75
|
+
/taxonomy remove HUBS LEGACY
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Segurança
|
|
79
|
+
|
|
80
|
+
✅ Backup automático antes de modificações
|
|
81
|
+
✅ Validação de formato (MAIÚSCULAS, sem espaços)
|
|
82
|
+
✅ Confirmação para ações destrutivas
|
|
83
|
+
✅ Preservação da estrutura markdown
|
|
84
|
+
|
|
85
|
+
## Após Modificações
|
|
86
|
+
|
|
87
|
+
Depois de adicionar/remover opções:
|
|
88
|
+
1. Execute `/init-jarvis` - as novas opções aparecem automaticamente
|
|
89
|
+
2. Não é necessário reiniciar o Claude ou a IDE
|
|
90
|
+
3. Projetos existentes continuam funcionando
|
|
91
|
+
|
|
92
|
+
> **Documentação completa**: Ver `.claude/skills/taxonomy-manager/SKILL.md`
|