{"_id":"@brennoleondesouza/wirecli","name":"@brennoleondesouza/wirecli","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@brennoleondesouza/wirecli","version":"0.1.0","description":"Wire CLI by AnThophicous and contributors","license":"SEE LICENSE IN LICENSE","publishConfig":{"access":"public"},"bin":{"wirecli":"bin/wirecli.js"},"scripts":{"postinstall":"node scripts/install-release-binary.js"},"keywords":["wire","wirecli","cli","rust","agent"],"engines":{"node":">=18"},"_id":"@brennoleondesouza/wirecli@0.1.0","gitHead":"104d5497788829da93300a3b6dd9abc182d7e81b","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-sj8Rtw+wkkgjaewm1a4pP0gdXBZu745hpfJwpMJ7COVr1Ap9q0196e5TbrimDEcbId288a21QIPozm4mWpEpuQ==","shasum":"e50bfca19964a9c775acedfe2cc7d6d367cec47e","tarball":"https://registry.npmjs.org/@brennoleondesouza/wirecli/-/wirecli-0.1.0.tgz","fileCount":6,"unpackedSize":49695,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCo+66XeqxCsQdsWdMqTpR+UBQXDqKVCvvat98sAGULvAIgcO7+ERBYqtO+J96VYBXUePXI4QLPARdjGaXOMnnZYcs="}]},"_npmUser":{"name":"brennoleondesouza","email":"resumindoanimes60@gmail.com"},"directories":{},"maintainers":[{"name":"brennoleondesouza","email":"resumindoanimes60@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/wirecli_0.1.0_1780998421148_0.8199529471154752"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-09T09:47:00.970Z","0.1.0":"2026-06-09T09:47:01.289Z","modified":"2026-06-09T09:47:01.508Z"},"maintainers":[{"name":"brennoleondesouza","email":"resumindoanimes60@gmail.com"}],"description":"Wire CLI by AnThophicous and contributors","keywords":["wire","wirecli","cli","rust","agent"],"license":"SEE LICENSE IN LICENSE","readme":"# Wire CLI\n\nWire CLI é um agente de desenvolvimento **local-first** projetado para execução segura de tarefas, automação de workflows, análise de código e gerenciamento de contexto de longo prazo.\n\nA arquitetura combina memória persistente, sandboxing, auditoria, recuperação automática de falhas e suporte a múltiplos provedores de IA em uma única interface de terminal.\n\n---\n\n# Instalação\n\n## NPM\n\n```bash\nnpm install -g @brennoleondesouza/wirecli@latest\n```\n\nInicie o Wire:\n\n```bash\nwirecli\n```\n\nO pacote NPM atua como launcher e baixa automaticamente o binário compatível com o sistema operacional e arquitetura do usuário.\n\nNão é necessário instalar Rust ou Cargo para utilizar versões publicadas.\n\nO nome global do comando é sempre `wirecli`.\n\n---\n\n# Conceitos Arquiteturais\n\nO runtime do Wire é dividido em componentes independentes.\n\n```mermaid\ngraph TD\n\nUser[User]\n\nBox[Box<br/>Workspace]\nLattice[Lattice<br/>Sandbox]\nLoom[Loom<br/>Context Builder]\nAnchor[Anchor<br/>Memory]\nTide[Tide<br/>Session Timeline]\nProviders[Providers<br/>LLMs]\n\nUser --> Box\n\nBox --> Lattice\nBox --> Loom\n\nAnchor --> Loom\nTide --> Loom\n\nLoom --> Providers\nProviders --> Tide\n```\n\n## Box\n\nO Box representa o workspace ativo.\n\nTodas as operações de arquivos, ferramentas e modificações acontecem dentro dele.\n\n---\n\n## Lattice\n\nLattice é a camada responsável por isolamento e execução segura.\n\nDependendo da plataforma, ela utiliza:\n\n* Bubblewrap\n* Namespaces Linux\n* Limites de CPU\n* Limites de memória\n* Home isolado\n* Rede restrita\n* `/tmp` privado\n\nCaso o sandbox não possa ser criado corretamente, o Wire falha de forma explícita ao invés de executar comandos diretamente no host.\n\n---\n\n## Anchor\n\nAnchor é o subsistema de memória persistente.\n\nArmazena:\n\n* Preferências duráveis\n* Conhecimento de projeto\n* Memórias explícitas\n* Metadados contextuais\n\nImplementado utilizando SQLite através de `rusqlite`.\n\n---\n\n## Tide\n\nTide mantém o histórico completo de execução.\n\nInclui:\n\n* Mensagens\n* Tool calls\n* Eventos\n* Checkpoints\n* Resultados de validação\n* Aprovações\n\n---\n\n## Loom\n\nLoom é responsável por construir o contexto enviado aos modelos.\n\nEle combina:\n\n* Estado atual da sessão\n* Memórias relevantes\n* Arquivos do projeto\n* Regras\n* Skills\n* MCP Context\n\n---\n\n# Fluxo de Execução\n\n```mermaid\nsequenceDiagram\n\nparticipant User\nparticipant Wire\nparticipant Loom\nparticipant Model\nparticipant Tools\n\nUser->>Wire: Prompt\n\nWire->>Loom: Build Context\nLoom-->>Wire: Context\n\nWire->>Model: Request\n\nModel-->>Wire: Tool Calls\n\nWire->>Tools: Execute\nTools-->>Wire: Results\n\nWire->>Model: Tool Results\n\nModel-->>Wire: Final Response\nWire-->>User: Output\n```\n\n---\n\n# Armazenamento Local\n\nPor padrão, os dados ficam em:\n\n```text\n~/.wirecli/\n```\n\nEstrutura:\n\n```text\n~/.wirecli/\n├── config/\n│   ├── config.toml\n│   ├── config.md\n│   └── secret.key\n│\n├── data/\n│   ├── history.sqlite3\n│   ├── anchor.sqlite3\n│   ├── memory_context.json\n│   ├── approvals.json\n│   ├── approval_audit.jsonl\n│   └── harness/\n│\n├── skills/\n├── boxes/\n└── hooks.json\n```\n\n---\n\n# Provedores de IA\n\nO Wire suporta múltiplos backends.\n\n## OpenRouter\n\nProvider padrão.\n\n```bash\nwirecli login\n```\n\nAutenticação via PKCE.\n\n---\n\n## API Keys\n\n| Provider  | Variável          |\n| --------- | ----------------- |\n| OpenAI    | OPENAI_API_KEY    |\n| Anthropic | ANTHROPIC_API_KEY |\n| Gemini    | GEMINI_API_KEY    |\n| DeepSeek  | DEEPSEEK_API_KEY  |\n| Mistral   | MISTRAL_API_KEY   |\n| Qwen      | DASHSCOPE_API_KEY |\n| xAI       | XAI_API_KEY       |\n| ZAI / GLM | ZAI_API_KEY       |\n\n---\n\n# Configuração de Provider Customizado\n\n```toml\nmodel_provider = \"local-router\"\nmodel = \"router-smart\"\n\n[model_provider.local-router]\nname = \"Local Router\"\nbase-url = \"http://localhost:3000/v1\"\nmethod = \"responses\"\nenv_key = \"LOCAL_ROUTER_API_KEY\"\n\nmodels = [\n  \"router-fast\",\n  \"router-smart\",\n  \"router-coder\"\n]\n```\n\n---\n\n# Sistema de Aprovações\n\nWire utiliza aprovação explícita para operações potencialmente perigosas.\n\n```mermaid\ngraph LR\n\nRequest[Command Request]\n\nRequest --> Check[Lattice Check]\n\nCheck --> Safe[Allowed]\nCheck --> Approval[Approval Required]\n\nApproval --> UserDecision[User Decision]\n\nUserDecision --> Allow[Allow]\nUserDecision --> Deny[Deny]\n```\n\nComandos que normalmente exigem aprovação:\n\n* Acesso à rede\n* Shells interativos\n* Alterações de permissões\n* Listeners persistentes\n* Execuções fora do Box\n\n---\n\n# Harness\n\nHarness fornece uma camada auditável sobre o loop do agente.\n\n## Executar\n\n```bash\nwirecli harness run \\\n  --prompt \"Refactor this project\"\n```\n\n## Replay\n\n```bash\nwirecli harness replay latest\n```\n\n## Inspecionar\n\n```bash\nwirecli harness inspect latest\n```\n\n## Diagnóstico\n\n```bash\nwirecli harness doctor\n```\n\n---\n\n# Verificação Automática\n\nApós modificações de arquivos, o Wire executa validações automaticamente.\n\nExemplos:\n\n```text\ncargo fmt --check\ncargo test\n\nnpm run lint\nnpm run test\nnpm run build\n\ngo test ./...\n\npython -m pytest\n```\n\nOs resultados são armazenados como parte da timeline da sessão.\n\n---\n\n# Recuperação de Falhas\n\nO runtime mantém checkpoints para:\n\n* Requests\n* Tool Calls\n* Streams\n* Resultados de validação\n* Erros de provider\n\n```mermaid\ngraph TD\n\nStart[Task]\n\nStart --> ToolCall\n\nToolCall --> Success\nToolCall --> Failure\n\nFailure --> Checkpoint\n\nCheckpoint --> Retry\nCheckpoint --> AlternativeRoute\n\nRetry --> Success\nAlternativeRoute --> Success\n```\n\nIsso permite continuar tarefas sem reiniciar o contexto completo.\n\n---\n\n# Subagentes\n\nWire inclui subagentes especializados.\n\n| Subagent            | Função                 |\n| ------------------- | ---------------------- |\n| planner             | Planejamento           |\n| codebase_researcher | Pesquisa de código     |\n| patcher             | Sugestão de alterações |\n| reviewer            | Revisão                |\n| test_runner         | Execução de testes     |\n| security_auditor    | Auditoria de segurança |\n\nSubagentes não expandem permissões e operam dentro dos mesmos limites definidos pelo Box e pelo Lattice.\n\n---\n\n# Skills\n\nSkills são workflows reutilizáveis armazenados localmente.\n\nEstrutura:\n\n```text\n~/.wirecli/skills/\n└── my-skill/\n    └── SKILL.md\n```\n\nO Wire pode sugerir automaticamente a criação de Skills quando identifica padrões recorrentes de uso.\n\n---\n\n# Context Management\n\nWire implementa três mecanismos principais para gerenciamento de contexto.\n\n## AFUP\n\nAdaptive Framework for User Patterns.\n\nAprende padrões recorrentes de uso para melhorar:\n\n* Estilo de resposta\n* Estratégias de validação\n* Seleção de ferramentas\n* Fluxos de trabalho\n\n---\n\n## ACC\n\nAutomatic Context Compaction.\n\nCompacta sessões extensas antes que o limite de contexto seja atingido.\n\n---\n\n## FCM\n\nFlash Cache Memory.\n\nCria um cache local:\n\n```text\n.wci/mm.fcm\n```\n\nUtilizado para:\n\n* Recontextualização rápida\n* Resumos ACC\n* Índices de projeto\n* Sinais de memória\n\n---\n\n# Segurança\n\n## Normal\n\nOperações limitadas ao Box.\n\n## Guardian\n\nRevisão adicional por modelo configurado.\n\n## Full Access\n\nSem restrições.\n\nUso não recomendado.\n\n---\n\n# Build\n\nCompilar localmente:\n\n```bash\ncargo build\n```\n\nBuild de release:\n\n```bash\ncargo build --release\n```\n\n---\n\n# Status\n\n```bash\nwirecli status\n```\n\nExibe:\n\n* Modelo ativo\n* Janela de contexto\n* Uso estimado\n* Contexto restante\n* Estado da sessão\n* Configuração de provider\n\n---\n\n# Licença\n\nConsulte o arquivo `LICENSE` do repositório para informações sobre licenciamento.\n","readmeFilename":"README.md","_rev":"1-f628f2825cfed270f7f9a592e57155a0"}