my-pi 0.3.5 → 0.4.0

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 (38) hide show
  1. package/README.md +32 -252
  2. package/dist/extensions.d.ts +11 -0
  3. package/dist/extensions.js +148 -0
  4. package/dist/extensions.js.map +1 -0
  5. package/dist/index.d.ts +2 -1
  6. package/dist/index.js +40 -523
  7. package/dist/index.js.map +1 -1
  8. package/dist/manager.d.ts +3 -0
  9. package/dist/manager.js +71 -0
  10. package/dist/manager.js.map +1 -0
  11. package/dist/settings.d.ts +3 -0
  12. package/dist/settings.js +16 -0
  13. package/dist/settings.js.map +1 -0
  14. package/package.json +33 -78
  15. package/dist/api.d.ts +0 -494
  16. package/dist/api.js +0 -532
  17. package/dist/api.js.map +0 -1
  18. package/dist/builtin-registry-wSfsQBi4.js +0 -563
  19. package/dist/builtin-registry-wSfsQBi4.js.map +0 -1
  20. package/dist/footer-BAZIMVSb.js +0 -1
  21. package/dist/handoff-C6wR2mSG.js +0 -28
  22. package/dist/handoff-C6wR2mSG.js.map +0 -1
  23. package/dist/hooks-resolution-qlhPfMFJ.js +0 -485
  24. package/dist/hooks-resolution-qlhPfMFJ.js.map +0 -1
  25. package/dist/openrouter-fusion-config-BWsHBPQv.js +0 -65
  26. package/dist/openrouter-fusion-config-BWsHBPQv.js.map +0 -1
  27. package/dist/prompt-presets-XraV03Ed.js +0 -1402
  28. package/dist/prompt-presets-XraV03Ed.js.map +0 -1
  29. package/dist/session-name-CD6TVRnh.js +0 -158
  30. package/dist/session-name-CD6TVRnh.js.map +0 -1
  31. package/dist/settings-BCn3P9qH.js +0 -177
  32. package/dist/settings-BCn3P9qH.js.map +0 -1
  33. package/dist/startup-screen-DUeBWuAc.js +0 -218
  34. package/dist/startup-screen-DUeBWuAc.js.map +0 -1
  35. package/dist/turn-timer-CoyDI4gQ.js +0 -64
  36. package/dist/turn-timer-CoyDI4gQ.js.map +0 -1
  37. package/dist/umans-provider-C2UJ4qkO.js +0 -307
  38. package/dist/umans-provider-C2UJ4qkO.js.map +0 -1
package/dist/api.d.ts DELETED
@@ -1,494 +0,0 @@
1
- import { AgentSessionRuntime, CreateAgentSessionFromServicesOptions, ExtensionAPI, ExtensionFactory, ExtensionFactory as ExtensionFactory$1, InlineExtension, InlineExtension as InlineExtension$1, InteractiveMode, InteractiveModeOptions, PrintModeOptions, runPrintMode, runRpcMode } from "@earendil-works/pi-coding-agent";
2
- import { Api, Model } from "@earendil-works/pi-ai";
3
- import "@spences10/pi-footer";
4
- //#region src/extensions/startup-screen/index.d.ts
5
- declare function startup_screen_extension(pi: ExtensionAPI): void;
6
- //#endregion
7
- //#region src/extensions/prompt-presets/index.d.ts
8
- declare function prompt_presets(pi: ExtensionAPI): Promise<void>;
9
- //#endregion
10
- //#region src/extensions/turn-timer/index.d.ts
11
- declare function turn_timer(pi: ExtensionAPI): void;
12
- //#endregion
13
- //#region src/extensions/session-name/index.d.ts
14
- declare function session_name(pi: ExtensionAPI): Promise<void>;
15
- //#endregion
16
- //#region src/extensions/handoff/index.d.ts
17
- declare function handoff(pi: ExtensionAPI): void;
18
- //#endregion
19
- //#region src/extensions/builtin-registry.d.ts
20
- declare const BUILTIN_EXTENSION_REGISTRY: readonly [{
21
- readonly key: 'context-sidecar';
22
- readonly label: 'Context sidecar';
23
- readonly docs_label: 'SQLite context sidecar';
24
- readonly description: 'Local SQLite FTS sidecar for oversized tool output';
25
- readonly default_enabled: true;
26
- readonly option_name: 'context_sidecar';
27
- readonly cli_arg: 'no-context-sidecar';
28
- readonly cli_flag: '--no-context-sidecar';
29
- readonly cli_description: 'Disable SQLite context sidecar for large tool output';
30
- readonly aliases: readonly ["context-sidecar", "context", "sidecar"];
31
- readonly external_package_name: '@spences10/pi-context';
32
- readonly load: () => Promise<typeof import("@spences10/pi-context").default>;
33
- }, {
34
- readonly key: 'mcp';
35
- readonly label: 'MCP';
36
- readonly docs_label: 'MCP';
37
- readonly description: 'MCP server integration and /mcp command';
38
- readonly default_enabled: true;
39
- readonly option_name: 'mcp';
40
- readonly cli_arg: 'no-mcp';
41
- readonly cli_flag: '--no-mcp';
42
- readonly cli_description: 'Disable built-in MCP extension';
43
- readonly aliases: readonly ["mcp"];
44
- readonly external_package_name: '@spences10/pi-mcp';
45
- readonly load: () => Promise<typeof import("@spences10/pi-mcp").default>;
46
- }, {
47
- readonly key: 'openrouter-fusion-config';
48
- readonly label: 'OpenRouter Fusion config';
49
- readonly docs_label: 'OpenRouter Fusion config guard';
50
- readonly description: 'Keeps OpenRouter Fusion off Anthropic by injecting a non-Anthropic panel and judge';
51
- readonly default_enabled: true;
52
- readonly option_name: 'openrouter_fusion_config';
53
- readonly cli_arg: 'no-openrouter-fusion-config';
54
- readonly cli_flag: '--no-openrouter-fusion-config';
55
- readonly cli_description: 'Disable OpenRouter Fusion non-Anthropic config';
56
- readonly aliases: readonly ["openrouter-fusion-config", "fusion-budget"];
57
- readonly load: () => Promise<ExtensionFactory$1>;
58
- }, {
59
- readonly key: 'umans-provider';
60
- readonly label: 'Umans provider';
61
- readonly docs_label: 'Umans provider';
62
- readonly description: 'Umans.ai Anthropic Messages provider with API key login support';
63
- readonly default_enabled: true;
64
- readonly option_name: 'umans_provider';
65
- readonly cli_arg: 'no-umans-provider';
66
- readonly cli_flag: '--no-umans-provider';
67
- readonly cli_description: 'Disable built-in Umans provider';
68
- readonly aliases: readonly ["umans-provider", "umans"];
69
- readonly load: () => Promise<ExtensionFactory$1>;
70
- }, {
71
- readonly key: 'footer';
72
- readonly label: 'Footer';
73
- readonly docs_label: 'Footer';
74
- readonly description: 'Configurable interactive footer/statusline';
75
- readonly default_enabled: true;
76
- readonly option_name: 'footer';
77
- readonly cli_arg: 'no-footer';
78
- readonly cli_flag: '--no-footer';
79
- readonly cli_description: 'Disable custom footer/statusline';
80
- readonly aliases: readonly ["footer", "statusline", "status-line"];
81
- readonly mode_constraints: {
82
- readonly disabled_in: readonly ["print", "json", "rpc"];
83
- readonly reason: 'Footer only renders in the interactive TUI';
84
- };
85
- readonly load: () => Promise<typeof import("@spences10/pi-footer").default>;
86
- }, {
87
- readonly key: 'codex-usage';
88
- readonly label: 'Codex usage';
89
- readonly docs_label: 'Codex usage status';
90
- readonly description: 'OpenAI Codex usage status for the footer';
91
- readonly default_enabled: true;
92
- readonly option_name: 'codex_usage';
93
- readonly cli_arg: 'no-codex-usage';
94
- readonly cli_flag: '--no-codex-usage';
95
- readonly cli_description: 'Disable Codex usage footer status';
96
- readonly aliases: readonly ["codex-usage", "codex-status"];
97
- readonly external_package_name: '@spences10/pi-codex-usage';
98
- readonly load: () => Promise<typeof import("@spences10/pi-codex-usage").default>;
99
- }, {
100
- readonly key: 'kimi-usage';
101
- readonly label: 'Kimi usage';
102
- readonly docs_label: 'Kimi usage status';
103
- readonly description: 'Kimi For Coding usage status for the footer';
104
- readonly default_enabled: true;
105
- readonly option_name: 'kimi_usage';
106
- readonly cli_arg: 'no-kimi-usage';
107
- readonly cli_flag: '--no-kimi-usage';
108
- readonly cli_description: 'Disable Kimi usage footer status';
109
- readonly aliases: readonly ["kimi-usage", "kimi-status"];
110
- readonly external_package_name: '@spences10/pi-kimi-usage';
111
- readonly load: () => Promise<typeof import("@spences10/pi-kimi-usage").default>;
112
- }, {
113
- readonly key: 'harness';
114
- readonly label: 'Harness';
115
- readonly docs_label: 'Task harness runtime';
116
- readonly description: 'Ephemeral /tmp task harness runtime with tools, enforcement, and bundled skills';
117
- readonly default_enabled: true;
118
- readonly option_name: 'harness';
119
- readonly cli_arg: 'no-harness';
120
- readonly cli_flag: '--no-harness';
121
- readonly cli_description: 'Disable task harness runtime';
122
- readonly aliases: readonly ["harness", "task-harness"];
123
- readonly external_package_name: '@spences10/pi-harness';
124
- readonly load: () => Promise<typeof import("@spences10/pi-harness").default>;
125
- }, {
126
- readonly key: 'factory';
127
- readonly label: 'Software factory (experimental)';
128
- readonly docs_label: 'Experimental software-factory control plane';
129
- readonly description: 'Paused experimental workflow control plane; enable explicitly for Factory v1 evaluation only';
130
- readonly default_enabled: false;
131
- readonly option_name: 'factory';
132
- readonly cli_arg: 'no-factory';
133
- readonly cli_flag: '--no-factory';
134
- readonly cli_description: 'Disable software-factory control plane';
135
- readonly aliases: readonly ["factory", "software-factory", "control-plane"];
136
- readonly external_package_name: '@spences10/pi-factory';
137
- readonly load: () => Promise<typeof import("@spences10/pi-factory").default>;
138
- }, {
139
- readonly key: 'skills';
140
- readonly label: 'Skills';
141
- readonly docs_label: 'Skills';
142
- readonly description: 'Managed pi-native skills and /skills command';
143
- readonly default_enabled: true;
144
- readonly option_name: 'skills';
145
- readonly cli_arg: 'no-skills';
146
- readonly cli_flag: '--no-skills';
147
- readonly cli_description: 'Disable built-in skills extension';
148
- readonly aliases: readonly ["skills", "skill"];
149
- readonly external_package_name: '@spences10/pi-skills';
150
- readonly load: () => Promise<typeof import("@spences10/pi-skills").default>;
151
- }, {
152
- readonly key: 'skill-importer';
153
- readonly label: 'Skill importer';
154
- readonly docs_label: 'Skill importer';
155
- readonly description: 'Import external Claude/plugin skills into Pi-native storage';
156
- readonly default_enabled: true;
157
- readonly option_name: 'skill_importer';
158
- readonly cli_arg: 'no-skill-importer';
159
- readonly cli_flag: '--no-skill-importer';
160
- readonly cli_description: 'Disable external skill importer extension';
161
- readonly aliases: readonly ["skill-importer", "import-skills", "skill-import"];
162
- readonly external_package_name: '@spences10/pi-skill-importer';
163
- readonly load: () => Promise<typeof import("@spences10/pi-skill-importer").default>;
164
- }, {
165
- readonly key: 'filter-output';
166
- readonly label: 'Secret redaction';
167
- readonly docs_label: 'Secret redaction';
168
- readonly description: 'Redacts secrets from tool output before the model sees them';
169
- readonly default_enabled: true;
170
- readonly option_name: 'filter_output';
171
- readonly cli_arg: 'no-filter';
172
- readonly cli_flag: '--no-filter';
173
- readonly cli_description: 'Disable secret redaction in tool output';
174
- readonly aliases: readonly ["filter-output", "filter_output", "filter", "redaction", "secret-redaction", "output-redaction"];
175
- readonly external_package_name: '@spences10/pi-redact';
176
- readonly load: () => Promise<typeof import("@spences10/pi-redact").default>;
177
- }, {
178
- readonly key: 'recall';
179
- readonly label: 'Recall';
180
- readonly docs_label: 'Recall';
181
- readonly description: 'pirecall reminder and background session sync';
182
- readonly default_enabled: true;
183
- readonly option_name: 'recall';
184
- readonly cli_arg: 'no-recall';
185
- readonly cli_flag: '--no-recall';
186
- readonly cli_description: 'Disable recall extension';
187
- readonly aliases: readonly ["recall", "pirecall"];
188
- readonly external_package_name: '@spences10/pi-recall';
189
- readonly load: () => Promise<typeof import("@spences10/pi-recall").default>;
190
- }, {
191
- readonly key: 'nopeek';
192
- readonly label: 'Nopeek';
193
- readonly docs_label: 'Nopeek';
194
- readonly description: 'nopeek reminder for secret-safe environment loading';
195
- readonly default_enabled: true;
196
- readonly option_name: 'nopeek';
197
- readonly cli_arg: 'no-nopeek';
198
- readonly cli_flag: '--no-nopeek';
199
- readonly cli_description: 'Disable nopeek reminder extension';
200
- readonly aliases: readonly ["nopeek", "secrets", "secret-loading"];
201
- readonly external_package_name: '@spences10/pi-nopeek';
202
- readonly load: () => Promise<typeof import("@spences10/pi-nopeek").default>;
203
- }, {
204
- readonly key: 'observability';
205
- readonly label: 'Observability';
206
- readonly docs_label: 'Live observability';
207
- readonly description: 'Optional live event stream and local browser dashboard';
208
- readonly default_enabled: true;
209
- readonly option_name: 'observability';
210
- readonly cli_arg: 'no-observability';
211
- readonly cli_flag: '--no-observability';
212
- readonly cli_description: 'Disable live observability extension';
213
- readonly aliases: readonly ["observability", "obs", "live-events"];
214
- readonly external_package_name: '@spences10/pi-observability';
215
- readonly load: () => Promise<typeof import("@spences10/pi-observability").default>;
216
- }, {
217
- readonly key: 'omnisearch';
218
- readonly label: 'Omnisearch';
219
- readonly docs_label: 'Omnisearch';
220
- readonly description: 'mcp-omnisearch reminder for verified web research';
221
- readonly default_enabled: true;
222
- readonly option_name: 'omnisearch';
223
- readonly cli_arg: 'no-omnisearch';
224
- readonly cli_flag: '--no-omnisearch';
225
- readonly cli_description: 'Disable mcp-omnisearch reminder extension';
226
- readonly aliases: readonly ["omnisearch", "search", "web-search", "research"];
227
- readonly external_package_name: '@spences10/pi-omnisearch';
228
- readonly load: () => Promise<typeof import("@spences10/pi-omnisearch").default>;
229
- }, {
230
- readonly key: 'sqlite-tools';
231
- readonly label: 'SQLite tools';
232
- readonly docs_label: 'SQLite tools';
233
- readonly description: 'mcp-sqlite-tools reminder for safer SQLite database work';
234
- readonly default_enabled: true;
235
- readonly option_name: 'sqlite_tools';
236
- readonly cli_arg: 'no-sqlite-tools';
237
- readonly cli_flag: '--no-sqlite-tools';
238
- readonly cli_description: 'Disable mcp-sqlite-tools reminder extension';
239
- readonly aliases: readonly ["sqlite-tools", "sqlite", "mcp-sqlite-tools"];
240
- readonly external_package_name: '@spences10/pi-sqlite-tools';
241
- readonly load: () => Promise<typeof import("@spences10/pi-sqlite-tools").default>;
242
- }, {
243
- readonly key: 'talk';
244
- readonly label: 'Talk';
245
- readonly docs_label: 'Hold-Space dictation';
246
- readonly description: 'Hold Space to dictate into the input editor';
247
- readonly default_enabled: true;
248
- readonly option_name: 'talk';
249
- readonly cli_arg: 'no-talk';
250
- readonly cli_flag: '--no-talk';
251
- readonly cli_description: 'Disable hold-Space dictation';
252
- readonly aliases: readonly ["talk", "voice", "dictation"];
253
- readonly external_package_name: '@spences10/pi-talk';
254
- readonly mode_constraints: {
255
- readonly disabled_in: readonly ["print", "json", "rpc"];
256
- readonly reason: 'Talk requires the interactive TUI';
257
- };
258
- readonly load: () => Promise<typeof import("@spences10/pi-talk").default>;
259
- }, {
260
- readonly key: 'starfield';
261
- readonly label: 'Starfield';
262
- readonly docs_label: 'Starfield';
263
- readonly description: 'Subtle twinkling stars in the input editor';
264
- readonly default_enabled: true;
265
- readonly option_name: 'starfield';
266
- readonly cli_arg: 'no-starfield';
267
- readonly cli_flag: '--no-starfield';
268
- readonly cli_description: 'Disable the input star field';
269
- readonly aliases: readonly ["starfield", "stars"];
270
- readonly external_package_name: '@spences10/pi-starfield';
271
- readonly mode_constraints: {
272
- readonly disabled_in: readonly ["print", "json", "rpc"];
273
- readonly reason: 'Starfield only renders in the interactive TUI';
274
- };
275
- readonly load: () => Promise<typeof import("@spences10/pi-starfield").default>;
276
- }, {
277
- readonly key: 'startup-screen';
278
- readonly label: 'Startup screen';
279
- readonly docs_label: 'Startup screen';
280
- readonly description: 'Pixel-art gradient startup header for interactive sessions';
281
- readonly default_enabled: true;
282
- readonly option_name: 'startup_screen';
283
- readonly cli_arg: 'no-startup-screen';
284
- readonly cli_flag: '--no-startup-screen';
285
- readonly cli_description: 'Disable the custom startup screen';
286
- readonly aliases: readonly ["startup-screen", "startup", "header", "splash"];
287
- readonly mode_constraints: {
288
- readonly disabled_in: readonly ["print", "json", "rpc"];
289
- readonly reason: 'Startup screen only renders in the interactive TUI';
290
- };
291
- readonly load: () => Promise<typeof startup_screen_extension>;
292
- }, {
293
- readonly key: 'prompt-presets';
294
- readonly label: 'Prompt presets';
295
- readonly docs_label: 'Prompt presets';
296
- readonly description: 'Runtime prompt preset selection and /prompt-preset command';
297
- readonly default_enabled: true;
298
- readonly option_name: 'prompt_presets';
299
- readonly cli_arg: 'no-prompt-presets';
300
- readonly cli_flag: '--no-prompt-presets';
301
- readonly cli_description: 'Disable prompt presets extension';
302
- readonly aliases: readonly ["prompt-preset", "preset", "presets"];
303
- readonly load: () => Promise<typeof prompt_presets>;
304
- }, {
305
- readonly key: 'turn-timer';
306
- readonly label: 'Turn timer';
307
- readonly docs_label: 'Turn timer';
308
- readonly description: 'Live elapsed timer beside the working spinner with persisted turn durations';
309
- readonly default_enabled: true;
310
- readonly option_name: 'turn_timer';
311
- readonly cli_arg: 'no-turn-timer';
312
- readonly cli_flag: '--no-turn-timer';
313
- readonly cli_description: 'Disable the working spinner turn timer';
314
- readonly aliases: readonly ["turn-timer", "timer", "elapsed-time"];
315
- readonly mode_constraints: {
316
- readonly disabled_in: readonly ["print", "json", "rpc"];
317
- readonly reason: 'The live timer is only useful in the interactive TUI';
318
- };
319
- readonly load: () => Promise<typeof turn_timer>;
320
- }, {
321
- readonly key: 'git-ui';
322
- readonly label: 'Git UI';
323
- readonly docs_label: 'Git staging UI';
324
- readonly description: 'Interactive source control staging panel';
325
- readonly default_enabled: true;
326
- readonly option_name: 'git_ui';
327
- readonly cli_arg: 'no-git-ui';
328
- readonly cli_flag: '--no-git-ui';
329
- readonly cli_description: 'Disable built-in Git staging UI';
330
- readonly aliases: readonly ["git-ui", "git", "source-control", "scm"];
331
- readonly mode_constraints: {
332
- readonly disabled_in: readonly ["print", "json", "rpc"];
333
- readonly reason: 'Git UI is only useful in interactive mode';
334
- };
335
- readonly external_package_name: '@spences10/pi-git-ui';
336
- readonly load: () => Promise<typeof import("@spences10/pi-git-ui").default>;
337
- }, {
338
- readonly key: 'lsp';
339
- readonly label: 'LSP';
340
- readonly docs_label: 'LSP';
341
- readonly description: 'Language Server Protocol tools (diagnostics, hover, definition, references)';
342
- readonly default_enabled: true;
343
- readonly option_name: 'lsp';
344
- readonly cli_arg: 'no-lsp';
345
- readonly cli_flag: '--no-lsp';
346
- readonly cli_description: 'Disable LSP extension';
347
- readonly aliases: readonly ["lsp", "language-server"];
348
- readonly external_package_name: '@spences10/pi-lsp';
349
- readonly load: () => Promise<(pi: import("@earendil-works/pi-coding-agent").ExtensionAPI) => Promise<void>>;
350
- }, {
351
- readonly key: 'session-name';
352
- readonly label: 'Session name';
353
- readonly docs_label: 'Session auto-naming';
354
- readonly description: 'AI-powered session auto-naming and /session-name command';
355
- readonly default_enabled: true;
356
- readonly option_name: 'session_name';
357
- readonly cli_arg: 'no-session-name';
358
- readonly cli_flag: '--no-session-name';
359
- readonly cli_description: 'Disable session name extension';
360
- readonly aliases: readonly ["session-name", "session", "auto-name"];
361
- readonly mode_constraints: {
362
- readonly disabled_in: readonly ["print", "json", "rpc"];
363
- readonly reason: 'UI-only session naming is only useful in interactive mode';
364
- };
365
- readonly load: () => Promise<typeof session_name>;
366
- }, {
367
- readonly key: 'confirm-destructive';
368
- readonly label: 'Confirm destructive';
369
- readonly docs_label: 'Destructive action confirmation';
370
- readonly description: 'Prompt before destructive tool calls like file deletes, overwrites, and hard resets';
371
- readonly default_enabled: true;
372
- readonly option_name: 'confirm_destructive';
373
- readonly cli_arg: 'no-confirm-destructive';
374
- readonly cli_flag: '--no-confirm-destructive';
375
- readonly cli_description: 'Disable destructive action confirmations';
376
- readonly aliases: readonly ["confirm-destructive", "confirm"];
377
- readonly external_package_name: '@spences10/pi-confirm-destructive';
378
- readonly load: () => Promise<typeof import("@spences10/pi-confirm-destructive").default>;
379
- }, {
380
- readonly key: 'hooks-resolution';
381
- readonly label: 'Hooks resolution';
382
- readonly docs_label: 'Hooks resolution';
383
- readonly description: 'Claude Code style PreToolUse and PostToolUse hook compatibility from .claude, .rulesync, and .pi configs';
384
- readonly default_enabled: true;
385
- readonly option_name: 'hooks_resolution';
386
- readonly cli_arg: 'no-hooks';
387
- readonly cli_flag: '--no-hooks';
388
- readonly cli_description: 'Disable Claude-style hook execution';
389
- readonly aliases: readonly ["hooks-resolution", "hooks"];
390
- readonly load: () => Promise<ExtensionFactory$1>;
391
- }, {
392
- readonly key: 'svelte-guardrails';
393
- readonly label: 'Svelte guardrails';
394
- readonly docs_label: 'Svelte guardrails';
395
- readonly description: 'Blocks discouraged Svelte patterns like $effect before agents write them';
396
- readonly default_enabled: true;
397
- readonly option_name: 'svelte_guardrails';
398
- readonly cli_arg: 'no-svelte-guardrails';
399
- readonly cli_flag: '--no-svelte-guardrails';
400
- readonly cli_description: 'Disable Svelte guardrails';
401
- readonly aliases: readonly ["svelte-guardrails", "svelte"];
402
- readonly external_package_name: '@spences10/pi-svelte-guardrails';
403
- readonly load: () => Promise<typeof import("@spences10/pi-svelte-guardrails").default>;
404
- }, {
405
- readonly key: 'coding-preferences';
406
- readonly label: 'Coding preferences';
407
- readonly docs_label: 'Coding preferences';
408
- readonly description: 'Blocks configured coding workflow anti-patterns from JSON preferences';
409
- readonly default_enabled: true;
410
- readonly option_name: 'coding_preferences';
411
- readonly cli_arg: 'no-coding-preferences';
412
- readonly cli_flag: '--no-coding-preferences';
413
- readonly cli_description: 'Disable coding preferences guardrails';
414
- readonly aliases: readonly ["coding-preferences", "preferences", "prefs"];
415
- readonly external_package_name: '@spences10/pi-coding-preferences';
416
- readonly load: () => Promise<typeof import("@spences10/pi-coding-preferences").default>;
417
- }, {
418
- readonly key: 'handoff';
419
- readonly label: 'Handoff';
420
- readonly docs_label: 'Handoff';
421
- readonly description: 'Help command for Pi continuation primitives like /fork, /tree, /export, /import, and /share';
422
- readonly default_enabled: true;
423
- readonly option_name: 'handoff';
424
- readonly cli_arg: 'no-handoff';
425
- readonly cli_flag: '--no-handoff';
426
- readonly cli_description: 'Disable handoff helper command';
427
- readonly aliases: readonly ["handoff", "continuation"];
428
- readonly load: () => Promise<typeof handoff>;
429
- }, {
430
- readonly key: 'team-mode';
431
- readonly label: 'Team mode';
432
- readonly docs_label: 'Team mode';
433
- readonly description: 'Peer coordination between independently opened Pi sessions with groups, artifacts, and durable mailboxes';
434
- readonly default_enabled: true;
435
- readonly option_name: 'team_mode';
436
- readonly cli_arg: 'no-team-mode';
437
- readonly cli_flag: '--no-team-mode';
438
- readonly cli_description: 'Disable peer-session team mode extension';
439
- readonly aliases: readonly ["team-mode", "team", "teammates"];
440
- readonly external_package_name: '@spences10/pi-team-mode';
441
- readonly load: () => Promise<typeof import("@spences10/pi-team-mode").default>;
442
- }];
443
- type BuiltinExtensionKey = (typeof BUILTIN_EXTENSION_REGISTRY)[number]['key'];
444
- type BuiltinExtensionOptionName = (typeof BUILTIN_EXTENSION_REGISTRY)[number]['option_name'];
445
- //#endregion
446
- //#region src/api/options.d.ts
447
- type MyPiRuntimeMode = 'interactive' | 'print' | 'json' | 'rpc';
448
- type MyPiThinkingLevel = NonNullable<CreateAgentSessionFromServicesOptions['thinkingLevel']>;
449
- type BuiltinExtensionOptions = Partial<Record<BuiltinExtensionOptionName, boolean>>;
450
- interface CreateMyPiOptions extends BuiltinExtensionOptions {
451
- cwd?: string;
452
- agent_dir?: string;
453
- extensions?: string[];
454
- /** Named wrappers must not use the reserved `my-pi-` prefix. */
455
- extensionFactories?: InlineExtension$1[];
456
- extension_flag_values?: Map<string, boolean | string>;
457
- runtime_mode?: MyPiRuntimeMode;
458
- telemetry?: boolean;
459
- telemetry_db_path?: string;
460
- model?: string;
461
- thinking?: MyPiThinkingLevel;
462
- selected_tools?: string[];
463
- excluded_tools?: string[];
464
- selected_skills?: string[];
465
- session?: string;
466
- session_id?: string;
467
- startup_session_name?: string;
468
- session_dir?: string;
469
- system_prompt?: string;
470
- append_system_prompt?: string;
471
- untrusted_repo?: boolean;
472
- }
473
- //#endregion
474
- //#region src/api/builtin-extensions.d.ts
475
- type BuiltinExtensionLoader = () => Promise<ExtensionFactory$1>;
476
- export declare function get_force_disabled_builtins(options: Pick<CreateMyPiOptions, 'runtime_mode'> & BuiltinExtensionOptions): Set<BuiltinExtensionKey>;
477
- export declare function get_externally_installed_builtin_extensions(agent_dir: string): Set<BuiltinExtensionKey>;
478
- export declare function create_lazy_builtin_extension_factory(key: BuiltinExtensionKey, load_extension: BuiltinExtensionLoader, force_disabled: ReadonlySet<BuiltinExtensionKey>): ExtensionFactory$1;
479
- //#endregion
480
- //#region src/api/env.d.ts
481
- export declare function apply_untrusted_repo_defaults(env?: NodeJS.ProcessEnv): string[];
482
- //#endregion
483
- //#region src/api/models.d.ts
484
- interface ModelsLike {
485
- getModels(): readonly Model<Api>[];
486
- }
487
- export declare function resolve_model_reference(model_reference: string | undefined, models_runtime: ModelsLike): Model<Api> | undefined;
488
- export declare function resolve_effective_thinking_level(model: Model<Api> | undefined, thinking: MyPiThinkingLevel | undefined): MyPiThinkingLevel | undefined;
489
- //#endregion
490
- //#region src/api.d.ts
491
- export declare function create_my_pi(options?: CreateMyPiOptions): Promise<import("@earendil-works/pi-coding-agent").AgentSessionRuntime>;
492
- //#endregion
493
- export { type AgentSessionRuntime, type CreateMyPiOptions, type ExtensionFactory, type InlineExtension, InteractiveMode, type InteractiveModeOptions, type MyPiRuntimeMode, type MyPiThinkingLevel, type PrintModeOptions, runPrintMode, runRpcMode };
494
- //# sourceMappingURL=api.d.ts.map