-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Add Pi.dev Agent SDK support and clean up log event names #1100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
55e987a
0d41f71
f258a4a
9e63b36
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -33,6 +33,7 @@ | |
| "@archon/isolation": "workspace:*", | ||
| "@archon/paths": "workspace:*", | ||
| "@archon/workflows": "workspace:*", | ||
| "@mariozechner/pi-coding-agent": "^0.66.1", | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
A new direct dependency is added here, but neither Useful? React with 👍 / 👎. |
||
| "@openai/codex-sdk": "^0.116.0", | ||
| "pg": "^8.11.0", | ||
|
Comment on lines
33
to
38
|
||
| "zod": "^3" | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -2,11 +2,12 @@ | |
| * AI Assistant Client Factory | ||
| * | ||
| * Dynamically instantiates the appropriate AI assistant client based on type string. | ||
| * Supports Claude and Codex assistants. | ||
| * Supports Claude, Codex, and Pi assistants. | ||
| */ | ||
| import type { IAssistantClient } from '../types'; | ||
| import { ClaudeClient } from './claude'; | ||
| import { CodexClient } from './codex'; | ||
| import { PiClient } from './pi'; | ||
| import { createLogger } from '@archon/paths'; | ||
|
|
||
| /** Lazy-initialized logger (deferred so test mocks can intercept createLogger) */ | ||
|
|
@@ -19,7 +20,7 @@ function getLog(): ReturnType<typeof createLogger> { | |
| /** | ||
| * Get the appropriate AI assistant client based on type | ||
| * | ||
| * @param type - Assistant type identifier ('claude' or 'codex') | ||
| * @param type - Assistant type identifier ('claude', 'codex', or 'pi') | ||
| * @returns Instantiated assistant client | ||
| * @throws Error if assistant type is unknown | ||
| */ | ||
|
|
@@ -31,7 +32,10 @@ export function getAssistantClient(type: string): IAssistantClient { | |
| case 'codex': | ||
| getLog().debug({ provider: 'codex' }, 'client_selected'); | ||
| return new CodexClient(); | ||
| case 'pi': | ||
| getLog().debug({ provider: 'pi' }, 'client_selected'); | ||
| return new PiClient(); | ||
| default: | ||
| throw new Error(`Unknown assistant type: ${type}. Supported types: 'claude', 'codex'`); | ||
| throw new Error(`Unknown assistant type: ${type}. Supported types: 'claude', 'codex', 'pi'`); | ||
| } | ||
|
Comment on lines
+35
to
40
|
||
| } | ||
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
piis typed as selectable, but the setup wizard cannot actually select/configure it.defaultAssistantnow includes'pi', butcollectAIConfig()only offers Claude/Codex. This leaves setup unable to produce a Pi-first configuration through the intended flow.Please either add a Pi option/branch in the assistant selection flow, or defer this union widening until the wizard supports it end-to-end.
Also applies to: 680-680
🤖 Prompt for AI Agents
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copilot fix
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.