diff --git a/AGENTS.md b/AGENTS.md index a2d5460..efec9cf 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -73,8 +73,8 @@ untouched. 1. **Drop a `.ts` file into `extensions/`.** No other config needed — `install.sh` discovers all `.ts` files automatically. 2. **Export a default factory function** `(pi: ExtensionAPI) => void`. - See the [pi extensions docs](https://github.com/mariozechner/pi-coding-agent/blob/main/docs/extensions.md) - and [built-in examples](https://github.com/mariozechner/pi-coding-agent/tree/main/examples/extensions). + See the [pi extensions docs](https://github.com/earendil-works/pi/blob/main/docs/extensions.md) + and [built-in examples](https://github.com/earendil-works/pi/tree/main/examples/extensions). 3. **Register any CLI flags** via `pi.registerFlag()` so they appear in `pi --help`. 4. **Keep the extension inert without its flag** (or equivalent trigger). Don't @@ -242,7 +242,7 @@ upstream updates but gain reproducibility. **Refresh from upstream when needed:** ```bash -cp /opt/homebrew/Cellar/pi-coding-agent/*/libexec/lib/node_modules/@mariozechner/pi-coding-agent/examples/extensions/todo.ts \ +cp /opt/homebrew/Cellar/pi-coding-agent/*/libexec/lib/node_modules/@earendil-works/pi-coding-agent/examples/extensions/todo.ts \ ~/src/src_local/pi-extensions/extensions/todo.ts # review diff, then commit ``` diff --git a/README.md b/README.md index c3e7226..de504de 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # pi-extensions -Custom and modified extensions for the [pi coding-agent](https://github.com/mariozechner/pi-coding-agent). +Custom and modified extensions for the [pi coding-agent](https://github.com/earendil-works/pi). This repo is the single source of truth for extensions that aren't suitable for general publishing — personal workflow tweaks, modified versions of built-in examples, and extensions written for specific infrastructure. Symlinked into `~/.pi/agent/extensions/` so pi loads them automatically. @@ -266,7 +266,7 @@ Generic MCP server loader. Reads an `mcp` block from `~/.pi/agent/settings.json` UX matches `/ext`: **space** stages a toggle, **enter** writes back to `settings.json` and reloads pi, **esc** cancels. Toggling re-enables a previously-disabled server by removing the explicit `enabled` key (the default is `true`). -Each extension is a TypeScript module loaded by [jiti](https://github.com/unjs/jiti) — no compilation step. See the [pi extensions docs](https://github.com/mariozechner/pi-coding-agent/blob/main/docs/extensions.md) and the [built-in examples](https://github.com/mariozechner/pi-coding-agent/tree/main/examples/extensions) for the API surface. +Each extension is a TypeScript module loaded by [jiti](https://github.com/unjs/jiti) — no compilation step. See the [pi extensions docs](https://github.com/earendil-works/pi/blob/main/docs/extensions.md) and the [built-in examples](https://github.com/earendil-works/pi/tree/main/examples/extensions) for the API surface. --- diff --git a/extensions/confirm-destructive.ts b/extensions/confirm-destructive.ts index 789d20c..86b70df 100644 --- a/extensions/confirm-destructive.ts +++ b/extensions/confirm-destructive.ts @@ -10,7 +10,7 @@ * /fork so you don't accidentally throw away work. */ -import type { ExtensionAPI, SessionBeforeSwitchEvent, SessionMessageEntry } from "@mariozechner/pi-coding-agent"; +import type { ExtensionAPI, SessionBeforeSwitchEvent, SessionMessageEntry } from "@earendil-works/pi-coding-agent"; // ── Dangerous bash patterns ─────────────────────────────────────────────────── diff --git a/extensions/ext-toggle.ts b/extensions/ext-toggle.ts index 0ffe385..929a5de 100644 --- a/extensions/ext-toggle.ts +++ b/extensions/ext-toggle.ts @@ -30,14 +30,14 @@ import * as os from "node:os"; import { type ExtensionAPI, getSettingsListTheme, -} from "@mariozechner/pi-coding-agent"; +} from "@earendil-works/pi-coding-agent"; import { Container, Key, matchesKey, type SettingItem, SettingsList, -} from "@mariozechner/pi-tui"; +} from "@earendil-works/pi-tui"; const EXT_DIR = path.join(os.homedir(), ".pi", "agent", "extensions"); diff --git a/extensions/git-checkpoint.ts b/extensions/git-checkpoint.ts index 36fbcd3..a2855d8 100644 --- a/extensions/git-checkpoint.ts +++ b/extensions/git-checkpoint.ts @@ -11,7 +11,7 @@ * Status bar shows the number of checkpoints saved in the current session. */ -import type { ExtensionAPI } from "@mariozechner/pi-coding-agent"; +import type { ExtensionAPI } from "@earendil-works/pi-coding-agent"; export default function (pi: ExtensionAPI) { // entryId → stash ref (e.g. "refs/stash" or a full sha) diff --git a/extensions/mcp-loader.ts b/extensions/mcp-loader.ts index 8b3b794..0475208 100644 --- a/extensions/mcp-loader.ts +++ b/extensions/mcp-loader.ts @@ -104,14 +104,14 @@ import * as path from "node:path"; import { type ExtensionAPI, getSettingsListTheme, -} from "@mariozechner/pi-coding-agent"; +} from "@earendil-works/pi-coding-agent"; import { Container, Key, matchesKey, type SettingItem, SettingsList, -} from "@mariozechner/pi-tui"; +} from "@earendil-works/pi-tui"; import { Type } from "typebox"; // ── MCP types ──────────────────────────────────────────────────────────────── diff --git a/extensions/notify.ts b/extensions/notify.ts index 4ffa0eb..7ddc991 100644 --- a/extensions/notify.ts +++ b/extensions/notify.ts @@ -13,7 +13,7 @@ * otherwise → OSC 777 (iTerm2, WezTerm, Ghostty, rxvt-unicode) */ -import type { ExtensionAPI } from "@mariozechner/pi-coding-agent"; +import type { ExtensionAPI } from "@earendil-works/pi-coding-agent"; // ── Notification backends ───────────────────────────────────────────────────── diff --git a/extensions/ssh-controlmaster.ts b/extensions/ssh-controlmaster.ts index 010e7b0..221d848 100644 --- a/extensions/ssh-controlmaster.ts +++ b/extensions/ssh-controlmaster.ts @@ -31,7 +31,7 @@ import { spawn } from "node:child_process"; import { writeFile, unlink } from "node:fs/promises"; import { tmpdir } from "node:os"; import { join } from "node:path"; -import type { ExtensionAPI } from "@mariozechner/pi-coding-agent"; +import type { ExtensionAPI } from "@earendil-works/pi-coding-agent"; import { type BashOperations, createBashTool, @@ -41,7 +41,7 @@ import { type EditOperations, type ReadOperations, type WriteOperations, -} from "@mariozechner/pi-coding-agent"; +} from "@earendil-works/pi-coding-agent"; // ── Types ──────────────────────────────────────────────────────────────────── diff --git a/extensions/todo.ts b/extensions/todo.ts index 47c84be..89b147c 100644 --- a/extensions/todo.ts +++ b/extensions/todo.ts @@ -10,9 +10,9 @@ * correct for that point in history. */ -import { StringEnum } from "@mariozechner/pi-ai"; -import type { ExtensionAPI, ExtensionContext, Theme } from "@mariozechner/pi-coding-agent"; -import { matchesKey, Text, truncateToWidth } from "@mariozechner/pi-tui"; +import { StringEnum } from "@earendil-works/pi-ai"; +import type { ExtensionAPI, ExtensionContext, Theme } from "@earendil-works/pi-coding-agent"; +import { matchesKey, Text, truncateToWidth } from "@earendil-works/pi-tui"; import { Type } from "typebox"; interface Todo { diff --git a/install.sh b/install.sh index 8aa98a4..e9358d8 100755 --- a/install.sh +++ b/install.sh @@ -41,7 +41,7 @@ link_into_repo() { require_pi_installed() { if [[ ! -d "$PI_AGENT_DIR" ]]; then err "pi not detected at $PI_AGENT_DIR" - printf ' Install pi first: https://github.com/mariozechner/pi-coding-agent\n' + printf ' Install pi first: https://github.com/earendil-works/pi\n' printf ' Re-run after `pi --help` (first run creates ~/.pi/agent/).\n' exit 4 fi