From 758baa9feca56de1eeadaa95dab72f4a74940b9c Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Sun, 25 Jan 2026 00:18:13 +0100 Subject: [PATCH] refactor: rename custom provider examples - custom-provider -> custom-provider-anthropic - gitlab-duo -> custom-provider-gitlab-duo - Update READMEs with custom provider section --- package-lock.json | 27 ++++++++++++++----- package.json | 4 +-- packages/coding-agent/examples/README.md | 1 + .../examples/extensions/README.md | 7 +++++ .../.gitignore | 0 .../index.ts | 0 .../package-lock.json | 0 .../package.json | 2 +- .../.gitignore | 0 .../index.ts | 0 .../package.json | 2 +- .../test.ts | 0 12 files changed, 32 insertions(+), 11 deletions(-) rename packages/coding-agent/examples/extensions/{custom-provider => custom-provider-anthropic}/.gitignore (100%) rename packages/coding-agent/examples/extensions/{custom-provider => custom-provider-anthropic}/index.ts (100%) rename packages/coding-agent/examples/extensions/{custom-provider => custom-provider-anthropic}/package-lock.json (100%) rename packages/coding-agent/examples/extensions/{custom-provider => custom-provider-anthropic}/package.json (86%) rename packages/coding-agent/examples/extensions/{gitlab-duo => custom-provider-gitlab-duo}/.gitignore (100%) rename packages/coding-agent/examples/extensions/{gitlab-duo => custom-provider-gitlab-duo}/index.ts (100%) rename packages/coding-agent/examples/extensions/{gitlab-duo => custom-provider-gitlab-duo}/package.json (83%) rename packages/coding-agent/examples/extensions/{gitlab-duo => custom-provider-gitlab-duo}/test.ts (100%) diff --git a/package-lock.json b/package-lock.json index b509b4d1..55c01b72 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,8 +11,8 @@ "packages/*", "packages/web-ui/example", "packages/coding-agent/examples/extensions/with-deps", - "packages/coding-agent/examples/extensions/custom-provider", - "packages/coding-agent/examples/extensions/gitlab-duo" + "packages/coding-agent/examples/extensions/custom-provider-anthropic", + "packages/coding-agent/examples/extensions/custom-provider-gitlab-duo" ], "dependencies": { "@mariozechner/jiti": "^2.6.5", @@ -6913,12 +6913,12 @@ "@napi-rs/canvas": "^0.1.81" } }, - "node_modules/pi-extension-custom-provider": { - "resolved": "packages/coding-agent/examples/extensions/custom-provider", + "node_modules/pi-extension-custom-provider-anthropic": { + "resolved": "packages/coding-agent/examples/extensions/custom-provider-anthropic", "link": true }, - "node_modules/pi-extension-gitlab-duo": { - "resolved": "packages/coding-agent/examples/extensions/gitlab-duo", + "node_modules/pi-extension-custom-provider-gitlab-duo": { + "resolved": "packages/coding-agent/examples/extensions/custom-provider-gitlab-duo", "link": true }, "node_modules/pi-extension-with-deps": { @@ -8702,10 +8702,22 @@ "packages/coding-agent/examples/extensions/custom-provider": { "name": "pi-extension-custom-provider", "version": "1.0.0", + "extraneous": true, "dependencies": { "@anthropic-ai/sdk": "^0.52.0" } }, + "packages/coding-agent/examples/extensions/custom-provider-anthropic": { + "name": "pi-extension-custom-provider-anthropic", + "version": "1.0.0", + "dependencies": { + "@anthropic-ai/sdk": "^0.52.0" + } + }, + "packages/coding-agent/examples/extensions/custom-provider-gitlab-duo": { + "name": "pi-extension-custom-provider-gitlab-duo", + "version": "1.0.0" + }, "packages/coding-agent/examples/extensions/dosbox": { "name": "pi-extension-dosbox", "version": "0.0.1", @@ -8719,7 +8731,8 @@ }, "packages/coding-agent/examples/extensions/gitlab-duo": { "name": "pi-extension-gitlab-duo", - "version": "1.0.0" + "version": "1.0.0", + "extraneous": true }, "packages/coding-agent/examples/extensions/pi-dosbox": { "version": "0.0.1", diff --git a/package.json b/package.json index 43764e9d..713f0ed6 100644 --- a/package.json +++ b/package.json @@ -6,8 +6,8 @@ "packages/*", "packages/web-ui/example", "packages/coding-agent/examples/extensions/with-deps", - "packages/coding-agent/examples/extensions/custom-provider", - "packages/coding-agent/examples/extensions/gitlab-duo" + "packages/coding-agent/examples/extensions/custom-provider-anthropic", + "packages/coding-agent/examples/extensions/custom-provider-gitlab-duo" ], "scripts": { "clean": "npm run clean --workspaces", diff --git a/packages/coding-agent/examples/README.md b/packages/coding-agent/examples/README.md index ac632e43..87505184 100644 --- a/packages/coding-agent/examples/README.md +++ b/packages/coding-agent/examples/README.md @@ -16,6 +16,7 @@ Example extensions demonstrating: - Git integration (checkpoints, auto-commit) - System prompt modifications and custom compaction - External integrations (SSH, file watchers, system theme sync) +- Custom providers (Anthropic with custom streaming, GitLab Duo) ## Documentation diff --git a/packages/coding-agent/examples/extensions/README.md b/packages/coding-agent/examples/extensions/README.md index 7431a8de..60a2afe2 100644 --- a/packages/coding-agent/examples/extensions/README.md +++ b/packages/coding-agent/examples/extensions/README.md @@ -88,6 +88,13 @@ cp permission-gate.ts ~/.pi/agent/extensions/ |-----------|-------------| | `mac-system-theme.ts` | Syncs pi theme with macOS dark/light mode | +### Custom Providers + +| Extension | Description | +|-----------|-------------| +| `custom-provider-anthropic/` | Custom Anthropic provider with OAuth support and custom streaming implementation | +| `custom-provider-gitlab-duo/` | GitLab Duo provider using pi-ai's built-in Anthropic/OpenAI streaming via proxy | + ### External Dependencies | Extension | Description | diff --git a/packages/coding-agent/examples/extensions/custom-provider/.gitignore b/packages/coding-agent/examples/extensions/custom-provider-anthropic/.gitignore similarity index 100% rename from packages/coding-agent/examples/extensions/custom-provider/.gitignore rename to packages/coding-agent/examples/extensions/custom-provider-anthropic/.gitignore diff --git a/packages/coding-agent/examples/extensions/custom-provider/index.ts b/packages/coding-agent/examples/extensions/custom-provider-anthropic/index.ts similarity index 100% rename from packages/coding-agent/examples/extensions/custom-provider/index.ts rename to packages/coding-agent/examples/extensions/custom-provider-anthropic/index.ts diff --git a/packages/coding-agent/examples/extensions/custom-provider/package-lock.json b/packages/coding-agent/examples/extensions/custom-provider-anthropic/package-lock.json similarity index 100% rename from packages/coding-agent/examples/extensions/custom-provider/package-lock.json rename to packages/coding-agent/examples/extensions/custom-provider-anthropic/package-lock.json diff --git a/packages/coding-agent/examples/extensions/custom-provider/package.json b/packages/coding-agent/examples/extensions/custom-provider-anthropic/package.json similarity index 86% rename from packages/coding-agent/examples/extensions/custom-provider/package.json rename to packages/coding-agent/examples/extensions/custom-provider-anthropic/package.json index bc98d73e..21c1584c 100644 --- a/packages/coding-agent/examples/extensions/custom-provider/package.json +++ b/packages/coding-agent/examples/extensions/custom-provider-anthropic/package.json @@ -1,5 +1,5 @@ { - "name": "pi-extension-custom-provider", + "name": "pi-extension-custom-provider-anthropic", "private": true, "version": "1.0.0", "type": "module", diff --git a/packages/coding-agent/examples/extensions/gitlab-duo/.gitignore b/packages/coding-agent/examples/extensions/custom-provider-gitlab-duo/.gitignore similarity index 100% rename from packages/coding-agent/examples/extensions/gitlab-duo/.gitignore rename to packages/coding-agent/examples/extensions/custom-provider-gitlab-duo/.gitignore diff --git a/packages/coding-agent/examples/extensions/gitlab-duo/index.ts b/packages/coding-agent/examples/extensions/custom-provider-gitlab-duo/index.ts similarity index 100% rename from packages/coding-agent/examples/extensions/gitlab-duo/index.ts rename to packages/coding-agent/examples/extensions/custom-provider-gitlab-duo/index.ts diff --git a/packages/coding-agent/examples/extensions/gitlab-duo/package.json b/packages/coding-agent/examples/extensions/custom-provider-gitlab-duo/package.json similarity index 83% rename from packages/coding-agent/examples/extensions/gitlab-duo/package.json rename to packages/coding-agent/examples/extensions/custom-provider-gitlab-duo/package.json index bd71a0e0..8e7aa4e5 100644 --- a/packages/coding-agent/examples/extensions/gitlab-duo/package.json +++ b/packages/coding-agent/examples/extensions/custom-provider-gitlab-duo/package.json @@ -1,5 +1,5 @@ { - "name": "pi-extension-gitlab-duo", + "name": "pi-extension-custom-provider-gitlab-duo", "private": true, "version": "1.0.0", "type": "module", diff --git a/packages/coding-agent/examples/extensions/gitlab-duo/test.ts b/packages/coding-agent/examples/extensions/custom-provider-gitlab-duo/test.ts similarity index 100% rename from packages/coding-agent/examples/extensions/gitlab-duo/test.ts rename to packages/coding-agent/examples/extensions/custom-provider-gitlab-duo/test.ts