Pi 1.0 é a primeira versão estável do Pi, um agente de codificação de terminal de código aberto da Earendil. Ele foi enviado em 1º de outubro de 2026 e este guia de configuração do agente de codificação Pi 1.0 leva você desde a instalação até um primeiro servidor MCP e um primeiro script de modo de código. Cada comando abaixo vem do documentação oficial do Pi.
Como configurar o Pi 1.0 e configurar servidores MCP
- Instalar Pi com
npm install -g --ignore-scripts @earendil-works/pi-coding-agent(Node.js 22.19 ou mais recente) ou opi.devscript do instalador. - Verificar a instalação com
pi --versionentão comecepiem uma pasta do projeto. - Conecte-se para um fornecedor modelo com
/login. - Adicionar um servidor MCP com
pi mcp adde verifique compi mcp list. - Recarregar com
/reloade deixe o modelo chamar o servidor de umcodemoderoteiro.
Índice
O que é Pi 1.0?
Pi se descreve como um equipamento mínimo de agente. Ele é executado no seu terminal, funciona nos arquivos da sua pasta atual e ignora recursos como subagentes e modo de plano. Em vez disso, você o estende com extensões, habilidades, modelos de prompt e temas. Suporta mais de 15 fornecedores, incluindo Anthropic, OpenAI, Google e Ollama para modelos locais.
A versão 1.0 alterou alguns padrões e adicionou recursos importantes para este guia. De acordo com o registro de alteraçõesa UI do terminal agora roda em tela cheia por padrão (definir tuiMode para "regular" para manter a rolagem normal), o codemode usa cerca de 40% menos tokens de prompt e o manuseio do MCP OAuth foi reforçado.
Pi não é o chatbot Pi do Inflection AI. O agente de codificação mora em pi.dev e no earendil-works/pi repositório no GitHub.
Instale Pi 1.0
Pi é enviado como um pacote npm. Os documentos recomendam --ignore-scripts portanto, os scripts do ciclo de vida de dependência não são executados durante a instalação e o Pi não precisa deles. Esta rota precisa do Node.js 22.19 ou mais recente:
npm install -g --ignore-scripts @earendil-works/pi-coding-agent
pi --version
No macOS ou Linux, você pode usar o script do instalador. O instalador fixa todas as dependências, enquanto o npm não fixa as transitivas. Como acontece com qualquer script canalizado para um shell, baixe-o e leia-o primeiro se quiser inspecionar o que ele faz:
curl -fsSL https://pi.dev/install.sh -o install.sh
less install.sh
sh install.sh
Em seguida, mude para uma pasta de projeto e inicie o Pi:
cd /path/to/project
pi
Pi usa a pasta de trabalho para encontrar arquivos de projeto, instruções e configuração, e para agrupar sessões salvas. Retome a última sessão para uma pasta com pi --continue.
Conecte um modelo
Pi precisa de acesso a um modelo por meio de um provedor. Dentro do Pi, corra /loginescolha um provedor e siga as instruções para usar uma assinatura ou armazenar uma chave de API. Correr /model depois para escolher um modelo diferente. O documentação de modelos abrange autenticação de variável de ambiente, modelos locais e endpoints personalizados.
Adicione um servidor MCP com pi mcp add
Pi se conecta a Protocolo de Contexto do Modelo servidores sobre stdio ou HTTP streamable. Adicione um servidor stdio local, verifique a conexão e inicie o Pi:
pi mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem .
pi mcp list
pi
Tudo depois -- é o comando do servidor e seus argumentos. pi mcp add apenas grava a configuração e não conecta. pi mcp list conecta-se a todos os servidores habilitados e imprime seu estado, ferramentas e erros. Ele sai com status 1 quando uma entrada é inválida ou um servidor habilitado não está conectado, então você pode usá-lo em scripts.
Para um servidor remoto, passe uma URL e, se precisar de um token, o nome de uma variável de ambiente que o contém:
pi mcp add docs --url https://example.com/mcp --bearer-token-env-var DOCS_TOKEN
pi mcp list
Onde reside a configuração
Por padrão, os comandos gravam servidores em nível de usuário para ~/.pi/agent/mcp.json. Adicionar --local (ou -l) para gravar o arquivo do projeto .pi/mcp.json em vez de. Pi lê os servidores do projeto somente depois que você confia no projeto. Uma entrada de projeto substitui uma entrada de nível de usuário com o mesmo nome. O formato do arquivo corresponde a outros clientes MCP:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ("-y", "@modelcontextprotocol/server-filesystem", ".")
},
"docs": {
"url": "https://example.com/mcp",
"headers": { "Authorization": "Bearer ${DOCS_TOKEN}" },
"description": "Search and read the product documentation"
}
}
}
Valores em env e headers pode fazer referência a variáveis de ambiente como ${DOCS_TOKEN}então você não precisa armazenar um segredo no arquivo. Mantenha os servidores com credenciais no arquivo de nível de usuário e use o arquivo de projeto somente para os servidores exigidos pelo projeto. Depois de alterar um servidor fora de uma sessão, execute /reload dentro de Pi. Usar /mcp para inspecionar conexões, entrar, reconectar ou desabilitar um servidor.
Servidores que usam OAuth
Servidores remotos que usam OAuth não precisam de credenciais no mcp.json. Quando o servidor rejeitar uma conexão não autenticada, execute pi mcp login ou /mcp login . Pi abre a página de autorização, armazena tokens em ~/.pi/agent/mcp-auth.jsone os atualiza quando expiram. pi mcp logout exclui as credenciais armazenadas.
Como funciona o modo de código
Codemode é uma ferramenta, não um modo separado. Ele permite que o modelo escreva um script JavaScript que chama outras ferramentas do Pi, incluindo ferramentas MCP. Somente a saída do script volta para o modelo, portanto, um script pode executar diversas chamadas em paralelo e filtrar grandes resultados antes que o modelo os leia. O script é executado em uma sandbox QuickJS com nível superior await. A sandbox não possui APIs de Node, sistema de arquivos, rede ou temporizadores, portanto, um script chega ao mundo externo apenas por meio de ferramentas.
Você não precisa ativá-lo para o MCP. Pi ativa codemode quando um servidor com o padrão codemode a exposição conecta. As ferramentas MCP são então nomeadas mcp__e os scripts os chamam como tools.mcp__. Para manter o codemode ativo sem qualquer servidor MCP, adicione isto a ~/.pi/agent/settings.json:
{
"defaultTools": ("+codemode")
}
Um script pode começar com uma linha de opções que limita a saída e define um prazo rígido:
Scripts encontram ferramentas com searchTools(), describeTool()ou filtrando ALL_TOOLS. As chamadas de ferramentas são reais: se um script falhar parcialmente, as chamadas já feitas não serão desfeitas.
Controle como as ferramentas chegam ao modelo
Cada servidor possui um exposure contexto. O padrão, codemodetorna as ferramentas chamáveis a partir de scripts sem declará-las ao modelo. deferred carrega uma ferramenta somente depois tool_search encontra. direct declara-o como uma ferramenta integrada, adequada a um pequeno conjunto que você usa constantemente. hidden torna inalcançável. Você pode substituir a configuração de ferramentas individuais com toolExposure:
{
"mcpServers": {
"github": {
"url": "https://api.githubcopilot.com/mcp/",
"exposure": "deferred",
"toolExposure": {
"search_code": "direct",
"delete_*": "hidden"
}
}
}
}
Segurança e solução de problemas
Pi mostra cada arquivo lido, pesquisa, comando e edição que ele faz, mas não pergunta antes de cada chamada de ferramenta. Revise as alterações quando terminar e use o controle de versão para trabalhos importantes. Para trabalhos não confiáveis ou autônomos, execute Pi em um contêiner ou outra sandbox. O documentação de segurança explica a confiança do projeto e o que Pi pode acessar.
- Um servidor está ausente ou falhando: correr
pi mcp list./mcpdentro de uma sessão mostra o erro de conexão completo e o final do stderr de um servidor stdio com falha. - As alterações de configuração não aparecem: correr
/reloaddepois de adicionar, remover ou editar um servidor fora da sessão. - Um servidor de projeto é ignorado: projeto
.pi/mcp.jsonos arquivos são somente leitura para projetos confiáveis. - Registros do servidor: notificações de registro são anexadas a
~/.pi/agent/mcp.log. - Entradas inválidas: Pi os reporta e os ignora sem bloquear outros servidores. Os nomes dos servidores podem conter apenas letras, dígitos,
_e-.
O que vem a seguir
A partir daqui, adicione mais servidores MCPescreva um AGENTS.md com instruções que Pi deve seguir em uma pasta ou experimente habilidades e modelos de prompt. Navegue pelo site oficial Repositório de servidores MCP para servidores prontos e verifique o README de cada um antes de conceder acesso aos seus arquivos ou contas.
Source link




