# oh-my-pi: AI Coding Agent for the Terminal

# oh-my-pi: AI Coding Agent for the Terminal

Source: https://github.com/can1357/oh-my-pi
Fetched: 2026-05-06

## Overview

**oh-my-pi** is an AI-powered coding agent designed for terminal-first workflows. It's a fork of [pi-mono](https://github.com/badlogic/pi-mono) by Mario Zechner, extended with practical built-in tools and features for professional development work.

## Key Statistics
- **Stars:** 4,000
- **Language:** TypeScript (85.6%), Rust (11.1%), Python (2.1%)
- **License:** MIT
- **Author:** Can Bölük (fork maintainer); Mario Zechner (original)
- **Latest Release:** v14.7.0 (May 5, 2026)

## Installation

### Via Bun (Recommended)
Requires Bun ≥ 1.3.7:
```bash
bun install -g @oh-my-pi/pi-coding-agent
```

### Via Installer Script
**Linux/macOS:**
```bash
curl -fsSL https://raw.githubusercontent.com/can1357/oh-my-pi/main/scripts/install.sh | sh
```

**Windows (PowerShell):**
```powershell
irm https://raw.githubusercontent.com/can1357/oh-my-pi/main/scripts/install.ps1 | iex
```

### Alternative Methods
- **mise:** `mise use -g github:can1357/oh-my-pi`
- **Manual:** Download from [GitHub Releases](https://github.com/can1357/oh-my-pi/releases/latest)

## What It Provides

### Core Features
- **Hash-anchored edits:** Content-aware file modifications without string matching errors
- **LSP integration:** 40+ language support with diagnostics and formatting
- **Python execution:** IPython kernel with persistent sessions and rich output
- **Git commit tool:** AI-powered conventional commits with automatic categorization
- **Code review:** Interactive structured findings with priority levels
- **Browser automation:** Headless Puppeteer with stealth plugins
- **Web search:** Multi-provider integration (Exa, Brave, Jina, etc.)
- **SSH tool:** Remote command execution with persistent connections
- **Task/subagent system:** Parallel execution with specialized agents

### Configuration & Extensibility
- **Custom slash commands:** TypeScript-based commands at `~/.omp/agent/commands/`
- **Themes:** 65+ built-in themes (Catppuccin, Dracula, Nord, etc.)
- **Skills:** Capability packages discoverable from multiple AI tool formats
- **Hooks:** Lifecycle event subscriptions for tool interception
- **MCP support:** Model Context Protocol for external tool integration
- **Multi-model support:** Role-based routing (default, smol, slow, plan, commit)
- **Universal config discovery:** Reads from Claude Code, Cursor, Windsurf, Gemini, Cline

### Session Management
- Automatic JSONL-based persistence
- Tree-based branching and navigation
- Context compaction for long conversations
- Autonomous memory extraction between sessions

## Usage

### Slash Commands
- `/plan` — Toggle planning mode
- `/model` — Select model roles
- `/review` — Interactive code review
- `/extensions` — Manage discovered configurations
- `/memory` — Manage autonomous memory
- `/export [path]` — Export to HTML

### Keyboard Shortcuts
- `Ctrl+R` — Search prompt history
- `Ctrl+G` — Edit in external editor
- `Ctrl+T` — Toggle todo list
- `Shift+Tab` — Cycle thinking levels
- `Shift+Enter` — Multi-line input

## Philosophy

"Keep interactive terminal-first UX for real coding work. Include practical built-ins (tools, sessions, branching, subagents, extensibility). Make advanced behavior configurable rather than hidden."

The project maintains focus on actual developer workflows by prioritizing real-time terminal interaction, bundling essential tools (not requiring external setup), and allowing teams to configure behaviors through accessible settings rather than hidden defaults.

## License & Attribution
MIT License © 2025 Mario Zechner, 2025-2026 Can Bölük
