guides / getting-started

Getting started with pi

Install the agent, pick a model, and learn the handful of commands you need.

What is pi?

pi is a minimal, open-source coding agent that runs in your terminal. Its whole philosophy is extensibility over built-ins: the core stays small, and everything else — new tools, UI, workflows, colors — comes from extensions, skills, prompt templates and themes that anyone can write and share. That’s what this directory indexes.

Install

The quickest path is the official installer:

curl -fsSL https://pi.dev/install.sh | sh

Or via a package manager (note --ignore-scripts — a good habit for any global install):

npm install -g --ignore-scripts @earendil-works/pi-coding-agent

On Windows:

powershell -c "irm https://pi.dev/install.ps1 | iex"

Then run it in any project:

pi

pi supports models from Anthropic, OpenAI, Google and more (including local models through community provider extensions). Set the API key for your provider and pick a model with /settings.

The commands you actually need

CommandWhat it does
/settingsModel, theme, and configuration
/reloadHot-reload extensions, themes and skills
/skill:nameInvoke an installed skill explicitly
pi install <src>Install a package (npm, git or local path)
pi listShow installed packages
pi update --allUpdate every installed package
pi remove <src>Uninstall a package
pi update --selfUpdate pi itself

Install your first packages

A solid starter kit, one command each:

pi install npm:pi-subagents        # delegate work to parallel subagents
pi install npm:pi-web-access       # web search, fetching, PDFs, YouTube
pi install npm:pi-lens             # LSP + linter feedback for the agent
pi install npm:pi-powerline-footer # a proper status bar

Global installs land in ~/.pi/agent/; add -l to install into the current project’s .pi/ directory instead — handy for repo-specific tooling committed with the code.

Where things live

~/.pi/agent/
├── extensions/   # auto-discovered *.ts / *.js extensions
├── skills/       # folders with SKILL.md
├── prompts/      # *.md prompt templates
├── themes/       # *.json themes
├── npm/          # packages installed from npm
└── git/          # packages installed from git

Everything hot-reloads with /reload, so iterate freely.

A note on safety

Packages run with your full system permissions. Extensions execute arbitrary code; skills can instruct the model to run anything. Read the source of what you install, prefer pinned versions (pi install npm:pkg@1.2.3), and treat unknown packages the way you’d treat any script from the internet.

Next: browse the directory or build your own extension.

📖 This is a community quickstart. The canonical reference is the official pi documentation — always trust it over us if the two disagree.