rivale 0.1.3

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 (4) hide show
  1. package/LICENSE +13 -0
  2. package/README.md +121 -0
  3. package/dist/cli.js +519 -0
  4. package/package.json +53 -0
package/LICENSE ADDED
@@ -0,0 +1,13 @@
1
+ Copyright (c) 2026 Rivale. Todos os direitos reservados. / All Rights Reserved.
2
+
3
+ Este software é proprietário e confidencial. É distribuído apenas na forma
4
+ compilada/minificada (dist/cli.js). Nenhuma permissão é concedida para copiar,
5
+ modificar, redistribuir, sublicenciar, fazer engenharia reversa, descompilar ou
6
+ criar obras derivadas do código-fonte ou do artefato distribuído, no todo ou em
7
+ parte, sem autorização prévia por escrito do detentor dos direitos autorais.
8
+
9
+ This software is proprietary and confidential. It is distributed solely in
10
+ compiled/minified form (dist/cli.js). No permission is granted to copy, modify,
11
+ redistribute, sublicense, reverse engineer, decompile, or create derivative
12
+ works from the source code or distributed artifact, in whole or in part,
13
+ without the prior written consent of the copyright holder.
package/README.md ADDED
@@ -0,0 +1,121 @@
1
+ <div align="center">
2
+
3
+ # ⚔️ Rivale
4
+
5
+ **Agente autônomo de código no terminal — o desafiante open source do seu editor.**
6
+
7
+ Multi-agente · memória de longo prazo · MCP (local e remoto) · ferramentas de código de verdade · segurança em primeiro lugar.
8
+
9
+ </div>
10
+
11
+ ---
12
+
13
+ ## O que é
14
+
15
+ Rivale é um agente de programação que vive no seu terminal (e no VS Code). Ele lê, escreve e refatora código, roda comandos, pesquisa na web, dirige um browser, versiona com git e coordena **vários subagentes especializados** — tudo com controle de custo, aprovação humana e proteções de segurança embutidas.
16
+
17
+ Funciona com **múltiplos provedores de LLM**: Groq, OpenAI, Gemini e DeepSeek.
18
+
19
+ ## Destaques
20
+
21
+ - 🧠 **Multi-agente real** — modo Coordenador que delega para subagentes especializados (coder, security, tester, reviewer, researcher), execução em paralelo e *swarm debate* pra decisões difíceis.
22
+ - 🔌 **MCP local e remoto** — conecta qualquer servidor Model Context Protocol via **stdio** (`npx`/`uvx`/`python`) ou **HTTP streamable / SSE** (endpoints remotos com auth por header).
23
+ - 🗂️ **Ferramentas de código sérias** — ler/editar/criar arquivos, `grep`/`glob`, busca por **AST**, integração **LSP**, **git nativo** (status/diff/log/commit), tarefas em background, `run_command`, browser (Playwright), SQLite e mais.
24
+ - 🧵 **Memória de verdade** — janela de contexto por tokens com auto-compactação, indexação do codebase e **busca semântica de código**.
25
+ - 💸 **Teto de custo por run** — corta o loop antes de queimar dinheiro (`AGENT_MAX_USD_PER_RUN`).
26
+ - 🔒 **Segurança em primeiro lugar** — cofre de chaves criptografado, guard de comandos, modo plan, hooks PreToolUse, proteção contra SSRF e auto-proteção do próprio código.
27
+ - ⌨️ **UX de terminal moderna** — streaming, menção de arquivos com `@`, telas de `/config`, `/mcp`, `/compact`, atalhos configuráveis.
28
+ - 🧩 **Extensão para VS Code** — chat no editor, aprovação in-chat, drag-and-drop de arquivos, timeline de atividade.
29
+
30
+ ## Instalação
31
+
32
+ ```bash
33
+ npm install -g rivale
34
+ ```
35
+
36
+ Requer **Node.js ≥ 18**. (Git é necessário para as ferramentas de versionamento.)
37
+
38
+ ## Começando
39
+
40
+ ```bash
41
+ rivale # abre o chat interativo
42
+ rivale "crie um scraper em python para a home do HN" # modo one-shot
43
+ rivale --stream "explique este repositório"
44
+ ```
45
+
46
+ Dentro do chat:
47
+
48
+ | Comando | O quê |
49
+ |---|---|
50
+ | `@arquivo` | menciona um arquivo/pasta pro contexto |
51
+ | `/config` | provider, modelo, API key (vai pro **cofre criptografado**) |
52
+ | `/mcp` | conecta/gerencia servidores MCP |
53
+ | `/compact` | resume a conversa pra liberar contexto |
54
+ | `/help` | lista tudo |
55
+
56
+ ## Chaves de API (cofre criptografado 🔒)
57
+
58
+ Suas chaves ficam cifradas em `~/.rivale/secrets.json` (AES-256-GCM) — **nunca** em texto puro.
59
+
60
+ ```bash
61
+ rivale keys set GROQ_API_KEY # digita escondido (não vaza no histórico do shell)
62
+ rivale keys list # mostra mascarado
63
+ rivale keys import-env # migra chaves do seu .env atual pro cofre
64
+ ```
65
+
66
+ Você também pode usar variáveis de ambiente ou `~/.rivale/.env` (as chaves reais do ambiente sempre têm prioridade):
67
+
68
+ ```
69
+ GROQ_API_KEY=...
70
+ OPENAI_API_KEY=...
71
+ GEMINI_API_KEY=...
72
+ DEEPSEEK_API_KEY=...
73
+ ```
74
+
75
+ ## MCP (Model Context Protocol)
76
+
77
+ Declare servidores em `.rivale/mcp.json` — stdio (local) ou remoto (URL):
78
+
79
+ ```json
80
+ {
81
+ "mcpServers": {
82
+ "playwright": { "command": "npx", "args": ["-y", "@playwright/mcp@latest"] },
83
+ "context7": { "command": "npx", "args": ["-y", "@upstash/context7-mcp"] },
84
+ "remoto": {
85
+ "url": "https://seu-endpoint.exemplo.com/mcp",
86
+ "type": "http",
87
+ "headers": { "Authorization": "Bearer SEU_TOKEN" }
88
+ }
89
+ }
90
+ }
91
+ ```
92
+
93
+ ## Controle de custo
94
+
95
+ ```
96
+ AGENT_MAX_USD_PER_RUN=0.50 # aborta a run ao atingir US$ 0,50 (0 = ilimitado)
97
+ AGENT_MAX_TOKENS_PER_RUN=200000 # teto por tokens
98
+ ```
99
+
100
+ ## Segurança
101
+
102
+ - **Cofre de chaves** criptografado (AES-256-GCM), fora do `.env`.
103
+ - **Guard de comandos** — bloqueia egress de rede suspeito, escalada de privilégio e execução dinâmica, mesmo com aprovação desligada.
104
+ - **Modo Plan** — bloqueia escrita/comandos perigosos até você aprovar o plano.
105
+ - **Hooks PreToolUse** — intercepte/valide qualquer chamada de ferramenta.
106
+ - **SSRF guard** — nega requisições a IPs privados/metadata de cloud.
107
+ - **Aprovação humana** por ferramenta, com níveis configuráveis.
108
+
109
+ ## Requisitos
110
+
111
+ - Node.js ≥ 18
112
+ - Git (para as ferramentas de versionamento)
113
+ - Chave de API de pelo menos um provedor
114
+
115
+ ---
116
+
117
+ <div align="center">
118
+
119
+ © 2026 Rivale — Todos os direitos reservados. Software proprietário distribuído apenas na forma compilada. Veja [LICENSE](LICENSE).
120
+
121
+ </div>