indusagi-coding-agent 0.1.43 → 0.1.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/CHANGELOG.md +10 -1
  2. package/dist/command-line/list-models.js +1 -1
  3. package/dist/command-line/list-models.js.map +1 -1
  4. package/dist/command-line/login-handler.d.ts.map +1 -1
  5. package/dist/command-line/login-handler.js +32 -0
  6. package/dist/command-line/login-handler.js.map +1 -1
  7. package/dist/index.d.ts +4 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +3 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/interfaces/induscode-ui-delegate.d.ts +3 -0
  12. package/dist/interfaces/induscode-ui-delegate.d.ts.map +1 -0
  13. package/dist/interfaces/induscode-ui-delegate.js +148 -0
  14. package/dist/interfaces/induscode-ui-delegate.js.map +1 -0
  15. package/dist/interfaces/terminal-ui/components/footer.d.ts.map +1 -1
  16. package/dist/interfaces/terminal-ui/components/footer.js +9 -15
  17. package/dist/interfaces/terminal-ui/components/footer.js.map +1 -1
  18. package/dist/interfaces/terminal-ui/components/model-selector.d.ts.map +1 -1
  19. package/dist/interfaces/terminal-ui/components/model-selector.js +1 -1
  20. package/dist/interfaces/terminal-ui/components/model-selector.js.map +1 -1
  21. package/dist/main.d.ts.map +1 -1
  22. package/dist/main.js +2 -0
  23. package/dist/main.js.map +1 -1
  24. package/dist/runtime/agent-session.d.ts +4 -0
  25. package/dist/runtime/agent-session.d.ts.map +1 -1
  26. package/dist/runtime/agent-session.js +53 -22
  27. package/dist/runtime/agent-session.js.map +1 -1
  28. package/dist/runtime/index.d.ts +5 -0
  29. package/dist/runtime/index.d.ts.map +1 -1
  30. package/dist/runtime/index.js +5 -0
  31. package/dist/runtime/index.js.map +1 -1
  32. package/dist/runtime/model-registry.d.ts +6 -0
  33. package/dist/runtime/model-registry.d.ts.map +1 -1
  34. package/dist/runtime/model-registry.js +71 -14
  35. package/dist/runtime/model-registry.js.map +1 -1
  36. package/dist/runtime/model-resolver.d.ts.map +1 -1
  37. package/dist/runtime/model-resolver.js +5 -3
  38. package/dist/runtime/model-resolver.js.map +1 -1
  39. package/dist/runtime/plugins/types.d.ts +3 -0
  40. package/dist/runtime/plugins/types.d.ts.map +1 -1
  41. package/dist/runtime/plugins/types.js.map +1 -1
  42. package/dist/runtime/providers/adapters/claude-cli-adapter.d.ts +19 -0
  43. package/dist/runtime/providers/adapters/claude-cli-adapter.d.ts.map +1 -0
  44. package/dist/runtime/providers/adapters/claude-cli-adapter.js +242 -0
  45. package/dist/runtime/providers/adapters/claude-cli-adapter.js.map +1 -0
  46. package/dist/runtime/providers/adapters/codex-cli-adapter.d.ts +18 -0
  47. package/dist/runtime/providers/adapters/codex-cli-adapter.d.ts.map +1 -0
  48. package/dist/runtime/providers/adapters/codex-cli-adapter.js +177 -0
  49. package/dist/runtime/providers/adapters/codex-cli-adapter.js.map +1 -0
  50. package/dist/runtime/providers/adapters/indusagi-cli-adapter.d.ts +21 -0
  51. package/dist/runtime/providers/adapters/indusagi-cli-adapter.d.ts.map +1 -0
  52. package/dist/runtime/providers/adapters/indusagi-cli-adapter.js +162 -0
  53. package/dist/runtime/providers/adapters/indusagi-cli-adapter.js.map +1 -0
  54. package/dist/runtime/providers/adapters/utils.d.ts +12 -0
  55. package/dist/runtime/providers/adapters/utils.d.ts.map +1 -0
  56. package/dist/runtime/providers/adapters/utils.js +122 -0
  57. package/dist/runtime/providers/adapters/utils.js.map +1 -0
  58. package/dist/runtime/providers/builtins.d.ts +3 -0
  59. package/dist/runtime/providers/builtins.d.ts.map +1 -0
  60. package/dist/runtime/providers/builtins.js +99 -0
  61. package/dist/runtime/providers/builtins.js.map +1 -0
  62. package/dist/runtime/providers/provider-adapter-registry.d.ts +11 -0
  63. package/dist/runtime/providers/provider-adapter-registry.d.ts.map +1 -0
  64. package/dist/runtime/providers/provider-adapter-registry.js +36 -0
  65. package/dist/runtime/providers/provider-adapter-registry.js.map +1 -0
  66. package/dist/runtime/providers/provider-adapter.d.ts +33 -0
  67. package/dist/runtime/providers/provider-adapter.d.ts.map +1 -0
  68. package/dist/runtime/providers/provider-adapter.js +2 -0
  69. package/dist/runtime/providers/provider-adapter.js.map +1 -0
  70. package/dist/runtime/providers/provider-service.d.ts +33 -0
  71. package/dist/runtime/providers/provider-service.d.ts.map +1 -0
  72. package/dist/runtime/providers/provider-service.js +157 -0
  73. package/dist/runtime/providers/provider-service.js.map +1 -0
  74. package/dist/runtime/providers/types.d.ts +29 -0
  75. package/dist/runtime/providers/types.d.ts.map +1 -0
  76. package/dist/runtime/providers/types.js +9 -0
  77. package/dist/runtime/providers/types.js.map +1 -0
  78. package/dist/runtime/sdk.d.ts +4 -0
  79. package/dist/runtime/sdk.d.ts.map +1 -1
  80. package/dist/runtime/sdk.js +38 -4
  81. package/dist/runtime/sdk.js.map +1 -1
  82. package/dist/telemetry/core/types.d.ts +1 -1
  83. package/dist/telemetry/core/types.js +1 -1
  84. package/guides/CLAUDE_CODEX_CLI_INTEGRATION_PLAN.md +321 -0
  85. package/guides/{PI_MONO_MIT_REMOVAL_GUIDE.md → INDUSAGI_MONO_MIT_REMOVAL_GUIDE.md} +29 -29
  86. package/guides/OPTION3_PROVIDER_ADAPTER_RUNTIME_PLAN.md +370 -0
  87. package/package.json +3 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../app/runtime/providers/types.ts"],"names":[],"mappings":"AA8BA,MAAM,CAAC,MAAM,4BAA4B,GAAG,kBAAkB,CAAC;AAE/D,MAAM,UAAU,iBAAiB,CAChC,OAA0C;IAE1C,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,CAAC;IACnC,OAAO,QAAQ,KAAK,cAAc,IAAI,QAAQ,KAAK,MAAM,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC3C,KAAmC,EACnC,UAAmE;IAEnE,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC"}
@@ -5,6 +5,8 @@ import { AgentSession } from "./agent-session.js";
5
5
  import { AuthStorage } from "./auth-storage.js";
6
6
  import type { LoadExtensionsResult, ToolDefinition } from "./plugins/index.js";
7
7
  import { ModelRegistry } from "./model-registry.js";
8
+ import { type ProviderAdapterRegistry } from "./providers/provider-adapter-registry.js";
9
+ import { ProviderService } from "./providers/provider-service.js";
8
10
  import { type ResourceLoader } from "./resource-loader.js";
9
11
  import { SessionManager } from "./session-manager.js";
10
12
  import { SettingsManager } from "./settings-manager.js";
@@ -14,6 +16,8 @@ export interface CreateAgentSessionOptions {
14
16
  agentDir?: string;
15
17
  authStorage?: AuthStorage;
16
18
  modelRegistry?: ModelRegistry;
19
+ providerAdapterRegistry?: ProviderAdapterRegistry;
20
+ providerService?: ProviderService;
17
21
  model?: Model<any>;
18
22
  thinkingLevel?: ThinkingLevel;
19
23
  scopedModels?: Array<{
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../app/runtime/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../app/runtime/sdk.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,9 @@ import { AuthStorage } from "./auth-storage.js";
8
8
  import { convertToLlm } from "./messages.js";
9
9
  import { ModelRegistry } from "./model-registry.js";
10
10
  import { findInitialModel } from "./model-resolver.js";
11
+ import { createDefaultProviderAdapterRegistry, } from "./providers/provider-adapter-registry.js";
12
+ import { registerBuiltInProviderRuntimes } from "./providers/builtins.js";
13
+ import { ProviderService } from "./providers/provider-service.js";
11
14
  import { DefaultResourceLoader } from "./resource-loader.js";
12
15
  import { SessionManager } from "./session-manager.js";
13
16
  import { SettingsManager } from "./settings-manager.js";
@@ -40,10 +43,29 @@ async function bootstrapSessionDependencies(options) {
40
43
  const agentDir = options.agentDir ?? getAgentDir();
41
44
  const authStorage = createDefaultAuthStorage(agentDir, options.authStorage);
42
45
  const modelRegistry = createDefaultRegistry(agentDir, authStorage, options.modelRegistry);
46
+ registerBuiltInProviderRuntimes(modelRegistry);
43
47
  const settingsManager = createDefaultSettingsManager(cwd, agentDir, options.settingsManager);
44
48
  const sessionManager = createDefaultSessionManager(cwd, options.sessionManager);
49
+ const providerAdapterRegistry = options.providerAdapterRegistry ?? createDefaultProviderAdapterRegistry();
50
+ const providerService = options.providerService ??
51
+ new ProviderService({
52
+ modelRegistry,
53
+ sessionManager,
54
+ cwd,
55
+ registry: providerAdapterRegistry,
56
+ });
45
57
  const resourceLoader = await createDefaultResourceLoader(cwd, agentDir, settingsManager, options.resourceLoader);
46
- return { cwd, agentDir, authStorage, modelRegistry, settingsManager, sessionManager, resourceLoader };
58
+ return {
59
+ cwd,
60
+ agentDir,
61
+ authStorage,
62
+ modelRegistry,
63
+ providerAdapterRegistry,
64
+ providerService,
65
+ settingsManager,
66
+ sessionManager,
67
+ resourceLoader,
68
+ };
47
69
  }
48
70
  async function resolveInitialModel(options, bootstrap) {
49
71
  const existingSession = bootstrap.sessionManager.buildSessionContext();
@@ -52,7 +74,9 @@ async function resolveInitialModel(options, bootstrap) {
52
74
  let modelFallbackMessage;
53
75
  if (!model && hasExistingSession && existingSession.model) {
54
76
  const restoredModel = bootstrap.modelRegistry.find(existingSession.model.provider, existingSession.model.modelId);
55
- if (restoredModel && (await bootstrap.modelRegistry.getApiKey(restoredModel))) {
77
+ if (restoredModel &&
78
+ (!bootstrap.modelRegistry.providerNeedsAuth(restoredModel.provider) ||
79
+ (await bootstrap.modelRegistry.getApiKey(restoredModel)))) {
56
80
  model = restoredModel;
57
81
  }
58
82
  else {
@@ -119,7 +143,7 @@ function createConvertToLlm(settingsManager) {
119
143
  });
120
144
  };
121
145
  }
122
- function createStreamWithHooks(sessionManager, hookRunnerRef, observe) {
146
+ function createStreamWithHooks(sessionManager, hookRunnerRef, providerService, observe) {
123
147
  return async (model, context, options) => {
124
148
  const baseOptions = { ...(options ?? {}) };
125
149
  const observeOptions = observe
@@ -133,6 +157,9 @@ function createStreamWithHooks(sessionManager, hookRunnerRef, observe) {
133
157
  : {};
134
158
  const hookRunner = hookRunnerRef.current;
135
159
  if (!hookRunner) {
160
+ if (providerService.usesAdapter(model)) {
161
+ return providerService.streamTurn(model, context, { ...baseOptions, ...observeOptions });
162
+ }
136
163
  return streamSimple(model, context, { ...baseOptions, ...observeOptions });
137
164
  }
138
165
  const sessionId = sessionManager.getSessionId();
@@ -167,6 +194,9 @@ function createStreamWithHooks(sessionManager, hookRunnerRef, observe) {
167
194
  headers: { ...(streamOptions.headers ?? {}), ...headersOutput.headers },
168
195
  };
169
196
  }
197
+ if (providerService.usesAdapter(model)) {
198
+ return providerService.streamTurn(model, { ...context, systemPrompt, tools }, streamOptions);
199
+ }
170
200
  return streamSimple(model, { ...context, systemPrompt, tools }, streamOptions);
171
201
  };
172
202
  }
@@ -190,7 +220,7 @@ function createAgentInstance(bootstrap, resolvedModel, thinkingLevel, extensionR
190
220
  }
191
221
  return currentMessages;
192
222
  },
193
- streamFn: createStreamWithHooks(bootstrap.sessionManager, hookRunnerRef, observe),
223
+ streamFn: createStreamWithHooks(bootstrap.sessionManager, hookRunnerRef, bootstrap.providerService, observe),
194
224
  steeringMode: bootstrap.settingsManager.getSteeringMode(),
195
225
  followUpMode: bootstrap.settingsManager.getFollowUpMode(),
196
226
  thinkingBudgets: bootstrap.settingsManager.getThinkingBudgets(),
@@ -199,6 +229,9 @@ function createAgentInstance(bootstrap, resolvedModel, thinkingLevel, extensionR
199
229
  const resolvedProvider = provider || agent.state.model?.provider;
200
230
  if (!resolvedProvider)
201
231
  throw new Error("No model selected");
232
+ if (!bootstrap.modelRegistry.providerNeedsAuth(resolvedProvider)) {
233
+ return undefined;
234
+ }
202
235
  const accountId = bootstrap.authStorage.getDefaultAccount(resolvedProvider);
203
236
  const key = await bootstrap.modelRegistry.getApiKeyForProvider(resolvedProvider, accountId);
204
237
  if (key)
@@ -299,6 +332,7 @@ export async function createAgentSession(options = {}) {
299
332
  resourceLoader: bootstrap.resourceLoader,
300
333
  customTools: options.customTools,
301
334
  modelRegistry: bootstrap.modelRegistry,
335
+ providerService: bootstrap.providerService,
302
336
  initialActiveToolNames,
303
337
  extensionRunnerRef,
304
338
  hookRunnerRef,
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../app/runtime/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../app/runtime/sdk.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Observability Core Types
3
3
  *
4
- * Based on OpenTelemetry standards and Mastra observability patterns.
4
+ * Based on OpenTelemetry standards and observability best practices.
5
5
  * Provides type-safe spans, traces, and sampling for agent operations.
6
6
  */
7
7
  export declare enum SpanType {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Observability Core Types
3
3
  *
4
- * Based on OpenTelemetry standards and Mastra observability patterns.
4
+ * Based on OpenTelemetry standards and observability best practices.
5
5
  * Provides type-safe spans, traces, and sampling for agent operations.
6
6
  */
7
7
  // Span types enumeration
@@ -0,0 +1,321 @@
1
+ # Claude CLI / Codex CLI / Indusagi CLI Integration Plan for `indusagi-screth`
2
+
3
+ ## Goal
4
+
5
+ Add support for CLI-backed providers in `indusagi-screth`, including:
6
+
7
+ - Claude CLI / Claude Agent runtime
8
+ - Codex CLI / Codex app-server runtime
9
+ - **indusagi-coding-agent CLI** as another provider runtime
10
+
11
+ so they can be integrated similarly to how `t3code` wires provider adapters.
12
+
13
+ ---
14
+
15
+ ## Short Answer
16
+
17
+ You have 3 practical paths:
18
+
19
+ 1. **Fast path**: custom providers via `registerProvider(..., { streamSimple })` and shell out to CLI.
20
+ 2. **Better path**: still custom provider, but run `indusagi` in `--mode rpc` for persistent subprocess + streaming events.
21
+ 3. **Full t3-style path**: build a provider adapter subsystem (session lifecycle + canonical runtime events).
22
+
23
+ If you want parity with `t3code`, use **Path 3**.
24
+
25
+ ---
26
+
27
+ ## Important Architecture Reality (Current Code)
28
+
29
+ `indusagi-screth` is currently **model-centric**:
30
+
31
+ - provider/model registration:
32
+ - `app/runtime/model-registry.ts`
33
+ - extension provider registrations are queued and applied through:
34
+ - `app/runtime/plugins/loader.ts`
35
+ - `app/main.ts`
36
+ - `app/runtime/plugins/runner.ts`
37
+ - runtime calls route through `indusagi/ai` provider API (`streamSimple`):
38
+ - `app/runtime/sdk.ts`
39
+
40
+ ### Why this matters
41
+
42
+ Claude/Codex/Indusagi CLIs are **agent runtimes**, not plain model endpoints.
43
+
44
+ Current architecture expects model providers to look like API adapters that produce assistant/tool-call events. So a CLI integration can work quickly, but full parity needs provider session orchestration.
45
+
46
+ ---
47
+
48
+ ## Current Capability You Already Have
49
+
50
+ You already support custom providers via extension/runtime registration:
51
+
52
+ - `registerProvider(name, config)` API in extensions:
53
+ - `app/runtime/plugins/types.ts`
54
+ - runtime queue + application:
55
+ - `app/runtime/plugins/loader.ts`
56
+ - `app/main.ts`
57
+ - `app/runtime/plugins/runner.ts`
58
+ - custom stream handler support:
59
+ - `streamSimple` in `ProviderConfigInput` (`app/runtime/model-registry.ts`)
60
+
61
+ This is enough for a strong PoC.
62
+
63
+ ---
64
+
65
+ ## Path 1 — Fast Integration (Spawn CLI per turn)
66
+
67
+ ## Best for
68
+
69
+ - quickest implementation
70
+ - proving provider UX
71
+ - validating prompt/output quality
72
+
73
+ ## Provider IDs to use
74
+
75
+ - `claude-cli`
76
+ - `codex-cli`
77
+ - `indusagi-cli`
78
+
79
+ ## Implementation
80
+
81
+ ### 1) Add extension registration file
82
+
83
+ Create:
84
+
85
+ - `.indusagi/extensions/cli-providers.ts`
86
+
87
+ Register 3 providers with model list + `streamSimple`.
88
+
89
+ ### 2) Implement stream handlers by spawning CLI
90
+
91
+ Use `createAssistantMessageEventStream()` + `createAssistantMessageOutput()` from `indusagi/ai` and map process stdout into text deltas.
92
+
93
+ Minimal skeleton:
94
+
95
+ ```ts
96
+ import {
97
+ createAssistantMessageEventStream,
98
+ createAssistantMessageOutput,
99
+ type Model,
100
+ type Context,
101
+ type SimpleStreamOptions,
102
+ } from "indusagi/ai";
103
+ import { spawn } from "node:child_process";
104
+
105
+ function streamSimpleCli(
106
+ bin: string,
107
+ args: string[],
108
+ model: Model<any>,
109
+ context: Context,
110
+ options?: SimpleStreamOptions,
111
+ ) {
112
+ const stream = createAssistantMessageEventStream();
113
+ const output = createAssistantMessageOutput(model);
114
+
115
+ stream.pushStart(output);
116
+ stream.pushTextStart(0, output);
117
+
118
+ const prompt = "...convert context.messages to prompt...";
119
+ const child = spawn(bin, [...args, prompt], {
120
+ stdio: ["ignore", "pipe", "pipe"],
121
+ env: process.env,
122
+ });
123
+
124
+ child.stdout.on("data", (buf) => {
125
+ const delta = String(buf);
126
+ const prev = (output.content[0] as any)?.text ?? "";
127
+ output.content[0] = { type: "text", text: prev + delta };
128
+ stream.pushTextDelta(0, delta, output);
129
+ });
130
+
131
+ child.on("close", (code) => {
132
+ const text = (output.content[0] as any)?.text ?? "";
133
+ stream.pushTextEnd(0, text, output);
134
+ stream.pushDone(code === 0 ? "stop" : "length", output);
135
+ });
136
+
137
+ child.on("error", (err) => {
138
+ output.stopReason = "error";
139
+ output.errorMessage = err instanceof Error ? err.message : String(err);
140
+ stream.pushError("error", output);
141
+ });
142
+
143
+ return stream;
144
+ }
145
+ ```
146
+
147
+ ### 3) CLI command strategy
148
+
149
+ - Claude: `claude -p`
150
+ - Codex: start with a non-session command path for PoC (if available in your environment)
151
+ - indusagi: `indusagi --mode text -p` (or `--mode json` and parse)
152
+
153
+ ### 4) Register model metadata
154
+
155
+ Use placeholder model metadata in provider config (`contextWindow`, `maxTokens`, `cost`) until you have exact values.
156
+
157
+ ### 5) Auth gating note
158
+
159
+ Current validation in `model-registry` requires `apiKey` or `oauth` when `models` are provided.
160
+
161
+ - quick workaround: provide dummy `apiKey` in config and ignore it
162
+ - cleaner fix: in `app/runtime/model-registry.ts`, relax rule when `streamSimple` is present
163
+
164
+ Suggested rule:
165
+
166
+ - if `models` exists AND `streamSimple` exists => allow without `apiKey/oauth`.
167
+
168
+ ## Limitations
169
+
170
+ - no persistent provider session lifecycle
171
+ - no native provider thread IDs/recovery
172
+ - approvals/tool events from external agent are hard to map cleanly
173
+
174
+ ---
175
+
176
+ ## Path 2 — Better Integration for `indusagi-cli` (RPC mode subprocess)
177
+
178
+ ## Best for
179
+
180
+ - integrating **indusagi-coding-agent as a provider** with persistent process state
181
+ - better streaming/event mapping than one-shot print mode
182
+
183
+ `indusagi-screth` already has RPC client support:
184
+
185
+ - `app/interfaces/service-api/rpc-client.ts`
186
+
187
+ You can run subprocess:
188
+
189
+ - `indusagi --mode rpc`
190
+
191
+ and bridge RPC events into `AssistantMessageEventStream`.
192
+
193
+ ### Why this is useful
194
+
195
+ Compared to one-shot `--mode text/-p`:
196
+
197
+ - persistent subprocess
198
+ - better event visibility
199
+ - easier to add interrupt + model switching hooks
200
+
201
+ ### Suggested mapping
202
+
203
+ - `message` events (assistant) -> `text_delta` / `text_end`
204
+ - error event -> `pushError(...)`
205
+ - completed/idle -> `pushDone(...)`
206
+
207
+ ---
208
+
209
+ ## Path 3 — Full `t3code`-Style Provider Runtime (Recommended)
210
+
211
+ ## Best for
212
+
213
+ - production-quality CLI providers
214
+ - parity with Codex/Claude adapter design from `t3code`
215
+ - extensibility to more runtimes
216
+
217
+ ## High-level design
218
+
219
+ Add a provider subsystem inside `indusagi-screth`, e.g.:
220
+
221
+ - `app/runtime/providers/Services/ProviderAdapter.ts`
222
+ - `app/runtime/providers/Services/ProviderService.ts`
223
+ - `app/runtime/providers/Layers/ProviderAdapterRegistry.ts`
224
+ - `app/runtime/providers/Layers/ClaudeCliAdapter.ts`
225
+ - `app/runtime/providers/Layers/CodexCliAdapter.ts`
226
+ - `app/runtime/providers/Layers/IndusagiCliAdapter.ts`
227
+
228
+ ### Core responsibilities
229
+
230
+ 1. **ProviderAdapter**
231
+ - `startSession(threadId, config)`
232
+ - `sendTurn(threadId, input)`
233
+ - `interrupt/stop/listSessions`
234
+ - `streamEvents`
235
+
236
+ 2. **Adapter registry**
237
+ - provider key -> adapter
238
+
239
+ 3. **Provider service**
240
+ - route calls to adapter
241
+ - persist resume/binding state
242
+
243
+ 4. **Event normalization**
244
+ - provider raw events -> canonical runtime/session events
245
+
246
+ 5. **Session integration**
247
+ - in `AgentSession`, route selected providers (`claude-cli`, `codex-cli`, `indusagi-cli`) through provider service instead of direct `streamSimple`.
248
+
249
+ ---
250
+
251
+ ## Concrete File-Level Plan (Updated)
252
+
253
+ ## Phase 1: Fast PoC
254
+
255
+ 1. Create extension file:
256
+ - `.indusagi/extensions/cli-providers.ts`
257
+ 2. Register 3 providers:
258
+ - `claude-cli`
259
+ - `codex-cli`
260
+ - `indusagi-cli`
261
+ 3. Implement `streamSimple` wrappers for all 3
262
+ 4. Validate:
263
+ - `indusagi --extension .indusagi/extensions/cli-providers.ts --list-models`
264
+
265
+ ## Phase 2: Validation + UX Cleanup
266
+
267
+ 1. Relax `model-registry` auth validation for `streamSimple` providers
268
+ 2. Add CLI binary existence checks (e.g. `--version`) and friendly startup errors
269
+ 3. Add tests for provider registration and selection
270
+
271
+ ## Phase 3: Full Adapter Runtime
272
+
273
+ 1. Build provider adapter/service layers
274
+ 2. Implement adapters:
275
+ - `ClaudeCliAdapter`
276
+ - `CodexCliAdapter`
277
+ - `IndusagiCliAdapter`
278
+ 3. Route session engine by provider type
279
+ 4. Add event mapping + resume semantics + interrupt handling
280
+
281
+ ---
282
+
283
+ ## Test Checklist (Updated)
284
+
285
+ - Provider registration
286
+ - all 3 providers visible in model list
287
+ - Selection
288
+ - `/model` can switch to `claude-cli` / `codex-cli` / `indusagi-cli`
289
+ - Streaming
290
+ - deltas arrive incrementally
291
+ - Interrupt
292
+ - cancellation works consistently
293
+ - Error handling
294
+ - missing CLI binary gives clear message
295
+ - Session
296
+ - resume behavior predictable
297
+ - RPC bridge (if Path 2)
298
+ - subprocess startup/shutdown stable
299
+ - events mapped correctly
300
+
301
+ ---
302
+
303
+ ## Recommendation
304
+
305
+ - **Immediate**: implement Path 1 for all three providers.
306
+ - **Next**: move `indusagi-cli` to Path 2 (RPC) for better process/session behavior.
307
+ - **Production**: adopt Path 3 provider runtime (t3-style adapters).
308
+
309
+ ---
310
+
311
+ ## Optional Next Step
312
+
313
+ If you want, next I can generate this file directly:
314
+
315
+ - `.indusagi/extensions/cli-providers.ts`
316
+
317
+ with starter registrations + scaffolding for:
318
+
319
+ - `claude-cli`
320
+ - `codex-cli`
321
+ - `indusagi-cli`