{"_id":"@diegorivelino/arrocha","_rev":"6-73416b3bf08058340365156404a1d831","name":"@diegorivelino/arrocha","dist-tags":{"latest":"1.0.5"},"versions":{"1.0.0":{"name":"@diegorivelino/arrocha","version":"1.0.0","keywords":["codex","claude","skills","openspec","rails","arrocha"],"license":"MIT","_id":"@diegorivelino/arrocha@1.0.0","maintainers":[{"name":"diegorivelino","email":"diegorivelino@gmail.com"}],"bin":{"arrocha":"bin/arrocha.js"},"dist":{"shasum":"f4168e36792246020d49246867bda3e11e8166cd","tarball":"https://registry.npmjs.org/@diegorivelino/arrocha/-/arrocha-1.0.0.tgz","fileCount":20,"integrity":"sha512-yVDDgJs6S8WWfhRQTc8teAqfeCCSGEjOJGAEik2ki2xaIgN8u+t98+vh8StPeFOokchLDGr4mvhlSQ6L49yE6A==","signatures":[{"sig":"MEQCIHzQ0W8Z69XRMJ9LOjXxEFV//aeW9Cu7A4rHbX+9xkBnAiBqJNefDG8xQHpSnQituymkhOueHgXBowzYeY97Zm/CJg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61021},"type":"module","engines":{"node":">=20"},"scripts":{"test":"node bin/arrocha.js doctor","start":"node bin/arrocha.js","postinstall":"node scripts/postinstall.js"},"_npmUser":{"name":"diegorivelino","email":"diegorivelino@gmail.com"},"_npmVersion":"11.16.0","description":"CLI para configurar projetos com Codex, Claude, OpenSpec, regras e skills padrão.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/arrocha_1.0.0_1784256896737_0.26301282090512634","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@diegorivelino/arrocha","version":"1.0.1","keywords":["codex","claude","skills","openspec","rails","arrocha"],"license":"MIT","_id":"@diegorivelino/arrocha@1.0.1","maintainers":[{"name":"diegorivelino","email":"diegorivelino@gmail.com"}],"bin":{"arrocha":"bin/arrocha.js"},"dist":{"shasum":"dbc84c17f8f9bc867776df9a8830de24c8e75478","tarball":"https://registry.npmjs.org/@diegorivelino/arrocha/-/arrocha-1.0.1.tgz","fileCount":20,"integrity":"sha512-LHA1YPnrKBQKwJShd/WBCuZ4oIU17D0s+VtveQJAfkHKZTNFOP+MKpwAOYgsniO60e2VH39h97XkEr47fA4GeA==","signatures":[{"sig":"MEUCIQD7j7yhpBcoXYkLmaZkZTx3IHXN/GPaFhanRqB7Q6d56QIgJQrSsh0m8GgBYHJWNkBf+dJnyXKQG7tv7D7bwja0998=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60653},"type":"module","engines":{"node":">=20"},"scripts":{"test":"node bin/arrocha.js doctor","start":"node bin/arrocha.js"},"_npmUser":{"name":"diegorivelino","email":"diegorivelino@gmail.com"},"_npmVersion":"11.16.0","description":"CLI para configurar projetos com Codex, Claude, OpenSpec, regras e skills padrão.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/arrocha_1.0.1_1784257910507_0.9479316275980665","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@diegorivelino/arrocha","version":"1.0.2","keywords":["codex","claude","skills","openspec","rails","arrocha"],"license":"MIT","_id":"@diegorivelino/arrocha@1.0.2","maintainers":[{"name":"diegorivelino","email":"diegorivelino@gmail.com"}],"bin":{"arrocha":"bin/arrocha.js"},"dist":{"shasum":"11303f17b48d48aa94182deca6ac8f0de9934a75","tarball":"https://registry.npmjs.org/@diegorivelino/arrocha/-/arrocha-1.0.2.tgz","fileCount":20,"integrity":"sha512-1aWHdd90t+tM6+7CtVEV/tX0GI2mF/J64auAxkJqWvTfKp5A5RxblUxk0QHicZPefIUPQPRek6zpoTpPtQpEyQ==","signatures":[{"sig":"MEUCIGhK23WVrWh7a4jF1Kh1ryi+cw/JClbEboYgs9VtJK74AiEAx8tNz2LQu+OLNnBntyURzenBoMxLnM2W3YTtsxR5DFo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32136},"type":"module","engines":{"node":">=20"},"scripts":{"test":"node bin/arrocha.js doctor","start":"node bin/arrocha.js"},"_npmUser":{"name":"diegorivelino","email":"diegorivelino@gmail.com"},"_npmVersion":"11.16.0","description":"CLI para configurar projetos com Codex, Claude, OpenSpec, regras e skills padrão.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/arrocha_1.0.2_1784259197868_0.7441503181987041","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@diegorivelino/arrocha","version":"1.0.3","keywords":["codex","claude","skills","openspec","rails","arrocha"],"license":"MIT","_id":"@diegorivelino/arrocha@1.0.3","maintainers":[{"name":"diegorivelino","email":"diegorivelino@gmail.com"}],"bin":{"arrocha":"bin/arrocha.js"},"dist":{"shasum":"67d6b520eb92c458aea99267ff829b2fb6585661","tarball":"https://registry.npmjs.org/@diegorivelino/arrocha/-/arrocha-1.0.3.tgz","fileCount":20,"integrity":"sha512-zaxxuRqhdinlHYs5q0IPOLrZPhPeYUEilYyAXeKtN2VeWYEOTDJN3WyDPQXC46/wjNN+PENt4nQFjO9AKA0IEQ==","signatures":[{"sig":"MEQCICdYMuyPu3xhK9vsXVVh8MaQOYnD2EmjvsMzu41cgOjaAiAok5t0XC33fHyMbM480+H7gxYgVHIyeRJ6ZDCXENXHSQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":46614},"type":"module","engines":{"node":">=20"},"scripts":{"test":"node bin/arrocha.js doctor","start":"node bin/arrocha.js"},"_npmUser":{"name":"diegorivelino","email":"diegorivelino@gmail.com"},"_npmVersion":"11.16.0","description":"CLI para configurar projetos com Codex, Claude, OpenSpec, regras e skills padrão.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/arrocha_1.0.3_1784261014838_0.7834986373938824","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@diegorivelino/arrocha","version":"1.0.4","keywords":["codex","claude","skills","openspec","rails","arrocha"],"license":"MIT","_id":"@diegorivelino/arrocha@1.0.4","maintainers":[{"name":"diegorivelino","email":"diegorivelino@gmail.com"}],"bin":{"arrocha":"bin/arrocha.js"},"dist":{"shasum":"42b2a976d26504c0397407576384a7a7ddfb1b9d","tarball":"https://registry.npmjs.org/@diegorivelino/arrocha/-/arrocha-1.0.4.tgz","fileCount":19,"integrity":"sha512-si/lotM1oRyHQ4mWJe0wsF4qIA19chh4cy6QVOj8p9wDXoLoR5NGQFVF9dHpEHWm1s+nOjk442nILqSpIoPldA==","signatures":[{"sig":"MEQCIEXAV08c1xteS59Lo21g10+PHsHVe3sdU5GoxIJRwAj1AiBDy5OVfkrpKM5SJlk/cjEDqQL9pOGDAIWdB6LQ2FQ2iw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44806},"type":"module","engines":{"node":">=20"},"gitHead":"8cc41a83382b71ebfde98c8782eb4775e3a10940","scripts":{"test":"node ./bin/arrocha.js doctor","start":"node ./bin/arrocha.js"},"_npmUser":{"name":"diegorivelino","email":"diegorivelino@gmail.com"},"_npmVersion":"11.16.0","description":"CLI para configurar projetos com Codex, Claude, OpenSpec, regras e skills padrão.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/arrocha_1.0.4_1784689236340_0.8040080899594244","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@diegorivelino/arrocha","version":"1.0.5","description":"CLI para configurar projetos com Codex, Claude, OpenSpec, regras e skills padrão.","type":"module","bin":{"arrocha":"bin/arrocha.js"},"scripts":{"start":"node ./bin/arrocha.js","test":"node ./bin/arrocha.js doctor"},"keywords":["codex","claude","skills","openspec","rails","arrocha"],"license":"MIT","engines":{"node":">=20"},"gitHead":"49d8e4d10f11479af04fd59bb98cb4a0bc439238","_id":"@diegorivelino/arrocha@1.0.5","_nodeVersion":"24.18.0","_npmVersion":"12.0.1","dist":{"integrity":"sha512-bhfpyuXeKMDE6EmJZ9EWSRcpoAJ9qqsnkOWm0DNCJAe064w1vMR1t8G/eSlQ9QUjui4mCYdpxlpaSycJjboz+w==","shasum":"72088bffcf7b7b11059feba525eaa13d3f14f5f4","tarball":"https://registry.npmjs.org/@diegorivelino/arrocha/-/arrocha-1.0.5.tgz","fileCount":20,"unpackedSize":51001,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDqpXDszS0hT80c6cGMfqO6dQ9KI65QBcGYtOpN2cZ3cwIhAIsvGLVO46VgcG1CzsoREFoCtY8GKYAM+U55CN47EScv"}]},"_npmUser":{"name":"diegorivelino","email":"diegorivelino@gmail.com"},"directories":{},"maintainers":[{"name":"diegorivelino","email":"diegorivelino@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/arrocha_1.0.5_1785251870264_0.4076407542099243"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-17T02:54:56.580Z","modified":"2026-07-28T15:17:50.579Z","1.0.0":"2026-07-17T02:54:56.877Z","1.0.1":"2026-07-17T03:11:50.630Z","1.0.2":"2026-07-17T03:33:18.016Z","1.0.3":"2026-07-17T04:03:35.000Z","1.0.4":"2026-07-22T03:00:36.466Z","1.0.5":"2026-07-28T15:17:50.434Z"},"license":"MIT","keywords":["codex","claude","skills","openspec","rails","arrocha"],"description":"CLI para configurar projetos com Codex, Claude, OpenSpec, regras e skills padrão.","maintainers":[{"name":"diegorivelino","email":"diegorivelino@gmail.com"}],"readme":"# Arrocha\n\nCLI para preparar projetos com instruções, skills e fluxos de trabalho para:\n\n- OpenAI Codex\n- Claude Code\n- GitHub Copilot\n- OpenSpec\n\nO Arrocha cria uma base padronizada para agentes de IA trabalharem no projeto seguindo as mesmas regras técnicas, visuais e operacionais.\n\n---\n\n## Instalação\n\nInstale globalmente pelo npm:\n\n```bash\nnpm install -g @diegorivelino/arrocha\n```\n\nConfirme a instalação:\n\n```bash\narrocha\n```\n\nPara verificar a versão instalada:\n\n```bash\nnpm list -g @diegorivelino/arrocha --depth=0\n```\n\n---\n\n## Uso rápido\n\nEntre na pasta do projeto:\n\n```bash\ncd caminho/do/projeto\n```\n\nInicialize o Arrocha:\n\n```bash\narrocha init\n```\n\nValide a instalação:\n\n```bash\narrocha doctor\n```\n\n---\n\n## O que o `arrocha init` faz\n\nO comando:\n\n```bash\narrocha init\n```\n\nconfigura o projeto atual e cria os arquivos que ainda não existem.\n\nEle não sobrescreve arquivos existentes por padrão.\n\nTambém:\n\n- instala as skills locais do Codex;\n- instala as skills locais do Claude;\n- instala as skills globais do Codex;\n- instala as skills globais do Claude;\n- instala o OpenSpec, quando necessário;\n- inicializa o OpenSpec para Codex e Claude.\n\n---\n\n## Estrutura criada\n\n```text\nAGENTS.md\nCLAUDE.md\n\n.github/\n└── copilot-instructions.md\n\n.arrocha/\n├── RULES.md\n├── DESIGN.md\n└── COMMANDS.md\n\n.agents/\n└── skills/\n\n.claude/\n└── skills/\n\n.codex/\n\nopenspec/\n```\n\n---\n\n## Arquivos de instrução\n\n### `AGENTS.md`\n\nArquivo principal de instruções para o Codex.\n\nDefine:\n\n- regras de resposta;\n- forma de trabalhar no projeto;\n- uso das skills;\n- prioridades técnicas;\n- uso do OpenSpec;\n- arquivos obrigatórios de referência.\n\n### `CLAUDE.md`\n\nArquivo principal de instruções para o Claude Code.\n\nDefine:\n\n- comportamento padrão;\n- uso das skills em `.claude/skills`;\n- prioridades técnicas;\n- fluxo com OpenSpec;\n- leitura das regras do projeto.\n\n### `.github/copilot-instructions.md`\n\nArquivo de instruções para o GitHub Copilot.\n\nOrienta o Copilot a:\n\n- respeitar os padrões do projeto;\n- seguir as regras do Arrocha;\n- manter consistência com Codex e Claude;\n- preservar arquitetura, segurança e padrões visuais;\n- consultar os arquivos em `.arrocha`.\n\n### `.arrocha/RULES.md`\n\nFonte principal das regras do sistema e do projeto.\n\nPode conter:\n\n- regras de arquitetura;\n- segurança;\n- permissões;\n- banco de dados;\n- migrations;\n- padrões de implementação;\n- integrações;\n- regras de negócio;\n- restrições do projeto.\n\n### `.arrocha/DESIGN.md`\n\nFonte principal das regras visuais.\n\nPode conter:\n\n- cores;\n- tipografia;\n- espaçamento;\n- componentes;\n- responsividade;\n- dashboards;\n- formulários;\n- tabelas;\n- modais;\n- drawers;\n- padrões de navegação.\n\n### `.arrocha/COMMANDS.md`\n\nDocumenta os comandos oficiais do projeto.\n\nExemplos:\n\n- instalação;\n- execução;\n- testes;\n- lint;\n- banco de dados;\n- build;\n- deploy;\n- tarefas recorrentes.\n\n---\n\n## Skills instaladas\n\nO Arrocha instala as seguintes skills:\n\n```text\nrails8\nrails-code-audit\nfrontend-layout\ndesign-system-review\nnpm-cli-dev\nopenspec-workflow\npure-ruby\nelectron-react\ncaveman\n```\n\n### `rails8`\n\nPara desenvolvimento moderno em Ruby on Rails.\n\nUse para:\n\n- models;\n- controllers;\n- migrations;\n- jobs;\n- services;\n- Hotwire;\n- testes;\n- padrões Rails 8.\n\n### `rails-code-audit`\n\nPara auditoria técnica de projetos Rails.\n\nUse para:\n\n- segurança;\n- N+1;\n- migrations;\n- arquitetura;\n- qualidade;\n- performance;\n- testes;\n- riscos técnicos.\n\n### `frontend-layout`\n\nPara criação e melhoria de interfaces.\n\nUse para:\n\n- layout;\n- UI;\n- responsividade;\n- formulários;\n- dashboards;\n- ERB;\n- Hotwire;\n- React;\n- Tailwind.\n\nA skill deve consultar:\n\n```text\n.arrocha/DESIGN.md\n```\n\n### `design-system-review`\n\nPara revisão de consistência visual.\n\nUse para:\n\n- cores;\n- espaçamento;\n- tipografia;\n- componentes duplicados;\n- responsividade;\n- acessibilidade;\n- padronização visual.\n\n### `npm-cli-dev`\n\nPara desenvolvimento e manutenção de CLIs npm.\n\nUse para:\n\n- `package.json`;\n- campo `bin`;\n- comandos;\n- templates;\n- publicação;\n- `npm link`;\n- versionamento;\n- instalação global.\n\n### `openspec-workflow`\n\nPara mudanças guiadas por especificação.\n\nUse para:\n\n- proposals;\n- specs;\n- tasks;\n- validações;\n- mudanças estruturais;\n- novas funcionalidades;\n- refactors grandes.\n\n### `pure-ruby`\n\nPara projetos Ruby sem Rails.\n\nUse para:\n\n- scripts;\n- gems;\n- CLIs;\n- bibliotecas;\n- automações;\n- Ruby standard library.\n\n### `electron-react`\n\nPara aplicações desktop com Electron e React.\n\nUse para:\n\n- Electron;\n- React;\n- Vite;\n- IPC;\n- preload;\n- segurança;\n- empacotamento;\n- aplicações desktop.\n\n### `caveman`\n\nSkill padrão para respostas muito compactas.\n\nUse para:\n\n- reduzir tokens de saída;\n- eliminar explicações desnecessárias;\n- responder de forma direta;\n- manter comandos, código, caminhos e erros intactos;\n- trabalhar em modo técnico e objetivo.\n\nO comportamento exato depende das instruções presentes em:\n\n```text\n.agents/skills/caveman/SKILL.md\n.claude/skills/caveman/SKILL.md\n```\n\n---\n\n## Onde as skills são instaladas\n\n### Skills locais do Codex\n\n```text\n.agents/skills/\n```\n\n### Skills locais do Claude\n\n```text\n.claude/skills/\n```\n\n### Skills globais do Codex\n\n```text\n~/.agents/skills/\n```\n\n### Skills globais do Claude\n\n```text\n~/.claude/skills/\n```\n\nAs skills locais pertencem ao projeto. As skills globais ficam disponíveis para outros projetos do usuário.\n\n---\n\n## Comandos disponíveis\n\n### Ajuda\n\n```bash\narrocha\n```\n\nou:\n\n```bash\narrocha help\n```\n\n### Inicializar projeto\n\n```bash\narrocha init\n```\n\nCria os arquivos ausentes sem sobrescrever os existentes.\n\n### Verificar instalação\n\n```bash\narrocha doctor\n```\n\nVerifica se os principais arquivos, pastas, skills e OpenSpec estão disponíveis.\n\n### Listar skills\n\n```bash\narrocha skill list\n```\n\n### Instalar todas as skills\n\n```bash\narrocha skill install-all\n```\n\n### Atualizar arquivos do projeto\n\n```bash\narrocha update\n```\n\nCria arquivos ausentes sem sobrescrever arquivos existentes.\n\n### Atualizar e sobrescrever\n\n```bash\narrocha update --force\n```\n\nEsse comando:\n\n- atualiza arquivos existentes;\n- cria arquivos ausentes;\n- sobrescreve instruções antigas;\n- atualiza templates do projeto;\n- atualiza skills locais.\n\nUse com cuidado.\n\n---\n\n## Diferença entre `init` e `update`\n\n### `arrocha init`\n\n```text\ncria arquivos ausentes\nmantém arquivos existentes\ninstala skills\nconfigura OpenSpec\n```\n\n### `arrocha update`\n\n```text\ncria arquivos ausentes\nmantém arquivos existentes\natualiza apenas o que não exige sobrescrita\n```\n\n### `arrocha update --force`\n\n```text\ncria arquivos ausentes\nsobrescreve arquivos existentes\natualiza instruções\natualiza templates\natualiza skills locais\n```\n\n---\n\n## Atualizar um projeto existente\n\nAtualize o Arrocha global:\n\n```bash\nnpm install -g @diegorivelino/arrocha@latest\nhash -r\n```\n\nEntre no projeto:\n\n```bash\ncd caminho/do/projeto\n```\n\nConfira as alterações pendentes:\n\n```bash\ngit status\n```\n\nFaça um backup antes de sobrescrever:\n\n```bash\ngit add .\ngit commit -m \"Backup antes de atualizar Arrocha\"\n```\n\nAtualize:\n\n```bash\narrocha update --force\n```\n\nValide:\n\n```bash\narrocha doctor\n```\n\n---\n\n## GitHub Copilot\n\nO Arrocha cria:\n\n```text\n.github/copilot-instructions.md\n```\n\nEsse arquivo deve ser versionado no Git e mantém o Copilot alinhado com Codex e Claude.\n\n---\n\n## OpenSpec\n\nO Arrocha verifica se o comando `openspec` está instalado.\n\nQuando necessário, instala:\n\n```bash\nnpm install -g @fission-ai/openspec@latest\n```\n\nDepois inicializa:\n\n```bash\nopenspec init --tools claude,codex\n```\n\nO fluxo recomendado é usar OpenSpec para:\n\n- novas funcionalidades;\n- mudanças de comportamento;\n- refactors grandes;\n- alterações estruturais;\n- mudanças com impacto em regras de negócio.\n\n---\n\n## Uso com Codex\n\nO Codex deve consultar:\n\n```text\nAGENTS.md\n.arrocha/RULES.md\n.arrocha/DESIGN.md\n.arrocha/COMMANDS.md\n.agents/skills/\n```\n\nExemplos:\n\n```text\n$rails8 crie o cadastro de clientes seguindo as regras do projeto\n```\n\n```text\n$rails-code-audit revise segurança, migrations e consultas N+1\n```\n\n```text\n$frontend-layout melhore esta tela seguindo .arrocha/DESIGN.md\n```\n\n```text\n$caveman explique somente o erro e a correção\n```\n\n---\n\n## Uso com Claude Code\n\nO Claude deve consultar:\n\n```text\nCLAUDE.md\n.arrocha/RULES.md\n.arrocha/DESIGN.md\n.arrocha/COMMANDS.md\n.claude/skills/\n```\n\nExemplos:\n\n```text\n/rails8 implemente esta feature seguindo o padrão do projeto\n```\n\n```text\n/rails-code-audit revise este módulo\n```\n\n```text\n/frontend-layout ajuste esta tela seguindo .arrocha/DESIGN.md\n```\n\n```text\n/caveman responda somente com a solução\n```\n\n---\n\n## Desenvolvimento local do Arrocha\n\nEntre no projeto-fonte:\n\n```bash\ncd ~/projetos/Arrocha-CLI\n```\n\nCrie o link global para desenvolvimento:\n\n```bash\nnpm link\n```\n\nTeste:\n\n```bash\narrocha\narrocha skill list\n```\n\nCrie uma pasta temporária:\n\n```bash\nrm -rf /tmp/teste-arrocha\nmkdir -p /tmp/teste-arrocha\ncd /tmp/teste-arrocha\n```\n\nInicialize e valide:\n\n```bash\narrocha init\narrocha doctor\nls -la\n```\n\nConfira o Copilot:\n\n```bash\nls -la .github\ncat .github/copilot-instructions.md\n```\n\n---\n\n## Estrutura do pacote\n\n```text\nArrocha-CLI/\n├── bin/\n│   └── arrocha.js\n├── src/\n│   ├── fs-utils.js\n│   └── skills.js\n├── templates/\n│   ├── project/\n│   │   ├── AGENTS.md\n│   │   ├── CLAUDE.md\n│   │   ├── .github/\n│   │   │   └── copilot-instructions.md\n│   │   └── .arrocha/\n│   │       ├── RULES.md\n│   │       ├── DESIGN.md\n│   │       └── COMMANDS.md\n│   └── skills/\n│       ├── rails8/\n│       ├── rails-code-audit/\n│       ├── frontend-layout/\n│       ├── design-system-review/\n│       ├── npm-cli-dev/\n│       ├── openspec-workflow/\n│       ├── pure-ruby/\n│       ├── electron-react/\n│       └── caveman/\n├── package.json\n└── README.md\n```\n\n---\n\n## Configuração do `package.json`\n\nO campo `bin` deve usar um caminho relativo válido:\n\n```json\n{\n  \"bin\": {\n    \"arrocha\": \"./bin/arrocha.js\"\n  }\n}\n```\n\nO arquivo precisa ser executável:\n\n```bash\nchmod +x bin/arrocha.js\n```\n\nA primeira linha de `bin/arrocha.js` deve ser:\n\n```javascript\n#!/usr/bin/env node\n```\n\n---\n\n## Testar antes de publicar\n\nCorrija o `package.json`:\n\n```bash\nnpm pkg fix\n```\n\nConfira o pacote:\n\n```bash\nnpm pack --dry-run\n```\n\nVerifique se aparecem, entre outros:\n\n```text\nbin/arrocha.js\ntemplates/project/AGENTS.md\ntemplates/project/CLAUDE.md\ntemplates/project/.github/copilot-instructions.md\ntemplates/project/.arrocha/RULES.md\ntemplates/skills/caveman/SKILL.md\nREADME.md\n```\n\nTeste o CLI:\n\n```bash\nnode bin/arrocha.js\nnode bin/arrocha.js skill list\n```\n\n---\n\n## Publicação\n\nFaça login no npm:\n\n```bash\nnpm login\n```\n\nConfirme:\n\n```bash\nnpm whoami\n```\n\nAtualize a versão:\n\n```bash\nnpm version patch\n```\n\nOutras opções:\n\n```bash\nnpm version minor\nnpm version major\n```\n\nPublique:\n\n```bash\nnpm publish --access public\n```\n\nNão é possível publicar novamente a mesma combinação de nome e versão.\n\n---\n\n## Atualizar a instalação global\n\n```bash\nnpm uninstall -g @diegorivelino/arrocha\nnpm install -g @diegorivelino/arrocha@latest\nhash -r\n```\n\nTeste:\n\n```bash\narrocha\narrocha skill list\n```\n\n---\n\n## Desinstalação\n\nRemova o pacote global:\n\n```bash\nnpm uninstall -g @diegorivelino/arrocha\n```\n\nPara remover os arquivos do Arrocha de um projeto:\n\n```bash\nrm -rf AGENTS.md CLAUDE.md .arrocha .agents .claude .codex openspec\nrm -f .github/copilot-instructions.md\n```\n\nAtenção: esses comandos apagam arquivos e pastas do projeto.\n\n---\n\n## Solução de problemas\n\n### `arrocha: command not found`\n\n```bash\nnpm uninstall -g @diegorivelino/arrocha\nnpm install -g @diegorivelino/arrocha@latest\nhash -r\n```\n\nConfira:\n\n```bash\nwhich arrocha\n```\n\n### `ENEEDAUTH`\n\n```bash\nnpm login\nnpm whoami\nnpm publish --access public\n```\n\n### O npm removeu o campo `bin`\n\nGaranta que o `package.json` contém:\n\n```json\n{\n  \"bin\": {\n    \"arrocha\": \"./bin/arrocha.js\"\n  }\n}\n```\n\nDepois:\n\n```bash\nnpm pkg fix\nchmod +x bin/arrocha.js\nnpm pack --dry-run\n```\n\n### Pastas ocultas não aparecem\n\nUse:\n\n```bash\nls -la\n```\n\n### A atualização não alterou os arquivos\n\nUse:\n\n```bash\narrocha update --force\n```\n\n---\n\n## Boas práticas\n\n- versione os arquivos do Arrocha no Git;\n- faça commit antes de usar `--force`;\n- mantenha `.arrocha/RULES.md` como fonte principal de regras;\n- mantenha `.arrocha/DESIGN.md` atualizado;\n- documente testes e lint em `.arrocha/COMMANDS.md`;\n- use OpenSpec para mudanças grandes;\n- execute `npm pack --dry-run` antes de publicar;\n- mantenha Codex, Claude e Copilot alinhados.\n\n---\n\n## Licença\n\nMIT\n","readmeFilename":"README.md"}