Documentation
Using the agent
free-pi runs the pi coding agent. Describe what you want built, fixed, or explained, and the agent works in your current directory.
Prompting
Type a request at the prompt and press Enter, the same way you would with any coding assistant. For example: "find why the login test fails and fix it", or "explain what src/queue.ts does". The agent reads and searches your project, proposes changes, and edits files.
Run free-pi-cli from the project directory you want it to work in.
What the agent can do
The agent is limited to this set of built-in tools:
read: Read a filewrite: Create or overwrite a fileedit: Change part of a filebash: Run a shell commandgrep: Search file contentsfind: Find files by namels: List a directory
Because bash, write, and edit can change your machine, run free-pi in a project you are comfortable letting it modify, and keep your work under version control.
It also has two free-pi tools that take no arguments:
free_pi_usagereports your usage. It is the same report as the/usagecommand.free_pi_docsreturns a short built-in guide, so you can ask the agent questions about free-pi itself, such as how the allowance or the commands work.
free-pi uses a fixed tool list. If a tool outside it is ever offered to the model, the CLI blocks the call and reports the occurrence to the server.
Keys inside the terminal
The startup screen lists the main key hints:
Escinterrupts the agent while it is working.Ctrl+Cclears the input or exits./opens the list of commands. See Commands and flags.!runs a shell command yourself, typed after the!.Ctrl+Oshows a one-line list of key hints.
Sessions and resuming
The server allows one active CLI session per account at a time. If a previous session is stuck, for example because the terminal was killed or you moved to another machine, run /close-other-session to clear it.
Each run of npx free-pi-cli starts a fresh session.
Switching models
Use /model to open the model picker. See Models and limits.