@onion-architect-ai/cli 4.1.0-beta.3 → 4.1.0-beta.5

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.
Files changed (97) hide show
  1. package/dist/cli.js +18 -6
  2. package/dist/cli.js.map +1 -1
  3. package/package.json +1 -1
  4. package/templates/.cursor/agents/development/c4-architecture-specialist.md +712 -0
  5. package/templates/.cursor/agents/development/c4-documentation-specialist.md +658 -0
  6. package/templates/.cursor/agents/development/clickup-specialist.md +397 -0
  7. package/templates/.cursor/agents/development/cursor-specialist.md +249 -0
  8. package/templates/.cursor/agents/development/docs-reverse-engineer.md +418 -0
  9. package/templates/.cursor/agents/development/gamma-api-specialist.md +1169 -0
  10. package/templates/.cursor/agents/development/gitflow-specialist.md +1207 -0
  11. package/templates/.cursor/agents/development/linux-security-specialist.md +676 -0
  12. package/templates/.cursor/agents/development/mermaid-specialist.md +516 -0
  13. package/templates/.cursor/agents/development/nodejs-specialist.md +673 -0
  14. package/templates/.cursor/agents/development/nx-migration-specialist.md +867 -0
  15. package/templates/.cursor/agents/development/nx-monorepo-specialist.md +619 -0
  16. package/templates/.cursor/agents/development/postgres-specialist.md +1124 -0
  17. package/templates/.cursor/agents/development/react-developer.md +132 -0
  18. package/templates/.cursor/agents/development/runflow-specialist.md +278 -0
  19. package/templates/.cursor/agents/development/system-documentation-orchestrator.md +1388 -0
  20. package/templates/.cursor/agents/development/task-specialist.md +618 -0
  21. package/templates/.cursor/agents/development/whisper-specialist.md +373 -0
  22. package/templates/.cursor/agents/development/zen-engine-specialist.md +421 -0
  23. package/templates/.cursor/agents/git/branch-code-reviewer.md +200 -0
  24. package/templates/.cursor/agents/git/branch-documentation-writer.md +162 -0
  25. package/templates/.cursor/agents/git/branch-metaspec-checker.md +68 -0
  26. package/templates/.cursor/agents/git/branch-test-planner.md +177 -0
  27. package/templates/.cursor/agents/product/branding-positioning-specialist.md +1030 -0
  28. package/templates/.cursor/agents/product/extract-meeting-specialist.md +395 -0
  29. package/templates/.cursor/agents/product/meeting-consolidator.md +483 -0
  30. package/templates/.cursor/agents/product/pain-price-specialist.md +509 -0
  31. package/templates/.cursor/agents/product/presentation-orchestrator.md +1191 -0
  32. package/templates/.cursor/agents/product/product-agent.md +202 -0
  33. package/templates/.cursor/agents/product/story-points-framework-specialist.md +539 -0
  34. package/templates/.cursor/agents/product/storytelling-business-specialist.md +891 -0
  35. package/templates/.cursor/agents/review/code-reviewer.md +155 -0
  36. package/templates/.cursor/agents/testing/test-agent.md +425 -0
  37. package/templates/.cursor/agents/testing/test-engineer.md +295 -0
  38. package/templates/.cursor/agents/testing/test-planner.md +118 -0
  39. package/templates/.cursor/commands/docs/build-business-docs.md +276 -0
  40. package/templates/.cursor/commands/docs/build-index.md +128 -0
  41. package/templates/.cursor/commands/docs/build-tech-docs.md +204 -0
  42. package/templates/.cursor/commands/docs/consolidate-documents.md +424 -0
  43. package/templates/.cursor/commands/docs/docs-health.md +142 -0
  44. package/templates/.cursor/commands/docs/help.md +306 -0
  45. package/templates/.cursor/commands/docs/refine-vision.md +27 -0
  46. package/templates/.cursor/commands/docs/reverse-consolidate.md +160 -0
  47. package/templates/.cursor/commands/docs/sync-sessions.md +320 -0
  48. package/templates/.cursor/commands/docs/validate-docs.md +159 -0
  49. package/templates/.cursor/commands/engineer/bump.md +43 -0
  50. package/templates/.cursor/commands/engineer/docs.md +39 -0
  51. package/templates/.cursor/commands/engineer/help.md +329 -0
  52. package/templates/.cursor/commands/engineer/hotfix.md +186 -0
  53. package/templates/.cursor/commands/engineer/plan.md +111 -0
  54. package/templates/.cursor/commands/engineer/pr-update.md +198 -0
  55. package/templates/.cursor/commands/engineer/pr.md +136 -0
  56. package/templates/.cursor/commands/engineer/pre-pr.md +91 -0
  57. package/templates/.cursor/commands/engineer/start.md +266 -0
  58. package/templates/.cursor/commands/engineer/validate-phase-sync.md +118 -0
  59. package/templates/.cursor/commands/engineer/warm-up.md +173 -0
  60. package/templates/.cursor/commands/engineer/work.md +169 -0
  61. package/templates/.cursor/commands/git/code-review.md +215 -0
  62. package/templates/.cursor/commands/git/fast-commit.md +45 -0
  63. package/templates/.cursor/commands/git/feature/finish.md +90 -0
  64. package/templates/.cursor/commands/git/feature/publish.md +91 -0
  65. package/templates/.cursor/commands/git/feature/start.md +158 -0
  66. package/templates/.cursor/commands/git/help.md +306 -0
  67. package/templates/.cursor/commands/git/hotfix/finish.md +98 -0
  68. package/templates/.cursor/commands/git/hotfix/start.md +94 -0
  69. package/templates/.cursor/commands/git/init.md +139 -0
  70. package/templates/.cursor/commands/git/release/finish.md +98 -0
  71. package/templates/.cursor/commands/git/release/start.md +95 -0
  72. package/templates/.cursor/commands/git/sync.md +228 -0
  73. package/templates/.cursor/commands/global/help.md +388 -0
  74. package/templates/.cursor/commands/product/analyze-pain-price.md +709 -0
  75. package/templates/.cursor/commands/product/branding.md +460 -0
  76. package/templates/.cursor/commands/product/check.md +48 -0
  77. package/templates/.cursor/commands/product/checklist-sync.md +241 -0
  78. package/templates/.cursor/commands/product/collect.md +96 -0
  79. package/templates/.cursor/commands/product/consolidate-meetings.md +306 -0
  80. package/templates/.cursor/commands/product/convert-to-tasks.md +220 -0
  81. package/templates/.cursor/commands/product/estimate.md +519 -0
  82. package/templates/.cursor/commands/product/extract-meeting.md +241 -0
  83. package/templates/.cursor/commands/product/feature.md +431 -0
  84. package/templates/.cursor/commands/product/help.md +212 -0
  85. package/templates/.cursor/commands/product/light-arch.md +97 -0
  86. package/templates/.cursor/commands/product/presentation.md +189 -0
  87. package/templates/.cursor/commands/product/refine.md +186 -0
  88. package/templates/.cursor/commands/product/spec.md +107 -0
  89. package/templates/.cursor/commands/product/task-check.md +340 -0
  90. package/templates/.cursor/commands/product/task.md +585 -0
  91. package/templates/.cursor/commands/product/transform-consolidated.md +592 -0
  92. package/templates/.cursor/commands/product/validate-task.md +294 -0
  93. package/templates/.cursor/commands/product/warm-up.md +187 -0
  94. package/templates/.cursor/commands/product/whisper.md +325 -0
  95. package/templates/.cursor/commands/test/e2e.md +392 -0
  96. package/templates/.cursor/commands/test/integration.md +523 -0
  97. package/templates/.cursor/commands/test/unit.md +378 -0
@@ -0,0 +1,241 @@
1
+ ---
2
+ name: extract-meeting
3
+ description: |
4
+ Extração estruturada de conhecimento de transcrições de reuniões usando Framework EXTRACT.
5
+ Use para transformar arquivos de contexto bruto em artefatos de alto valor para humanos, sistemas e IA.
6
+ model: sonnet
7
+
8
+ parameters:
9
+ - name: source
10
+ description: Caminho do arquivo ou pasta com transcrição(ões)
11
+ required: true
12
+ - name: level
13
+ description: Nível de output (compact, executive, complete, graph)
14
+ required: false
15
+ - name: focus
16
+ description: Foco específico (decisions, tasks, gaps, all)
17
+ required: false
18
+
19
+ category: product
20
+ tags:
21
+ - meeting
22
+ - extraction
23
+ - knowledge-base
24
+ - documentation
25
+
26
+ version: "4.0.0"
27
+ updated: "2025-12-20"
28
+
29
+ related_commands:
30
+ - /product/task
31
+ - /docs/build-tech-docs
32
+ - /meta/create-knowledge-base
33
+
34
+ related_agents:
35
+ - extract-meeting-specialist
36
+ - product-agent
37
+ - task-specialist
38
+
39
+ knowledge_bases:
40
+ - docs/knowbase/concepts/meeting-transcription-to-knowledge-base.md
41
+ level: intermediate
42
+ context: business
43
+ ---
44
+
45
+ # 📋 Extrair Conhecimento de Reunião
46
+
47
+ Transformação de transcrições brutas em conhecimento estruturado usando o Framework EXTRACT.
48
+
49
+ ## 🎯 Objetivo
50
+
51
+ Processar transcrições de reuniões e gerar outputs estruturados consumíveis por humanos, sistemas e IA, seguindo as 7 dimensões do Framework EXTRACT.
52
+
53
+ ## ⚡ Fluxo de Execução
54
+
55
+ ### Passo 1: Validar Input
56
+
57
+ ```bash
58
+ # Verificar se source existe
59
+ test -e "{{source}}" || echo "❌ Arquivo/pasta não encontrado"
60
+
61
+ # Identificar tipo (arquivo ou pasta)
62
+ if [ -d "{{source}}" ]; then
63
+ echo "📁 Processando pasta com múltiplos arquivos"
64
+ FILES=$(find "{{source}}" -type f \( -name "*.txt" -o -name "*.md" \))
65
+ else
66
+ echo "📄 Processando arquivo único"
67
+ FILES="{{source}}"
68
+ fi
69
+ ```
70
+
71
+ ### Passo 2: Ler Conteúdo
72
+
73
+ ```bash
74
+ # Ler transcrição(ões)
75
+ read_file "{{source}}"
76
+ ```
77
+
78
+ ### Passo 3: Aplicar Framework EXTRACT
79
+
80
+ Invocar `@extract-meeting-specialist` com instruções:
81
+
82
+ ```markdown
83
+ ## Tarefa
84
+ Processar a transcrição abaixo aplicando o Framework EXTRACT completo.
85
+
86
+ ## Framework EXTRACT (7 Dimensões)
87
+ - **E**ssência: Resumo executivo em 3 linhas
88
+ - **X**pectativas: Objetivos da reunião e status (atingido/parcial/não)
89
+ - **T**arefas: Ações definidas (quem, o quê, quando)
90
+ - **R**esoluções: Decisões tomadas com justificativa
91
+ - **A**mbiguidades: Gaps, contradições, pontos não resolvidos
92
+ - **C**onexões: Dependências, stakeholders, documentos relacionados
93
+ - **T**imeline: Datas e marcos mencionados
94
+
95
+ ## Nível de Output
96
+ {{level}} (default: executive)
97
+
98
+ ## Foco
99
+ {{focus}} (default: all)
100
+
101
+ ## Regras
102
+ 1. NUNCA inventar informações — usar [INFERIDO] ou [NÃO ESPECIFICADO]
103
+ 2. Indicar confidence level em decisões (high/medium/low)
104
+ 3. Capturar TODOS os gaps — o que NÃO foi decidido é crítico
105
+ 4. Tasks devem ter owner + deadline sempre que possível
106
+ 5. Preservar citações importantes entre aspas
107
+
108
+ ## Transcrição
109
+ [CONTEÚDO DO ARQUIVO]
110
+ ```
111
+
112
+ ### Passo 4: Gerar Output
113
+
114
+ **Nível `compact`:**
115
+ ```markdown
116
+ ## Reunião: [Título] | [Data]
117
+ **Decisão**: [Principal decisão]
118
+ **Ações**: [Nome] faz [quê] até [quando]
119
+ **Pendente**: [Principal gap]
120
+ ```
121
+
122
+ **Nível `executive`:**
123
+ ```markdown
124
+ ## [Título] - [Data]
125
+
126
+ ### Resumo
127
+ [3-5 linhas]
128
+
129
+ ### Decisões
130
+ - ✅ [Decisão 1]
131
+ - ✅ [Decisão 2]
132
+
133
+ ### Ações
134
+ | Responsável | Ação | Prazo |
135
+ |-------------|------|-------|
136
+ | [Nome] | [Descrição] | [Data] |
137
+
138
+ ### Pendências
139
+ - ⚠️ [Gap 1]
140
+ - ⚠️ [Gap 2]
141
+
142
+ ### Timeline
143
+ - 📅 [Data]: [Marco]
144
+ ```
145
+
146
+ **Nível `complete`:**
147
+ Output YAML completo seguindo schema do knowledge base.
148
+
149
+ **Nível `graph`:**
150
+ JSON com entidades e relacionamentos para sistemas.
151
+
152
+ ### Passo 5: Salvar Resultado
153
+
154
+ ```bash
155
+ # Determinar nome do output
156
+ OUTPUT_NAME=$(basename "{{source}}" | sed 's/\.[^.]*$//')
157
+ OUTPUT_FILE="docs/meetings/${OUTPUT_NAME}-extract.md"
158
+
159
+ # Criar diretório se não existir
160
+ mkdir -p docs/meetings/
161
+
162
+ # Salvar
163
+ write "${OUTPUT_FILE}"
164
+ ```
165
+
166
+ ## 📤 Output Esperado
167
+
168
+ ```
169
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
170
+ ✅ EXTRAÇÃO CONCLUÍDA
171
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
172
+
173
+ 📁 Arquivo: docs/meetings/[nome]-extract.md
174
+
175
+ 📊 Extração EXTRACT:
176
+ ∟ Essência: ✅
177
+ ∟ Expectativas: ✅
178
+ ∟ Tarefas: [N] itens
179
+ ∟ Resoluções: [N] decisões
180
+ ∟ Ambiguidades: [N] gaps
181
+ ∟ Conexões: [N] links
182
+ ∟ Timeline: [N] datas
183
+
184
+ 📈 Qualidade:
185
+ ∟ Confidence Score: [0.X]
186
+ ∟ Tasks com Owner: [X]%
187
+ ∟ Tasks com Deadline: [X]%
188
+ ∟ Gaps com Owner Sugerido: [X]%
189
+
190
+ 🚀 Próximos Passos:
191
+ 1. Revisar gaps críticos
192
+ 2. Validar decisões com participantes
193
+ 3. Criar tasks no gerenciador (@task-specialist)
194
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
195
+ ```
196
+
197
+ ## 🎯 Exemplos de Uso
198
+
199
+ ```bash
200
+ # Extrair reunião específica (nível executivo default)
201
+ /product/extract-meeting source=rhilo-reuniao-28-nov.txt
202
+
203
+ # Nível completo com YAML
204
+ /product/extract-meeting source=reuniao.txt level=complete
205
+
206
+ # Foco apenas em decisões
207
+ /product/extract-meeting source=reuniao.txt focus=decisions
208
+
209
+ # Processar pasta de contexto
210
+ /product/extract-meeting source=contextos/projeto-x/
211
+
212
+ # Gerar grafo para sistemas
213
+ /product/extract-meeting source=reuniao.txt level=graph
214
+ ```
215
+
216
+ ## 🔗 Referências
217
+
218
+ - **Agente**: `@extract-meeting-specialist`
219
+ - **Knowledge Base**: `docs/knowbase/concepts/meeting-transcription-to-knowledge-base.md`
220
+ - **Framework**: EXTRACT (7 dimensões)
221
+
222
+ ## ⚠️ Notas
223
+
224
+ - Processar em até 24h após reunião (contexto fresco)
225
+ - Validar decisões críticas com participantes
226
+ - Gaps são tão importantes quanto decisões
227
+ - Para criar tasks automaticamente, usar `@task-specialist` após extração
228
+
229
+
230
+
231
+ ---
232
+
233
+ ## 📚 Pré-requisitos
234
+
235
+ Domine comandos starter antes de usar este comando intermediate/advanced.
236
+
237
+ Consulte os comandos help para ver hierarquia completa:
238
+ - /business/help --level=starter
239
+ - /technical/help --level=starter
240
+
241
+ 💡 Comandos intermediate/advanced assumem familiaridade com workflows básicos.
@@ -0,0 +1,431 @@
1
+ ---
2
+ name: feature
3
+ description: Criar task de feature no gerenciador configurado para planejamento e backlog.
4
+ model: sonnet
5
+ category: product
6
+ tags: [feature, task-manager, backlog]
7
+ version: "4.0.0"
8
+ updated: "2025-12-20"
9
+
10
+ related_commands:
11
+ - /product/estimate
12
+ - /product/task
13
+
14
+ related_agents:
15
+ - story-points-framework-specialist
16
+ - product-agent
17
+ level: intermediate
18
+ context: business
19
+ ---
20
+
21
+ # 🎯 Criar Feature - Task para Planejamento
22
+
23
+ Você é um assistente de IA especializado em **criar tasks de feature no gerenciador configurado (via Task Manager abstraction) para planejamento e backlog** seguindo o padrão do Sistema Onion. Seu papel é criar tasks de backlog para organização e priorização sem iniciar desenvolvimento.
24
+
25
+ ## 🎯 **Funcionalidades**
26
+
27
+ ### **📋 Criar Task Backlog:**
28
+ - Criar task no gerenciador configurado com tag "backlog"
29
+ - Status: "Backlog" (aguardando planejamento e priorização)
30
+ - Projeto/Lista: Mesmo projeto da sessão atual ou projeto padrão
31
+ - Auto-detecção de contexto e projeto via Task Manager
32
+
33
+ ### **🔗 Integração Inteligente:**
34
+ - Auto-detecção do projeto/lista atual via Task Manager
35
+ - Herda contexto da sessão ativa (se houver)
36
+ - Links com tasks relacionadas
37
+ - Tags apropriadas para categorização
38
+ - Suporta múltiplos provedores (ClickUp, Asana, Linear)
39
+
40
+ ---
41
+
42
+ ## 🚀 **Uso do Comando**
43
+
44
+ ### **Sintaxe:**
45
+ ```bash
46
+ /product/feature "nome-ou-descrição-da-feature"
47
+ ```
48
+
49
+ ### **Examples:**
50
+ ```bash
51
+ /product/feature "implementar-autenticacao-oauth"
52
+ /product/feature "adicionar-filtros-avancados-dashboard"
53
+ /product/feature "integrar-payment-gateway-stripe"
54
+ ```
55
+
56
+ ---
57
+
58
+ ## ⚙️ **Workflow Automático**
59
+
60
+ ### **1. Validação de Parâmetros**
61
+ ```bash
62
+ # Verificar se nome da feature foi fornecido
63
+ if [ "$#" -eq 0 ]; then
64
+ echo "❌ ERROR: Feature name required"
65
+ echo "📖 USAGE: /product/feature \"feature-name-or-description\""
66
+ echo ""
67
+ echo "💡 EXAMPLES:"
68
+ echo " /product/feature \"implement-oauth-authentication\""
69
+ echo " /product/feature \"add-advanced-dashboard-filters\""
70
+ exit 1
71
+ fi
72
+
73
+ FEATURE_NAME="$1"
74
+ # Sanitizar nome da feature (remover caracteres especiais)
75
+ FEATURE_SLUG=$(echo "$FEATURE_NAME" | sed 's/[^a-zA-Z0-9]/-/g' | tr '[:upper:]' '[:lower:]' | sed 's/--*/-/g' | sed 's/^-\\|-$//g')
76
+
77
+ echo "🎯 Creating feature planning task: $FEATURE_NAME"
78
+ echo "📝 Feature slug: $FEATURE_SLUG"
79
+ ```
80
+
81
+ ### **2. Detecção de Contexto via Task Manager**
82
+
83
+ **IMPORTANTE:** Use Task Manager abstraction para detectar contexto independente do provedor:
84
+
85
+ ```typescript
86
+ // Via abstração - funciona para qualquer provedor (ClickUp, Asana, Linear)
87
+ const taskManager = getTaskManager();
88
+
89
+ // Detectar projeto/lista da sessão atual
90
+ function getCurrentProjectId() {
91
+ // Tentar obter de sessão ativa
92
+ const sessionContext = readSessionContext();
93
+ if (sessionContext?.taskId) {
94
+ const currentTask = await taskManager.getTask(sessionContext.taskId);
95
+ if (currentTask?.projectId) {
96
+ return currentTask.projectId;
97
+ }
98
+ }
99
+
100
+ // Fallback: usar projeto padrão configurado
101
+ return taskManager.defaultProjectId;
102
+ }
103
+
104
+ const projectId = getCurrentProjectId();
105
+ console.log(`📋 Target project/list ID: ${projectId}`);
106
+ ```
107
+
108
+ **Nota:** Se o comando ainda usar código bash direto, atualizar para usar Task Manager abstraction quando possível.
109
+
110
+ ### **3. Criação da Task via Task Manager**
111
+ ```bash
112
+ # Preparar dados da task
113
+ TASK_TITLE="🚀 $FEATURE_NAME"
114
+
115
+ # Descrição da task com contexto
116
+ TASK_DESCRIPTION="## 🎯 **Feature para Planejamento**
117
+
118
+ **Tipo**: Feature Development
119
+ **Status**: Backlog - Aguardando planejamento e priorização
120
+ **Criada via**: /product/feature
121
+
122
+ ---
123
+
124
+ ## 📋 **Descrição**
125
+ $FEATURE_NAME
126
+
127
+ ---
128
+
129
+ ## 🔄 **Workflow de Desenvolvimento**
130
+
131
+ ### **Para Iniciar Desenvolvimento:**
132
+ \`\`\`bash
133
+ # Após planejamento, iniciar desenvolvimento GitFlow:
134
+ /git/feature/start \"$FEATURE_SLUG\"
135
+
136
+ # Ou usar sessão de desenvolvimento:
137
+ /engineer/start $FEATURE_SLUG
138
+ \`\`\`
139
+
140
+ ### **Workflow Sequencial Recomendado:**
141
+ 1. **🎯 Planejamento**: Task criada (atual) + detalhamento
142
+ 2. **🌿 Desenvolvimento**: /git/feature/start $FEATURE_SLUG
143
+ 3. **🛠️ Iteração**: /engineer/work
144
+ 4. **🔄 Finalização**: /git/sync
145
+ 5. **🚀 Deploy**: /engineer/pr
146
+
147
+ ---
148
+
149
+ ## 📊 **Critérios de Aceitação**
150
+ - [ ] Requisitos funcionais detalhados
151
+ - [ ] Mockups ou wireframes definidos
152
+ - [ ] Critérios de aceitação específicos
153
+ - [ ] Estimativas de esforço
154
+ - [ ] Dependências identificadas
155
+ - [ ] Prioridade definida no roadmap
156
+
157
+ ### **Para Desenvolvimento:**
158
+ - [ ] Funcionalidade implementada conforme especificação
159
+ - [ ] Testes unitários criados
160
+ - [ ] Documentação atualizada
161
+ - [ ] Code review aprovado
162
+ - [ ] Deploy em ambiente de teste
163
+
164
+ ---
165
+
166
+ ## 🏷️ **Tags e Categorização**
167
+ - **Type**: feature
168
+ - **Status**: backlog
169
+ - **Priority**: medium (ajustar conforme roadmap)
170
+ - **Phase**: planning
171
+
172
+ **Criada automaticamente pelo Sistema Onion** 🧅"
173
+
174
+ # Criar task via Task Manager abstraction
175
+ console.log("🚀 Creating feature planning task via Task Manager...");
176
+
177
+ const taskManager = getTaskManager();
178
+ const task = await taskManager.createTask({
179
+ name: TASK_TITLE,
180
+ projectId: projectId,
181
+ markdownDescription: TASK_DESCRIPTION,
182
+ status: 'backlog',
183
+ priority: 'medium',
184
+ tags: ['feature', 'backlog', 'planning']
185
+ });
186
+
187
+ const TASK_ID = task.id;
188
+ console.log(`✅ Task created: ${TASK_ID}`);
189
+ ```
190
+
191
+ ### **4. Estimar Story Points (Automático)**
192
+
193
+ **CRÍTICO:** Após criar task, SEMPRE estimar story points automaticamente.
194
+
195
+ ```markdown
196
+ @story-points-framework-specialist
197
+
198
+ Por favor, analise e estime a seguinte feature de backlog:
199
+
200
+ **Feature:** $FEATURE_NAME
201
+ **Descrição:** [descrição da feature]
202
+ **Status:** Backlog (planejamento inicial)
203
+
204
+ Forneça estimativa inicial de story points para planejamento.
205
+ ```
206
+
207
+ **Atualizar Task com Estimativa:**
208
+
209
+ ```bash
210
+ # Obter estimativa via agente
211
+ ESTIMATE_RESPONSE=$(invoke_agent_story_points "$FEATURE_NAME")
212
+
213
+ # Extrair story points
214
+ STORY_POINTS=$(echo "$ESTIMATE_RESPONSE" | extract_story_points)
215
+
216
+ # Atualizar task com custom field Story Points
217
+ if [ "$STORY_POINTS" != "" ]; then
218
+ echo "📊 Updating task with story points: $STORY_POINTS"
219
+
220
+ // Atualizar custom field via Task Manager
221
+ await taskManager.updateTask(TASK_ID, {
222
+ customFields: {
223
+ 'Story Points': STORY_POINTS
224
+ }
225
+ });
226
+
227
+ // Adicionar comentário com análise via Task Manager
228
+ const ESTIMATE_ANALYSIS = extractAnalysis(ESTIMATE_RESPONSE);
229
+
230
+ await taskManager.addComment(TASK_ID,
231
+ '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n' +
232
+ '📊 ESTIMATIVA INICIAL DE STORY POINTS\n' +
233
+ '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n' +
234
+ `🎲 Story Points: ${STORY_POINTS} pontos\n\n` +
235
+ `⚡ ANÁLISE:\n${ESTIMATE_ANALYSIS}\n\n` +
236
+ '💡 NOTA: Esta é uma estimativa inicial para planejamento. Pode ser refinada durante o refinement.\n' +
237
+ '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━'
238
+ );
239
+ fi
240
+ ```
241
+
242
+ ### **5. Resultado e Links**
243
+ ```bash
244
+ if [ "$TASK_ID" != "" ] && [ "$TASK_ID" != "null" ]; then
245
+ TASK_URL = task.url; // Via Task Manager abstraction
246
+
247
+ echo ""
248
+ echo "✅ FEATURE PLANNING TASK CREATED SUCCESSFULLY!"
249
+ echo ""
250
+ echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
251
+ echo ""
252
+ echo "📋 TASK DETAILS:"
253
+ echo " ▶ Title: $TASK_TITLE"
254
+ echo " ▶ ID: $TASK_ID"
255
+ echo " ▶ Status: Backlog"
256
+ echo " ▶ URL: $TASK_URL"
257
+ echo ""
258
+ echo "🏷️ TAGS: feature, backlog, planning"
259
+ echo "📝 DESCRIPTION: Auto-generated with development workflow"
260
+ echo ""
261
+ if [ "$STORY_POINTS" != "" ]; then
262
+ echo "🎲 STORY POINTS: $STORY_POINTS pontos (estimativa inicial)"
263
+ echo ""
264
+ fi
265
+ echo ""
266
+ echo "🎯 NEXT STEPS:"
267
+ echo " ∟ Add details: Open $TASK_URL"
268
+ echo " ∟ Set priority: Adjust based on roadmap"
269
+ echo " ∟ Start development: /git/feature/start \"$FEATURE_SLUG\""
270
+ echo ""
271
+ echo "💡 WORKFLOW SEQUENCIAL:"
272
+ echo " 1. 🎯 Planning (current) → 2. 🌿 GitFlow Start → 3. 🛠️ Development → 4. ✅ Done"
273
+ echo ""
274
+ echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
275
+ echo ""
276
+ echo "🌟 Feature '$FEATURE_NAME' ready for planning!"
277
+
278
+ # Adicionar comentário inicial na task
279
+ INITIAL_COMMENT="🎯 FEATURE BACKLOG PARA PLANEJAMENTO
280
+
281
+ ━━━━━━━━━━━━━━━━━━━━━━━━
282
+
283
+ ✅ TASK SETUP:
284
+ ▶ Feature: $FEATURE_NAME
285
+ ▶ Slug: $FEATURE_SLUG
286
+ ▶ Status: Backlog (Planning)
287
+ ▶ Criada via: /product/feature
288
+
289
+ 🎯 PLANEJAMENTO:
290
+ ▶ Detalhar requisitos funcionais
291
+ ▶ Definir critérios de aceitação
292
+ ▶ Estimar esforço e cronograma
293
+ ▶ Priorizar no roadmap
294
+
295
+ 🚀 PARA DESENVOLVIMENTO:
296
+ ▶ Após planejamento: /git/feature/start \"$FEATURE_SLUG\"
297
+ ▶ Para sessão: /engineer/start $FEATURE_SLUG
298
+
299
+ 📋 WORKFLOW:
300
+ ∟ Planning → GitFlow Start → Development → Done
301
+
302
+ ━━━━━━━━━━━━━━━━━━━━━━━━
303
+
304
+ ⏰ Criada: $(date +'%Y-%m-%d %H:%M:%S') | 🧅 Sistema Onion"
305
+
306
+ # Adicionar comentário via Task Manager (graceful degradation)
307
+ // Via Task Manager abstraction
308
+ await taskManager.addComment(TASK_ID, INITIAL_COMMENT).catch(() => {
309
+ console.warn("⚠️ Comment creation failed - task created successfully anyway");
310
+ });
311
+
312
+ else
313
+ console.error("❌ FAILED TO CREATE TASK");
314
+ console.error("");
315
+ console.error("💡 POSSIBLE CAUSES:");
316
+ console.error(" ∟ Task Manager provider not configured");
317
+ console.error(" ∟ Invalid project/list ID or permissions");
318
+ console.error(" ∟ Network connectivity issues");
319
+ console.error("");
320
+ console.error("🔧 TROUBLESHOOTING:");
321
+ console.error(" ∟ Check TASK_MANAGER_PROVIDER environment variable");
322
+ console.error(" ∟ Verify project/list permissions and ID");
323
+ console.error(" ∟ Execute /meta/setup-integration to configure");
324
+ console.error(" ∟ Try manual task creation as fallback");
325
+ echo ""
326
+ echo "📖 MANUAL FALLBACK:"
327
+ echo " ∟ Create task manually: '$TASK_TITLE'"
328
+ echo " ∟ Add tags: feature, backlog, planning"
329
+ echo " ∟ Set status: Backlog"
330
+ exit 1
331
+ fi
332
+ ```
333
+
334
+ ---
335
+
336
+ ## 🔗 **Integração com Sistema Onion**
337
+
338
+ ### **Separação Clara de Responsabilidades:**
339
+ - **`/product/feature`**: Cria task backlog para **planejamento**
340
+ - **`/git/feature/start`**: Inicia desenvolvimento **GitFlow** (branch + session)
341
+ - **`/git/sync`**: Finaliza desenvolvimento (pós-merge + cleanup)
342
+
343
+ ### **Workflow Sequencial Integrado:**
344
+ ```bash
345
+ 1. /product/feature "nova-funcionalidade" # ← PLANEJAMENTO
346
+ # ... tempo de planejamento, detalhamento, priorização ...
347
+
348
+ 2. /git/feature/start "nova-funcionalidade" # ← DESENVOLVIMENTO GitFlow
349
+ # ... desenvolvimento usando sessões ...
350
+
351
+ 3. /git/sync # ← FINALIZAÇÃO
352
+ ```
353
+
354
+ ### **Quando Usar:**
355
+ - ✅ **Criar features para backlog** e roadmap planning
356
+ - ✅ **Organizar product backlog** e priorização
357
+ - ✅ **Capturar ideias** de features rapidamente
358
+ - ✅ **Setup inicial** de projetos com múltiplas features
359
+
360
+ ### **Quando NÃO usar:**
361
+ - ❌ Desenvolvimento imediato (use `/git/feature/start`)
362
+ - ❌ Hotfixes urgentes (use `/engineer/hotfix`)
363
+ - ❌ Tasks já existem (use `/engineer/start <feature-slug>`)
364
+
365
+ ---
366
+
367
+ ## ⚠️ **Tratamento de Erros**
368
+
369
+ ### **Erro: Nome da feature não fornecido**
370
+ ```
371
+ ❌ ERROR: Feature name required
372
+ 📖 USAGE: /product/feature "feature-name-or-description"
373
+ ```
374
+
375
+ ### **Erro: Task Manager falhou**
376
+ ```
377
+ ❌ FAILED TO CREATE TASK
378
+ 🔧 Check TASK_MANAGER_PROVIDER configuration and permissions
379
+ 📖 Create task manually as fallback
380
+ ```
381
+
382
+ ### **Erro: Lista não encontrada**
383
+ ```
384
+ ❌ ERROR: Unable to detect project/list via Task Manager
385
+ 💡 Run from active session or configure default list
386
+ ```
387
+
388
+ ---
389
+
390
+ ## 💡 **Dicas de Uso**
391
+
392
+ ### **✅ Boas Práticas:**
393
+ ```bash
394
+ # Nomes descritivos e específicos
395
+ /product/feature "implement-oauth2-authentication-flow"
396
+
397
+ # Features modulares e focadas
398
+ /product/feature "add-user-profile-avatar-upload"
399
+
400
+ # Include context quando útil
401
+ /product/feature "integrate-stripe-payment-gateway-checkout"
402
+ ```
403
+
404
+ ### **❌ Evitar:**
405
+ ```bash
406
+ # Muito genérico
407
+ /product/feature "melhorias"
408
+
409
+ # Muito técnico/interno
410
+ /product/feature "refactor-class-x"
411
+
412
+ # Tasks que não são features
413
+ /product/feature "fix-bug-payment" # Use /engineer/hotfix
414
+ ```
415
+
416
+ ---
417
+
418
+ **🎯 Criação rápida de features para backlog e planejamento! Para iniciar desenvolvimento GitFlow, use `/git/feature/start [feature-name]`.**
419
+
420
+
421
+ ---
422
+
423
+ ## 📚 Pré-requisitos
424
+
425
+ Domine comandos starter antes de usar este comando intermediate/advanced.
426
+
427
+ Consulte os comandos help para ver hierarquia completa:
428
+ - /business/help --level=starter
429
+ - /technical/help --level=starter
430
+
431
+ 💡 Comandos intermediate/advanced assumem familiaridade com workflows básicos.