A terminal coding agent with built-in LSP, debugger, browser and subagent tools, supporting 60+ model providers.
code-yeongyu/senpi
An opinionated TypeScript fork of pi-mono that turns its terminal coding agent into the senpi CLI, with extra builtin extensions for permissions, prompt presets and web search.
Open-source alternative to:Claude Code
- Stars
- 511
- Forks
- 161
- Open issues
- 1,344
- Last commit
- yesterday
What is it?
senpi is a TypeScript monorepo forked from badlogic/pi-mono. It rebrands pi's terminal coding agent as the `senpi` CLI and adds a set of builtin extensions on top of upstream, while keeping the core changes small and documented per directory to ease upstream merges.
The builtins cover several areas: an opencode-style permission system with rules and TUI prompts, per-model system prompt presets for GPT, Claude and Kimi models, todo tracking with a continuation loop, compaction for long sessions, bash timeout policies, and provider-backed web search and fetch. The fork also includes a text-based tool-call middleware for models without native function calling, and it can be containerized for stronger isolation.
The project is marked experimental and is designed around the needs of one AI assistant. It supports multiple LLM providers through a unified API and can install extra capabilities such as LSP and AST-grep integrations as standalone packages.
Key features
- 01Ships the coding agent as a `senpi` CLI with its own config directory.
- 02Permission system with allow/deny rules, JSONL storage and interactive prompts.
- 03Per-model system prompt presets for GPT, Claude and Kimi model families.
- 04Todo tools with a continuation loop that re-engages idle agents.
- 05Compaction for long sessions, plus bash timeout enforcement.
- 06Provider-backed web search and webfetch tools, plus a multi-provider LLM API.
Use cases
- Running a terminal coding agent across several LLM providers with a permission layer.
- Customizing agent behavior per model through prompt presets and builtin extensions.
- Forking or extending pi-mono while keeping upstream merges manageable.
- Running the agent inside a container for stronger filesystem and process isolation.
Things to know
- The README labels senpi experimental and says not to base a production pipeline on it.
- It is an opinionated fork of pi-mono with design choices tuned for the Dori assistant, so behavior may diverge from upstream.
- Several OMO features, such as Team Mode, Skills, and the Ralph Loop, are intentionally absent.
In collections
Topics
FAQ
- What is senpi?
- An opinionated TypeScript fork of pi-mono that turns its terminal coding agent into the senpi CLI, with extra builtin extensions for permissions, prompt presets and web search. senpi is a TypeScript monorepo forked from badlogic/pi-mono. It rebrands pi's terminal coding agent as the `senpi` CLI and adds a set of builtin extensions on top of upstream, while keeping the core changes small and documented per directory to ease upstream merges.
- Is senpi free to use? What license does it have?
- senpi is open source under the MIT license. Check the license terms before using it in commercial products.
- Is senpi still maintained?
- Actively maintained. The last commit to senpi was on Nov 6, 2026.
- What can I use senpi for?
- Running a terminal coding agent across several LLM providers with a permission layer. Customizing agent behavior per model through prompt presets and builtin extensions. Forking or extending pi-mono while keeping upstream merges manageable. Running the agent inside a container for stronger filesystem and process isolation.
- Where can I get senpi?
- The source code and installation instructions are on GitHub: https://github.com/code-yeongyu/senpi
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
An open-source coding agent that reads your project, edits files and runs tests from your terminal, desktop, browser or editor.
An open-source AI coding agent that runs in your terminal, with companion desktop, web, editor, and chat interfaces.
Pi, the AI coding agent, compiled ahead of time to native code so it starts faster and uses less CPU than Pi on Bun or Node.
Z.ai's AI coding workspace offering a desktop app, browser UI, and terminal agent, built on a shared TypeScript codebase.
Grok Build is a terminal AI coding agent from SpaceXAI with a full-screen TUI that edits files, runs shell commands and searches the web.