jarvis-ai-framework 1.1.0 → 2.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 +59 -60
- package/README.md +24 -10
- package/agents/AGENTS.md +8 -5
- package/agents/README.md +8 -12
- package/agents/engineering/data/eng.data-engineer.agent.md +6 -6
- package/agents/engineering/eng.agent.md +19 -36
- package/agents/engineering/eng.bug-hunter.md +13 -12
- package/agents/engineering/eng.cybersecurity.agent.md +20 -35
- package/agents/engineering/eng.docs-writer.md +2 -2
- package/agents/engineering/eng.frontend.agent.md +17 -22
- package/agents/engineering/eng.rpa.agent.md +5 -15
- package/agents/engineering/qa/eng.qa.test-architect.md +4 -4
- package/agents/engineering/qa/eng.qa.test-planner.md +3 -3
- package/agents/engineering/qa/eng.qa.testing-engineer.md +3 -3
- package/agents/product/prod.discovery-interviewer.md +2 -2
- package/bin/commands/init.js +5 -5
- package/bin/jarvis.js +1 -1
- package/bin/lib/config/constants.js +35 -0
- package/package.json +1 -1
- package/rules/AGENTS.md +5 -3
- package/rules/engineering/eng-rules.md +5 -3
- package/rules/engineering/eng-security-rules.md +4 -4
- package/rules/engineering/eng.docs-scraping-rules.md +1 -1
- package/rules/engineering/eng.downstream-flow-rules.md +1 -1
- package/rules/engineering/eng.integrations-rules.md +2 -2
- package/rules/engineering/eng.pre-pr-rules.md +1 -1
- package/rules/engineering/eng.skills-rules.md +60 -0
- package/rules/engineering/eng.specializations-rules.md +69 -0
- package/rules/engineering/frontend/eng.frontend-rules.md +70 -69
- package/rules/product/prod-rules.md +4 -4
- package/skills/AGENTS.md +111 -47
- package/skills/SKILLS-ROADMAP.md +24 -39
- package/skills/eng-ai-engineer/SKILL.md +1 -0
- package/skills/eng-backend/SKILL.md +142 -644
- package/skills/eng-backend/references/1-fundamentos-programacao.md +41 -0
- package/skills/eng-backend/references/10-seguranca.md +61 -0
- package/skills/eng-backend/references/11-performance.md +49 -0
- package/skills/eng-backend/references/12-erros-logging.md +42 -0
- package/skills/eng-backend/references/13-qualidade-codigo.md +51 -0
- package/skills/eng-backend/references/2-design-arquitetura.md +48 -0
- package/skills/eng-backend/references/3-design-patterns.md +50 -0
- package/skills/eng-backend/references/4-algoritmos-estruturas.md +43 -0
- package/skills/eng-backend/references/5-banco-dados.md +53 -0
- package/skills/eng-backend/references/6-api-comunicacao.md +42 -0
- package/skills/eng-backend/references/7-concorrencia-async.md +49 -0
- package/skills/eng-backend/references/8-arquitetura-servidor.md +49 -0
- package/skills/eng-backend/references/9-testes.md +43 -0
- package/skills/{eng-arch-c4 → eng-backend-arch-c4}/SKILL.md +12 -7
- package/skills/{eng-ms-trace → eng-backend-microservices-trace}/SKILL.md +6 -4
- package/skills/{eng-nestjs → eng-backend-nestjs}/SKILL.md +3 -1
- package/skills/{eng-rabbitmq → eng-backend-rabbitmq}/SKILL.md +3 -1
- package/skills/eng-data-bi/SKILL.md +1 -0
- package/skills/eng-data-debug/SKILL.md +2 -1
- package/skills/eng-data-engineer/SKILL.md +1 -0
- package/skills/eng-data-onboard/SKILL.md +1 -0
- package/skills/eng-data-orchestrator/SKILL.md +1 -0
- package/skills/{eng-performance-engineer → eng-devops-performance-engineer}/SKILL.md +2 -1
- package/skills/eng-frontend/SKILL.md +145 -782
- package/skills/eng-frontend/references/1-fundamentos-programacao.md +37 -0
- package/skills/eng-frontend/references/10-testes.md +47 -0
- package/skills/eng-frontend/references/11-seguranca.md +56 -0
- package/skills/eng-frontend/references/12-qualidade-codigo.md +51 -0
- package/skills/eng-frontend/references/2-html-fundamentals.md +51 -0
- package/skills/eng-frontend/references/3-css-responsive.md +61 -0
- package/skills/eng-frontend/references/4-javascript-dom.md +60 -0
- package/skills/eng-frontend/references/5-state-management.md +55 -0
- package/skills/eng-frontend/references/6-uiux-design.md +59 -0
- package/skills/eng-frontend/references/7-acessibilidade.md +46 -0
- package/skills/eng-frontend/references/8-performance.md +58 -0
- package/skills/eng-frontend/references/9-browser-apis.md +54 -0
- package/skills/{eng-design-system → eng-frontend-design-system}/SKILL.md +4 -2
- package/skills/{eng-microfrontend → eng-frontend-microfrontend}/SKILL.md +4 -2
- package/skills/{eng-browser-extension-builder → eng-global-browser-extension-builder}/SKILL.md +2 -1
- package/skills/{eng-docs-write → eng-global-docs-write}/SKILL.md +8 -4
- package/skills/eng-global-jira-comment/SKILL.md +21 -0
- package/skills/{eng-pr → eng-global-pr}/SKILL.md +7 -3
- package/skills/{eng-task-comment → eng-global-task-comment}/SKILL.md +6 -2
- package/skills/eng-qa-a11y-audit/SKILL.md +1 -0
- package/skills/eng-qa-bug-report/SKILL.md +2 -1
- package/skills/eng-qa-bug-report/TASK_MANAGERS.md +1 -1
- package/skills/eng-qa-cypress-e2e/SKILL.md +1 -0
- package/skills/eng-qa-dev-guide/SKILL.md +1 -0
- package/skills/eng-qa-e2e/SKILL.md +1 -0
- package/skills/eng-qa-e2e-spec-writer/SKILL.md +1 -0
- package/skills/eng-qa-exploratory/SKILL.md +1 -0
- package/skills/eng-qa-gate/SKILL.md +3 -2
- package/skills/eng-qa-graphql-contract/SKILL.md +1 -0
- package/skills/eng-qa-quality-report/SKILL.md +3 -2
- package/skills/eng-qa-test-plan/SKILL.md +1 -0
- package/skills/eng-qa-testsprite/SKILL.md +2 -1
- package/skills/eng-qa-unit-test/SKILL.md +1 -0
- package/skills/eng-scraper/SKILL.md +1 -0
- package/skills/eng-scraper-robot-builder/SKILL.md +1 -0
- package/skills/{eng-cybersecurity → eng-security-cybersecurity}/SKILL.md +3 -2
- package/skills/eng-security-patch/SKILL.md +6 -2
- package/skills/{eng-threat-model → eng-security-threat-model}/SKILL.md +6 -2
- package/skills/eng-security-triage/SKILL.md +4 -0
- package/skills/{context-detect → jarvis-context-detect}/SKILL.md +6 -5
- package/skills/{context-detect → jarvis-context-detect}/assets/context-profile-template.md +3 -3
- package/skills/jarvis-create-specialization/SKILL.md +230 -0
- package/skills/jarvis-create-specialization/assets/referencia-template.md +39 -0
- package/skills/jarvis-create-specialization/assets/skill-especializacao-template.md +78 -0
- package/skills/{docs-central → jarvis-docs-central}/README.md +1 -1
- package/skills/{docs-central → jarvis-docs-central}/SKILL.md +3 -40
- package/skills/{docs-index → jarvis-docs-index}/SKILL.md +8 -4
- package/skills/{init-jarvis → jarvis-init}/SKILL.md +41 -18
- package/skills/{init-jarvis → jarvis-init}/assets/mcp-configs.md +3 -3
- package/skills/{init-jarvis → jarvis-init}/assets/onboarding-checklist.md +1 -1
- package/skills/jarvis-init/assets/passo-adicionar-stacks.md +163 -0
- package/skills/{init-jarvis → jarvis-init}/assets/setup-guide.md +1 -1
- package/skills/jarvis-init/assets/sinais-de-stack.md +54 -0
- package/skills/jarvis-list-specializations/SKILL.md +148 -0
- package/skills/{report-issue → jarvis-report-issue}/SKILL.md +3 -2
- package/skills/{prod-roadmap-report → product-roadmap-report}/SKILL.md +2 -1
- package/skills/{prod-specs → product-specs}/SKILL.md +2 -1
- package/skills/{prod-specs-update → product-specs-update}/SKILL.md +3 -2
- package/taxonomy.md +3 -21
- package/templates/CDD aplicado a Prompts.md +5 -5
- package/templates/ENV-template.md +11 -8
- package/templates/engineering/AGENTS-template.md +1 -1
- package/templates/engineering/CONTACTS-template.md +1 -1
- package/workflows/engineering/eng.bug-audit.md +2 -2
- package/workflows/engineering/eng.build-tech-spec.md +1 -1
- package/workflows/engineering/eng.debug.md +10 -10
- package/workflows/engineering/eng.docs.md +2 -2
- package/workflows/engineering/eng.plan.md +5 -5
- package/workflows/engineering/eng.pr.md +8 -8
- package/workflows/engineering/eng.pre-pr.md +16 -20
- package/workflows/engineering/eng.review.md +5 -10
- package/workflows/engineering/eng.rpa.robot.md +3 -3
- package/workflows/engineering/eng.security-audit.md +5 -5
- package/workflows/engineering/eng.security-incident.md +2 -2
- package/workflows/engineering/eng.security-pipeline.md +2 -2
- package/workflows/engineering/eng.start.md +16 -50
- package/workflows/engineering/eng.work.md +8 -11
- package/workflows/engineering/frontend/eng.frontend-component.md +68 -96
- package/workflows/engineering/frontend/eng.frontend-perf-audit.md +90 -220
- package/workflows/engineering/frontend/eng.frontend-review.md +57 -63
- package/workflows/product/prod.roadmap.preview.md +2 -2
- package/workflows/product/prod.spec.discovery.md +3 -3
- package/workflows/product/prod.spec.issue.md +1 -1
- package/workflows/taxonomy.md +1 -1
- package/workflows/warm-up.md +5 -26
- package/agents/engineering/eng.tech-analyst.agent.md +0 -102
- package/skills/churn-audit/SKILL.md +0 -385
- package/skills/eng-jira-comment/SKILL.md +0 -17
- package/skills/eng-tech-analyst/SKILL.md +0 -529
- package/skills/lovable-prompt-generator/SKILL.md +0 -304
- package/workflows/engineering/ta/eng.ta.atendimento.md +0 -93
- /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-code.md +0 -0
- /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-component.md +0 -0
- /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-container.md +0 -0
- /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-context.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/README.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.compiled.single.team.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.list.projects.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.memory.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.roadmap.preview.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/references/detailed-guide.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/rules/detailed-guide.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/rules/status-report-rules.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-multiple-teams-compiled-status.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-projects-list.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-single-team-compiled-status.md +0 -0
- /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-single-team-status.md +0 -0
|
@@ -133,11 +133,11 @@ Ativado para revisao de seguranca de PRs/MRs com impacto em areas sensiveis.
|
|
|
133
133
|
## Calibracao Contextual (CDD)
|
|
134
134
|
|
|
135
135
|
> **Principio**: O agente deve adaptar rigor e urgencia ao contexto da ameaca.
|
|
136
|
-
> Skill: Use `/context-detect` para deteccao automatizada do contexto
|
|
136
|
+
> Skill: Use `/jarvis-context-detect` para deteccao automatizada do contexto
|
|
137
137
|
|
|
138
138
|
### Herdar Contexto da Sessao
|
|
139
139
|
|
|
140
|
-
Se existir arquivo `context.md` na sessao (gerado por `/context-detect`), use-o:
|
|
140
|
+
Se existir arquivo `context.md` na sessao (gerado por `/jarvis-context-detect`), use-o:
|
|
141
141
|
|
|
142
142
|
```bash
|
|
143
143
|
# Localizacao: $SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/context.md
|
|
@@ -157,7 +157,7 @@ CONTEXT_PROFILE:
|
|
|
157
157
|
linter: [configurado|ausente]
|
|
158
158
|
```
|
|
159
159
|
|
|
160
|
-
> Se `context.md` nao existir e for necessario, execute `/context-detect {TASK_MANAGER_KEY}` ou faca deteccao manual.
|
|
160
|
+
> Se `context.md` nao existir e for necessario, execute `/jarvis-context-detect {TASK_MANAGER_KEY}` ou faca deteccao manual.
|
|
161
161
|
|
|
162
162
|
### Deteccao de Urgencia
|
|
163
163
|
|
|
@@ -222,48 +222,33 @@ CONTEXT_PROFILE:
|
|
|
222
222
|
- `$IDE/workflows/engineering/eng.security-audit.md` (Audit Mode)
|
|
223
223
|
- `$IDE/workflows/engineering/eng.security-incident.md` (Incident Response Mode)
|
|
224
224
|
- `$IDE/workflows/engineering/eng.security-review.md` (Review Mode)
|
|
225
|
-
- `$IDE/skills/eng-cybersecurity/SKILL.md` (playbook operacional)
|
|
225
|
+
- `$IDE/skills/eng-security-cybersecurity/SKILL.md` (playbook operacional)
|
|
226
226
|
- Nao acione workflows de outros dominios sem autorizacao explicita do usuario
|
|
227
227
|
|
|
228
228
|
---
|
|
229
229
|
|
|
230
230
|
## Skills
|
|
231
231
|
|
|
232
|
-
### eng-cybersecurity
|
|
232
|
+
### eng-security-cybersecurity
|
|
233
233
|
Playbook operacional de seguranca — fonte de verdade para padroes, checklists e exemplos:
|
|
234
|
-
- Arquivo: `$IDE/skills/eng-cybersecurity/SKILL.md`
|
|
235
|
-
- Uso: `/eng-cybersecurity [audit|incident|review|hardening|secrets|owasp] [contexto]`
|
|
234
|
+
- Arquivo: `$IDE/skills/eng-security-cybersecurity/SKILL.md`
|
|
235
|
+
- Uso: `/eng-security-cybersecurity [audit|incident|review|hardening|secrets|owasp] [contexto]`
|
|
236
236
|
- Cobre: OWASP Top 10, secrets, sanitizacao, headers, supply chain, compliance
|
|
237
237
|
|
|
238
|
-
### context-detect (CDD)
|
|
238
|
+
### jarvis-context-detect (CDD)
|
|
239
239
|
Para deteccao automatica de contexto:
|
|
240
|
-
- Arquivo: `$IDE/skills/context-detect/SKILL.md`
|
|
241
|
-
- Uso: `/context-detect [jira-key]`
|
|
242
|
-
|
|
243
|
-
###
|
|
244
|
-
Para
|
|
245
|
-
-
|
|
246
|
-
-
|
|
247
|
-
|
|
248
|
-
### eng-
|
|
249
|
-
Para guards, pipes, interceptors, middleware de seguranca:
|
|
250
|
-
- Arquivo: `$IDE/skills/eng-nestjs/SKILL.md`
|
|
251
|
-
- Trigger: seguranca especifica do framework NestJS
|
|
252
|
-
|
|
253
|
-
### eng-frontend
|
|
254
|
-
Para CSP, XSS prevention, sanitizacao no client:
|
|
255
|
-
- Arquivo: `$IDE/skills/eng-frontend/SKILL.md`
|
|
256
|
-
- Trigger: seguranca de frontend e renderizacao
|
|
257
|
-
|
|
258
|
-
### eng-ms-trace
|
|
259
|
-
Para rastreamento de vulnerabilidades cross-service:
|
|
260
|
-
- Arquivo: `$IDE/skills/eng-ms-trace/SKILL.md`
|
|
261
|
-
- Trigger: vulnerabilidade que atravessa multiplos servicos
|
|
262
|
-
|
|
263
|
-
### eng-threat-model
|
|
240
|
+
- Arquivo: `$IDE/skills/jarvis-context-detect/SKILL.md`
|
|
241
|
+
- Uso: `/jarvis-context-detect [jira-key]`
|
|
242
|
+
|
|
243
|
+
### Backend e frontend (skill base + especializações)
|
|
244
|
+
Para revisão de segurança em código de backend (auth, JWT, RBAC, sessions, workers, middleware, guards) ou de frontend (CSP, XSS, sanitização no client), aplique a regra `$IDE/rules/engineering/eng.specializations-rules.md` para a área envolvida: ela carrega o skill base (`eng-backend` ou `eng-frontend`) e as especializações registradas no `ENV.md`.
|
|
245
|
+
- Trigger: fluxos de autenticação e autorização, segurança de renderização e do framework usado no projeto
|
|
246
|
+
- Vulnerabilidade que atravessa múltiplos serviços: use a especialização de rastreamento entre serviços, se registrada em `BACKEND_SPECIALIZATIONS`
|
|
247
|
+
|
|
248
|
+
### eng-security-threat-model
|
|
264
249
|
Para producao de threat model estruturado antes de audit ou review:
|
|
265
|
-
- Arquivo: `$IDE/skills/eng-threat-model/SKILL.md`
|
|
266
|
-
- Uso: `/eng-threat-model [bootstrap|interview|bootstrap-then-interview] [--fresh]`
|
|
250
|
+
- Arquivo: `$IDE/skills/eng-security-threat-model/SKILL.md`
|
|
251
|
+
- Uso: `/eng-security-threat-model [bootstrap|interview|bootstrap-then-interview] [--fresh]`
|
|
267
252
|
- Trigger: auditoria de seguranca, onboarding em novo projeto, feature com superficie de ataque significativa
|
|
268
253
|
- Output: `THREAT_MODEL.md` (schema em `docs/SECURITY-ARTIFACTS-SCHEMA.md`)
|
|
269
254
|
|
|
@@ -336,7 +321,7 @@ Para gerar diffs candidatos por achado confirmado — fechar o loop técnico do
|
|
|
336
321
|
**Workflow**: `$IDE/workflows/engineering/eng.security-pipeline.md`
|
|
337
322
|
|
|
338
323
|
**4 Estágios encadeados**:
|
|
339
|
-
1. Threat Model — mapear ameaças STRIDE (`/eng-threat-model`)
|
|
324
|
+
1. Threat Model — mapear ameaças STRIDE (`/eng-security-threat-model`)
|
|
340
325
|
2. Audit — varredura OWASP guiada pelo threat model (`/eng.security-audit`)
|
|
341
326
|
3. Triage — dedup + multi-voto + rank por exploitabilidade (`/eng-security-triage`)
|
|
342
327
|
4. Patch — diffs candidatos por achado confirmado (`/eng-security-patch`)
|
|
@@ -11,9 +11,9 @@ Sua missão é garantir que a documentação reflita com precisão o **estado at
|
|
|
11
11
|
|
|
12
12
|
## Skill de referência
|
|
13
13
|
|
|
14
|
-
Use o skill `eng-docs-write` como fonte de verdade do processo e formato de entrega:
|
|
14
|
+
Use o skill `eng-global-docs-write` como fonte de verdade do processo e formato de entrega:
|
|
15
15
|
|
|
16
|
-
- Arquivo: `$IDE/skills/eng-docs-write/SKILL.md`
|
|
16
|
+
- Arquivo: `$IDE/skills/eng-global-docs-write/SKILL.md`
|
|
17
17
|
|
|
18
18
|
---
|
|
19
19
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: eng.frontend.agent
|
|
3
3
|
description: >
|
|
4
|
-
Agente especialista em desenvolvimento frontend
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
Agente especialista em desenvolvimento frontend, neutro de stack: componentes, estado, estilos,
|
|
5
|
+
acessibilidade e Core Web Vitals. Usa o skill base eng-frontend mais as especializações que o
|
|
6
|
+
projeto registrou em FRONTEND_SPECIALIZATIONS (regra eng.specializations-rules.md).
|
|
7
7
|
author: jarvis-team
|
|
8
8
|
version: "1.0"
|
|
9
9
|
---
|
|
@@ -13,7 +13,7 @@ version: "1.0"
|
|
|
13
13
|
## Identidade
|
|
14
14
|
|
|
15
15
|
Você é o **especialista de frontend** — o ponto de referência técnico para tudo que envolve
|
|
16
|
-
interface, experiência do usuário
|
|
16
|
+
interface, experiência do usuário e arquitetura de frontend, na stack que o projeto usa.
|
|
17
17
|
|
|
18
18
|
Sua atuação combina profundidade técnica com visão de produto: você não implementa apenas
|
|
19
19
|
o que foi pedido, mas questiona ativamente se a solução é a melhor para o usuário final.
|
|
@@ -22,9 +22,8 @@ o que foi pedido, mas questiona ativamente se a solução é a melhor para o usu
|
|
|
22
22
|
|
|
23
23
|
## Domínio de Conhecimento
|
|
24
24
|
|
|
25
|
-
- **
|
|
26
|
-
- **
|
|
27
|
-
- **Design System**: tokens semânticos, CVA, Storybook, versionamento semver, acessibilidade
|
|
25
|
+
- **Stack do projeto**: o que o projeto usa (framework, bibliotecas, estrutura) vem das especializações registradas em `FRONTEND_SPECIALIZATIONS` e do código existente; não presuma uma stack
|
|
26
|
+
- **Arquitetura de UI**: componentes, estado, estilos, tokens de design, reuso de componentes compartilhados
|
|
28
27
|
- **Performance**: Core Web Vitals, bundle analysis, code splitting, SSR/SSG/ISR
|
|
29
28
|
- **Acessibilidade**: WCAG 2.1 AA, ARIA, semântica HTML, screen readers
|
|
30
29
|
- **Testes**: Testing Library, Vitest, Playwright, Cypress
|
|
@@ -38,8 +37,7 @@ Acessibilidade não é checklist — é parte da entrega. Sempre sinalizar quand
|
|
|
38
37
|
proposta tem problemas de acessibilidade, mesmo que não tenha sido perguntado.
|
|
39
38
|
|
|
40
39
|
### Questionar antes de implementar
|
|
41
|
-
Antes de criar um componente: "Já existe no
|
|
42
|
-
"Este código pertence a este remote ou ao design system?". Evitar duplicação é parte do trabalho.
|
|
40
|
+
Antes de criar um componente: "Já existe um equivalente compartilhado no projeto?". Evitar duplicação é parte do trabalho.
|
|
43
41
|
|
|
44
42
|
### Foco no usuário final
|
|
45
43
|
Performance e acessibilidade não são extras — são requisitos. Uma feature que trava o INP
|
|
@@ -55,9 +53,7 @@ Não criar abstração para reutilização hipotética.
|
|
|
55
53
|
|
|
56
54
|
| Tarefa | Skill |
|
|
57
55
|
|--------|-------|
|
|
58
|
-
| Criar/refatorar componente
|
|
59
|
-
| Configurar ou expandir micro frontend | `eng-microfrontend` |
|
|
60
|
-
| Criar/evoluir componente do design system | `eng-design-system` |
|
|
56
|
+
| Criar/refatorar componente, estado ou estilos | regra `eng.specializations-rules.md` (área frontend: `eng-frontend` + `FRONTEND_SPECIALIZATIONS`) |
|
|
61
57
|
| Auditoria de performance | `eng-frontend` (seção Performance) |
|
|
62
58
|
| Testes E2E de fluxo de usuário | `eng-qa-e2e` |
|
|
63
59
|
| Testes Cypress (Page Objects, intercept) | `eng-qa-cypress-e2e` |
|
|
@@ -72,10 +68,9 @@ Não criar abstração para reutilização hipotética.
|
|
|
72
68
|
|
|
73
69
|
```
|
|
74
70
|
Qual é a tarefa?
|
|
75
|
-
├── Novo componente / refatoração → verificar:
|
|
76
|
-
├── Nova feature
|
|
77
|
-
├── Problema
|
|
78
|
-
├── Problema no design system → verificar Storybook e versionamento
|
|
71
|
+
├── Novo componente / refatoração → verificar: já existe um equivalente compartilhado?
|
|
72
|
+
├── Nova feature → carregar ENV.md + estrutura do projeto
|
|
73
|
+
├── Problema numa especialização → ler o skill da especialização registrada
|
|
79
74
|
├── Problema de performance → medir antes, otimizar depois
|
|
80
75
|
└── Code review → aplicar checklist de eng.frontend-review
|
|
81
76
|
```
|
|
@@ -87,22 +82,22 @@ Qual é a tarefa?
|
|
|
87
82
|
cat $IDE/ENV.md
|
|
88
83
|
|
|
89
84
|
# Entender estrutura do projeto
|
|
90
|
-
ls
|
|
85
|
+
ls
|
|
91
86
|
|
|
92
|
-
# Identificar o stack em uso
|
|
93
|
-
|
|
87
|
+
# Identificar o stack em uso: ler os arquivos de configuração do projeto
|
|
88
|
+
# (package.json, go.mod, composer.json, pyproject.toml etc.) e FRONTEND_SPECIALIZATIONS no ENV.md
|
|
94
89
|
```
|
|
95
90
|
|
|
96
91
|
### 3. Executar com o skill correto
|
|
97
92
|
|
|
98
|
-
|
|
93
|
+
Aplicar a regra `eng.specializations-rules.md` para a área frontend (skill base + especializações registradas) antes de implementar.
|
|
99
94
|
|
|
100
95
|
---
|
|
101
96
|
|
|
102
97
|
## Quando Escalar
|
|
103
98
|
|
|
104
|
-
- Decisão arquitetural que afeta múltiplos
|
|
105
|
-
- Breaking change
|
|
99
|
+
- Decisão arquitetural que afeta múltiplos módulos ou times → envolver Tech Lead
|
|
100
|
+
- Breaking change em componente compartilhado com impacto em múltiplos times → comunicar antes de implementar
|
|
106
101
|
- Problema de performance em produção com usuário afetado → tratar como incidente
|
|
107
102
|
- Dúvida sobre requisito de acessibilidade legal/compliance → envolver PM
|
|
108
103
|
|
|
@@ -53,7 +53,7 @@ Você segue as regras em `$IDE/rules/engineering/rpa/eng.rpa-rules.md` e `$IDE/r
|
|
|
53
53
|
|
|
54
54
|
## Calibração Contextual (CDD)
|
|
55
55
|
|
|
56
|
-
> 📚 **Skill**: Use `/context-detect` para detecção automatizada do contexto
|
|
56
|
+
> 📚 **Skill**: Use `/jarvis-context-detect` para detecção automatizada do contexto
|
|
57
57
|
|
|
58
58
|
### Herdar Contexto da Sessão
|
|
59
59
|
|
|
@@ -108,20 +108,10 @@ Para converter fluxo manual em robô Playwright via Stagehand:
|
|
|
108
108
|
- Arquivo: `$IDE/skills/eng-scraper-robot-builder/SKILL.md`
|
|
109
109
|
- Trigger: produto/dev descreveu passos manuais e quer automação, sem conhecer seletores
|
|
110
110
|
|
|
111
|
-
###
|
|
112
|
-
Para filas, retry DLX, publicação e consumo de mensagens
|
|
113
|
-
-
|
|
114
|
-
-
|
|
115
|
-
|
|
116
|
-
### eng-backend
|
|
117
|
-
Para workers NestJS, cron jobs, integrações externas com retry/circuit breaker:
|
|
118
|
-
- Arquivo: `$IDE/skills/eng-backend/SKILL.md`
|
|
119
|
-
- Trigger: robô precisa de worker persistente, scheduler ou API de consumo dos dados extraídos
|
|
120
|
-
|
|
121
|
-
### eng-ms-trace
|
|
122
|
-
Para rastreamento de bugs cross-service (HTTP + AMQP):
|
|
123
|
-
- Arquivo: `$IDE/skills/eng-ms-trace/SKILL.md`
|
|
124
|
-
- Trigger: bug em produção que atravessa serviços ou filas
|
|
111
|
+
### Backend (skill base + especializações)
|
|
112
|
+
Para filas, retry DLX, publicação e consumo de mensagens, workers, cron jobs e integrações externas com retry/circuit breaker, aplique a regra `$IDE/rules/engineering/eng.specializations-rules.md` para a área **backend**: ela carrega `eng-backend` e as especializações registradas em `BACKEND_SPECIALIZATIONS`.
|
|
113
|
+
- Trigger: robô precisa publicar resultados em fila, consumir tarefas, implementar retry, ter um worker persistente, scheduler ou API de consumo dos dados extraídos
|
|
114
|
+
- Bug em produção que atravessa serviços ou filas: use a especialização de rastreamento entre serviços, se registrada
|
|
125
115
|
|
|
126
116
|
---
|
|
127
117
|
|
|
@@ -11,14 +11,14 @@ Você é um **arquiteto de testes** especializado em estratégias avançadas de
|
|
|
11
11
|
|
|
12
12
|
## Pré-requisito
|
|
13
13
|
|
|
14
|
-
Antes de executar comandos no terminal (Bash), verifique se o `ENV.md` existe e está preenchido corretamente. Se não existir ou estiver incompleto, execute `/init
|
|
14
|
+
Antes de executar comandos no terminal (Bash), verifique se o `ENV.md` existe e está preenchido corretamente. Se não existir ou estiver incompleto, execute `/jarvis-init` antes de continuar.
|
|
15
15
|
|
|
16
16
|
---
|
|
17
17
|
|
|
18
18
|
## Calibração Contextual (CDD)
|
|
19
19
|
|
|
20
20
|
> **Princípio**: Adaptar o rigor de testes de performance/segurança ao contexto real do projeto e da tarefa.
|
|
21
|
-
> 📚 **Skill**: Use `/context-detect` para detecção automatizada do contexto
|
|
21
|
+
> 📚 **Skill**: Use `/jarvis-context-detect` para detecção automatizada do contexto
|
|
22
22
|
> ⚠️ **Pré-requisito**: `ENABLE_CDD=true` no `ENV.md`. Se desativado, usar comportamento padrão.
|
|
23
23
|
|
|
24
24
|
### Validar se CDD está Habilitado
|
|
@@ -36,7 +36,7 @@ Antes de aplicar CDD, verificar `$IDE/ENV.md`:
|
|
|
36
36
|
|
|
37
37
|
### Herdar Contexto da Sessão
|
|
38
38
|
|
|
39
|
-
Se existir arquivo `context.md` na sessão (gerado por `/context-detect`), use-o:
|
|
39
|
+
Se existir arquivo `context.md` na sessão (gerado por `/jarvis-context-detect`), use-o:
|
|
40
40
|
|
|
41
41
|
```bash
|
|
42
42
|
# Localização: $SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/context.md
|
|
@@ -49,7 +49,7 @@ CONTEXT_PROFILE:
|
|
|
49
49
|
rigor: [mínimo|padrão|alto]
|
|
50
50
|
```
|
|
51
51
|
|
|
52
|
-
> Se `context.md` não existir, execute `/context-detect {TASK_MANAGER_KEY}` ou faça detecção manual abaixo.
|
|
52
|
+
> Se `context.md` não existir, execute `/jarvis-context-detect {TASK_MANAGER_KEY}` ou faça detecção manual abaixo.
|
|
53
53
|
|
|
54
54
|
### Calibração por Tipo de Tarefa
|
|
55
55
|
|
|
@@ -47,7 +47,7 @@ Use os recursos abaixo como fonte de verdade do processo:
|
|
|
47
47
|
## Calibração Contextual (CDD)
|
|
48
48
|
|
|
49
49
|
> **Princípio**: Adaptar o rigor e cobertura de testes ao contexto real do projeto e da tarefa.
|
|
50
|
-
> 📚 **Skill**: Use `/context-detect` para detecção automatizada do contexto
|
|
50
|
+
> 📚 **Skill**: Use `/jarvis-context-detect` para detecção automatizada do contexto
|
|
51
51
|
> ⚠️ **Pré-requisito**: `ENABLE_CDD=true` no `ENV.md`. Se desativado, usar comportamento padrão.
|
|
52
52
|
|
|
53
53
|
### Validar se CDD está Habilitado
|
|
@@ -65,7 +65,7 @@ Antes de aplicar CDD, verificar `$IDE/ENV.md`:
|
|
|
65
65
|
|
|
66
66
|
### Herdar Contexto da Sessão
|
|
67
67
|
|
|
68
|
-
Se existir arquivo `context.md` na sessão (gerado por `/context-detect`), use-o:
|
|
68
|
+
Se existir arquivo `context.md` na sessão (gerado por `/jarvis-context-detect`), use-o:
|
|
69
69
|
|
|
70
70
|
```bash
|
|
71
71
|
# Localização: $SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/context.md
|
|
@@ -81,7 +81,7 @@ CONTEXT_PROFILE:
|
|
|
81
81
|
testes: [existentes|ausentes]
|
|
82
82
|
```
|
|
83
83
|
|
|
84
|
-
> Se `context.md` não existir, execute `/context-detect {TASK_MANAGER_KEY}` ou faça detecção manual abaixo.
|
|
84
|
+
> Se `context.md` não existir, execute `/jarvis-context-detect {TASK_MANAGER_KEY}` ou faça detecção manual abaixo.
|
|
85
85
|
|
|
86
86
|
### Calibração por Tipo de Tarefa
|
|
87
87
|
|
|
@@ -40,11 +40,11 @@ realmente funciona como pretendido — tanto testes unitários quanto E2E Cypres
|
|
|
40
40
|
## Calibração Contextual (CDD)
|
|
41
41
|
|
|
42
42
|
> **Princípio**: Adaptar o rigor e cobertura de testes ao contexto real do projeto e da tarefa.
|
|
43
|
-
> 📚 **Skill**: Use `/context-detect` para detecção automatizada do contexto
|
|
43
|
+
> 📚 **Skill**: Use `/jarvis-context-detect` para detecção automatizada do contexto
|
|
44
44
|
|
|
45
45
|
### Herdar Contexto da Sessão
|
|
46
46
|
|
|
47
|
-
Se existir arquivo `context.md` na sessão (gerado por `/context-detect`), use-o:
|
|
47
|
+
Se existir arquivo `context.md` na sessão (gerado por `/jarvis-context-detect`), use-o:
|
|
48
48
|
|
|
49
49
|
```bash
|
|
50
50
|
# Localização: $SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/context.md
|
|
@@ -61,7 +61,7 @@ CONTEXT_PROFILE:
|
|
|
61
61
|
cobertura: [alta|média|baixa]
|
|
62
62
|
```
|
|
63
63
|
|
|
64
|
-
> Se `context.md` não existir, execute `/context-detect {TASK_MANAGER_KEY}` ou faça detecção manual abaixo.
|
|
64
|
+
> Se `context.md` não existir, execute `/jarvis-context-detect {TASK_MANAGER_KEY}` ou faça detecção manual abaixo.
|
|
65
65
|
|
|
66
66
|
### Calibração por Tipo de Tarefa (do context.md)
|
|
67
67
|
|
|
@@ -72,8 +72,8 @@ Não use quando já existe uma spec (use `/prod.spec.clarify`) ou quando o escop
|
|
|
72
72
|
|
|
73
73
|
## Apoio de skills (apoio, nunca a fonte da decisão)
|
|
74
74
|
|
|
75
|
-
- **Sempre:** busca em `$PROD_DOCS`; `docs-central` quando `CENTRAL_DOCS_REPO` estiver configurado; `context-detect` para calibrar a profundidade da entrevista
|
|
76
|
-
- **Só com a confirmação do usuário:** `eng-arch-c4` (arquitetura atual) e `eng-cybersecurity` (quando a ideia envolve autenticação, dados pessoais ou fluxo financeiro). São skills de engenharia: pergunte antes de consultá-las, e o que retornarem entra no discovery como **suposição a validar**, não como fato
|
|
75
|
+
- **Sempre:** busca em `$PROD_DOCS`; `jarvis-docs-central` quando `CENTRAL_DOCS_REPO` estiver configurado; `jarvis-context-detect` para calibrar a profundidade da entrevista
|
|
76
|
+
- **Só com a confirmação do usuário:** `eng-backend-arch-c4` (arquitetura atual) e `eng-security-cybersecurity` (quando a ideia envolve autenticação, dados pessoais ou fluxo financeiro). São skills de engenharia: pergunte antes de consultá-las, e o que retornarem entra no discovery como **suposição a validar**, não como fato
|
|
77
77
|
|
|
78
78
|
## Restrições
|
|
79
79
|
|
package/bin/commands/init.js
CHANGED
|
@@ -186,18 +186,18 @@ export async function init(flags) {
|
|
|
186
186
|
if (ide === "codex") {
|
|
187
187
|
logger.info(` No ${GREEN}Codex${NC}, skills não usam slash commands.`);
|
|
188
188
|
logger.info(` Para invocar um skill, use linguagem natural:`);
|
|
189
|
-
logger.info(` ${DIM} "use o skill init
|
|
189
|
+
logger.info(` ${DIM} "use o skill jarvis-init para configurar o projeto"${NC}`);
|
|
190
190
|
logger.info(` ${DIM} "execute o warm-up do Jarvis"${NC}`);
|
|
191
191
|
logger.info("");
|
|
192
192
|
logger.info(` Skills disponíveis em ${YELLOW}.codex/skills/${NC}`);
|
|
193
193
|
logger.info(` Cada pasta é um skill — veja o SKILL.md para a descrição.`);
|
|
194
194
|
logger.info("");
|
|
195
195
|
logger.info(` Para configurar as variáveis do projeto, peça ao Codex:`);
|
|
196
|
-
logger.info(` ${GREEN}"execute o skill init
|
|
196
|
+
logger.info(` ${GREEN}"execute o skill jarvis-init"${NC}`);
|
|
197
197
|
} else if (ide === "kiro") {
|
|
198
198
|
logger.info(` No ${GREEN}Kiro${NC}, skills e workflows são steering files.`);
|
|
199
199
|
logger.info(` Para invocar um skill, use ${GREEN}#skill-{nome}${NC} no chat:`);
|
|
200
|
-
logger.info(` ${DIM} #skill-init
|
|
200
|
+
logger.info(` ${DIM} #skill-jarvis-init${NC}`);
|
|
201
201
|
logger.info(` ${DIM} #skill-eng-backend${NC}`);
|
|
202
202
|
logger.info("");
|
|
203
203
|
logger.info(` Steering files gerados em ${YELLOW}.kiro/steering/${NC}`);
|
|
@@ -206,9 +206,9 @@ export async function init(flags) {
|
|
|
206
206
|
logger.info(` • ${DIM}steering/skills/*.md${NC} — skills (inclusion: manual)`);
|
|
207
207
|
logger.info("");
|
|
208
208
|
logger.info(` Para configurar as variáveis do projeto, ative:`);
|
|
209
|
-
logger.info(` ${GREEN}#skill-init
|
|
209
|
+
logger.info(` ${GREEN}#skill-jarvis-init${NC} no chat do Kiro`);
|
|
210
210
|
} else {
|
|
211
|
-
logger.info(` Execute o comando ${GREEN}/init
|
|
211
|
+
logger.info(` Execute o comando ${GREEN}/jarvis-init${NC} na sua IDE para`);
|
|
212
212
|
logger.info(` configurar as variáveis de ambiente do projeto.`);
|
|
213
213
|
}
|
|
214
214
|
|
package/bin/jarvis.js
CHANGED
|
@@ -80,7 +80,7 @@ function help() {
|
|
|
80
80
|
` ${DIM}1.${NC} npm install -g ${GREEN}/caminho/para/jarvis${NC}`,
|
|
81
81
|
);
|
|
82
82
|
logger.info(` ${DIM}2.${NC} ${GREEN}jarvis init${NC} --ide cursor`);
|
|
83
|
-
logger.info(` ${DIM}3.${NC} No chat da IDE: ${GREEN}/init
|
|
83
|
+
logger.info(` ${DIM}3.${NC} No chat da IDE: ${GREEN}/jarvis-init${NC}`);
|
|
84
84
|
logger.info("");
|
|
85
85
|
|
|
86
86
|
logger.info(`${BLUE}📖 Exemplos:${NC}`);
|
|
@@ -26,12 +26,47 @@ export const SYNC_DIRS = Object.freeze([
|
|
|
26
26
|
* Caminhos que saíram do framework e são removidos das instalações que atualizam.
|
|
27
27
|
* Lista explícita, relativa à pasta da IDE (ex.: `.claude/`): o `init` nunca varre
|
|
28
28
|
* nem apaga nada fora dela. Para uma remoção futura, acrescente o caminho aqui.
|
|
29
|
+
* Inclui as pastas dos skills renomeados para o padrão de áreas (`<prefixo>-<área>-...`).
|
|
29
30
|
* @constant {ReadonlyArray<string>}
|
|
30
31
|
*/
|
|
31
32
|
export const OBSOLETE_PATHS = Object.freeze([
|
|
32
33
|
"skills/prod-specs/references",
|
|
33
34
|
"skills/prod-specs/templates",
|
|
34
35
|
"skills/prod-specs/rules",
|
|
36
|
+
// Tech Analyst (removido): skill, agente e o comando, que é achatado na pasta de workflows de cada IDE
|
|
37
|
+
"skills/eng-tech-analyst",
|
|
38
|
+
"agents/engineering/eng.tech-analyst.agent.md",
|
|
39
|
+
"workflows/eng.ta.atendimento.md",
|
|
40
|
+
"commands/eng.ta.atendimento.md",
|
|
41
|
+
"steering/eng.ta.atendimento.md",
|
|
42
|
+
"steering/skills/skill-eng-tech-analyst.md",
|
|
43
|
+
// churn-audit e lovable-prompt-generator (removidos)
|
|
44
|
+
"skills/churn-audit",
|
|
45
|
+
"skills/lovable-prompt-generator",
|
|
46
|
+
"steering/skills/skill-churn-audit.md",
|
|
47
|
+
"steering/skills/skill-lovable-prompt-generator.md",
|
|
48
|
+
"skills/eng-nestjs",
|
|
49
|
+
"skills/eng-rabbitmq",
|
|
50
|
+
"skills/eng-arch-c4",
|
|
51
|
+
"skills/eng-ms-trace",
|
|
52
|
+
"skills/eng-microfrontend",
|
|
53
|
+
"skills/eng-design-system",
|
|
54
|
+
"skills/eng-cybersecurity",
|
|
55
|
+
"skills/eng-threat-model",
|
|
56
|
+
"skills/eng-performance-engineer",
|
|
57
|
+
"skills/eng-pr",
|
|
58
|
+
"skills/eng-jira-comment",
|
|
59
|
+
"skills/eng-task-comment",
|
|
60
|
+
"skills/eng-docs-write",
|
|
61
|
+
"skills/eng-browser-extension-builder",
|
|
62
|
+
"skills/prod-specs",
|
|
63
|
+
"skills/prod-specs-update",
|
|
64
|
+
"skills/prod-roadmap-report",
|
|
65
|
+
"skills/init-jarvis",
|
|
66
|
+
"skills/context-detect",
|
|
67
|
+
"skills/report-issue",
|
|
68
|
+
"skills/docs-central",
|
|
69
|
+
"skills/docs-index",
|
|
35
70
|
]);
|
|
36
71
|
|
|
37
72
|
/**
|
package/package.json
CHANGED
package/rules/AGENTS.md
CHANGED
|
@@ -22,6 +22,8 @@ rules/
|
|
|
22
22
|
│ ├── eng.pr-rules.md # Regras para /eng.pr
|
|
23
23
|
│ ├── eng.bump-rules.md # Regras para versionamento
|
|
24
24
|
│ ├── eng.tech-spec-rules.md # Regras para tech specs
|
|
25
|
+
│ ├── eng.specializations-rules.md # Carregamento de especializações por stack
|
|
26
|
+
│ ├── eng.skills-rules.md # Área obrigatória nos skills e aviso de skill inexistente
|
|
25
27
|
│ └── qa/ # Regras de QA
|
|
26
28
|
└── product/ # Regras de produto
|
|
27
29
|
└── prod-rules.md # Regras de especificacao
|
|
@@ -67,14 +69,14 @@ Cada arquivo de rule declara para quais perfis se aplica via bloco `applies_to`,
|
|
|
67
69
|
| HUB | FRONTEND, BACKEND, QA, DATA, AI, FULLCYCLE | qualquer hub |
|
|
68
70
|
| POSITION | TECH LEAD, PM, QA-ENGINEER, SENIOR, GENERALIST | qualquer cargo |
|
|
69
71
|
| AREA | ENGINEERING, PRODUCT | qualquer área |
|
|
70
|
-
| SQUAD | CORE
|
|
72
|
+
| SQUAD | CORE | qualquer squad |
|
|
71
73
|
|
|
72
74
|
**Regras:**
|
|
73
75
|
- Uma rule é aplicada se **todos** os eixos forem satisfeitos (AND, não OR)
|
|
74
76
|
- Arquivos sem bloco `applies_to` são considerados **universais** — copiados para qualquer perfil
|
|
75
77
|
- `rules/AGENTS.md` nunca é filtrado — sempre copiado
|
|
76
78
|
|
|
77
|
-
**Quem faz a filtragem:** o skill `/init
|
|
79
|
+
**Quem faz a filtragem:** o skill `/jarvis-init` (Passo 9 — Profile-Aware Rules Sync). Ao criar, atualizar ou fazer upgrade do ENV.md, copia para `$IDE/rules/` apenas as rules que batem com o perfil (HUB + POSITION + AREA + SQUAD) e deleta as que não batem mais.
|
|
78
80
|
|
|
79
81
|
**Ao criar uma nova rule**, definir o bloco `applies_to` é obrigatório. Sem ele, a rule é tratada como universal — o que pode ser indesejado para rules domain-specific.
|
|
80
82
|
|
|
@@ -159,7 +161,7 @@ Links para documentacao relacionada.
|
|
|
159
161
|
|
|
160
162
|
### ENV.md
|
|
161
163
|
|
|
162
|
-
- Validar ENV.md antes de qualquer comando (exceto `/init
|
|
164
|
+
- Validar ENV.md antes de qualquer comando (exceto `/jarvis-init`)
|
|
163
165
|
- Respeitar `MAX_AI_EXECUTION_PERCENTAGE`
|
|
164
166
|
|
|
165
167
|
---
|
|
@@ -7,7 +7,7 @@ env_file: "@/ENV.md"
|
|
|
7
7
|
|
|
8
8
|
- **🚨 PRÉ-REQUISITO: VALIDAÇÃO DO ENV.md**
|
|
9
9
|
- **ANTES de executar qualquer comando ou workflow**, o agente **DEVE verificar** se o arquivo `$IDE/ENV.md` existe e está preenchido corretamente.
|
|
10
|
-
- **Exceção**: O comando `/init
|
|
10
|
+
- **Exceção**: O comando `/jarvis-init` é o único que pode ser executado sem o `ENV.md`, pois é ele que cria o arquivo.
|
|
11
11
|
- **Validação obrigatória**: O arquivo deve conter as seguintes variáveis preenchidas (não vazias):
|
|
12
12
|
- `WORKSPACE` (se vazio: nome da pasta que contém `$IDE/`)
|
|
13
13
|
- `IDE`
|
|
@@ -20,13 +20,15 @@ env_file: "@/ENV.md"
|
|
|
20
20
|
- **Se o ENV.md não existir ou estiver incompleto**, o agente deve:
|
|
21
21
|
1. Interromper a execução do comando solicitado
|
|
22
22
|
2. Informar ao usuário que o framework não foi inicializado
|
|
23
|
-
3. Orientar o usuário a executar `/init
|
|
23
|
+
3. Orientar o usuário a executar `/jarvis-init` primeiro
|
|
24
24
|
```
|
|
25
25
|
⚠️ O framework não foi inicializado.
|
|
26
26
|
|
|
27
27
|
O arquivo ENV.md não existe ou está incompleto.
|
|
28
|
-
Por favor, execute `/init
|
|
28
|
+
Por favor, execute `/jarvis-init` para configurar o ambiente antes de continuar.
|
|
29
29
|
```
|
|
30
|
+
- **Listas de especializações (presentes, podem estar vazias)**: `BACKEND_SPECIALIZATIONS` e `FRONTEND_SPECIALIZATIONS` devem **existir** no `ENV.md`. Lista **vazia** é válida (só o skill base). Variável **ausente** interrompe o comando de backend ou de frontend e orienta o Upgrade do `/jarvis-init`. Detalhes e mensagens em `eng.specializations-rules.md`.
|
|
31
|
+
- **Skills sem área**: skill instalado sem `metadata.area` reconhecida bloqueia o comando, e skill pedido que não existe gera aviso. Detalhes e mensagens em `eng.skills-rules.md`.
|
|
30
32
|
|
|
31
33
|
- **🔧 VARIÁVEL `$IDE` - DETECÇÃO AUTOMÁTICA DA PASTA DA IDE**
|
|
32
34
|
- A variável `$IDE` representa a pasta da IDE que o usuário está utilizando.
|
|
@@ -8,7 +8,7 @@ env_file: "@/ENV.md"
|
|
|
8
8
|
# Regras de Seguranca para Engenharia
|
|
9
9
|
|
|
10
10
|
Regras de seguranca aplicaveis a todo o fluxo de engenharia — do planejamento ao merge.
|
|
11
|
-
Toda implementacao deve seguir estas regras por padrao, sem necessidade de invocar o skill `eng-cybersecurity` explicitamente.
|
|
11
|
+
Toda implementacao deve seguir estas regras por padrao, sem necessidade de invocar o skill `eng-security-cybersecurity` explicitamente.
|
|
12
12
|
|
|
13
13
|
---
|
|
14
14
|
|
|
@@ -118,7 +118,7 @@ Se o PR toca em areas sensiveis (auth, sessions, RBAC, CORS, CSP, permissoes), o
|
|
|
118
118
|
|
|
119
119
|
## Fronteira Read-Only (Analise de Seguranca)
|
|
120
120
|
|
|
121
|
-
Os skills de seguranca (`eng-threat-model`, `eng.security-audit`, `eng-security-triage`) operam em **modo estatico apenas**:
|
|
121
|
+
Os skills de seguranca (`eng-security-threat-model`, `eng.security-audit`, `eng-security-triage`) operam em **modo estatico apenas**:
|
|
122
122
|
|
|
123
123
|
- Leem codigo-fonte, historico git e relatorios fornecidos pelo usuario
|
|
124
124
|
- **Nunca** executam, buildam, fuzzam ou modificam o codigo-alvo
|
|
@@ -129,7 +129,7 @@ Os skills de seguranca (`eng-threat-model`, `eng.security-audit`, `eng-security-
|
|
|
129
129
|
|
|
130
130
|
## Calibracao CDD por Risco
|
|
131
131
|
|
|
132
|
-
Usar `context-detect` para calibrar a profundidade da analise de seguranca:
|
|
132
|
+
Usar `jarvis-context-detect` para calibrar a profundidade da analise de seguranca:
|
|
133
133
|
|
|
134
134
|
| Nivel de risco | Criterio | Estrategia | Tokens (estimado) |
|
|
135
135
|
|---|---|---|---|
|
|
@@ -165,7 +165,7 @@ O agente de engenharia (ATHENA) deve recomendar o uso do agente SENTINEL (`eng.c
|
|
|
165
165
|
- Feature envolve fluxo financeiro, PII ou auth complexa (OAuth, MFA)
|
|
166
166
|
- Duvida sobre impacto de seguranca que excede o escopo das regras acima
|
|
167
167
|
|
|
168
|
-
> O skill `/eng-cybersecurity` pode ser invocado diretamente para consulta rapida sem ativar o agente completo.
|
|
168
|
+
> O skill `/eng-security-cybersecurity` pode ser invocado diretamente para consulta rapida sem ativar o agente completo.
|
|
169
169
|
|
|
170
170
|
---
|
|
171
171
|
|
|
@@ -50,7 +50,7 @@ Todo arquivo `{robot-tag}-robot.md` deve conter:
|
|
|
50
50
|
|
|
51
51
|
### Recomendado
|
|
52
52
|
|
|
53
|
-
- Chamar `/docs-index` após criar ou atualizar qualquer `{robot-tag}-robot.md` para manter o índice atualizado
|
|
53
|
+
- Chamar `/jarvis-docs-index` após criar ou atualizar qualquer `{robot-tag}-robot.md` para manter o índice atualizado
|
|
54
54
|
- Incluir o índice de colunas da tabela HTML (com numeração `[0]`, `[1]`, etc.) sempre que for inspecionado via log
|
|
55
55
|
|
|
56
56
|
---
|
|
@@ -28,7 +28,7 @@ Papéis no fluxo (ainda existem; não são cadeado):
|
|
|
28
28
|
| **TECH LEAD** | `TECH LEAD` | Apoia priorização, review e deploy quando pedido |
|
|
29
29
|
| **PM** | `PM`, `TPM`, `GPM` | Apoia aceite de produto quando pedido |
|
|
30
30
|
| **QA** | `QA-ENGINEER` | Executa testes em apoio; não bloqueia o owner |
|
|
31
|
-
| **N2** |
|
|
31
|
+
| **N2** | Suporte N2 | Validação operacional se o time tiver esse papel |
|
|
32
32
|
|
|
33
33
|
## Diagrama do Fluxo
|
|
34
34
|
|
|
@@ -32,7 +32,7 @@ Qual o seu número de controle para esta tarefa?
|
|
|
32
32
|
```
|
|
33
33
|
|
|
34
34
|
3. Usar a resposta (lowercase) como pasta `$SESSIONS_DIR/eng/{TASK_MANAGER_KEY}/` e no prefixo da branch.
|
|
35
|
-
4. **Não** chamar `/eng-task-comment`, **não** mover card, **não** buscar issue no board.
|
|
35
|
+
4. **Não** chamar `/eng-global-task-comment`, **não** mover card, **não** buscar issue no board.
|
|
36
36
|
|
|
37
37
|
Com board definido, se o key não veio nos argumentos, perguntar o id do card naquele vendor (ex: Jira `TASK-123`).
|
|
38
38
|
|
|
@@ -41,7 +41,7 @@ Com board definido, se o key não veio nos argumentos, perguntar o id do card na
|
|
|
41
41
|
Só se `TASK_MANAGER` estiver preenchido com um vendor. Freelance → pular.
|
|
42
42
|
|
|
43
43
|
```
|
|
44
|
-
/eng-task-comment {TASK_MANAGER_KEY} {mensagem}
|
|
44
|
+
/eng-global-task-comment {TASK_MANAGER_KEY} {mensagem}
|
|
45
45
|
```
|
|
46
46
|
|
|
47
47
|
## MR / PR
|
|
@@ -98,6 +98,6 @@ O workflow **deve sempre** terminar com:
|
|
|
98
98
|
- 🟡 Yellow: pode abrir PR com ressalvas documentadas
|
|
99
99
|
- 🔴 Red: bloqueado — listar o que impede o PR
|
|
100
100
|
|
|
101
|
-
2. **Comentário no card** com o status final (via `/eng-task-comment`) — pular se freelance
|
|
101
|
+
2. **Comentário no card** com o status final (via `/eng-global-task-comment`) — pular se freelance
|
|
102
102
|
|
|
103
103
|
3. **Aguardar permissão explícita** do usuário para prosseguir para `/eng.pr`
|