@vibesdotdev/integrations-pi 0.0.0-stage → 1.0.0-rc.1

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 (163) hide show
  1. package/LICENSE +126 -0
  2. package/REFERENCE.md +284 -0
  3. package/dist/extension/active-tools.d.ts +17 -0
  4. package/dist/extension/active-tools.d.ts.map +1 -0
  5. package/dist/extension/active-tools.js +47 -0
  6. package/dist/extension/active-tools.js.map +1 -0
  7. package/dist/extension/approvals.d.ts +26 -0
  8. package/dist/extension/approvals.d.ts.map +1 -0
  9. package/dist/extension/approvals.js +124 -0
  10. package/dist/extension/approvals.js.map +1 -0
  11. package/dist/extension/boot.d.ts +18 -0
  12. package/dist/extension/boot.d.ts.map +1 -0
  13. package/dist/extension/boot.js +129 -0
  14. package/dist/extension/boot.js.map +1 -0
  15. package/dist/extension/chrome.d.ts +37 -0
  16. package/dist/extension/chrome.d.ts.map +1 -0
  17. package/dist/extension/chrome.js +160 -0
  18. package/dist/extension/chrome.js.map +1 -0
  19. package/dist/extension/commands.d.ts +41 -0
  20. package/dist/extension/commands.d.ts.map +1 -0
  21. package/dist/extension/commands.js +47 -0
  22. package/dist/extension/commands.js.map +1 -0
  23. package/dist/extension/entry.d.ts +9 -0
  24. package/dist/extension/entry.d.ts.map +1 -0
  25. package/dist/extension/entry.js +16 -0
  26. package/dist/extension/entry.js.map +1 -0
  27. package/dist/extension/events.d.ts +17 -0
  28. package/dist/extension/events.d.ts.map +1 -0
  29. package/dist/extension/events.js +42 -0
  30. package/dist/extension/events.js.map +1 -0
  31. package/dist/extension/index.d.ts +54 -0
  32. package/dist/extension/index.d.ts.map +1 -0
  33. package/dist/extension/index.js +547 -0
  34. package/dist/extension/index.js.map +1 -0
  35. package/dist/extension/models.d.ts +30 -0
  36. package/dist/extension/models.d.ts.map +1 -0
  37. package/dist/extension/models.js +104 -0
  38. package/dist/extension/models.js.map +1 -0
  39. package/dist/extension/render.d.ts +17 -0
  40. package/dist/extension/render.d.ts.map +1 -0
  41. package/dist/extension/render.js +107 -0
  42. package/dist/extension/render.js.map +1 -0
  43. package/dist/extension/runtime-host.d.ts +6 -0
  44. package/dist/extension/runtime-host.d.ts.map +1 -0
  45. package/dist/extension/runtime-host.js +2 -0
  46. package/dist/extension/runtime-host.js.map +1 -0
  47. package/dist/external/external.plugin.d.ts +7 -0
  48. package/dist/external/external.plugin.d.ts.map +1 -0
  49. package/dist/external/external.plugin.js +44 -0
  50. package/dist/external/external.plugin.js.map +1 -0
  51. package/dist/external/index.d.ts +8 -0
  52. package/dist/external/index.d.ts.map +1 -0
  53. package/dist/external/index.js +8 -0
  54. package/dist/external/index.js.map +1 -0
  55. package/dist/external/pi/bootstrap.d.ts +34 -0
  56. package/dist/external/pi/bootstrap.d.ts.map +1 -0
  57. package/dist/external/pi/bootstrap.js +238 -0
  58. package/dist/external/pi/bootstrap.js.map +1 -0
  59. package/dist/external/pi/guide.d.ts +3 -0
  60. package/dist/external/pi/guide.d.ts.map +1 -0
  61. package/dist/external/pi/guide.js +33 -0
  62. package/dist/external/pi/guide.js.map +1 -0
  63. package/dist/external/pi/index.d.ts +162 -0
  64. package/dist/external/pi/index.d.ts.map +1 -0
  65. package/dist/external/pi/index.js +7 -0
  66. package/dist/external/pi/index.js.map +1 -0
  67. package/dist/external/pi/installer.d.ts +19 -0
  68. package/dist/external/pi/installer.d.ts.map +1 -0
  69. package/dist/external/pi/installer.descriptor.d.ts +373 -0
  70. package/dist/external/pi/installer.descriptor.d.ts.map +1 -0
  71. package/dist/external/pi/installer.descriptor.js +43 -0
  72. package/dist/external/pi/installer.descriptor.js.map +1 -0
  73. package/dist/external/pi/installer.js +82 -0
  74. package/dist/external/pi/installer.js.map +1 -0
  75. package/dist/external/pi/installers/errors.d.ts +16 -0
  76. package/dist/external/pi/installers/errors.d.ts.map +1 -0
  77. package/dist/external/pi/installers/errors.js +15 -0
  78. package/dist/external/pi/installers/errors.js.map +1 -0
  79. package/dist/external/pi/installers/extension.d.ts +16 -0
  80. package/dist/external/pi/installers/extension.d.ts.map +1 -0
  81. package/dist/external/pi/installers/extension.js +292 -0
  82. package/dist/external/pi/installers/extension.js.map +1 -0
  83. package/dist/external/pi/installers/plan.d.ts +29 -0
  84. package/dist/external/pi/installers/plan.d.ts.map +1 -0
  85. package/dist/external/pi/installers/plan.js +391 -0
  86. package/dist/external/pi/installers/plan.js.map +1 -0
  87. package/dist/external/pi/installers/transaction.d.ts +5 -0
  88. package/dist/external/pi/installers/transaction.d.ts.map +1 -0
  89. package/dist/external/pi/installers/transaction.js +66 -0
  90. package/dist/external/pi/installers/transaction.js.map +1 -0
  91. package/dist/external/pi/manifest.d.ts +6 -0
  92. package/dist/external/pi/manifest.d.ts.map +1 -0
  93. package/dist/external/pi/manifest.js +91 -0
  94. package/dist/external/pi/manifest.js.map +1 -0
  95. package/dist/external/pi-presets.d.ts +817 -0
  96. package/dist/external/pi-presets.d.ts.map +1 -0
  97. package/dist/external/pi-presets.js +75 -0
  98. package/dist/external/pi-presets.js.map +1 -0
  99. package/dist/harness/constants.d.ts +46 -0
  100. package/dist/harness/constants.d.ts.map +1 -0
  101. package/dist/harness/constants.js +52 -0
  102. package/dist/harness/constants.js.map +1 -0
  103. package/dist/harness/identity.d.ts +29 -0
  104. package/dist/harness/identity.d.ts.map +1 -0
  105. package/dist/harness/identity.js +40 -0
  106. package/dist/harness/identity.js.map +1 -0
  107. package/dist/harness/index.d.ts +19 -0
  108. package/dist/harness/index.d.ts.map +1 -0
  109. package/dist/harness/index.js +18 -0
  110. package/dist/harness/index.js.map +1 -0
  111. package/dist/harness/managed-block.d.ts +20 -0
  112. package/dist/harness/managed-block.d.ts.map +1 -0
  113. package/dist/harness/managed-block.js +23 -0
  114. package/dist/harness/managed-block.js.map +1 -0
  115. package/dist/harness/pi-naming.d.ts +32 -0
  116. package/dist/harness/pi-naming.d.ts.map +1 -0
  117. package/dist/harness/pi-naming.js +110 -0
  118. package/dist/harness/pi-naming.js.map +1 -0
  119. package/dist/harness/preflight.d.ts +5 -0
  120. package/dist/harness/preflight.d.ts.map +1 -0
  121. package/dist/harness/preflight.js +163 -0
  122. package/dist/harness/preflight.js.map +1 -0
  123. package/dist/harness/prompt.d.ts +14 -0
  124. package/dist/harness/prompt.d.ts.map +1 -0
  125. package/dist/harness/prompt.js +15 -0
  126. package/dist/harness/prompt.js.map +1 -0
  127. package/dist/harness/runtime.d.ts +137 -0
  128. package/dist/harness/runtime.d.ts.map +1 -0
  129. package/dist/harness/runtime.js +53 -0
  130. package/dist/harness/runtime.js.map +1 -0
  131. package/dist/harness/scope.d.ts +11 -0
  132. package/dist/harness/scope.d.ts.map +1 -0
  133. package/dist/harness/scope.js +47 -0
  134. package/dist/harness/scope.js.map +1 -0
  135. package/dist/harness/themes.d.ts +30 -0
  136. package/dist/harness/themes.d.ts.map +1 -0
  137. package/dist/harness/themes.js +225 -0
  138. package/dist/harness/themes.js.map +1 -0
  139. package/dist/index.d.ts +2 -0
  140. package/dist/index.d.ts.map +1 -0
  141. package/dist/index.js +2 -0
  142. package/dist/index.js.map +1 -0
  143. package/dist/schemas/extension-api.d.ts +102 -0
  144. package/dist/schemas/extension-api.d.ts.map +1 -0
  145. package/dist/schemas/extension-api.js +2 -0
  146. package/dist/schemas/extension-api.js.map +1 -0
  147. package/dist/schemas/extension-host.d.ts +11 -0
  148. package/dist/schemas/extension-host.d.ts.map +1 -0
  149. package/dist/schemas/extension-host.js +12 -0
  150. package/dist/schemas/extension-host.js.map +1 -0
  151. package/dist/schemas/extension.d.ts +212 -0
  152. package/dist/schemas/extension.d.ts.map +1 -0
  153. package/dist/schemas/extension.js +93 -0
  154. package/dist/schemas/extension.js.map +1 -0
  155. package/dist/schemas/installer.d.ts +872 -0
  156. package/dist/schemas/installer.d.ts.map +1 -0
  157. package/dist/schemas/installer.js +138 -0
  158. package/dist/schemas/installer.js.map +1 -0
  159. package/dist/themes/vibes-dark.json +63 -0
  160. package/dist/themes/vibes-high-contrast.json +63 -0
  161. package/dist/themes/vibes-light.json +63 -0
  162. package/package.json +110 -4
  163. package/README.md +0 -3
@@ -0,0 +1,225 @@
1
+ import { PiThemeNameSchema } from "../schemas/installer.js";
2
+ /**
3
+ * Pi theme files projected from the Studio semantic palettes.
4
+ *
5
+ * Source of the hex values: `@vibesdotdev/tui` `src/theme.semantic.ts`.
6
+ * Pi cannot load OpenTUI, so this package stores the host-native JSON copy
7
+ * rather than importing `@vibesdotdev/tui/theme`.
8
+ */
9
+ export const PI_THEMES_DIR = 'themes';
10
+ export const PI_THEME_NAMES = ['vibes-dark', 'vibes-light', 'vibes-high-contrast'];
11
+ /**
12
+ * Where the build emits the theme JSON that `package.json` `pi.themes` names.
13
+ *
14
+ * Pi loads a published package's themes by path, so the themes ship as files
15
+ * inside the package instead of being copied into the user's project by the
16
+ * installer. `scripts/emit-pi-themes.ts` writes them from the palettes below;
17
+ * nothing hand-maintains them.
18
+ */
19
+ export const PI_THEME_DIST_DIR = 'dist/themes';
20
+ /** One theme as the `pi.themes` manifest spells it: package-root relative. */
21
+ export function piThemePackagePath(filename) {
22
+ return PI_THEME_DIST_DIR + '/' + filename;
23
+ }
24
+ export const DEFAULT_PI_VIBES_THEME = 'vibes-dark';
25
+ export const PI_THEME_REF = './themes';
26
+ /** Mirrors `dsDarkTheme.colors` in `@vibesdotdev/tui` theme.semantic.ts. */
27
+ const DARK = {
28
+ background: '#09090b',
29
+ foreground: '#fafafa',
30
+ card: '#18181b',
31
+ muted: '#27272a',
32
+ mutedForeground: '#9f9fa9',
33
+ brand: '#34d399',
34
+ brandTint: '#0b2b23',
35
+ primary: '#e4e4e7',
36
+ destructive: '#ff6467',
37
+ warning: '#fab72a',
38
+ success: '#61d46a',
39
+ info: '#28bbfe',
40
+ border: '#27272a',
41
+ structuralBorder: '#202024',
42
+ ring: '#71717b',
43
+ selectedBackground: '#1f1f23',
44
+ requiredBackground: '#332b0a'
45
+ };
46
+ /** Mirrors `dsLightTheme.colors` in `@vibesdotdev/tui` theme.semantic.ts. */
47
+ const LIGHT = {
48
+ background: '#ffffff',
49
+ foreground: '#09090b',
50
+ card: '#ffffff',
51
+ muted: '#f4f4f5',
52
+ mutedForeground: '#71717b',
53
+ brand: '#047857',
54
+ brandTint: '#d1fae5',
55
+ primary: '#18181b',
56
+ destructive: '#e7000b',
57
+ warning: '#c77e00',
58
+ success: '#1d9330',
59
+ info: '#0086d4',
60
+ border: '#e4e4e7',
61
+ structuralBorder: '#d4d4d8',
62
+ ring: '#9f9fa9',
63
+ selectedBackground: '#f4f4f5',
64
+ requiredBackground: '#fef3c7'
65
+ };
66
+ /** Mirrors `dsHighContrastTheme.colors` in `@vibesdotdev/tui` theme.semantic.ts. */
67
+ const HIGH_CONTRAST = {
68
+ background: '#000000',
69
+ foreground: '#ffffff',
70
+ card: '#0a0a0a',
71
+ muted: '#1a1a1a',
72
+ mutedForeground: '#d4d4d4',
73
+ brand: '#00ff99',
74
+ brandTint: '#00331f',
75
+ primary: '#ffffff',
76
+ destructive: '#ff5555',
77
+ warning: '#ffbb33',
78
+ success: '#00cc88',
79
+ info: '#66aaff',
80
+ border: '#666666',
81
+ structuralBorder: '#333333',
82
+ ring: '#ffffff',
83
+ selectedBackground: '#262626',
84
+ requiredBackground: '#332b00'
85
+ };
86
+ export const PI_THEME_COLOR_KEYS = [
87
+ 'accent',
88
+ 'border',
89
+ 'borderAccent',
90
+ 'borderMuted',
91
+ 'success',
92
+ 'error',
93
+ 'warning',
94
+ 'muted',
95
+ 'dim',
96
+ 'text',
97
+ 'thinkingText',
98
+ 'scrollbarTrack',
99
+ 'scrollbarThumb',
100
+ 'selectedBg',
101
+ 'userMessageBg',
102
+ 'userMessageText',
103
+ 'customMessageBg',
104
+ 'customMessageText',
105
+ 'customMessageLabel',
106
+ 'toolPendingBg',
107
+ 'toolSuccessBg',
108
+ 'toolErrorBg',
109
+ 'toolTitle',
110
+ 'toolOutput',
111
+ 'mdHeading',
112
+ 'mdLink',
113
+ 'mdLinkUrl',
114
+ 'mdCode',
115
+ 'mdCodeBlock',
116
+ 'mdCodeBlockBorder',
117
+ 'mdQuote',
118
+ 'mdQuoteBorder',
119
+ 'mdHr',
120
+ 'mdListBullet',
121
+ 'toolDiffAdded',
122
+ 'toolDiffRemoved',
123
+ 'toolDiffContext',
124
+ 'syntaxComment',
125
+ 'syntaxKeyword',
126
+ 'syntaxFunction',
127
+ 'syntaxVariable',
128
+ 'syntaxString',
129
+ 'syntaxNumber',
130
+ 'syntaxType',
131
+ 'syntaxOperator',
132
+ 'syntaxPunctuation',
133
+ 'thinkingOff',
134
+ 'thinkingMinimal',
135
+ 'thinkingLow',
136
+ 'thinkingMedium',
137
+ 'thinkingHigh',
138
+ 'thinkingXhigh',
139
+ 'bashMode'
140
+ ];
141
+ function colors(palette) {
142
+ return {
143
+ accent: palette.brand,
144
+ border: palette.border,
145
+ borderAccent: palette.ring,
146
+ borderMuted: palette.structuralBorder,
147
+ success: palette.success,
148
+ error: palette.destructive,
149
+ warning: palette.warning,
150
+ muted: palette.mutedForeground,
151
+ dim: palette.mutedForeground,
152
+ text: palette.foreground,
153
+ thinkingText: palette.mutedForeground,
154
+ scrollbarTrack: palette.muted,
155
+ scrollbarThumb: palette.ring,
156
+ selectedBg: palette.selectedBackground,
157
+ userMessageBg: palette.card,
158
+ userMessageText: palette.foreground,
159
+ customMessageBg: palette.brandTint,
160
+ customMessageText: palette.foreground,
161
+ customMessageLabel: palette.brand,
162
+ toolPendingBg: palette.card,
163
+ toolSuccessBg: palette.brandTint,
164
+ toolErrorBg: palette.requiredBackground,
165
+ toolTitle: palette.brand,
166
+ toolOutput: palette.foreground,
167
+ mdHeading: palette.brand,
168
+ mdLink: palette.info,
169
+ mdLinkUrl: palette.mutedForeground,
170
+ mdCode: palette.info,
171
+ mdCodeBlock: palette.foreground,
172
+ mdCodeBlockBorder: palette.border,
173
+ mdQuote: palette.mutedForeground,
174
+ mdQuoteBorder: palette.structuralBorder,
175
+ mdHr: palette.border,
176
+ mdListBullet: palette.brand,
177
+ toolDiffAdded: palette.success,
178
+ toolDiffRemoved: palette.destructive,
179
+ toolDiffContext: palette.mutedForeground,
180
+ syntaxComment: palette.mutedForeground,
181
+ syntaxKeyword: palette.info,
182
+ syntaxFunction: palette.brand,
183
+ syntaxVariable: palette.warning,
184
+ syntaxString: palette.success,
185
+ syntaxNumber: palette.info,
186
+ syntaxType: palette.info,
187
+ syntaxOperator: palette.primary,
188
+ syntaxPunctuation: palette.mutedForeground,
189
+ thinkingOff: palette.structuralBorder,
190
+ thinkingMinimal: palette.muted,
191
+ thinkingLow: palette.info,
192
+ thinkingMedium: palette.brand,
193
+ thinkingHigh: palette.warning,
194
+ thinkingXhigh: palette.destructive,
195
+ bashMode: palette.warning
196
+ };
197
+ }
198
+ function renderTheme(name, palette) {
199
+ return (JSON.stringify({
200
+ name,
201
+ vars: {
202
+ brand: palette.brand,
203
+ foreground: palette.foreground,
204
+ background: palette.background
205
+ },
206
+ colors: colors(palette)
207
+ }, null, 2) + '\n');
208
+ }
209
+ const PALETTES = {
210
+ 'vibes-dark': DARK,
211
+ 'vibes-light': LIGHT,
212
+ 'vibes-high-contrast': HIGH_CONTRAST
213
+ };
214
+ /** Exact bytes the installer writes for each Vibes Pi theme. */
215
+ export function renderPiVibesThemes() {
216
+ return PI_THEME_NAMES.map((name) => ({
217
+ name,
218
+ filename: name + '.json',
219
+ content: renderTheme(name, PALETTES[name])
220
+ }));
221
+ }
222
+ export function isPiVibesThemeName(value) {
223
+ return PiThemeNameSchema.safeParse(value).success;
224
+ }
225
+ //# sourceMappingURL=themes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"themes.js","sourceRoot":"","sources":["../../src/harness/themes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { default as externalPlugin } from './external/external.plugin.ts';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,+BAA+B,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,2 @@
1
+ export { default as externalPlugin } from "./external/external.plugin.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,+BAA+B,CAAC"}
@@ -0,0 +1,102 @@
1
+ import type { Component } from '@earendil-works/pi-tui';
2
+ import type { PiExtensionEvent, PiJson, PiObject, PiHostContext, ApprovalPosture, PiRenderContext } from './extension.ts';
3
+ import type { PiTheme } from '../extension/render.ts';
4
+ import type { ApprovalMemory } from '../extension/approvals.ts';
5
+ import type { PiRuntimeHost, PiRuntimeHostOptions } from '../extension/runtime-host.ts';
6
+ import type { LiveToolDescriptor, NormalizedLiveTool } from '@vibesdotdev/external/consumer/node/harness';
7
+ export type PiTypeField = {
8
+ type: string;
9
+ description?: string;
10
+ };
11
+ export type PiToolResult = {
12
+ content: Array<{
13
+ type: 'text';
14
+ text: string;
15
+ }>;
16
+ details: PiObject;
17
+ structuredContent?: PiJson;
18
+ };
19
+ export type PiExtensionAPI = {
20
+ registerTool: (tool: {
21
+ name: string;
22
+ label: string;
23
+ description: string;
24
+ parameters: NormalizedLiveTool['inputSchema'];
25
+ outputSchema?: PiJson;
26
+ exposure?: 'direct' | 'model-only' | 'codemode' | 'deferred' | 'hidden';
27
+ defaultActive?: boolean;
28
+ execute: (toolCallId: string, params: PiObject, signal?: AbortSignal, onUpdate?: (result: PiToolResult) => void, ctx?: PiHostContext) => Promise<PiToolResult>;
29
+ renderCall?: (args: PiObject, theme: PiTheme, context?: PiRenderContext) => Component;
30
+ renderResult?: (result: PiToolResult, options: {
31
+ expanded: boolean;
32
+ isPartial: boolean;
33
+ }, theme: PiTheme, context?: PiRenderContext) => Component;
34
+ }) => void;
35
+ on: (event: string, handler: (event: PiExtensionEvent, ctx: PiHostContext) => Promise<object | void> | object | void) => void;
36
+ registerCommand?: (name: string, options: {
37
+ description?: string;
38
+ handler: (args: string, ctx: PiHostContext) => Promise<void> | void;
39
+ }) => void;
40
+ /** Register a virtual model: a selectable catalog entry that routes each request. Optional: a Pi without it gets no model projection. */
41
+ registerVirtualModel?: (model: {
42
+ provider: string;
43
+ id: string;
44
+ name: string;
45
+ route: (request: {
46
+ thinkingLevel: PiJson;
47
+ messages: PiJson[];
48
+ }, ctx: PiHostContext & {
49
+ modelRegistry?: {
50
+ getModelOfType?: (type: string, providerId: string, modelId: string) => PiJson | undefined;
51
+ };
52
+ }) => Promise<{
53
+ model: PiJson;
54
+ thinkingLevel: PiJson;
55
+ }> | {
56
+ model: PiJson;
57
+ thinkingLevel: PiJson;
58
+ };
59
+ }) => void;
60
+ unregisterVirtualModel?: (provider: string, id: string) => void;
61
+ getActiveTools?: () => string[];
62
+ setActiveTools?: (names: string[]) => void;
63
+ };
64
+ export type CreatePiExtensionOptions = {
65
+ /**
66
+ * The Pi host's own environment. The host entry hands in the Pi process
67
+ * environment; the extension declares the Pi agent identity on it and this
68
+ * module reads no ambient env.
69
+ */
70
+ hostEnv: Record<string, string | undefined>;
71
+ /**
72
+ * The resolution root R the embedding declares (the directory whose
73
+ * `node_modules` supplies the framework it loaded). Never read from
74
+ * `hostEnv`: a root a parent process left there names the parent's graph.
75
+ */
76
+ hostRoot?: string;
77
+ workspaceRoot?: string;
78
+ /**
79
+ * Boot Pi's runtime for a workspace. Default: `bootPiRuntime`, the CLI app on
80
+ * the Node host environment. A test hands its own host.
81
+ */
82
+ bootRuntime?: (options: PiRuntimeHostOptions) => Promise<PiRuntimeHost>;
83
+ /**
84
+ * Explicit registry descriptors (tests, or hosts that already queried).
85
+ * Default: the booted runtime's live `tools/tool` registry.
86
+ */
87
+ catalog?: readonly LiveToolDescriptor[] | null;
88
+ injectSystemPrompt?: boolean;
89
+ /**
90
+ * The `prompts/manifest` ids projected as the session's agent identity,
91
+ * above the tool briefing. Short ids match their `prompts.manifest.*`
92
+ * descriptors. Default: the developer agent role.
93
+ */
94
+ promptManifestIds?: readonly string[];
95
+ /** Refuse registration when a projected name shadows one of these. */
96
+ reservedNames?: readonly string[];
97
+ /** Register the `vibes` kernel tool for direct Codemode scripting and kernel inspection. */
98
+ enableKernelTool?: boolean;
99
+ approvalPosture?: ApprovalPosture;
100
+ approvalMemory?: ApprovalMemory;
101
+ };
102
+ //# sourceMappingURL=extension-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-api.d.ts","sourceRoot":"","sources":["../../src/schemas/extension-api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=extension-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-api.js","sourceRoot":"","sources":["../../src/schemas/extension-api.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import * as z from 'zod/v4';
2
+ export declare const PiRuntimeHostOptionsSchema: z.ZodObject<{
3
+ cwd: z.ZodString;
4
+ hostEnv: z.ZodReadonly<z.ZodRecord<z.ZodString, z.ZodOptional<z.ZodString>>>;
5
+ version: z.ZodOptional<z.ZodString>;
6
+ hostRoot: z.ZodOptional<z.ZodString>;
7
+ }, z.core.$strip>;
8
+ export type PiRuntimeHostOptions = z.infer<typeof PiRuntimeHostOptionsSchema>;
9
+ /** Native stream completion callback accepted at the Pi diagnostic adapter boundary. */
10
+ export declare const PiDiagnosticCompletionSchema: z.ZodFunction<z.ZodTuple<[], z.ZodOptional<z.ZodNullable<z.ZodInstanceOf<Error>>>>, z.ZodVoid>;
11
+ //# sourceMappingURL=extension-host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-host.d.ts","sourceRoot":"","sources":["../../src/schemas/extension-host.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,eAAO,MAAM,0BAA0B;;;;;iBAIrC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,wFAAwF;AACxF,eAAO,MAAM,4BAA4B,gGAEvC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import * as z from 'zod/v4';
2
+ import { PiEnvironmentSchema } from "./installer.js";
3
+ export const PiRuntimeHostOptionsSchema = z.object({
4
+ cwd: z.string().min(1), hostEnv: PiEnvironmentSchema, version: z.string().optional(),
5
+ /** The declared resolution root R; the environment never supplies it. */
6
+ hostRoot: z.string().min(1).optional()
7
+ });
8
+ /** Native stream completion callback accepted at the Pi diagnostic adapter boundary. */
9
+ export const PiDiagnosticCompletionSchema = z.function({
10
+ input: z.tuple([]).rest(z.instanceof(Error).nullish()), output: z.void()
11
+ });
12
+ //# sourceMappingURL=extension-host.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-host.js","sourceRoot":"","sources":["../../src/schemas/extension-host.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpF,yEAAyE;IACzE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAGH,wFAAwF;AACxF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,QAAQ,CAAC;IACtD,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE;CACxE,CAAC,CAAC"}
@@ -0,0 +1,212 @@
1
+ import * as z from 'zod/v4';
2
+ import type { Component, TUI } from '@earendil-works/pi-tui';
3
+ export declare const PiStringSchema: z.ZodString;
4
+ export declare const PiJsonSchema: z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>;
5
+ export type PiJson = z.infer<typeof PiJsonSchema>;
6
+ export declare const PiObjectSchema: z.ZodRecord<z.ZodString, z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>;
7
+ export type PiObject = z.infer<typeof PiObjectSchema>;
8
+ export declare const PiSearchResultSchema: z.ZodObject<{
9
+ matches: z.ZodArray<z.ZodObject<{
10
+ toolId: z.ZodString;
11
+ }, z.core.$strip>>;
12
+ }, z.core.$strip>;
13
+ export declare const PiApprovalScopeSchema: z.ZodEnum<{
14
+ session: "session";
15
+ workspace: "workspace";
16
+ repo: "repo";
17
+ }>;
18
+ export type ApprovalScope = z.infer<typeof PiApprovalScopeSchema>;
19
+ export declare const PiApprovalPostureSchema: z.ZodEnum<{
20
+ off: "off";
21
+ smart: "smart";
22
+ strict: "strict";
23
+ }>;
24
+ export type ApprovalPosture = z.infer<typeof PiApprovalPostureSchema>;
25
+ export declare const PiWorkspaceGrantsSchema: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
26
+ export declare const PiRepoGrantsSchema: z.ZodObject<{
27
+ grants: z.ZodDefault<z.ZodArray<z.ZodString>>;
28
+ }, z.core.$strip>;
29
+ export declare const PiActionInputSchema: z.ZodObject<{
30
+ action: z.ZodOptional<z.ZodString>;
31
+ command: z.ZodOptional<z.ZodString>;
32
+ path: z.ZodOptional<z.ZodString>;
33
+ file_path: z.ZodOptional<z.ZodString>;
34
+ file: z.ZodOptional<z.ZodString>;
35
+ destination: z.ZodOptional<z.ZodString>;
36
+ target: z.ZodOptional<z.ZodString>;
37
+ targetPath: z.ZodOptional<z.ZodString>;
38
+ query: z.ZodOptional<z.ZodString>;
39
+ pattern: z.ZodOptional<z.ZodString>;
40
+ }, z.core.$strip>;
41
+ export declare const PiSessionResultSchema: z.ZodObject<{
42
+ session: z.ZodOptional<z.ZodObject<{
43
+ id: z.ZodString;
44
+ }, z.core.$strip>>;
45
+ id: z.ZodOptional<z.ZodString>;
46
+ sessionId: z.ZodOptional<z.ZodString>;
47
+ instance: z.ZodOptional<z.ZodObject<{
48
+ handle: z.ZodOptional<z.ZodString>;
49
+ }, z.core.$strip>>;
50
+ }, z.core.$strip>;
51
+ export declare const PiHostThemeSchema: z.ZodObject<{
52
+ fg: z.ZodCustom<(color: string, text: string) => string, (color: string, text: string) => string>;
53
+ bold: z.ZodCustom<(text: string) => string, (text: string) => string>;
54
+ }, z.core.$strip>;
55
+ export type PiHostTheme = z.infer<typeof PiHostThemeSchema>;
56
+ declare const PiHostUiPortSchema: z.ZodObject<{
57
+ setTitle: z.ZodOptional<z.ZodCustom<(title: string) => void, (title: string) => void>>;
58
+ setHeader: z.ZodOptional<z.ZodCustom<(factory: (tui: TUI, theme: PiHostTheme) => Component) => void, (factory: (tui: TUI, theme: PiHostTheme) => Component) => void>>;
59
+ setStatus: z.ZodOptional<z.ZodCustom<(key: string, text: string | undefined) => void, (key: string, text: string | undefined) => void>>;
60
+ setWidget: z.ZodOptional<z.ZodCustom<(key: string, content: string[] | undefined) => void, (key: string, content: string[] | undefined) => void>>;
61
+ setHiddenThinkingLabel: z.ZodOptional<z.ZodCustom<(label?: string) => void, (label?: string) => void>>;
62
+ confirm: z.ZodOptional<z.ZodCustom<(title: string, message: string) => Promise<boolean>, (title: string, message: string) => Promise<boolean>>>;
63
+ select: z.ZodOptional<z.ZodCustom<(title: string, options: string[]) => Promise<string | undefined>, (title: string, options: string[]) => Promise<string | undefined>>>;
64
+ notify: z.ZodOptional<z.ZodCustom<(message: string, type?: "info" | "warning" | "error") => void, (message: string, type?: "info" | "warning" | "error") => void>>;
65
+ }, z.core.$strip>;
66
+ export type PiHostUi = z.infer<typeof PiHostUiPortSchema>;
67
+ export declare const PiHostUiSchema: z.ZodCustom<{
68
+ setTitle?: ((title: string) => void) | undefined;
69
+ setHeader?: ((factory: (tui: TUI, theme: PiHostTheme) => Component) => void) | undefined;
70
+ setStatus?: ((key: string, text: string | undefined) => void) | undefined;
71
+ setWidget?: ((key: string, content: string[] | undefined) => void) | undefined;
72
+ setHiddenThinkingLabel?: ((label?: string) => void) | undefined;
73
+ confirm?: ((title: string, message: string) => Promise<boolean>) | undefined;
74
+ select?: ((title: string, options: string[]) => Promise<string | undefined>) | undefined;
75
+ notify?: ((message: string, type?: "info" | "warning" | "error") => void) | undefined;
76
+ }, {
77
+ setTitle?: ((title: string) => void) | undefined;
78
+ setHeader?: ((factory: (tui: TUI, theme: PiHostTheme) => Component) => void) | undefined;
79
+ setStatus?: ((key: string, text: string | undefined) => void) | undefined;
80
+ setWidget?: ((key: string, content: string[] | undefined) => void) | undefined;
81
+ setHiddenThinkingLabel?: ((label?: string) => void) | undefined;
82
+ confirm?: ((title: string, message: string) => Promise<boolean>) | undefined;
83
+ select?: ((title: string, options: string[]) => Promise<string | undefined>) | undefined;
84
+ notify?: ((message: string, type?: "info" | "warning" | "error") => void) | undefined;
85
+ }>;
86
+ /** The part of Pi's session manager the extension reads: the conversation id. */
87
+ declare const PiSessionReaderPortSchema: z.ZodObject<{
88
+ getSessionId: z.ZodCustom<() => string, () => string>;
89
+ }, z.core.$strip>;
90
+ export type PiSessionReader = z.infer<typeof PiSessionReaderPortSchema>;
91
+ export declare const PiSessionReaderSchema: z.ZodCustom<{
92
+ getSessionId: () => string;
93
+ }, {
94
+ getSessionId: () => string;
95
+ }>;
96
+ export declare const PiHostContextSchema: z.ZodObject<{
97
+ ui: z.ZodOptional<z.ZodCustom<{
98
+ setTitle?: ((title: string) => void) | undefined;
99
+ setHeader?: ((factory: (tui: TUI, theme: PiHostTheme) => Component) => void) | undefined;
100
+ setStatus?: ((key: string, text: string | undefined) => void) | undefined;
101
+ setWidget?: ((key: string, content: string[] | undefined) => void) | undefined;
102
+ setHiddenThinkingLabel?: ((label?: string) => void) | undefined;
103
+ confirm?: ((title: string, message: string) => Promise<boolean>) | undefined;
104
+ select?: ((title: string, options: string[]) => Promise<string | undefined>) | undefined;
105
+ notify?: ((message: string, type?: "info" | "warning" | "error") => void) | undefined;
106
+ }, {
107
+ setTitle?: ((title: string) => void) | undefined;
108
+ setHeader?: ((factory: (tui: TUI, theme: PiHostTheme) => Component) => void) | undefined;
109
+ setStatus?: ((key: string, text: string | undefined) => void) | undefined;
110
+ setWidget?: ((key: string, content: string[] | undefined) => void) | undefined;
111
+ setHiddenThinkingLabel?: ((label?: string) => void) | undefined;
112
+ confirm?: ((title: string, message: string) => Promise<boolean>) | undefined;
113
+ select?: ((title: string, options: string[]) => Promise<string | undefined>) | undefined;
114
+ notify?: ((message: string, type?: "info" | "warning" | "error") => void) | undefined;
115
+ }>>;
116
+ cwd: z.ZodOptional<z.ZodString>;
117
+ sessionManager: z.ZodOptional<z.ZodCustom<{
118
+ getSessionId: () => string;
119
+ }, {
120
+ getSessionId: () => string;
121
+ }>>;
122
+ }, z.core.$strip>;
123
+ export type PiHostContext = z.infer<typeof PiHostContextSchema>;
124
+ export declare const PiToolCallEventSchema: z.ZodObject<{
125
+ toolName: z.ZodString;
126
+ input: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>>;
127
+ }, z.core.$strip>;
128
+ export type PiToolCallEvent = z.infer<typeof PiToolCallEventSchema>;
129
+ export declare const PiRenderContextSchema: z.ZodObject<{
130
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>>;
131
+ expanded: z.ZodOptional<z.ZodBoolean>;
132
+ isError: z.ZodOptional<z.ZodBoolean>;
133
+ }, z.core.$strip>;
134
+ export type PiRenderContext = z.infer<typeof PiRenderContextSchema>;
135
+ export declare const PiRenderResultSchema: z.ZodObject<{
136
+ content: z.ZodArray<z.ZodObject<{
137
+ type: z.ZodString;
138
+ text: z.ZodOptional<z.ZodString>;
139
+ }, z.core.$strip>>;
140
+ details: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>>;
141
+ }, z.core.$strip>;
142
+ export type PiRenderResult = z.infer<typeof PiRenderResultSchema>;
143
+ export declare const PiOutputSummarySchema: z.ZodObject<{
144
+ results: z.ZodOptional<z.ZodArray<z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>>;
145
+ matches: z.ZodOptional<z.ZodArray<z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>>;
146
+ files: z.ZodOptional<z.ZodArray<z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>>;
147
+ entries: z.ZodOptional<z.ZodArray<z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>>;
148
+ items: z.ZodOptional<z.ZodArray<z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>>;
149
+ truncated: z.ZodOptional<z.ZodBoolean>;
150
+ hasMore: z.ZodOptional<z.ZodBoolean>;
151
+ message: z.ZodOptional<z.ZodString>;
152
+ ok: z.ZodOptional<z.ZodBoolean>;
153
+ success: z.ZodOptional<z.ZodBoolean>;
154
+ error: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
155
+ message: z.ZodOptional<z.ZodString>;
156
+ }, z.core.$strip>]>>;
157
+ }, z.core.$strip>;
158
+ export declare const PiResultDetailsSchema: z.ZodObject<{
159
+ output: z.ZodOptional<z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>;
160
+ exitCode: z.ZodOptional<z.ZodNumber>;
161
+ durationMs: z.ZodOptional<z.ZodNumber>;
162
+ diagnostics: z.ZodOptional<z.ZodString>;
163
+ }, z.core.$strip>;
164
+ export declare const PiSignalUpdatedSchema: z.ZodObject<{
165
+ bucket: z.ZodString;
166
+ keys: z.ZodArray<z.ZodString>;
167
+ }, z.core.$strip>;
168
+ export declare const PiCheckCompletedSchema: z.ZodObject<{
169
+ check: z.ZodString;
170
+ status: z.ZodEnum<{
171
+ passed: "passed";
172
+ failed: "failed";
173
+ }>;
174
+ }, z.core.$strip>;
175
+ export declare const PiBranchChangedSchema: z.ZodObject<{
176
+ previousBranch: z.ZodNullable<z.ZodString>;
177
+ currentBranch: z.ZodString;
178
+ }, z.core.$strip>;
179
+ export declare const PiKernelInputSchema: z.ZodObject<{
180
+ op: z.ZodDefault<z.ZodEnum<{
181
+ status: "status";
182
+ query: "query";
183
+ prompts: "prompts";
184
+ invoke: "invoke";
185
+ }>>;
186
+ kind: z.ZodDefault<z.ZodString>;
187
+ id: z.ZodOptional<z.ZodString>;
188
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>>;
189
+ }, z.core.$strip>;
190
+ export declare const PiJsonTextSchema: z.ZodPipe<z.ZodString, z.ZodTransform<string | number | boolean | import("@vibesdotdev/kernel/schemas/json").JsonObject | import("@vibesdotdev/kernel/schemas/json").JsonArray | null, string>>;
191
+ export declare const PiExtensionEventSchema: z.ZodObject<{
192
+ systemPrompt: z.ZodOptional<z.ZodString>;
193
+ systemPromptOptions: z.ZodOptional<z.ZodObject<{
194
+ customPrompt: z.ZodOptional<z.ZodString>;
195
+ selectedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
196
+ }, z.core.$strip>>;
197
+ cwd: z.ZodOptional<z.ZodString>;
198
+ toolName: z.ZodOptional<z.ZodString>;
199
+ input: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>>;
200
+ }, z.core.$strip>;
201
+ export type PiExtensionEvent = z.infer<typeof PiExtensionEventSchema>;
202
+ export declare const PiModelRequestSchema: z.ZodObject<{
203
+ thinkingLevel: z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>;
204
+ messages: z.ZodArray<z.ZodType<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue, z.core.$ZodTypeInternals<import("@vibesdotdev/kernel/bootstrap").JsonValue, import("@vibesdotdev/kernel/bootstrap").JsonValue>>>;
205
+ }, z.core.$strip>;
206
+ export declare const PiErrorMessageSchema: z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
207
+ message: z.ZodOptional<z.ZodString>;
208
+ }, z.core.$strip>]>, z.ZodTransform<string | undefined, string | {
209
+ message?: string | undefined;
210
+ }>>;
211
+ export {};
212
+ //# sourceMappingURL=extension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../src/schemas/extension.ts"],"names":[],"mappings":"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"}