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.
Files changed (240) hide show
  1. package/AGENTS.md +416 -0
  2. package/LICENSE +21 -0
  3. package/README.md +190 -0
  4. package/agents/AGENTS.md +234 -0
  5. package/agents/README.md +309 -0
  6. package/agents/engineering/data/eng.data-engineer.agent.md +309 -0
  7. package/agents/engineering/eng.agent.md +303 -0
  8. package/agents/engineering/eng.bug-hunter.md +386 -0
  9. package/agents/engineering/eng.cybersecurity.agent.md +503 -0
  10. package/agents/engineering/eng.dev-code-reviewer.md +148 -0
  11. package/agents/engineering/eng.docs-writer.md +152 -0
  12. package/agents/engineering/eng.frontend.agent.md +117 -0
  13. package/agents/engineering/eng.rpa.agent.md +215 -0
  14. package/agents/engineering/eng.tech-analyst.agent.md +102 -0
  15. package/agents/engineering/eng.ux-designer.agent.md +193 -0
  16. package/agents/engineering/qa/eng.qa.cypress-specialist.md +109 -0
  17. package/agents/engineering/qa/eng.qa.quality-champion-task-agent.md +85 -0
  18. package/agents/engineering/qa/eng.qa.quality-strategist.md +111 -0
  19. package/agents/engineering/qa/eng.qa.test-architect.md +400 -0
  20. package/agents/engineering/qa/eng.qa.test-planner.md +477 -0
  21. package/agents/engineering/qa/eng.qa.testing-engineer.md +339 -0
  22. package/agents/product/prod.pm-checker.md +52 -0
  23. package/bin/commands/docs-publish.js +184 -0
  24. package/bin/commands/docs-sync.js +139 -0
  25. package/bin/commands/info.js +87 -0
  26. package/bin/commands/init.js +237 -0
  27. package/bin/commands/install-rtk.js +90 -0
  28. package/bin/commands/list.js +48 -0
  29. package/bin/commands/qa-signoff.js +112 -0
  30. package/bin/commands/whoami.js +43 -0
  31. package/bin/jarvis.js +159 -0
  32. package/bin/lib/auth/session.js +56 -0
  33. package/bin/lib/config/constants.js +123 -0
  34. package/bin/lib/config/ide-config.js +233 -0
  35. package/bin/lib/core/scanner.js +124 -0
  36. package/bin/lib/core/sync-engine.js +551 -0
  37. package/bin/lib/docs/fetch-file.sh +41 -0
  38. package/bin/lib/docs/publish-file.sh +284 -0
  39. package/bin/lib/docs/validate-frontmatter.js +157 -0
  40. package/bin/lib/env-loader.js +198 -0
  41. package/bin/lib/tasks/comment.js +131 -0
  42. package/bin/lib/utils/git-parser.js +145 -0
  43. package/bin/lib/utils/logger.js +104 -0
  44. package/bin/lib/utils/npmrc-parser.js +106 -0
  45. package/bin/lib/utils/paths.js +55 -0
  46. package/bin/lib/utils/ui.js +59 -0
  47. package/bin/lib/vcs/api.js +312 -0
  48. package/bin/lib/vcs/create-issue.js +43 -0
  49. package/bin/lib/vcs/create-merge.js +43 -0
  50. package/bin/lib/vcs/fetch-raw.js +30 -0
  51. package/bin/postinstall.js +41 -0
  52. package/members.md +25 -0
  53. package/package.json +55 -0
  54. package/rules/AGENTS.md +205 -0
  55. package/rules/engineering/data/data-rules.md +200 -0
  56. package/rules/engineering/eng-rules.md +243 -0
  57. package/rules/engineering/eng-security-rules.md +186 -0
  58. package/rules/engineering/eng.breakdown-subtasks-rules.md +585 -0
  59. package/rules/engineering/eng.bump-rules.md +27 -0
  60. package/rules/engineering/eng.docs-scraping-rules.md +64 -0
  61. package/rules/engineering/eng.downstream-flow-rules.md +297 -0
  62. package/rules/engineering/eng.integrations-rules.md +73 -0
  63. package/rules/engineering/eng.plan-rules.md +333 -0
  64. package/rules/engineering/eng.pr-rules.md +359 -0
  65. package/rules/engineering/eng.pre-pr-rules.md +103 -0
  66. package/rules/engineering/eng.start-rules.md +246 -0
  67. package/rules/engineering/eng.tech-spec-rules.md +968 -0
  68. package/rules/engineering/eng.work-rules.md +312 -0
  69. package/rules/engineering/frontend/eng.frontend-rules.md +147 -0
  70. package/rules/engineering/qa/eng.qa.cypress-standards-rules.md +259 -0
  71. package/rules/engineering/qa/eng.qa.exploratory-session-rules.md +137 -0
  72. package/rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md +181 -0
  73. package/rules/engineering/qa/eng.qa.tech-spec-validation-criteria-rules.md +120 -0
  74. package/rules/engineering/rpa/eng.rpa-rules.md +230 -0
  75. package/rules/product/README.md +24 -0
  76. package/rules/product/prod-rules.md +151 -0
  77. package/rules/rtk-rules.md +68 -0
  78. package/skills/AGENTS.md +290 -0
  79. package/skills/SKILLS-ROADMAP.md +333 -0
  80. package/skills/churn-audit/SKILL.md +385 -0
  81. package/skills/context-detect/SKILL.md +399 -0
  82. package/skills/context-detect/assets/context-profile-template.md +127 -0
  83. package/skills/docs-central/README.md +310 -0
  84. package/skills/docs-central/SKILL.md +423 -0
  85. package/skills/docs-index/SKILL.md +377 -0
  86. package/skills/eng-ai-engineer/SKILL.md +296 -0
  87. package/skills/eng-arch-c4/SKILL.md +358 -0
  88. package/skills/eng-arch-c4/assets/example-code.md +189 -0
  89. package/skills/eng-arch-c4/assets/example-component.md +105 -0
  90. package/skills/eng-arch-c4/assets/example-container.md +104 -0
  91. package/skills/eng-arch-c4/assets/example-context.md +81 -0
  92. package/skills/eng-backend/SKILL.md +776 -0
  93. package/skills/eng-browser-extension-builder/SKILL.md +385 -0
  94. package/skills/eng-cybersecurity/SKILL.md +645 -0
  95. package/skills/eng-data-bi/SKILL.md +199 -0
  96. package/skills/eng-data-debug/SKILL.md +307 -0
  97. package/skills/eng-data-engineer/SKILL.md +256 -0
  98. package/skills/eng-data-onboard/SKILL.md +310 -0
  99. package/skills/eng-data-orchestrator/SKILL.md +426 -0
  100. package/skills/eng-design-system/SKILL.md +619 -0
  101. package/skills/eng-docs-write/SKILL.md +312 -0
  102. package/skills/eng-frontend/SKILL.md +913 -0
  103. package/skills/eng-jira-comment/SKILL.md +17 -0
  104. package/skills/eng-microfrontend/SKILL.md +602 -0
  105. package/skills/eng-ms-trace/SKILL.md +469 -0
  106. package/skills/eng-nestjs/SKILL.md +791 -0
  107. package/skills/eng-performance-engineer/SKILL.md +312 -0
  108. package/skills/eng-pr/SKILL.md +339 -0
  109. package/skills/eng-qa-a11y-audit/SKILL.md +269 -0
  110. package/skills/eng-qa-bug-report/SKILL.md +1088 -0
  111. package/skills/eng-qa-bug-report/TASK_MANAGERS.md +138 -0
  112. package/skills/eng-qa-cypress-e2e/SKILL.md +177 -0
  113. package/skills/eng-qa-dev-guide/SKILL.md +164 -0
  114. package/skills/eng-qa-e2e/SKILL.md +400 -0
  115. package/skills/eng-qa-e2e-spec-writer/SKILL.md +322 -0
  116. package/skills/eng-qa-exploratory/SKILL.md +188 -0
  117. package/skills/eng-qa-gate/SKILL.md +370 -0
  118. package/skills/eng-qa-gate/assets/checklist-validacao.md +291 -0
  119. package/skills/eng-qa-graphql-contract/SKILL.md +256 -0
  120. package/skills/eng-qa-quality-report/SKILL.md +412 -0
  121. package/skills/eng-qa-test-plan/SKILL.md +466 -0
  122. package/skills/eng-qa-test-plan/assets/test-coverage-template.md +92 -0
  123. package/skills/eng-qa-test-plan/assets/test-patterns.md +178 -0
  124. package/skills/eng-qa-testsprite/SKILL.md +325 -0
  125. package/skills/eng-qa-testsprite/references/testsprite-mcp.md +224 -0
  126. package/skills/eng-qa-unit-test/SKILL.md +471 -0
  127. package/skills/eng-rabbitmq/SKILL.md +661 -0
  128. package/skills/eng-scraper/SKILL.md +683 -0
  129. package/skills/eng-scraper-robot-builder/SKILL.md +370 -0
  130. package/skills/eng-security-patch/SKILL.md +378 -0
  131. package/skills/eng-security-triage/SKILL.md +266 -0
  132. package/skills/eng-task-comment/SKILL.md +60 -0
  133. package/skills/eng-tech-analyst/SKILL.md +529 -0
  134. package/skills/eng-threat-model/SKILL.md +161 -0
  135. package/skills/init-jarvis/SKILL.md +1304 -0
  136. package/skills/init-jarvis/assets/mcp-configs.md +389 -0
  137. package/skills/init-jarvis/assets/onboarding-checklist.md +104 -0
  138. package/skills/init-jarvis/assets/setup-guide.md +360 -0
  139. package/skills/lovable-prompt-generator/SKILL.md +304 -0
  140. package/skills/prod-roadmap-report/README.md +303 -0
  141. package/skills/prod-roadmap-report/SKILL.md +198 -0
  142. package/skills/prod-roadmap-report/commands/status.compiled.single.team.md +23 -0
  143. package/skills/prod-roadmap-report/commands/status.list.projects.md +17 -0
  144. package/skills/prod-roadmap-report/commands/status.memory.md +192 -0
  145. package/skills/prod-roadmap-report/commands/status.roadmap.preview.md +94 -0
  146. package/skills/prod-roadmap-report/references/detailed-guide.md +236 -0
  147. package/skills/prod-roadmap-report/rules/detailed-guide.md +237 -0
  148. package/skills/prod-roadmap-report/rules/status-report-rules.md +44 -0
  149. package/skills/prod-roadmap-report/templates/template-multiple-teams-compiled-status.md +53 -0
  150. package/skills/prod-roadmap-report/templates/template-projects-list.md +23 -0
  151. package/skills/prod-roadmap-report/templates/template-single-team-compiled-status.md +60 -0
  152. package/skills/prod-roadmap-report/templates/template-single-team-status.md +49 -0
  153. package/skills/prod-specs/SKILL.md +108 -0
  154. package/skills/prod-specs/references/prod.spec.clarify.md +176 -0
  155. package/skills/prod-specs/references/prod.spec.epic.md +107 -0
  156. package/skills/prod-specs/references/prod.spec.frd.md +135 -0
  157. package/skills/prod-specs/references/prod.spec.issue.md +145 -0
  158. package/skills/prod-specs/references/prod.spec.prd.md +118 -0
  159. package/skills/prod-specs/rules/prod-spec-rules.md +186 -0
  160. package/skills/prod-specs/templates/prod-breakdown-template.md +136 -0
  161. package/skills/prod-specs/templates/prod-epic-template.md +76 -0
  162. package/skills/prod-specs/templates/prod-frd-template.md +172 -0
  163. package/skills/prod-specs/templates/prod-issue-template.md +68 -0
  164. package/skills/prod-specs/templates/prod-prd-full-template.md +159 -0
  165. package/skills/prod-specs/templates/prod-prd-template.md +173 -0
  166. package/skills/prod-specs-update/SKILL.md +272 -0
  167. package/skills/report-issue/SKILL.md +156 -0
  168. package/taxonomy.md +270 -0
  169. package/templates/AGENTS.md +189 -0
  170. package/templates/CDD aplicado a Prompts.md +182 -0
  171. package/templates/ENV-template.md +187 -0
  172. package/templates/engineering/AGENTS-template.md +71 -0
  173. package/templates/engineering/ARD-template.md +193 -0
  174. package/templates/engineering/CONTACTS-template.md +135 -0
  175. package/templates/engineering/PR-template.md +40 -0
  176. package/templates/engineering/RFC-Playbook.md +325 -0
  177. package/templates/engineering/RFC-template.md +199 -0
  178. package/templates/engineering/architecture-template.md +277 -0
  179. package/templates/engineering/breakdown-subtasks-template.md +582 -0
  180. package/templates/engineering/c4-model-template.md +516 -0
  181. package/templates/engineering/data-contract-template.md +135 -0
  182. package/templates/engineering/data-pipeline-template.md +163 -0
  183. package/templates/engineering/plan-template.md +255 -0
  184. package/templates/engineering/qa/eng.qa.quality-gate-examples-template.md +311 -0
  185. package/templates/engineering/qa/eng.qa.quality-gate-report-template.md +249 -0
  186. package/templates/engineering/qa/qa.cypress-test-template.md +172 -0
  187. package/templates/engineering/qa/qa.exploratory-session-template.md +148 -0
  188. package/templates/engineering/qa/qa.quality-report-template.md +130 -0
  189. package/templates/engineering/qa/qa.release-signoff-template.md +54 -0
  190. package/templates/engineering/qa/qa.sprint-plan-template.md +49 -0
  191. package/templates/engineering/swagger-template.md +145 -0
  192. package/templates/engineering/tech-spec-template.md +497 -0
  193. package/templates/engineering/work-progress-template.md +155 -0
  194. package/workflows/AGENTS.md +240 -0
  195. package/workflows/README.md +160 -0
  196. package/workflows/all-tools.md +11 -0
  197. package/workflows/engineering/data/data.contract.md +202 -0
  198. package/workflows/engineering/data/data.new-pipeline.md +234 -0
  199. package/workflows/engineering/eng.breakdown-subtasks.md +420 -0
  200. package/workflows/engineering/eng.bug-audit.md +591 -0
  201. package/workflows/engineering/eng.build-tech-spec.md +1116 -0
  202. package/workflows/engineering/eng.create-ard-from-code.md +259 -0
  203. package/workflows/engineering/eng.create-ard.md +382 -0
  204. package/workflows/engineering/eng.create-rfc.md +245 -0
  205. package/workflows/engineering/eng.debug.md +479 -0
  206. package/workflows/engineering/eng.docs.md +40 -0
  207. package/workflows/engineering/eng.light-arch.md +84 -0
  208. package/workflows/engineering/eng.plan.md +213 -0
  209. package/workflows/engineering/eng.pr.md +466 -0
  210. package/workflows/engineering/eng.pre-pr.md +167 -0
  211. package/workflows/engineering/eng.review.md +185 -0
  212. package/workflows/engineering/eng.rpa.robot.md +342 -0
  213. package/workflows/engineering/eng.security-audit.md +312 -0
  214. package/workflows/engineering/eng.security-incident.md +275 -0
  215. package/workflows/engineering/eng.security-pipeline.md +210 -0
  216. package/workflows/engineering/eng.security-review.md +235 -0
  217. package/workflows/engineering/eng.start.md +494 -0
  218. package/workflows/engineering/eng.work.md +558 -0
  219. package/workflows/engineering/frontend/eng.frontend-component.md +190 -0
  220. package/workflows/engineering/frontend/eng.frontend-perf-audit.md +375 -0
  221. package/workflows/engineering/frontend/eng.frontend-review.md +185 -0
  222. package/workflows/engineering/qa/eng.qa-dev-quality-guide.md +51 -0
  223. package/workflows/engineering/qa/eng.qa-e2e-test-generation.md +51 -0
  224. package/workflows/engineering/qa/eng.qa-exploratory-session.md +60 -0
  225. package/workflows/engineering/qa/eng.qa-quality-gate-validation.md +202 -0
  226. package/workflows/engineering/qa/eng.qa-quality-report.md +83 -0
  227. package/workflows/engineering/qa/eng.qa-refinement-entry.md +83 -0
  228. package/workflows/engineering/qa/eng.qa-release-signoff.md +170 -0
  229. package/workflows/engineering/qa/eng.qa-sprint-planning.md +100 -0
  230. package/workflows/engineering/ta/eng.ta.atendimento.md +93 -0
  231. package/workflows/product/prod.roadmap.preview.md +110 -0
  232. package/workflows/product/prod.spec.breakdown.md +163 -0
  233. package/workflows/product/prod.spec.clarify.md +178 -0
  234. package/workflows/product/prod.spec.epic.md +154 -0
  235. package/workflows/product/prod.spec.frd.md +96 -0
  236. package/workflows/product/prod.spec.issue.md +145 -0
  237. package/workflows/product/prod.spec.md +60 -0
  238. package/workflows/product/prod.spec.prd.md +100 -0
  239. package/workflows/taxonomy.md +92 -0
  240. package/workflows/warm-up.md +574 -0
@@ -0,0 +1,310 @@
1
+ # docs-central
2
+
3
+ Integração com repositório centralizado de documentação canônica (PRDs, FRDs, ARDs, RFCs) — GitLab, GitHub ou Bitbucket.
4
+
5
+ ## Visão Geral
6
+
7
+ Esta skill permite:
8
+ - **Buscar** documentação do central-docs via API do vendor (GitLab / GitHub / Bitbucket)
9
+ - **Publicar** documentos aprovados via MR/PR (git flow seguro)
10
+ - **Sincronizar** automaticamente em /warm-up
11
+
12
+ ## Pré-requisitos
13
+
14
+ 1. **Token VCS** (GitLab `.npmrc`, GitHub `gh auth` / `GITHUB_TOKEN`, Bitbucket `BITBUCKET_TOKEN`)
15
+ 2. **ENV.md** com variáveis do central-docs
16
+
17
+ > ℹ️ Cache local via `redis-cli` é opcional. Sem Redis, a busca vai direto na API.
18
+
19
+ > ⚠️ Token **nunca** vai no chat. GitLab: `.npmrc`. GitHub: `gh auth` ou `GITHUB_TOKEN`. Bitbucket: `BITBUCKET_TOKEN`.
20
+
21
+ ### Configuração Mínima
22
+
23
+ ```ini
24
+ # .windsurf/ENV.md
25
+ CENTRAL_DOCS_REPO=https://gitlab.com/org/group/central-docs.git
26
+ CENTRAL_DOCS_REF=main
27
+ CENTRAL_DOCS_TARGET_BRANCH=dev
28
+ SQUAD=squad-driver
29
+ WORKSPACE=meu-workspace
30
+ ```
31
+
32
+ ```ini
33
+ # .npmrc (projeto ou ~/.npmrc)
34
+ //gitlab.com/api/v4/packages/npm/:_authToken=glpat-seu-token-aqui
35
+ ```
36
+
37
+ ## Comandos Disponíveis
38
+
39
+ ### Sincronizar Docs
40
+
41
+ ```bash
42
+ # Sincronizar docs do squad
43
+ jarvis docs sync
44
+
45
+ # Modo silencioso (sem output)
46
+ jarvis docs sync --silent
47
+
48
+ # Modo verbose (mostra conteúdo)
49
+ jarvis docs sync --verbose
50
+ ```
51
+
52
+ ### Publicar Documento
53
+
54
+ ```bash
55
+ # Publicar ARD
56
+ jarvis docs publish \
57
+ --file ./docs/engineering/ard-api-wallet.md \
58
+ --tipo ard \
59
+ --feature api-wallet-auth-jwt
60
+
61
+ # Publicar PRD
62
+ jarvis docs publish \
63
+ --file ./docs/product/prd-gestao-condutores.md \
64
+ --tipo prd \
65
+ --feature gestao-condutores
66
+
67
+ # Publicar Swagger/OpenAPI (YAML)
68
+ jarvis docs publish \
69
+ --file ./docs/engineering/swagger/api-wallet.yaml \
70
+ --tipo swagger \
71
+ --feature wallet
72
+
73
+ # Com override de squad/workspace:
74
+ jarvis docs publish \
75
+ --file ./docs/engineering/ard-api-wallet.md \
76
+ --tipo ard \
77
+ --feature api-wallet-auth-jwt \
78
+ --squad squad-driver \
79
+ --workspace meu-workspace
80
+ ```
81
+
82
+ **Tipos válidos:** `prd`, `frd`, `ard`, `rfc`, `swagger`
83
+
84
+ ## Estrutura do Repositório Central
85
+
86
+ ```
87
+ central-docs/
88
+ └── {squad}/
89
+ ├── index.md # Lista todos os docs do squad
90
+ ├── product/
91
+ │ └── {workspace}/
92
+ │ ├── prd-{feature}.md
93
+ │ └── frd-{feature}.md
94
+ └── engineering/
95
+ └── {workspace}/
96
+ ├── ard-{feature}.md
97
+ ├── rfc-{feature}.md
98
+ └── swagger-{feature}.md (ou api-{service}.yaml / api-{service}.json)
99
+ ```
100
+
101
+ **Exemplos reais:**
102
+
103
+ ```
104
+ central-docs/
105
+ └── drivers/
106
+ ├── index.md
107
+ ├── product/
108
+ │ └── gestao-de-condutores/
109
+ │ ├── prd-gestao-condutores.md
110
+ │ └── frd-gestao-condutores-onboarding.md
111
+ └── engineering/
112
+ └── drivers-api/
113
+ ├── ard-drivers-api.md
114
+ └── rfc-drivers-api-idempotencia.md
115
+ ```
116
+
117
+ ## Formato do index.md
118
+
119
+ O `index.md` fica na raiz do squad (`{squad}/index.md`) e lista todos os documentos organizados por área e produto:
120
+
121
+ ```markdown
122
+ # squad-driver
123
+
124
+ ## product
125
+
126
+ ### gestao-de-condutores
127
+ - [prd-gestao-condutores.md](product/gestao-de-condutores/prd-gestao-condutores.md) | v1.2.0 | in_progress | jira: DRV-001 | tags: condutores,onboarding
128
+ - [frd-gestao-condutores-onboarding.md](product/gestao-de-condutores/frd-gestao-condutores-onboarding.md) | v1.0.0 | in_review | jira: DRV-123 | tags: onboarding,cadastro
129
+
130
+ ## engineering
131
+
132
+ ### drivers-api
133
+ - [ard-drivers-api.md](engineering/drivers-api/ard-drivers-api.md) | v2.1 | Finalizada | tags: arquitetura,rest,api
134
+ - [rfc-drivers-api-idempotencia.md](engineering/drivers-api/rfc-drivers-api-idempotencia.md) | Accepted | tags: idempotencia,redis
135
+ ```
136
+
137
+ ## Frontmatter Obrigatório
138
+
139
+ ### PRD/FRD
140
+
141
+ ```yaml
142
+ ---
143
+ id: PRD-001
144
+ name: Gestão de Condutores
145
+ version: 1.2.0
146
+ status: in_progress
147
+ task_link: https://jira.com/DRV-001
148
+ related_repo: drivers-api,drivers-worker
149
+ ---
150
+ ```
151
+
152
+ ### ARD/RFC
153
+
154
+ ```yaml
155
+ ---
156
+ Status: Proposta
157
+ Data: 2026-03-10
158
+ Autor: João Silva
159
+ Versão: 1.0
160
+ ---
161
+ ```
162
+
163
+ ## Integração com Workflows
164
+
165
+ ### /warm-up
166
+
167
+ Carrega contexto do produto:
168
+
169
+ ```markdown
170
+ ✅ Docs sincronizados do central-docs
171
+ 📊 5 documentos disponíveis:
172
+ - 1 PRD(s)
173
+ - 1 FRD(s)
174
+ - 2 ARD(s)
175
+ - 1 RFC(s)
176
+ ```
177
+
178
+ ### /eng.start
179
+
180
+ Busca docs relacionados ao Jira ID antes de iniciar feature.
181
+
182
+ ### /eng.pre-pr
183
+
184
+ Detecta docs desatualizados e oferece publicação.
185
+
186
+ ## Troubleshooting
187
+
188
+ ### Token não encontrado
189
+
190
+ ```
191
+ ❌ Token GitLab não encontrado no .npmrc
192
+ ```
193
+
194
+ **Solução:** Adicionar ao `.npmrc`:
195
+ ```
196
+ //gitlab.com/api/v4/packages/npm/:_authToken=glpat-seu-token
197
+ ```
198
+
199
+ ### Arquivo não encontrado
200
+
201
+ ```
202
+ ❌ Arquivo não encontrado no central-docs: squad-driver/index.md
203
+ ```
204
+
205
+ **Solução:** Verificar se o squad existe no central-docs ou criar o `index.md` do squad.
206
+
207
+ ### Frontmatter inválido
208
+
209
+ ```
210
+ ❌ Campos obrigatórios ausentes no frontmatter de ARD:
211
+ - Status
212
+ - Data
213
+ ```
214
+
215
+ **Solução:** Adicionar campos obrigatórios ao YAML.
216
+
217
+ ## Arquitetura
218
+
219
+ ### Componentes
220
+
221
+ ```
222
+ bin/
223
+ ├── commands/
224
+ │ ├── docs-sync.js # CLI: jarvis docs sync
225
+ │ └── docs-publish.js # CLI: jarvis docs publish
226
+ └── lib/
227
+ ├── utils/
228
+ │ ├── npmrc-parser.js # Extrai token do .npmrc
229
+ │ └── git-parser.js # Parseia URL GitLab
230
+ └── docs/
231
+ ├── validate-frontmatter.js # Valida YAML
232
+ ├── fetch-file.sh # Busca via API (cache redis-cli opcional)
233
+ └── publish-file.sh # Publica via API + MR
234
+ ```
235
+
236
+ ### Fluxo de Publicação
237
+
238
+ ```
239
+ 1. Validar frontmatter YAML
240
+ 2. Extrair metadados (version, status, jira)
241
+ 3. Criar branch: docs/{squad}/{area}/{produto}/{tipo}-{feature}
242
+ 4. Commit via GitLab API:
243
+ - Adicionar arquivo em {squad}/{area}/{produto}/{tipo}-{feature}.md
244
+ - Atualizar {squad}/index.md
245
+ 5. Criar MR → dev
246
+ 6. Retornar URL do MR
247
+ ```
248
+
249
+ ## Variáveis de Ambiente
250
+
251
+ | Variável | Obrigatória | Padrão | Descrição |
252
+ |----------|-------------|--------|-----------|
253
+ | `CENTRAL_DOCS_REPO` | Sim | - | URL do repo GitLab |
254
+ | `CENTRAL_DOCS_REF` | Não | `main` | Branch para leitura |
255
+ | `CENTRAL_DOCS_TARGET_BRANCH` | Não | `dev` | Branch para MRs |
256
+ | `CENTRAL_DOCS_CACHE_TTL` | Não | `3600` | TTL do cache (segundos) |
257
+ | `SQUAD` | Sim | - | Squad do usuário |
258
+ | `WORKSPACE` | Sim | - | Nome do workspace |
259
+
260
+ ## Exemplos Completos
261
+
262
+ ### Exemplo 1: Setup Inicial
263
+
264
+ ```bash
265
+ # 1. Configurar token
266
+ echo '//gitlab.com/api/v4/packages/npm/:_authToken=glpat-xxx' >> .npmrc
267
+
268
+ # 2. Configurar ENV.md
269
+ cat >> .windsurf/ENV.md << EOF
270
+ CENTRAL_DOCS_REPO=https://gitlab.com/org/group/central-docs.git
271
+ CENTRAL_DOCS_REF=main
272
+ CENTRAL_DOCS_TARGET_BRANCH=dev
273
+ EOF
274
+
275
+ # 3. Sincronizar
276
+ jarvis docs sync
277
+ ```
278
+
279
+ ### Exemplo 2: Publicar ARD
280
+
281
+ ```bash
282
+ # 1. Criar ARD localmente
283
+ cat > docs/engineering/ard-drivers-api-auth.md << EOF
284
+ ---
285
+ Status: Proposta
286
+ Data: 2026-03-10
287
+ Autor: João Silva
288
+ Versão: 1.0
289
+ ---
290
+
291
+ # ARD-CORE-API-AUTH — Autenticação JWT
292
+
293
+ ...
294
+ EOF
295
+
296
+ # 2. Publicar
297
+ jarvis docs publish \
298
+ --file docs/engineering/ard-drivers-api-auth.md \
299
+ --tipo ard \
300
+ --feature drivers-api-auth
301
+
302
+ # 3. Resultado
303
+ # ✅ MR criado: docs/squad-driver/engineering/drivers-api/ard-drivers-api-auth → dev
304
+ # URL: https://gitlab.com/.../merge_requests/42
305
+ ```
306
+
307
+ ## Referências
308
+
309
+ - [SKILL.md](SKILL.md) - Documentação completa da skill
310
+ - [GitLab API Docs](https://docs.gitlab.com/ee/api/) - API do GitLab