npm.io
0.1.4 • Published yesterdayCLI

rivale

Licence
UNLICENSED
Version
0.1.4
Deps
7
Size
323 kB
Vulns
0
Weekly
0

Rivale

Agente autônomo de código no terminal — o desafiante open source do seu editor.

Multi-agente · memória de longo prazo · MCP (local e remoto) · ferramentas de código de verdade · segurança em primeiro lugar.


O que é

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.

Funciona com múltiplos provedores de LLM: Groq, OpenAI, Gemini e DeepSeek.

Destaques

  • 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.
  • 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).
  • 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.
  • Memória de verdade — janela de contexto por tokens com auto-compactação, indexação do codebase e busca semântica de código.
  • Teto de custo por run — corta o loop antes de queimar dinheiro (AGENT_MAX_USD_PER_RUN).
  • 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.
  • UX de terminal moderna — streaming, menção de arquivos com @, telas de /config, /mcp, /compact, atalhos configuráveis.
  • Extensão para VS Code — chat no editor, aprovação in-chat, drag-and-drop de arquivos, timeline de atividade.

Instalação

npm install -g rivale

Requer Node.js ≥ 18. (Git é necessário para as ferramentas de versionamento.)

Começando

rivale                        # abre o chat interativo
rivale "crie um scraper em python para a home do HN"   # modo one-shot
rivale --stream "explique este repositório"

Dentro do chat:

Comando O quê
@arquivo menciona um arquivo/pasta pro contexto
/config provider, modelo, API key (vai pro cofre criptografado)
/mcp conecta/gerencia servidores MCP
/compact resume a conversa pra liberar contexto
/help lista tudo

Chaves de API (cofre criptografado )

Suas chaves ficam cifradas em ~/.rivale/secrets.json (AES-256-GCM) — nunca em texto puro.

rivale keys set GROQ_API_KEY        # digita escondido (não vaza no histórico do shell)
rivale keys list                    # mostra mascarado
rivale keys import-env              # migra chaves do seu .env atual pro cofre

Você também pode usar variáveis de ambiente ou ~/.rivale/.env (as chaves reais do ambiente sempre têm prioridade):

GROQ_API_KEY=...
OPENAI_API_KEY=...
GEMINI_API_KEY=...
DEEPSEEK_API_KEY=...

MCP (Model Context Protocol)

Declare servidores em .rivale/mcp.json — stdio (local) ou remoto (URL):

{
  "mcpServers": {
    "playwright": { "command": "npx", "args": ["-y", "@playwright/mcp@latest"] },
    "context7":   { "command": "npx", "args": ["-y", "@upstash/context7-mcp"] },
    "remoto": {
      "url": "https://seu-endpoint.exemplo.com/mcp",
      "type": "http",
      "headers": { "Authorization": "Bearer SEU_TOKEN" }
    }
  }
}

Controle de custo

AGENT_MAX_USD_PER_RUN=0.50      # aborta a run ao atingir US$ 0,50 (0 = ilimitado)
AGENT_MAX_TOKENS_PER_RUN=200000 # teto por tokens

Segurança

  • Cofre de chaves criptografado (AES-256-GCM), fora do .env.
  • Guard de comandos — bloqueia egress de rede suspeito, escalada de privilégio e execução dinâmica, mesmo com aprovação desligada.
  • Modo Plan — bloqueia escrita/comandos perigosos até você aprovar o plano.
  • Hooks PreToolUse — intercepte/valide qualquer chamada de ferramenta.
  • SSRF guard — nega requisições a IPs privados/metadata de cloud.
  • Aprovação humana por ferramenta, com níveis configuráveis.

Requisitos

  • Node.js ≥ 18
  • Git (para as ferramentas de versionamento)
  • Chave de API de pelo menos um provedor

2026 Rivale — Todos os direitos reservados. Software proprietário distribuído apenas na forma compilada. Veja LICENSE.