@nathanramorim/forge-sdd 1.8.1-beta → 1.9.0-beta

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/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  [![NPM Version](https://img.shields.io/npm/v/@nathanramorim/forge-sdd)](https://www.npmjs.com/package/@nathanramorim/forge-sdd)
4
4
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
5
 
6
- > CLI open source que instala em qualquer projeto a **Metodologia Forge-SDD** v1.8.1-beta — um framework de desenvolvimento guiado por IA que elimina a repetição de instruções, garante padrões arquiteturais e traz a expertise de um engenheiro sênior para o seu fluxo diário.
6
+ > CLI open source que instala em qualquer projeto a **Metodologia Forge-SDD** v1.9.0-beta — um framework de desenvolvimento guiado por IA que elimina a repetição de instruções, garante padrões arquiteturais e traz a expertise de um engenheiro sênior para o seu fluxo diário.
7
7
 
8
8
  🚀 **Landing Page Oficial:** [forge-sdd.vercel.app](https://forge-sdd.vercel.app)
9
9
  📖 **Wiki & Documentação Completa:** [Wiki do Forge-SDD](https://forge-sdd.vercel.app/wiki#introducao)
@@ -20,8 +20,18 @@ Para conhecer todos os comandos disponíveis (`/status`, `/discovery`, `/nova-fe
20
20
 
21
21
  ## 💻 Instalação & Inicialização Rápida
22
22
 
23
- Inicialize a estrutura em segundos. O instalador gerará as pastas de memória, especificações e configurações específicas para a sua IA preferida (Copilot, Gemini ou Claude):
23
+ Você pode rodar diretamente via `npx` ou instalar globalmente para ter o comando simplificado `forge` à disposição:
24
24
 
25
+ ### Via Instalação Global (Recomendado)
26
+ ```bash
27
+ # Instale globalmente no seu sistema
28
+ npm install -g @nathanramorim/forge-sdd
29
+
30
+ # Inicialize de forma simples em qualquer projeto
31
+ forge init
32
+ ```
33
+
34
+ ### Via Execução Direta (npx)
25
35
  ```bash
26
36
  # Inicialização interativa (escolha os agentes no menu)
27
37
  npx @nathanramorim/forge-sdd@latest init
@@ -30,38 +40,38 @@ npx @nathanramorim/forge-sdd@latest init
30
40
  npx @nathanramorim/forge-sdd@latest init . --agent copilot,gemini --name meu-projeto
31
41
  ```
32
42
 
33
- ## 📢 Novidades da Versão (v1.8.1-beta)
43
+ ## 📢 Novidades da Versão (v1.9.0-beta)
34
44
 
35
- Esta versão de testes beta traz a proteção de customizações locais durante upgrades e a automação contínua de sessões:
45
+ Esta versão de testes beta traz o atalho global de execução `forge`, uma interface de onboarding pós-instalação e melhorias focadas em reduzir a curva de aprendizado do Forge-SDD:
36
46
 
37
- * **Backup Automático no Upgrade:** Toda vez que você rodar um upgrade ou update via CLI, um backup físico de arquivos de configuração e prompts de agentes customizados no seu projeto (como `.github/copilot-instructions.md`, `CLAUDE.md`, prompts e skills) será salvo automaticamente em `sdd/backups/upgrade-<timestamp>/` antes de qualquer sobrescrita, eliminando o risco de perda de lógica do projeto.
38
- * **Modo Piloto Automático (Auto-Pilot):** Os prompts e chatmodes do Orquestrador foram atualizados para ler o arquivo flag `.sdd-auto-pilot` e ignorar a confirmação humana do `PLAN`. O CLI agora também scaffolda o script daemon padrão `sdd/scripts/sdd-daemon.sh` e o guia técnico de automação `sdd/docs/autonomia-autopilot.md`.
39
- * **Convenção de Versionamento Simplificada:** Tags do canal de homologação passam a usar apenas o sufixo simples `-beta` (ex: `1.8.1-beta`), permitindo o acúmulo de múltiplos fixes ou features antes de lançar a estável oficial `1.8.0` correspondente (Regra 15).
40
- * **Métricas Granulares e Robustas:** Mapeamento incondicional de telemetria mesmo para sessões parciais, abortadas ou com timeouts.
41
- * **Diagnóstico de Nome Padrão:** O comando `doctor` alerta caso o projeto use o nome padrão `"meu-projeto"` no `.sddrc` ou nos cabeçalhos dos arquivos de agentes.organização.
47
+ * **Atalho Global (`forge`) e Onboarding Pós-Instalação:** Agora você pode acionar todos os comandos da CLI simplesmente usando `forge` (ex: `forge init`, `forge doctor`). Ao instalar o pacote globalmente, uma tela de boas-vindas interativa e instrutiva é exibida com o guia dos comandos.
48
+ * **Cheat-Sheet de Comandos:** O `forge init` agora imprime a lista completa dos comandos SDD disponíveis para os agentes escolhidos ao final da inicialização.
49
+ * **`/status` Prescritivo:** O comando `/status` (Copilot, Claude e Gemini) agora sempre sugere o próximo comando a ser executado, com base no estado real do progresso do projeto.
50
+ * **Diagnóstico de Deriva de Nomenclatura:** O comando `doctor` passa a detectar quando um projeto mistura a nomenclatura sequencial (`feat-NN`) com a nomenclatura por hash (`feat-xxxx`), alertando o usuário sobre a inconsistência.
51
+ * **Onboarding Guiado:** Novo comando `/tutorial` (Copilot, Claude e Gemini) guia o usuário por um ciclo SDD completo e fictício, isolado dos dados reais do projeto.
52
+ * **Comando `autopilot`:** Novo comando CLI que ativa o modo autopilot somente após um número mínimo de ciclos completos registrados em telemetria, com bypass consciente disponível via flag.
53
+ * **Modo Iniciante:** O comando `/constitution` (Copilot, Claude e Gemini) passa a perguntar, opcionalmente, se o usuário prefere explicações em linguagem simplificada, com exemplos concretos no lugar de jargão técnico.
42
54
 
43
55
  ---
44
56
 
45
- ## 📢 Novidades da Versão Anterior (v1.6.1-beta.0)
57
+ ## 📢 Novidades da Versão Anterior (v1.7.1-beta.5)
46
58
 
47
- A versão beta trouxe detecção inteligente de projetos existentes e upgrade aprimorado:
59
+ Esta versão de testes beta trouxe correções e alinhamento no fluxo de descobertas (discovery):
48
60
 
49
- - **Fase 38 — Detecção Inteligente e Upgrade no CLI**: O CLI agora detecta automaticamente se o diretório já possui a metodologia estruturada e redireciona para a interface de upgrade.
50
- - **Integração NPM Registry**: O CLI consulta dinamicamente as versões oficiais (`latest`) e de teste (`beta`) publicadas no NPM Registry para que o usuário escolha para qual deseja atualizar.
61
+ * **Plano de Discovery Padronizado:** O prompt de `/discovery` de todos os agentes (Copilot, Claude e Gemini) foi atualizado e alinhado para gerar obrigatoriamente o arquivo `plan-XX-*.md` na pasta `sdd/discovery/` contendo o roadmap e sugestão de quebra de tarefas/features.
62
+ * **Agrupamento Opcional de Releases Beta:** A política de releases beta (Regra 11 da Constituição) foi atualizada para explicitar que a publicação e geração de tags beta pode, opcionalmente, agrupar e acumular múltiplos fixes ou features antes de lançar novas tags ou bumps de versão, otimizando o fluxo.
63
+ * **Diagnóstico de Nome Padrão:** O comando `doctor` e os prompts `/doctor` dos agentes passam a verificar se o projeto ainda utiliza o nome genérico `"meu-projeto"`, listando as correções e os cabeçalhos de agentes recomendados a serem renomeados.
64
+ * **Métricas Granulares e Robustas:** Implementado mapeamento e telemetria incondicional para caminhos aninhados de subpastas de features e discoveries.
65
+ * **Prompt do Orquestrador Refatorado:** Instruções do Orquestrador atualizadas para impor os novos guardrails de close em todos os agentes suportados.
51
66
 
52
67
  ---
53
68
 
54
- ## 📢 Novidades da Versão Anterior (v1.6.0)
69
+ ## 📢 Novidades da Versão Anterior (v1.6.1-beta.0)
55
70
 
56
- A versão estável v1.6.0 trouxe grandes evoluções de arquitetura e consistência no desenvolvimento:
71
+ A versão beta trouxe detecção inteligente de projetos existentes e upgrade aprimorado:
57
72
 
58
- - **Fase 36 — Documentação Estruturada**: Estruturação de diagramas conceituais Mermaid detalhados para visualização clara de fluxos e arquitetura.
59
- - **Fase 35 — Remoção de Skill Incompleta**: Limpeza completa da funcionalidade de instalação de skill (`/install-skill`) em todos os prompts, agentes e documentação.
60
- - **Fase 34 — Reestruturação de Prompts por Agente**: Migração dos prompts do Copilot e unificação dos prompts de sistema e habilidades customizadas específicas para Gemini, Claude e Copilot.
61
- - **Fase 33 — Sincronização Automática da Wiki**: A documentação oficial (diretório docs/ e README) agora é enviada e atualizada automaticamente na wiki do repositório lp-forge-sdd a cada nova tag publicada.
62
- - **Fase 32 — Geração de Release Notes**: Agora o agente documenta as entregas de cada feature de forma automática e em linguagem clara de produto ao encerrar as tarefas.
63
- - **Fase 31 — Preservação de Domínio no Upgrade**: As atualizações do Forge-SDD ou do CLI protegem e preservam todas as suas especificações e arquivos de domínio do usuário.
64
- - **Fase 30 — Correções de Fluxo de Branches**: Ajustado o fluxo de desenvolvimento automático do agente para garantir criação prévia de branches e integração robusta de PRs via `gh` CLI.
73
+ - **Fase 38 — Detecção Inteligente e Upgrade no CLI**: O CLI agora detecta automaticamente se o diretório já possui a metodologia estruturada e redireciona para a interface de upgrade.
74
+ - **Integração NPM Registry**: O CLI consulta dinamicamente as versões oficiais (`latest`) e de teste (`beta`) publicadas no NPM Registry para que o usuário escolha para qual deseja atualizar.
65
75
 
66
76
  ---
67
77
 
@@ -0,0 +1,71 @@
1
+ #!/usr/bin/env node
2
+ 'use strict';
3
+
4
+ const isColorSupported = !process.env.NO_COLOR && (process.stdout.isTTY || process.env.FORCE_COLOR);
5
+
6
+ const colors = {
7
+ reset: isColorSupported ? '\x1b[0m' : '',
8
+ bold: isColorSupported ? '\x1b[1m' : '',
9
+ green: isColorSupported ? '\x1b[32m' : '',
10
+ cyan: isColorSupported ? '\x1b[36m' : '',
11
+ yellow: isColorSupported ? '\x1b[33m' : '',
12
+ dim: isColorSupported ? '\x1b[90m' : '',
13
+ };
14
+
15
+ const width = 74;
16
+
17
+ function printLine(content, color = '') {
18
+ // Remove escapes ANSI para calcular o comprimento visível
19
+ const cleanLength = content.replace(/\x1b\[\d+m/g, '').length;
20
+
21
+ // Calcula o espaço restante
22
+ const spacesCount = Math.max(0, width - cleanLength - 1);
23
+ console.log(`${colors.cyan}│${colors.reset} ${color}${content}${colors.reset}${' '.repeat(spacesCount)}${colors.cyan}│${colors.reset}`);
24
+ }
25
+
26
+ function printEmptyLine() {
27
+ console.log(`${colors.cyan}│${colors.reset}${' '.repeat(width)}${colors.cyan}│${colors.reset}`);
28
+ }
29
+
30
+ function printSeparator() {
31
+ console.log(`${colors.cyan}├${'─'.repeat(width)}┤${colors.reset}`);
32
+ }
33
+
34
+ function printBorderTop() {
35
+ console.log(`${colors.cyan}┌${'─'.repeat(width)}┐${colors.reset}`);
36
+ }
37
+
38
+ function printBorderBottom() {
39
+ console.log(`${colors.cyan}└${'─'.repeat(width)}┘${colors.reset}`);
40
+ }
41
+
42
+ console.log('');
43
+ printBorderTop();
44
+ printEmptyLine();
45
+ printLine(`🚀 ${colors.bold}${colors.cyan}Bem-vindo ao Forge-SDD!${colors.reset}`);
46
+ printEmptyLine();
47
+ printLine(`O CLI definitivo para scaffolding de Software Design Doc (SDD)`);
48
+ printLine(`pronto para uso com múltiplos agentes de Inteligência Artificial.`);
49
+ printEmptyLine();
50
+ printSeparator();
51
+ printEmptyLine();
52
+ printLine(`⚡ ${colors.bold}${colors.green}Comando global ativo: forge${colors.reset}`);
53
+ printEmptyLine();
54
+ printLine(`💡 ${colors.bold}Guia de Comandos Disponíveis:${colors.reset}`);
55
+ printEmptyLine();
56
+ printLine(` ${colors.cyan}•${colors.reset} ${colors.bold}forge init${colors.reset} ${colors.dim}─${colors.reset} Inicializa o SDD interativamente no projeto`);
57
+ printLine(` ${colors.cyan}•${colors.reset} ${colors.bold}forge update${colors.reset} ${colors.dim}─${colors.reset} Adiciona novos agentes ou atualiza a versão`);
58
+ printLine(` ${colors.cyan}•${colors.reset} ${colors.bold}forge doctor${colors.reset} ${colors.dim}─${colors.reset} Verifica a integridade da estrutura local`);
59
+ printLine(` ${colors.cyan}•${colors.reset} ${colors.bold}forge destroy${colors.reset} ${colors.dim}─${colors.reset} Remove a estrutura SDD local do projeto`);
60
+ printEmptyLine();
61
+ printSeparator();
62
+ printEmptyLine();
63
+ printLine(`👉 ${colors.bold}Como começar agora:${colors.reset}`);
64
+ printEmptyLine();
65
+ printLine(` 1. Navegue até o diretório do seu projeto`);
66
+ printLine(` 2. Execute o comando:`);
67
+ printLine(` ${colors.bold}${colors.yellow}$ forge init${colors.reset}`);
68
+ printLine(` 3. Abra seu projeto com VS Code, Claude Code ou Gemini!`);
69
+ printEmptyLine();
70
+ printBorderBottom();
71
+ console.log('');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nathanramorim/forge-sdd",
3
- "version": "1.8.1-beta",
3
+ "version": "1.9.0-beta",
4
4
  "description": "CLI que scaffolda estruturas Forge-SDD em segundos",
5
5
  "homepage": "https://github.com/nathanramorim/forge-sdd",
6
6
  "repository": {
@@ -9,12 +9,17 @@
9
9
  },
10
10
  "license": "MIT",
11
11
  "bin": {
12
- "forge-sdd": "bin/run.js"
12
+ "forge-sdd": "bin/run.js",
13
+ "forge": "bin/run.js"
13
14
  },
14
15
  "files": [
15
16
  "bin/run.js",
17
+ "bin/postinstall.js",
16
18
  "README.md"
17
19
  ],
20
+ "scripts": {
21
+ "postinstall": "node bin/postinstall.js"
22
+ },
18
23
  "engines": {
19
24
  "node": ">=18"
20
25
  },