Harness de agente de terminal eficiente em RAM para programação, cibersegurança e automação.
Leia, construa, depure e revise código com um agente que trabalha ao seu lado.
Use as mesmas ferramentas para pesquisa em cibersegurança, investigação técnica e automação do dia a dia.
Início rápido · Recursos · Provedores de modelos · Comandos e atalhos · Apoie o projeto · Agradecimentos
Alter Zero é um agente de programação com IA de código aberto escrito em Rust. Ele trabalha diretamente no seu projeto: lendo arquivos, fazendo edições, executando comandos e verificando resultados enquanto você acompanha no seu terminal. A programação é o seu foco, com a flexibilidade para investigar questões de segurança, explorar sistemas desconhecidos e automatizar tarefas usando suas ferramentas existentes.
| O que você recebe | Por que isso importa |
|---|---|
| Trabalho que você pode acompanhar | Saída de comandos ao vivo, diffs legíveis e uma lista de tarefas tornam o progresso fácil de inspecionar. |
| Controle sobre a execução | Escolha um modo de permissão, revise as alterações propostas e direcione o agente enquanto ele trabalha. |
| Sua escolha de modelo | Conecte-se com uma assinatura compatível ou chave de API, ou execute modelos locais com Ollama. |
| Espaço para estender | Adicione subagentes especializados, habilidades reutilizáveis, hooks de ciclo de vida e servidores MCP para se adequar ao seu fluxo de trabalho. |
| Uma experiência nativa de terminal | Um único binário Rust com sessões persistentes, imagens inline e controles por teclado. |
Alter Zero roda em Linux (x86_64, arm64) e macOS (Intel, Apple silicon) em um terminal moderno.
Uma linha no Linux ou macOS:
curl -fsSL https://raw.githubusercontent.com/linuztx/alter-zero/main/install.sh | sh
Ele escolhe a build para a sua máquina, verifica seu SHA-256 contra o checksum publicado com a release, instala alter-zero em ~/.local/bin e avisa se esse diretório não estiver no seu PATH.
Defina ALTER_ZERO_INSTALL_DIR para instalar em outro lugar, ou ALTER_ZERO_VERSION=vX.Y.Z para fixar uma release. CHANGELOG.md registra o que mudou entre versões.
ALTER_ZERO_INSTALL_DIR="$HOME/bin" ALTER_ZERO_VERSION=v0.1.0 \
sh -c "$(curl -fsSL https://raw.githubusercontent.com/linuztx/alter-zero/main/install.sh)"
Para uma instalação manual, as notas de cada release listam todos os arquivos com seu SHA-256, para que você possa baixar, verificar e extrair um manualmente.
docker/ constrói uma pequena imagem headless do Kali Rolling em torno da última release, com um conjunto funcional de ferramentas de linha de comando, para Docker ou Podman. Um comando a constrói e inicia um contêiner em uma pasta sua:
docker/build.sh ~/projects/site # add --engine podman for Podman
docker exec -it -e TERM -e COLORTERM -e TERM_PROGRAM -e KITTY_WINDOW_ID -e TMUX \
alter-zero-kali alter-zero
Fora de um multiplexador, as flags -e entregam a identidade do seu terminal para que
as imagens sejam renderizadas como imagens reais em vez de meio-blocos. O
guia do contêiner cobre espaços de trabalho, as portas publicadas,
colar imagens e adicionar ferramentas.
Dentro do tmux, habilite allow-passthrough no host e selecione explicitamente o
protocolo de imagem do terminal externo para aquele docker exec; as
instruções do tmux incluem um
exemplo de Podman pronto para executar.
Você precisa do rustup e de um compilador C. O repositório fixa o toolchain Rust, que o rustup instala automaticamente.
git clone https://github.com/linuztx/alter-zero.git
cd alter-zero
cargo install --path .
alter-zero
Sem um provedor configurado, Alter Zero abre uma demonstração offline com turnos roteirizados para que você possa explorar a interface. Para trabalhar em suas próprias tarefas:
/login e escolha uma assinatura compatível, provedor de API ou servidor de modelo local. Siga as instruções para conectar./model para escolher um modelo. Alter Zero lembra sua seleção para este diretório.Logins adicionados através de /login são salvos em ~/.alter-zero/.env, fora do seu repositório. Use / para navegar pelos comandos ou ? em um compositor vazio para ver os atalhos.
Você também pode selecionar seu provedor antes de iniciar. Defina a variável da chave de API e o ID do provedor, depois inicie o aplicativo. Por exemplo, com OpenRouter:
export OPENROUTER_API_KEY="your-api-key"
export ALTER_ZERO_PROVIDER=openrouter
alter-zero
Escolha um modelo com /model, ou defina ALTER_ZERO_MODEL com o ID do modelo antes de iniciar.