Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

My Pi

БесплатноПоддерживается

Composable pi coding agent with MCP, LSP, prompt presets, and local eval telemetry

GitHubEmbed

Описание

Composable pi coding agent with MCP, LSP, prompt presets, and local eval telemetry

README

Semgrep built with vite+ tested with vitest

My curated Pi distribution: a ready-to-run coding-agent CLI with MCP, LSP, skills, recall, redaction, telemetry, team mode, prompt presets, and other handy extensions prewired.

my-pi package preview

Built on the @earendil-works/pi-coding-agent SDK. Use the full distribution directly, or install individual @spences10/pi-* packages into your own Pi setup.

Quick start

pnpx --allow-build=@google/genai --allow-build=protobufjs my-pi@latest
# or: npx my-pi@latest / bunx my-pi@latest

Two ways to use my-pi

1. Run the full distribution

Use my-pi if you want the complete, opinionated setup:

pnpx --allow-build=@google/genai --allow-build=protobufjs my-pi@latest

This is its own CLI wrapper around Pi. Do not install the root package with pi install npm:my-pi.

2. Install individual Pi packages

Most extensions in this repo are also published as normal Pi packages:

pi install npm:@spences10/pi-lsp
pi install npm:@spences10/pi-mcp
pi install npm:@spences10/pi-redact

Use this path if you already have your own Pi setup and only want selected features. Package READMEs are the source of truth for install instructions, commands, configuration, and runtime behavior.

For a project-local install, let Pi write the repo-owned package entry and resource overrides:

pi install -l npm:@spences10/pi-lsp
pi config -l

Upstream Pi stores those choices in .pi/settings.json; project resource deltas may use autoload: false. Keep @spences10/pi-* extension state and resource-specific trust in the separate global ~/.pi/agent/my-pi-settings.json store. A project must not be able to trust its own commands or executables through .pi/settings.json.

Programmatic use

create_my_pi() accepts upstream InlineExtension values, including named wrappers that keep startup extension paths descriptive. Bare factory functions remain supported.

import { create_my_pi, type InlineExtension } from 'my-pi';

const audit_extension: InlineExtension = {
	name: 'audit-events',
	factory(pi) {
		pi.on('agent_start', () => console.log('agent started'));
	},
};

const runtime = await create_my_pi({
	extensionFactories: [audit_extension],
});

The wrapper above appears as <inline:audit-events> in Pi's startup Extensions list. Names beginning with my-pi- are reserved for the managed distribution extensions; create_my_pi() rejects consumer wrappers using that prefix before loading any extensions.

What you get

  • Pi-native CLI + SDK wrapper — interactive TUI, print mode, JSON mode, RPC mode, and programmatic runtime creation.
  • Project-aware MCP tools — stdio and HTTP/streamable-HTTP servers from mcp.json, scoped so sensitive or noisy tools only load for the projects and orgs where they belong.
  • Project-aware skills — discover, enable, disable, import, and sync Pi-native skills, with different skill sets per project.
  • LSP tools — diagnostics, hover, definitions, references, and document symbols via language servers.
  • Context sidecar — local SQLite storage for oversized tool output, keeping long results searchable without flooding chat context.
  • Guardrails — Svelte and coding-preference checks that block configured anti-patterns before agents write them.
  • Prompt presets — base presets plus additive prompt layers with per-project persistence.
  • Secret safety — redaction plus reminders to use secret-safe environment loading.
  • Recall, telemetry, and observability — local support for prior-session lookup, evals, latency analysis, live event streams, and operational debugging.
  • Git UI — interactive source-control staging and commit support.
  • Team mode — peer coordination between independently opened Pi sessions using groups, artifacts, and durable mailboxes.
  • Themes and TUI helpers — visual polish and shared modal primitives.

Requirements

  • Node.js >=24.15.0
  • pnpm 11 for local development
  • Pi authentication via pi auth, provider environment variables, or supported OAuth flows

my-pi uses native node:sqlite through context, telemetry, and observability packages. The CLI suppresses Node's expected node:sqlite ExperimentalWarning; standalone package/API consumers own their process warning policy until Node marks it stable.

pnpm 11 first-run build approval

pnpm 11 asks for interactive approval before running the transitive @google/genai preinstall and protobufjs postinstall hooks. Neither hook builds runtime artifacts: the first prints a no-op message and the second only checks dependency version syntax. Declining them does not degrade my-pi functionality.

For a deterministic first run, or after accidentally selecting No, rerun the Quick start command with both --allow-build flags. It allows those two known hooks without the two-stage selection and confirmation prompt. The package does not publish a pnpm settings block because pnpm 11 ignores package-level build policy. The node-domexception deprecation notice is also transitive and does not affect runtime behavior.

Common usage

# full TUI
pnpx my-pi@latest

# one-shot print mode
pnpx my-pi@latest "summarize this repo"
pnpx my-pi@latest -P "explicit print mode"

# NDJSON events for scripts/agents
pnpx my-pi@latest --json "list all TODO comments"

# RPC mode for team/agent orchestration
pnpx my-pi@latest --mode rpc

# local live observability dashboard
pnpx my-pi@latest
# then run /observability in the TUI to open the browser dashboard
pnpx my-pi@latest observability

Pi handles model authentication natively. For provider-specific model examples, see the Pi docs and the relevant extension/package README.

Umans.ai is available as a built-in provider. Run /login, choose API key auth, then choose Umans; select models like umans/umans-coder or umans/umans-flash. A stored API key takes precedence over UMANS_API_KEY; legacy Umans credentials remain readable. Pi refreshes the remote model catalog for /model, persists the last successful catalog, and falls back to the bundled catalog when the network is unavailable. Disable the provider with --no-umans-provider.

OpenRouter Fusion is configured by default: my-pi injects a non-Anthropic Fusion panel/judge only for openrouter/fusion. Configure it in ~/.pi/agent/my-pi-settings.json under openRouterFusion, e.g. {"openRouterFusion":{"analysisModels":["deepseek/deepseek-v3.2"],"judgeModel":"~openai/gpt-latest","force":false}}. Fusion is forced by default with tool_choice: "required"; set force: false to let OpenRouter decide whether deliberation is needed. Env vars MY_PI_FUSION_ANALYSIS_MODELS, MY_PI_FUSION_JUDGE_MODEL, and MY_PI_FUSION_FORCE still work as overrides. Disable with --no-openrouter-fusion-config.

Reusable Pi packages

Install the full distribution with pnpx my-pi@latest, or install selected extensions into vanilla Pi:

# Bash/Zsh/Fish
pi install npm:@spences10/pi-{context,lsp,team-mode}

Full package list here:

Package Purpose
@spences10/pi-coding-preferences Configurable coding-workflow guardrails
@spences10/pi-confirm-destructive Destructive action confirmations
@spences10/pi-context Scoped SQLite FTS overflow cache for oversized tool output
@spences10/pi-codex-usage OpenAI Codex usage in the footer status area
@spences10/pi-factory Paused experimental workflow control plane (opt-in)
@spences10/pi-git-ui Interactive source-control staging UI
@spences10/pi-kimi-usage Kimi For Coding usage in the footer status area
@spences10/pi-lsp LSP-backed diagnostics and symbol tools
@spences10/pi-mcp MCP server integration and /mcp
@spences10/pi-nopeek nopeek reminder for secret-safe environment loading
@spences10/pi-observability Live local event stream and browser dashboard
@spences10/pi-omnisearch mcp-omnisearch reminder for verified web research
@spences10/pi-recall pirecall reminder and background sync
@spences10/pi-redact Output redaction and /redact-stats
@spences10/pi-harness Ephemeral task harness runtime
@spences10/pi-skills Skill management, import, and sync
@spences10/pi-sqlite-tools mcp-sqlite-tools reminder for safer SQLite database work
@spences10/pi-starfield Twinkling stars in the input editor
@spences10/pi-svelte-guardrails Svelte pattern guardrails
@spences10/pi-team-mode Peer-session coordination and durable mailboxes
@spences10/pi-telemetry Local SQLite telemetry and /telemetry
@spences10/pi-themes Bundled theme pack for Pi

Shared helper packages such as @spences10/pi-child-env, @spences10/pi-footer, @spences10/pi-git-remote, @spences10/pi-project-trust, @spences10/pi-settings, @spences10/pi-skill-importer, @spences10/pi-sqlite-core, and @spences10/pi-tui-modal are published as dependencies and are not packages to install via pi install. See docs/package-map.md for the authoritative classification.

Project structure

apps/
  web/                     Landing page for discovering my-pi and its packages
src/
  index.ts                 CLI entry point
  api.ts                   Programmatic API
  extensions/              Root-only built-ins and distro wiring
packages/
  pi-*/                    Reusable Pi packages and shared support packages
.pi/
  presets.json             Optional project prompt presets
  presets/*.md             Optional project prompt preset files
mcp.json                   Optional, user-created project MCP server config

from github.com/spences10/my-pi

Установить My Pi в Claude Desktop, Claude Code, Cursor

Рекомендуется · одна команда, все IDE
unyly install my-pi

Ставит в Claude Desktop, Claude Code, Cursor и VS Code — сам разбирается с npx, uvx и сборкой из исходников.

Впервые? Поставь CLI: curl -fsSL https://unyly.org/install | sh

Или настроить вручную

Выполни в терминале:

claude mcp add my-pi -- npx -y my-pi

Пошаговые гайды: как установить My Pi

FAQ

My Pi MCP бесплатный?

Да, My Pi MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для My Pi?

Нет, My Pi работает без API-ключей и переменных окружения.

My Pi — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить My Pi в Claude Desktop, Claude Code или Cursor?

Открой My Pi на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Изменения

Версии и запрашиваемые доступы со временем.

  • Новая версия опубликована
  • Новая версия опубликована
  • Новая версия опубликована
  • Новая версия опубликована
  • Новая версия опубликована

Похожие MCP

wenb1n-dev/SmartDB_MCP

A universal database MCP server supporting simultaneous connections to multiple databases. It provides tools for database operations, health analysis, SQL optim

wenb1n-devавтор: wenb1n-dev

Postgres Server

This server enables interaction with PostgreSQL databases through the Model Context Protocol, optimized for the AWS Bedrock AgentCore Runtime. It provides tools

madhurprashавтор: madhurprash

Postgres

Query your database in natural language

Anthropicавтор: Anthropic

PostgreSQL

Read-only database access with schema inspection.

modelcontextprotocolавтор: modelcontextprotocol

Redis

Interact with Redis key-value stores.

modelcontextprotocolавтор: modelcontextprotocol

SQLite

Database interaction and business intelligence capabilities.

modelcontextprotocolавтор: modelcontextprotocol

mxcp

Open-source framework for building enterprise-grade MCP servers using just YAML, SQL, and Python, with built-in auth, monitoring, ETL and policy enforcement.

raw-labsавтор: raw-labs

tadas-github/a2asearch-mcp

MCP server to search 4,800+ MCP servers, AI agents, CLI tools and agent skills. Install: npx -y a2asearch-mcp. Ask Claude: "Find MCP servers for database access

tadas-githubавтор: tadas-github

julien040/anyquery

Query more than 40 apps with one binary using SQL. It can also connect to your PostgreSQL, MySQL, or SQLite compatible database. Local-first and private by desi

julien040автор: julien040

drakonkat/wizzy-mcp-tmdb

A MCP server for The Movie Database API that enables AI assistants to search and retrieve movie, TV show, and person information.

drakonkatавтор: drakonkat

Compare My Pi with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории data