can1357

oh-my-pi: Coding Agent Built on Mario Zechner’s Pi

oh-my-pi is a terminal-first coding agent and IDE-aware fork of Mario Zechner’s Pi, with built-in code tools, subagents, and editor integration. It runs on macOS, Linux, and Windows, and can also be embedded as a TypeScript SDK.

Stars
36.2k
Forks
4k
Last commit
today
Contributors
100+
Releases, 12 months
100+

Our take

Activeregular commits and releases

Health score

79/100

How it is scored
Activity
90
Community
80
Issues
84
Pull requests
63
  • Releases more often than 93% of the projects we track
  • Merges more pull requests than 91% of the projects we track
  • Closes issues faster than 82% of the projects we track

Active development, frequent releases, broad contributor participation, and quick PR merges make omp a fast-moving option for developers who want an unusually integrated coding-agent workflow.

Good fit if

  • You want a terminal-first coding agent built on Pi with LSP, debugger, and code-execution tools integrated into its workflow.
  • You value configurable providers, subagents, and multiple integration surfaces, including an SDK and editor protocol.
  • You can work with its TypeScript and Rust stack and are comfortable adopting a project that is actively evolving.

Look elsewhere if

  • You need a minimal agent with a narrow toolset rather than a broad, configurable coding environment.
  • Your deployment cannot accommodate the project’s Rust native components or its Bun-oriented installation and development workflow.
  • You need a stable, fixed feature surface and do not want to track an actively developed project.
All health signals
Last commit2026-10-21 (today)
Commits, last 90 days100+
Releases, last 12 months100+ (latest v18.12.6, 2026-10-21)
Contributors100+ (top contributor: 48% of commits)
Issues closed, last 90 days12+ (typically closed in 0 days)
Pull requests merged, last 90 days86 (typically merged in 1 day)
Project age10 months

Checked on 2026-10-21 with the GitHub API.

Overview

oh-my-pi (omp) is a terminal-first coding agent built as a coding-focused fork of Pi by Mario Zechner. It aims to give the agent IDE-like capabilities, including language-server operations, debugging, code execution, and structured file editing, rather than relying only on shell commands and text generation.

The project combines a TypeScript agent and CLI with a substantial Rust native core. It supports macOS, Linux, and Windows, and offers interactive terminal, one-shot, SDK, RPC, and editor-facing ACP entry points. Its breadth makes it most relevant to developers who want an extensible, model-flexible agent for real repository work.

Key Features

  • IDE integration through language-server operations for diagnostics, navigation, renames, and code actions.
  • Debugging through the Debug Adapter Protocol, with support for breakpoints, stepping, and inspecting variables.
  • Persistent Python and JavaScript execution, with the ability to call agent tools from the execution environment.
  • Parallel subagents, including isolated worktrees and structured results.
  • A native tool surface for reading, searching, editing, and working with files, URLs, and repository-related internal paths.
  • Multiple interfaces: terminal UI, one-shot prompts, a Node/TypeScript SDK, stdio RPC, and Agent Client Protocol for editors.
  • Broad model and provider routing, with configurable roles, custom OpenAI-compatible providers, and fallback chains.
  • Cross-platform native components and an embedded shell intended to avoid external-process calls for many common operations.

Use Cases

  • A developer wants a terminal-based agent that can use LSP features and make safer, IDE-aware changes across a codebase.
  • A team needs an agent to investigate bugs with a real debugger instead of relying only on added print statements.
  • A TypeScript application wants to embed an agent session through the project’s SDK or control one over RPC.
  • A developer wants to split independent repository tasks among subagents and review their structured findings.
  • A user needs one coding-agent workflow across macOS, Linux, and Windows, with configurable model providers.

What you need

Detected in the repository

  • Node.js (from package.json)
  • Rust (from Cargo.toml)
  • A Dockerfile, so it can run in a container
  • Automated checks on GitHub Actions

License in plain words

MITpermissive

  • Commercial use: yes
  • Modify and redistribute: yes
  • You must keep: the copyright and license notice
  • Share your changes: no

A summary, not legal advice: the LICENSE file is what applies.

Getting Started

Install on macOS or Linux with:

curl -fsSL https://omp.sh/install | sh

For Windows, Bun, Homebrew, Nix, pinned versions, and configuration details, see the README.

Alternatives

  • openinterpreter: Open Interpreter is Rust-based and targets low-cost models, with support for multiple agent harnesses and ACP-compatible editors.
  • tau: Tau is a Python teaching-focused port of Pi, while oh-my-pi adds IDE integration, subagents, and built-in code tools.
  • fx: fx is a native Zig agent CLI with an interactive shell and embedding options, rather than an IDE-aware TypeScript fork of Pi.
  • zero: Zero is a Go-based agent focused on scriptable assistance, local sessions, and explicit controls over side effects.
ProjectLanguageLicenseStarsStatus
oh-my-piTypeScriptMIT36.2kActive
openinterpreterRustApache-2.068.5kActive
tauPythonMIT3kNew
fxZigApache-2.03.3kNew
zeroGoMIT1.7kNew

Considerations

  • The project combines TypeScript with Rust native components, so building from source involves both workspace dependencies and a local native-addon build.
  • Its many tools, providers, settings, and integration modes add configuration surface area; teams should review the project’s trust and project-input behavior before enabling it in unfamiliar repositories.
  • The repository is actively changing, with frequent commits and releases. That supports momentum but means behavior and interfaces may evolve.
  • The measured contributor base is broad rather than concentrated around one person. Recent pull requests are merged quickly, though this does not by itself establish long-term support guarantees.
  • The README reports no test-suite status in the supplied repository requirements data, so teams should verify the checks that cover their intended workflows.

Found this useful?

Share it with someone who would like oh-my-pi.