@openspecui/core 3.5.2 → 3.6.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 (50) hide show
  1. package/dist/hosted-app.d.mts +1 -1
  2. package/dist/hosted-app.mjs +1 -1
  3. package/dist/index.d.mts +74 -632
  4. package/dist/index.mjs +81 -97
  5. package/dist/markdown-facts-BmSmZmpB.mjs +136 -0
  6. package/dist/markdown-facts-f3kXnqXb.d.mts +39 -0
  7. package/dist/markdown-facts.d.mts +2 -0
  8. package/dist/markdown-facts.mjs +3 -0
  9. package/dist/markdown-reading-CrchEfoW.mjs +104 -0
  10. package/dist/markdown-reading-D36W693c.d.mts +74 -0
  11. package/dist/markdown-reading.d.mts +3 -0
  12. package/dist/markdown-reading.mjs +4 -0
  13. package/dist/{notifications-BWvRNkRJ.d.mts → notifications-CCV2bgWG.d.mts} +9 -9
  14. package/dist/{notifications-F81mmO55.mjs → notifications-fD-V5hyP.mjs} +2 -2
  15. package/dist/notifications.d.mts +2 -2
  16. package/dist/notifications.mjs +3 -3
  17. package/dist/openspec-annotations-BMy9nWUe.mjs +436 -0
  18. package/dist/openspec-annotations-CJmYcfAu.d.mts +30 -0
  19. package/dist/openspec-annotations.d.mts +4 -0
  20. package/dist/openspec-annotations.mjs +5 -0
  21. package/dist/openspec-projection-DWqBxedv.mjs +223 -0
  22. package/dist/openspec-projection-DmB448No.d.mts +1142 -0
  23. package/dist/openspec-projection.d.mts +5 -0
  24. package/dist/openspec-projection.mjs +6 -0
  25. package/dist/opsx-display-path.d.mts +1 -1
  26. package/dist/opsx-display-path.mjs +1 -1
  27. package/dist/{sounds-Bw-sSyFZ.d.mts → sounds-B0sH3QwE.d.mts} +5 -5
  28. package/dist/sounds.d.mts +1 -1
  29. package/dist/sounds.mjs +1 -1
  30. package/dist/{terminal-audio-DDwxz9sJ.mjs → terminal-audio-UEv3j655.mjs} +1 -1
  31. package/dist/{terminal-audio-8E82E0AM.d.mts → terminal-audio-qSc6nZUI.d.mts} +2 -2
  32. package/dist/terminal-audio.d.mts +2 -2
  33. package/dist/terminal-audio.mjs +2 -2
  34. package/dist/terminal-control.d.mts +2 -2
  35. package/dist/terminal-control.mjs +1 -1
  36. package/dist/{terminal-invocation-CpdllJff.d.mts → terminal-invocation-BCqjtd4p.d.mts} +36 -36
  37. package/dist/terminal-invocation.d.mts +1 -1
  38. package/dist/terminal-invocation.mjs +1 -1
  39. package/dist/terminal-theme.d.mts +1 -1
  40. package/dist/terminal-theme.mjs +1 -1
  41. package/package.json +25 -3
  42. /package/dist/{hosted-app-CIOJpbzc.mjs → hosted-app-DFFffbJc.mjs} +0 -0
  43. /package/dist/{hosted-app-DaGUbBJn.d.mts → hosted-app-DZrYivji.d.mts} +0 -0
  44. /package/dist/{opsx-display-path-CuQyGB_A.d.mts → opsx-display-path-CkV9sq_j.d.mts} +0 -0
  45. /package/dist/{opsx-display-path-B6Owu17P.mjs → opsx-display-path-D4KLYRXQ.mjs} +0 -0
  46. /package/dist/{sounds-C0dNSFm8.mjs → sounds-BzNKMW05.mjs} +0 -0
  47. /package/dist/{terminal-control-DtBprY6-.mjs → terminal-control-Bxois59k.mjs} +0 -0
  48. /package/dist/{terminal-invocation-Cdi6_Kl6.mjs → terminal-invocation-BRCuSBjE.mjs} +0 -0
  49. /package/dist/{terminal-theme-CMQqJvIQ.mjs → terminal-theme-CIv3YMfi.mjs} +0 -0
  50. /package/dist/{terminal-theme-wbkK9vVH.d.mts → terminal-theme-lPZGfVA_.d.mts} +0 -0
package/dist/index.d.mts CHANGED
@@ -1,612 +1,18 @@
1
- import { a as buildHostedLaunchUrl, c as normalizeEmbeddedUiUrl, i as buildEmbeddedUiLaunchUrl, l as normalizeHostedAppBaseUrl, n as HostedBackendHealthResponse, o as isHostedBackendHealthResponse, r as OFFICIAL_APP_BASE_URL, s as isSupportedEmbeddedUiUrl, t as HOSTED_SHELL_PROTOCOL_VERSION, u as resolveHostedAppBaseUrl } from "./hosted-app-DaGUbBJn.mjs";
2
- import { D as normalizeLegacySoundId, E as getBuiltinSoundUrl, O as soundIdFromCustomHash, S as SoundIdSchema, T as customHashFromSoundId, a as BuiltinSoundOption, b as SoundConfigIdSchema, c as CustomSoundHashSchema, d as CustomSoundMetadata, f as CustomSoundMetadataFile, g as DEFAULT_NOTIFICATION_SOUND_ID, h as DEFAULT_BELL_SOUND_ID, i as BuiltinSoundIdSchema, l as CustomSoundId, m as CustomSoundMetadataSchema, n as BUILTIN_SOUND_OPTIONS, o as CUSTOM_SOUND_ADD_VALUE, p as CustomSoundMetadataFileSchema, r as BuiltinSoundId, s as CustomSoundHash, t as BUILTIN_SOUND_IDS, u as CustomSoundIdSchema, v as LEGACY_SOUND_ID_MAP, x as SoundId, y as SILENT_SOUND_ID } from "./sounds-Bw-sSyFZ.mjs";
3
- import { A as TerminalNotificationProtocol, D as TerminalControlEvent, E as groupNotifications, M as TerminalPromptState, N as TerminalTitleTarget, O as TerminalControlParseResult, P as terminalNotificationEventToPublishInput, T as getNotificationGroupLabel, _ as NotificationSource, b as TerminalNotificationParseResult, c as NotificationGroupKeySchema, d as NotificationRecord, f as NotificationRecordSchema, g as NotificationSoundSchema, h as NotificationSound, i as NotificationActionSchema, j as TerminalProgressState, k as TerminalControlParser, l as NotificationPublishInput, m as NotificationSettingsSchema, n as NOTIFICATION_SOUND_VALUES, o as NotificationGroup, p as NotificationSettings, r as NotificationAction, s as NotificationGroupKey, t as NOTIFICATION_SOUND_OPTIONS, u as NotificationPublishInputSchema, v as NotificationSourceSchema, w as getNotificationGroupKey, x as TerminalNotificationParser, y as TerminalNotificationEvent } from "./notifications-BWvRNkRJ.mjs";
4
- import { i as TerminalBellSoundSchema, n as TERMINAL_BELL_SOUND_VALUES, r as TerminalBellSound, t as TERMINAL_BELL_SOUND_OPTIONS } from "./terminal-audio-8E82E0AM.mjs";
5
- import { n as toOpsxDisplayPath, t as VIRTUAL_PROJECT_DIRNAME } from "./opsx-display-path-CuQyGB_A.mjs";
6
- import { $ as PtyServerMessageSchema, B as PtyCreatedResponseSchema, C as TerminalSpawnCommand, E as getTerminalCommandDefaultValues, F as PtyBufferResponseSchema, G as PtyListMessageSchema, H as PtyErrorResponseSchema, I as PtyClientMessage, J as PtyPlatform, K as PtyListResponseSchema, L as PtyClientMessageSchema, M as resolveTerminalShellDefaults, N as PtyAttachMessageSchema, O as quoteTerminalShellArg, P as PtyBellResponseSchema, Q as PtyServerMessage, R as PtyCloseMessageSchema, S as TerminalShellQuoteStyleSchema, U as PtyExitResponseSchema, V as PtyErrorCodeSchema, W as PtyInputMessageSchema, X as PtyProcessTitleResponseSchema, Y as PtyPlatformSchema, Z as PtyResizeMessageSchema, _ as TerminalShellDefaults, b as TerminalShellProfileSchema, c as TerminalCommandFieldSchema, et as PtySessionInfo, g as TerminalInvocationSettingsSchema, h as TerminalInvocationSettings, i as TerminalCommandArgument, j as renderTerminalSpawnCommandLine, k as renderTerminalCommandArgs, l as TerminalCommandFieldValue, n as TERMINAL_COMMAND_FIELD_TYPE_VALUES, q as PtyOutputResponseSchema, r as TERMINAL_SHELL_QUOTE_STYLE_VALUES, s as TerminalCommandField, t as BUILTIN_TERMINAL_SPAWN_COMMANDS, tt as PtyTitleResponseSchema, u as TerminalCommandFieldValues, w as TerminalSpawnCommandSchema, x as TerminalShellQuoteStyle, y as TerminalShellProfile, z as PtyCreateMessageSchema } from "./terminal-invocation-CpdllJff.mjs";
7
- import { a as TERMINAL_THEME_VALUES, i as TERMINAL_THEME_MODE_VALUES, n as DEFAULT_TERMINAL_LIGHT_THEME, r as DEFAULT_TERMINAL_THEME_MODE, t as DEFAULT_TERMINAL_DARK_THEME } from "./terminal-theme-wbkK9vVH.mjs";
1
+ import { a as buildHostedLaunchUrl, c as normalizeEmbeddedUiUrl, i as buildEmbeddedUiLaunchUrl, l as normalizeHostedAppBaseUrl, n as HostedBackendHealthResponse, o as isHostedBackendHealthResponse, r as OFFICIAL_APP_BASE_URL, s as isSupportedEmbeddedUiUrl, t as HOSTED_SHELL_PROTOCOL_VERSION, u as resolveHostedAppBaseUrl } from "./hosted-app-DZrYivji.mjs";
2
+ import { A as Spec, C as DeltaSpec, D as ScenarioStep, E as RequirementSchema, M as Task, N as TaskSchema, O as ScenarioStepKeywordSchema, S as DeltaSchema, T as Requirement, _ as ChangeFileSchema, a as OpenSpecReadingSectionsProjection, b as DeltaOperation, c as ProjectedOpenSpecDocument, d as getOpenSpecReadingSections, f as parseOpenSpecMarkdownToSpec, g as ChangeFile, h as Change, i as OpenSpecProjectionOptions, j as SpecSchema, k as ScenarioStepSchema, l as createOpenSpecReadingPlugin, m as projectOpenSpecMarkdown, n as OPEN_SPEC_SPEC_PROJECTION_ID, o as OpenSpecRequirementBlock, p as projectAnnotatedOpenSpecToSpec, r as OpenSpecHeadingSection, s as OpenSpecScenarioBlock, t as OPEN_SPEC_READING_SECTIONS_PROJECTION_ID, u as getOpenSpecProjectionAnnotation, v as ChangeSchema, w as DeltaSpecSchema, x as DeltaOperationType, y as Delta } from "./openspec-projection-DmB448No.mjs";
3
+ import { a as MarkdownSourceRange, i as MarkdownSourcePoint, n as MarkdownFactKind, o as parseMarkdownFacts, r as MarkdownFactsDocument, s as toMarkdownFactKind, t as MarkdownFact } from "./markdown-facts-f3kXnqXb.mjs";
4
+ import { _ as getMarkdownFactSpan, a as MarkdownAnnotationRule, b as trimMarkdownSlice, c as MarkdownProjectionRule, d as MarkdownReadingPlugin, f as buildMarkdownParentMap, g as getMarkdownAnnotationsForFact, h as getMarkdownAnnotation, i as MarkdownAnnotationInput, l as MarkdownReadingDocument, m as createMarkdownReadingDocumentFromFacts, n as MarkdownAnnotationConfidence, o as MarkdownFactSpan, p as createMarkdownReadingDocument, r as MarkdownAnnotationContext, s as MarkdownProjectionContext, t as MarkdownAnnotation, u as MarkdownReadingLookup, v as getMarkdownHeadingEnd, y as getMarkdownHeadingFacts } from "./markdown-reading-D36W693c.mjs";
5
+ import { c as OpenSpecScenarioStepKeyword, d as annotateOpenSpecMarkdown, f as builtinOpenSpecReadingPlugin, h as openSpecAnnotationRules, l as OpenSpecSemanticKind, m as getOpenSpecAnnotationsForFact, n as OpenSpecAnnotation, p as getOpenSpecAnnotation, r as OpenSpecAnnotationConfidence, t as AnnotatedOpenSpecDocument, u as annotateOpenSpecFacts } from "./openspec-annotations-CJmYcfAu.mjs";
6
+ import { D as normalizeLegacySoundId, E as getBuiltinSoundUrl, O as soundIdFromCustomHash, S as SoundIdSchema, T as customHashFromSoundId, a as BuiltinSoundOption, b as SoundConfigIdSchema, c as CustomSoundHashSchema, d as CustomSoundMetadata, f as CustomSoundMetadataFile, g as DEFAULT_NOTIFICATION_SOUND_ID, h as DEFAULT_BELL_SOUND_ID, i as BuiltinSoundIdSchema, l as CustomSoundId, m as CustomSoundMetadataSchema, n as BUILTIN_SOUND_OPTIONS, o as CUSTOM_SOUND_ADD_VALUE, p as CustomSoundMetadataFileSchema, r as BuiltinSoundId, s as CustomSoundHash, t as BUILTIN_SOUND_IDS, u as CustomSoundIdSchema, v as LEGACY_SOUND_ID_MAP, x as SoundId, y as SILENT_SOUND_ID } from "./sounds-B0sH3QwE.mjs";
7
+ import { A as TerminalNotificationProtocol, D as TerminalControlEvent, E as groupNotifications, M as TerminalPromptState, N as TerminalTitleTarget, O as TerminalControlParseResult, P as terminalNotificationEventToPublishInput, T as getNotificationGroupLabel, _ as NotificationSource, b as TerminalNotificationParseResult, c as NotificationGroupKeySchema, d as NotificationRecord, f as NotificationRecordSchema, g as NotificationSoundSchema, h as NotificationSound, i as NotificationActionSchema, j as TerminalProgressState, k as TerminalControlParser, l as NotificationPublishInput, m as NotificationSettingsSchema, n as NOTIFICATION_SOUND_VALUES, o as NotificationGroup, p as NotificationSettings, r as NotificationAction, s as NotificationGroupKey, t as NOTIFICATION_SOUND_OPTIONS, u as NotificationPublishInputSchema, v as NotificationSourceSchema, w as getNotificationGroupKey, x as TerminalNotificationParser, y as TerminalNotificationEvent } from "./notifications-CCV2bgWG.mjs";
8
+ import { i as TerminalBellSoundSchema, n as TERMINAL_BELL_SOUND_VALUES, r as TerminalBellSound, t as TERMINAL_BELL_SOUND_OPTIONS } from "./terminal-audio-qSc6nZUI.mjs";
9
+ import { n as toOpsxDisplayPath, t as VIRTUAL_PROJECT_DIRNAME } from "./opsx-display-path-CkV9sq_j.mjs";
10
+ import { $ as PtyServerMessageSchema, B as PtyCreatedResponseSchema, C as TerminalSpawnCommand, E as getTerminalCommandDefaultValues, F as PtyBufferResponseSchema, G as PtyListMessageSchema, H as PtyErrorResponseSchema, I as PtyClientMessage, J as PtyPlatform, K as PtyListResponseSchema, L as PtyClientMessageSchema, M as resolveTerminalShellDefaults, N as PtyAttachMessageSchema, O as quoteTerminalShellArg, P as PtyBellResponseSchema, Q as PtyServerMessage, R as PtyCloseMessageSchema, S as TerminalShellQuoteStyleSchema, U as PtyExitResponseSchema, V as PtyErrorCodeSchema, W as PtyInputMessageSchema, X as PtyProcessTitleResponseSchema, Y as PtyPlatformSchema, Z as PtyResizeMessageSchema, _ as TerminalShellDefaults, b as TerminalShellProfileSchema, c as TerminalCommandFieldSchema, et as PtySessionInfo, g as TerminalInvocationSettingsSchema, h as TerminalInvocationSettings, i as TerminalCommandArgument, j as renderTerminalSpawnCommandLine, k as renderTerminalCommandArgs, l as TerminalCommandFieldValue, n as TERMINAL_COMMAND_FIELD_TYPE_VALUES, q as PtyOutputResponseSchema, r as TERMINAL_SHELL_QUOTE_STYLE_VALUES, s as TerminalCommandField, t as BUILTIN_TERMINAL_SPAWN_COMMANDS, tt as PtyTitleResponseSchema, u as TerminalCommandFieldValues, w as TerminalSpawnCommandSchema, x as TerminalShellQuoteStyle, y as TerminalShellProfile, z as PtyCreateMessageSchema } from "./terminal-invocation-BCqjtd4p.mjs";
11
+ import { a as TERMINAL_THEME_VALUES, i as TERMINAL_THEME_MODE_VALUES, n as DEFAULT_TERMINAL_LIGHT_THEME, r as DEFAULT_TERMINAL_THEME_MODE, t as DEFAULT_TERMINAL_DARK_THEME } from "./terminal-theme-lPZGfVA_.mjs";
8
12
  import { AsyncLocalStorage } from "node:async_hooks";
9
13
  import { z } from "zod";
10
14
  import { EventEmitter } from "events";
11
15
 
12
- //#region src/schemas.d.ts
13
-
14
- /**
15
- * File metadata for a change directory entry.
16
- */
17
- declare const ChangeFileSchema: z.ZodObject<{
18
- /** Path relative to the change root (e.g., "proposal.md" or "specs/auth/spec.md") */
19
- path: z.ZodString;
20
- /** Entry type */
21
- type: z.ZodEnum<["file", "directory"]>;
22
- /** Optional file content for text files */
23
- content: z.ZodOptional<z.ZodString>;
24
- /** Optional byte size for files */
25
- size: z.ZodOptional<z.ZodNumber>;
26
- }, "strip", z.ZodTypeAny, {
27
- path: string;
28
- type: "file" | "directory";
29
- size?: number | undefined;
30
- content?: string | undefined;
31
- }, {
32
- path: string;
33
- type: "file" | "directory";
34
- size?: number | undefined;
35
- content?: string | undefined;
36
- }>;
37
- type ChangeFile = z.infer<typeof ChangeFileSchema>;
38
- /**
39
- * A requirement within a specification.
40
- * Requirements should use RFC 2119 keywords (SHALL, MUST, etc.)
41
- */
42
- declare const RequirementSchema: z.ZodObject<{
43
- /** Unique identifier within the spec (e.g., "req-1") */
44
- id: z.ZodString;
45
- /** Requirement text, should contain SHALL/MUST keywords */
46
- text: z.ZodString;
47
- /** Test scenarios for this requirement */
48
- scenarios: z.ZodArray<z.ZodObject<{
49
- rawText: z.ZodString;
50
- }, "strip", z.ZodTypeAny, {
51
- rawText: string;
52
- }, {
53
- rawText: string;
54
- }>, "many">;
55
- }, "strip", z.ZodTypeAny, {
56
- id: string;
57
- text: string;
58
- scenarios: {
59
- rawText: string;
60
- }[];
61
- }, {
62
- id: string;
63
- text: string;
64
- scenarios: {
65
- rawText: string;
66
- }[];
67
- }>;
68
- type Requirement = z.infer<typeof RequirementSchema>;
69
- /**
70
- * A specification document.
71
- * Located at: openspec/specs/{id}/spec.md
72
- */
73
- declare const SpecSchema: z.ZodObject<{
74
- /** Directory name (e.g., "user-auth") */
75
- id: z.ZodString;
76
- /** Human-readable name from # heading */
77
- name: z.ZodString;
78
- /** Purpose/overview section content */
79
- overview: z.ZodString;
80
- /** List of requirements */
81
- requirements: z.ZodArray<z.ZodObject<{
82
- /** Unique identifier within the spec (e.g., "req-1") */
83
- id: z.ZodString;
84
- /** Requirement text, should contain SHALL/MUST keywords */
85
- text: z.ZodString;
86
- /** Test scenarios for this requirement */
87
- scenarios: z.ZodArray<z.ZodObject<{
88
- rawText: z.ZodString;
89
- }, "strip", z.ZodTypeAny, {
90
- rawText: string;
91
- }, {
92
- rawText: string;
93
- }>, "many">;
94
- }, "strip", z.ZodTypeAny, {
95
- id: string;
96
- text: string;
97
- scenarios: {
98
- rawText: string;
99
- }[];
100
- }, {
101
- id: string;
102
- text: string;
103
- scenarios: {
104
- rawText: string;
105
- }[];
106
- }>, "many">;
107
- /** Optional metadata */
108
- metadata: z.ZodOptional<z.ZodObject<{
109
- version: z.ZodDefault<z.ZodString>;
110
- format: z.ZodDefault<z.ZodLiteral<"openspec">>;
111
- sourcePath: z.ZodOptional<z.ZodString>;
112
- }, "strip", z.ZodTypeAny, {
113
- version: string;
114
- format: "openspec";
115
- sourcePath?: string | undefined;
116
- }, {
117
- version?: string | undefined;
118
- format?: "openspec" | undefined;
119
- sourcePath?: string | undefined;
120
- }>>;
121
- }, "strip", z.ZodTypeAny, {
122
- id: string;
123
- name: string;
124
- overview: string;
125
- requirements: {
126
- id: string;
127
- text: string;
128
- scenarios: {
129
- rawText: string;
130
- }[];
131
- }[];
132
- metadata?: {
133
- version: string;
134
- format: "openspec";
135
- sourcePath?: string | undefined;
136
- } | undefined;
137
- }, {
138
- id: string;
139
- name: string;
140
- overview: string;
141
- requirements: {
142
- id: string;
143
- text: string;
144
- scenarios: {
145
- rawText: string;
146
- }[];
147
- }[];
148
- metadata?: {
149
- version?: string | undefined;
150
- format?: "openspec" | undefined;
151
- sourcePath?: string | undefined;
152
- } | undefined;
153
- }>;
154
- type Spec = z.infer<typeof SpecSchema>;
155
- /**
156
- * A delta describes changes to a spec within a change proposal.
157
- * Deltas track which specs are affected and how.
158
- */
159
- declare const DeltaOperationType: z.ZodEnum<["ADDED", "MODIFIED", "REMOVED", "RENAMED"]>;
160
- declare const DeltaSchema: z.ZodObject<{
161
- /** Target spec ID */
162
- spec: z.ZodString;
163
- /** Type of change */
164
- operation: z.ZodEnum<["ADDED", "MODIFIED", "REMOVED", "RENAMED"]>;
165
- /** Human-readable description */
166
- description: z.ZodString;
167
- /** Single requirement change */
168
- requirement: z.ZodOptional<z.ZodObject<{
169
- /** Unique identifier within the spec (e.g., "req-1") */
170
- id: z.ZodString;
171
- /** Requirement text, should contain SHALL/MUST keywords */
172
- text: z.ZodString;
173
- /** Test scenarios for this requirement */
174
- scenarios: z.ZodArray<z.ZodObject<{
175
- rawText: z.ZodString;
176
- }, "strip", z.ZodTypeAny, {
177
- rawText: string;
178
- }, {
179
- rawText: string;
180
- }>, "many">;
181
- }, "strip", z.ZodTypeAny, {
182
- id: string;
183
- text: string;
184
- scenarios: {
185
- rawText: string;
186
- }[];
187
- }, {
188
- id: string;
189
- text: string;
190
- scenarios: {
191
- rawText: string;
192
- }[];
193
- }>>;
194
- /** Multiple requirement changes */
195
- requirements: z.ZodOptional<z.ZodArray<z.ZodObject<{
196
- /** Unique identifier within the spec (e.g., "req-1") */
197
- id: z.ZodString;
198
- /** Requirement text, should contain SHALL/MUST keywords */
199
- text: z.ZodString;
200
- /** Test scenarios for this requirement */
201
- scenarios: z.ZodArray<z.ZodObject<{
202
- rawText: z.ZodString;
203
- }, "strip", z.ZodTypeAny, {
204
- rawText: string;
205
- }, {
206
- rawText: string;
207
- }>, "many">;
208
- }, "strip", z.ZodTypeAny, {
209
- id: string;
210
- text: string;
211
- scenarios: {
212
- rawText: string;
213
- }[];
214
- }, {
215
- id: string;
216
- text: string;
217
- scenarios: {
218
- rawText: string;
219
- }[];
220
- }>, "many">>;
221
- /** Rename details (for RENAMED operation) */
222
- rename: z.ZodOptional<z.ZodObject<{
223
- from: z.ZodString;
224
- to: z.ZodString;
225
- }, "strip", z.ZodTypeAny, {
226
- from: string;
227
- to: string;
228
- }, {
229
- from: string;
230
- to: string;
231
- }>>;
232
- }, "strip", z.ZodTypeAny, {
233
- description: string;
234
- spec: string;
235
- operation: "ADDED" | "MODIFIED" | "REMOVED" | "RENAMED";
236
- requirements?: {
237
- id: string;
238
- text: string;
239
- scenarios: {
240
- rawText: string;
241
- }[];
242
- }[] | undefined;
243
- requirement?: {
244
- id: string;
245
- text: string;
246
- scenarios: {
247
- rawText: string;
248
- }[];
249
- } | undefined;
250
- rename?: {
251
- from: string;
252
- to: string;
253
- } | undefined;
254
- }, {
255
- description: string;
256
- spec: string;
257
- operation: "ADDED" | "MODIFIED" | "REMOVED" | "RENAMED";
258
- requirements?: {
259
- id: string;
260
- text: string;
261
- scenarios: {
262
- rawText: string;
263
- }[];
264
- }[] | undefined;
265
- requirement?: {
266
- id: string;
267
- text: string;
268
- scenarios: {
269
- rawText: string;
270
- }[];
271
- } | undefined;
272
- rename?: {
273
- from: string;
274
- to: string;
275
- } | undefined;
276
- }>;
277
- type Delta = z.infer<typeof DeltaSchema>;
278
- type DeltaOperation = z.infer<typeof DeltaOperationType>;
279
- /**
280
- * A task within a change proposal.
281
- * Tasks are parsed from tasks.md using checkbox syntax: - [ ] or - [x]
282
- */
283
- declare const TaskSchema: z.ZodObject<{
284
- /** Unique identifier (e.g., "task-1") */
285
- id: z.ZodString;
286
- /** Task description text */
287
- text: z.ZodString;
288
- /** Whether the task is completed */
289
- completed: z.ZodBoolean;
290
- /** Optional section heading the task belongs to */
291
- section: z.ZodOptional<z.ZodString>;
292
- }, "strip", z.ZodTypeAny, {
293
- id: string;
294
- text: string;
295
- completed: boolean;
296
- section?: string | undefined;
297
- }, {
298
- id: string;
299
- text: string;
300
- completed: boolean;
301
- section?: string | undefined;
302
- }>;
303
- type Task = z.infer<typeof TaskSchema>;
304
- /**
305
- * A delta spec file from changes/{id}/specs/{specId}/spec.md
306
- * Contains the proposed changes to a spec
307
- */
308
- declare const DeltaSpecSchema: z.ZodObject<{
309
- /** Spec ID (directory name under changes/{id}/specs/) */
310
- specId: z.ZodString;
311
- /** Raw markdown content of the delta spec */
312
- content: z.ZodString;
313
- }, "strip", z.ZodTypeAny, {
314
- content: string;
315
- specId: string;
316
- }, {
317
- content: string;
318
- specId: string;
319
- }>;
320
- type DeltaSpec = z.infer<typeof DeltaSpecSchema>;
321
- /**
322
- * A change proposal document.
323
- * Located at: openspec/changes/{id}/proposal.md + tasks.md
324
- *
325
- * Change proposals describe why a change is needed, what will change,
326
- * which specs are affected (deltas), and trackable tasks.
327
- */
328
- declare const ChangeSchema: z.ZodObject<{
329
- /** Directory name (e.g., "add-oauth") */
330
- id: z.ZodString;
331
- /** Human-readable name from # heading */
332
- name: z.ZodString;
333
- /** Why section - motivation for the change */
334
- why: z.ZodString;
335
- /** What Changes section - description of changes */
336
- whatChanges: z.ZodString;
337
- /** Affected specs and their changes */
338
- deltas: z.ZodArray<z.ZodObject<{
339
- /** Target spec ID */
340
- spec: z.ZodString;
341
- /** Type of change */
342
- operation: z.ZodEnum<["ADDED", "MODIFIED", "REMOVED", "RENAMED"]>;
343
- /** Human-readable description */
344
- description: z.ZodString;
345
- /** Single requirement change */
346
- requirement: z.ZodOptional<z.ZodObject<{
347
- /** Unique identifier within the spec (e.g., "req-1") */
348
- id: z.ZodString;
349
- /** Requirement text, should contain SHALL/MUST keywords */
350
- text: z.ZodString;
351
- /** Test scenarios for this requirement */
352
- scenarios: z.ZodArray<z.ZodObject<{
353
- rawText: z.ZodString;
354
- }, "strip", z.ZodTypeAny, {
355
- rawText: string;
356
- }, {
357
- rawText: string;
358
- }>, "many">;
359
- }, "strip", z.ZodTypeAny, {
360
- id: string;
361
- text: string;
362
- scenarios: {
363
- rawText: string;
364
- }[];
365
- }, {
366
- id: string;
367
- text: string;
368
- scenarios: {
369
- rawText: string;
370
- }[];
371
- }>>;
372
- /** Multiple requirement changes */
373
- requirements: z.ZodOptional<z.ZodArray<z.ZodObject<{
374
- /** Unique identifier within the spec (e.g., "req-1") */
375
- id: z.ZodString;
376
- /** Requirement text, should contain SHALL/MUST keywords */
377
- text: z.ZodString;
378
- /** Test scenarios for this requirement */
379
- scenarios: z.ZodArray<z.ZodObject<{
380
- rawText: z.ZodString;
381
- }, "strip", z.ZodTypeAny, {
382
- rawText: string;
383
- }, {
384
- rawText: string;
385
- }>, "many">;
386
- }, "strip", z.ZodTypeAny, {
387
- id: string;
388
- text: string;
389
- scenarios: {
390
- rawText: string;
391
- }[];
392
- }, {
393
- id: string;
394
- text: string;
395
- scenarios: {
396
- rawText: string;
397
- }[];
398
- }>, "many">>;
399
- /** Rename details (for RENAMED operation) */
400
- rename: z.ZodOptional<z.ZodObject<{
401
- from: z.ZodString;
402
- to: z.ZodString;
403
- }, "strip", z.ZodTypeAny, {
404
- from: string;
405
- to: string;
406
- }, {
407
- from: string;
408
- to: string;
409
- }>>;
410
- }, "strip", z.ZodTypeAny, {
411
- description: string;
412
- spec: string;
413
- operation: "ADDED" | "MODIFIED" | "REMOVED" | "RENAMED";
414
- requirements?: {
415
- id: string;
416
- text: string;
417
- scenarios: {
418
- rawText: string;
419
- }[];
420
- }[] | undefined;
421
- requirement?: {
422
- id: string;
423
- text: string;
424
- scenarios: {
425
- rawText: string;
426
- }[];
427
- } | undefined;
428
- rename?: {
429
- from: string;
430
- to: string;
431
- } | undefined;
432
- }, {
433
- description: string;
434
- spec: string;
435
- operation: "ADDED" | "MODIFIED" | "REMOVED" | "RENAMED";
436
- requirements?: {
437
- id: string;
438
- text: string;
439
- scenarios: {
440
- rawText: string;
441
- }[];
442
- }[] | undefined;
443
- requirement?: {
444
- id: string;
445
- text: string;
446
- scenarios: {
447
- rawText: string;
448
- }[];
449
- } | undefined;
450
- rename?: {
451
- from: string;
452
- to: string;
453
- } | undefined;
454
- }>, "many">;
455
- /** Trackable tasks from tasks.md */
456
- tasks: z.ZodArray<z.ZodObject<{
457
- /** Unique identifier (e.g., "task-1") */
458
- id: z.ZodString;
459
- /** Task description text */
460
- text: z.ZodString;
461
- /** Whether the task is completed */
462
- completed: z.ZodBoolean;
463
- /** Optional section heading the task belongs to */
464
- section: z.ZodOptional<z.ZodString>;
465
- }, "strip", z.ZodTypeAny, {
466
- id: string;
467
- text: string;
468
- completed: boolean;
469
- section?: string | undefined;
470
- }, {
471
- id: string;
472
- text: string;
473
- completed: boolean;
474
- section?: string | undefined;
475
- }>, "many">;
476
- /** Task completion progress */
477
- progress: z.ZodObject<{
478
- total: z.ZodNumber;
479
- completed: z.ZodNumber;
480
- }, "strip", z.ZodTypeAny, {
481
- completed: number;
482
- total: number;
483
- }, {
484
- completed: number;
485
- total: number;
486
- }>;
487
- /** Optional design.md content */
488
- design: z.ZodOptional<z.ZodString>;
489
- /** Delta specs from changes/{id}/specs/ directory */
490
- deltaSpecs: z.ZodOptional<z.ZodArray<z.ZodObject<{
491
- /** Spec ID (directory name under changes/{id}/specs/) */
492
- specId: z.ZodString;
493
- /** Raw markdown content of the delta spec */
494
- content: z.ZodString;
495
- }, "strip", z.ZodTypeAny, {
496
- content: string;
497
- specId: string;
498
- }, {
499
- content: string;
500
- specId: string;
501
- }>, "many">>;
502
- /** Optional metadata */
503
- metadata: z.ZodOptional<z.ZodObject<{
504
- version: z.ZodDefault<z.ZodString>;
505
- format: z.ZodDefault<z.ZodLiteral<"openspec-change">>;
506
- }, "strip", z.ZodTypeAny, {
507
- version: string;
508
- format: "openspec-change";
509
- }, {
510
- version?: string | undefined;
511
- format?: "openspec-change" | undefined;
512
- }>>;
513
- }, "strip", z.ZodTypeAny, {
514
- id: string;
515
- name: string;
516
- progress: {
517
- completed: number;
518
- total: number;
519
- };
520
- why: string;
521
- whatChanges: string;
522
- deltas: {
523
- description: string;
524
- spec: string;
525
- operation: "ADDED" | "MODIFIED" | "REMOVED" | "RENAMED";
526
- requirements?: {
527
- id: string;
528
- text: string;
529
- scenarios: {
530
- rawText: string;
531
- }[];
532
- }[] | undefined;
533
- requirement?: {
534
- id: string;
535
- text: string;
536
- scenarios: {
537
- rawText: string;
538
- }[];
539
- } | undefined;
540
- rename?: {
541
- from: string;
542
- to: string;
543
- } | undefined;
544
- }[];
545
- tasks: {
546
- id: string;
547
- text: string;
548
- completed: boolean;
549
- section?: string | undefined;
550
- }[];
551
- metadata?: {
552
- version: string;
553
- format: "openspec-change";
554
- } | undefined;
555
- design?: string | undefined;
556
- deltaSpecs?: {
557
- content: string;
558
- specId: string;
559
- }[] | undefined;
560
- }, {
561
- id: string;
562
- name: string;
563
- progress: {
564
- completed: number;
565
- total: number;
566
- };
567
- why: string;
568
- whatChanges: string;
569
- deltas: {
570
- description: string;
571
- spec: string;
572
- operation: "ADDED" | "MODIFIED" | "REMOVED" | "RENAMED";
573
- requirements?: {
574
- id: string;
575
- text: string;
576
- scenarios: {
577
- rawText: string;
578
- }[];
579
- }[] | undefined;
580
- requirement?: {
581
- id: string;
582
- text: string;
583
- scenarios: {
584
- rawText: string;
585
- }[];
586
- } | undefined;
587
- rename?: {
588
- from: string;
589
- to: string;
590
- } | undefined;
591
- }[];
592
- tasks: {
593
- id: string;
594
- text: string;
595
- completed: boolean;
596
- section?: string | undefined;
597
- }[];
598
- metadata?: {
599
- version?: string | undefined;
600
- format?: "openspec-change" | undefined;
601
- } | undefined;
602
- design?: string | undefined;
603
- deltaSpecs?: {
604
- content: string;
605
- specId: string;
606
- }[] | undefined;
607
- }>;
608
- type Change = z.infer<typeof ChangeSchema>;
609
- //#endregion
610
16
  //#region src/validator.d.ts
611
17
  interface ValidationIssue {
612
18
  severity: 'ERROR' | 'WARNING' | 'INFO';
@@ -753,9 +159,18 @@ declare class OpenSpecAdapter {
753
159
  overview: string;
754
160
  requirements: {
755
161
  id: string;
162
+ title: string;
756
163
  text: string;
164
+ bodyMarkdown: string;
757
165
  scenarios: {
166
+ title: string;
758
167
  rawText: string;
168
+ bodyMarkdown: string;
169
+ steps?: {
170
+ keyword: "GIVEN" | "WHEN" | "THEN" | "AND" | "BUT";
171
+ contentMarkdown: string;
172
+ rawText: string;
173
+ }[] | undefined;
759
174
  }[];
760
175
  }[];
761
176
  metadata?: {
@@ -767,10 +182,6 @@ declare class OpenSpecAdapter {
767
182
  changes: {
768
183
  id: string;
769
184
  name: string;
770
- progress: {
771
- completed: number;
772
- total: number;
773
- };
774
185
  why: string;
775
186
  whatChanges: string;
776
187
  deltas: {
@@ -779,16 +190,34 @@ declare class OpenSpecAdapter {
779
190
  operation: "ADDED" | "MODIFIED" | "REMOVED" | "RENAMED";
780
191
  requirements?: {
781
192
  id: string;
193
+ title: string;
782
194
  text: string;
195
+ bodyMarkdown: string;
783
196
  scenarios: {
197
+ title: string;
784
198
  rawText: string;
199
+ bodyMarkdown: string;
200
+ steps?: {
201
+ keyword: "GIVEN" | "WHEN" | "THEN" | "AND" | "BUT";
202
+ contentMarkdown: string;
203
+ rawText: string;
204
+ }[] | undefined;
785
205
  }[];
786
206
  }[] | undefined;
787
207
  requirement?: {
788
208
  id: string;
209
+ title: string;
789
210
  text: string;
211
+ bodyMarkdown: string;
790
212
  scenarios: {
213
+ title: string;
791
214
  rawText: string;
215
+ bodyMarkdown: string;
216
+ steps?: {
217
+ keyword: "GIVEN" | "WHEN" | "THEN" | "AND" | "BUT";
218
+ contentMarkdown: string;
219
+ rawText: string;
220
+ }[] | undefined;
792
221
  }[];
793
222
  } | undefined;
794
223
  rename?: {
@@ -802,6 +231,10 @@ declare class OpenSpecAdapter {
802
231
  completed: boolean;
803
232
  section?: string | undefined;
804
233
  }[];
234
+ progress: {
235
+ completed: number;
236
+ total: number;
237
+ };
805
238
  metadata?: {
806
239
  version: string;
807
240
  format: "openspec-change";
@@ -1418,7 +851,7 @@ declare const TerminalConfigSchema: z.ZodObject<{
1418
851
  lightTheme: z.ZodDefault<z.ZodEnum<["default-light", "default-dark", "monokai", "nord", "solarized-light", "solarized-dark"]>>;
1419
852
  darkTheme: z.ZodDefault<z.ZodEnum<["default-light", "default-dark", "monokai", "nord", "solarized-light", "solarized-dark"]>>;
1420
853
  rendererEngine: z.ZodDefault<z.ZodString>;
1421
- bellSound: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodLiteral<"silent">, z.ZodEnum<["builtin:Basso", "builtin:Blow", "builtin:Bottle", "builtin:Frog", "builtin:Funk", "builtin:Glass", "builtin:Hero", "builtin:Morse", "builtin:Ping", "builtin:Pop", "builtin:Purr", "builtin:Sosumi", "builtin:Submarine", "builtin:Tink"]>, z.ZodType<`custom:${string}`, z.ZodTypeDef, `custom:${string}`>]>, "silent" | "builtin:Basso" | "builtin:Blow" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | "builtin:Tink" | `custom:${string}`, unknown>>;
854
+ bellSound: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodLiteral<"silent">, z.ZodEnum<["builtin:Basso", "builtin:Blow", "builtin:Bottle", "builtin:Frog", "builtin:Funk", "builtin:Glass", "builtin:Hero", "builtin:Morse", "builtin:Ping", "builtin:Pop", "builtin:Purr", "builtin:Sosumi", "builtin:Submarine", "builtin:Tink"]>, z.ZodType<`custom:${string}`, z.ZodTypeDef, `custom:${string}`>]>, "silent" | "builtin:Tink" | "builtin:Blow" | "builtin:Basso" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | `custom:${string}`, unknown>>;
1422
855
  bellVolume: z.ZodDefault<z.ZodNumber>;
1423
856
  }, "strip", z.ZodTypeAny, {
1424
857
  fontSize: number;
@@ -1430,7 +863,7 @@ declare const TerminalConfigSchema: z.ZodObject<{
1430
863
  lightTheme: "default-light" | "default-dark" | "monokai" | "nord" | "solarized-light" | "solarized-dark";
1431
864
  darkTheme: "default-light" | "default-dark" | "monokai" | "nord" | "solarized-light" | "solarized-dark";
1432
865
  rendererEngine: string;
1433
- bellSound: "silent" | "builtin:Basso" | "builtin:Blow" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | "builtin:Tink" | `custom:${string}`;
866
+ bellSound: "silent" | "builtin:Tink" | "builtin:Blow" | "builtin:Basso" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | `custom:${string}`;
1434
867
  bellVolume: number;
1435
868
  }, {
1436
869
  fontSize?: number | undefined;
@@ -1521,7 +954,7 @@ declare const OpenSpecUIConfigSchema: z.ZodObject<{
1521
954
  lightTheme: z.ZodDefault<z.ZodEnum<["default-light", "default-dark", "monokai", "nord", "solarized-light", "solarized-dark"]>>;
1522
955
  darkTheme: z.ZodDefault<z.ZodEnum<["default-light", "default-dark", "monokai", "nord", "solarized-light", "solarized-dark"]>>;
1523
956
  rendererEngine: z.ZodDefault<z.ZodString>;
1524
- bellSound: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodLiteral<"silent">, z.ZodEnum<["builtin:Basso", "builtin:Blow", "builtin:Bottle", "builtin:Frog", "builtin:Funk", "builtin:Glass", "builtin:Hero", "builtin:Morse", "builtin:Ping", "builtin:Pop", "builtin:Purr", "builtin:Sosumi", "builtin:Submarine", "builtin:Tink"]>, z.ZodType<`custom:${string}`, z.ZodTypeDef, `custom:${string}`>]>, "silent" | "builtin:Basso" | "builtin:Blow" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | "builtin:Tink" | `custom:${string}`, unknown>>;
957
+ bellSound: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodLiteral<"silent">, z.ZodEnum<["builtin:Basso", "builtin:Blow", "builtin:Bottle", "builtin:Frog", "builtin:Funk", "builtin:Glass", "builtin:Hero", "builtin:Morse", "builtin:Ping", "builtin:Pop", "builtin:Purr", "builtin:Sosumi", "builtin:Submarine", "builtin:Tink"]>, z.ZodType<`custom:${string}`, z.ZodTypeDef, `custom:${string}`>]>, "silent" | "builtin:Tink" | "builtin:Blow" | "builtin:Basso" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | `custom:${string}`, unknown>>;
1525
958
  bellVolume: z.ZodDefault<z.ZodNumber>;
1526
959
  }, "strip", z.ZodTypeAny, {
1527
960
  fontSize: number;
@@ -1533,7 +966,7 @@ declare const OpenSpecUIConfigSchema: z.ZodObject<{
1533
966
  lightTheme: "default-light" | "default-dark" | "monokai" | "nord" | "solarized-light" | "solarized-dark";
1534
967
  darkTheme: "default-light" | "default-dark" | "monokai" | "nord" | "solarized-light" | "solarized-dark";
1535
968
  rendererEngine: string;
1536
- bellSound: "silent" | "builtin:Basso" | "builtin:Blow" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | "builtin:Tink" | `custom:${string}`;
969
+ bellSound: "silent" | "builtin:Tink" | "builtin:Blow" | "builtin:Basso" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | `custom:${string}`;
1537
970
  bellVolume: number;
1538
971
  }, {
1539
972
  fontSize?: number | undefined;
@@ -1566,11 +999,11 @@ declare const OpenSpecUIConfigSchema: z.ZodObject<{
1566
999
  }>>;
1567
1000
  /** Notification preferences */
1568
1001
  notifications: z.ZodDefault<z.ZodObject<{
1569
- sound: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodLiteral<"silent">, z.ZodEnum<["builtin:Basso", "builtin:Blow", "builtin:Bottle", "builtin:Frog", "builtin:Funk", "builtin:Glass", "builtin:Hero", "builtin:Morse", "builtin:Ping", "builtin:Pop", "builtin:Purr", "builtin:Sosumi", "builtin:Submarine", "builtin:Tink"]>, z.ZodType<`custom:${string}`, z.ZodTypeDef, `custom:${string}`>]>, "silent" | "builtin:Basso" | "builtin:Blow" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | "builtin:Tink" | `custom:${string}`, unknown>>;
1002
+ sound: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodLiteral<"silent">, z.ZodEnum<["builtin:Basso", "builtin:Blow", "builtin:Bottle", "builtin:Frog", "builtin:Funk", "builtin:Glass", "builtin:Hero", "builtin:Morse", "builtin:Ping", "builtin:Pop", "builtin:Purr", "builtin:Sosumi", "builtin:Submarine", "builtin:Tink"]>, z.ZodType<`custom:${string}`, z.ZodTypeDef, `custom:${string}`>]>, "silent" | "builtin:Tink" | "builtin:Blow" | "builtin:Basso" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | `custom:${string}`, unknown>>;
1570
1003
  volume: z.ZodDefault<z.ZodNumber>;
1571
1004
  systemNotificationsEnabled: z.ZodDefault<z.ZodBoolean>;
1572
1005
  }, "strip", z.ZodTypeAny, {
1573
- sound: "silent" | "builtin:Basso" | "builtin:Blow" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | "builtin:Tink" | `custom:${string}`;
1006
+ sound: "silent" | "builtin:Tink" | "builtin:Blow" | "builtin:Basso" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | `custom:${string}`;
1574
1007
  volume: number;
1575
1008
  systemNotificationsEnabled: boolean;
1576
1009
  }, {
@@ -1589,7 +1022,7 @@ declare const OpenSpecUIConfigSchema: z.ZodObject<{
1589
1022
  lightTheme: "default-light" | "default-dark" | "monokai" | "nord" | "solarized-light" | "solarized-dark";
1590
1023
  darkTheme: "default-light" | "default-dark" | "monokai" | "nord" | "solarized-light" | "solarized-dark";
1591
1024
  rendererEngine: string;
1592
- bellSound: "silent" | "builtin:Basso" | "builtin:Blow" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | "builtin:Tink" | `custom:${string}`;
1025
+ bellSound: "silent" | "builtin:Tink" | "builtin:Blow" | "builtin:Basso" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | `custom:${string}`;
1593
1026
  bellVolume: number;
1594
1027
  };
1595
1028
  theme: "light" | "dark" | "system";
@@ -1611,7 +1044,7 @@ declare const OpenSpecUIConfigSchema: z.ZodObject<{
1611
1044
  diffEagerLineBudget: number;
1612
1045
  };
1613
1046
  notifications: {
1614
- sound: "silent" | "builtin:Basso" | "builtin:Blow" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | "builtin:Tink" | `custom:${string}`;
1047
+ sound: "silent" | "builtin:Tink" | "builtin:Blow" | "builtin:Basso" | "builtin:Bottle" | "builtin:Frog" | "builtin:Funk" | "builtin:Glass" | "builtin:Hero" | "builtin:Morse" | "builtin:Ping" | "builtin:Pop" | "builtin:Purr" | "builtin:Sosumi" | "builtin:Submarine" | `custom:${string}`;
1615
1048
  volume: number;
1616
1049
  systemNotificationsEnabled: boolean;
1617
1050
  };
@@ -2187,17 +1620,17 @@ declare const ApplyInstructionsSchema: z.ZodObject<{
2187
1620
  missingArtifacts: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2188
1621
  instruction: z.ZodString;
2189
1622
  }, "strip", z.ZodTypeAny, {
1623
+ tasks: {
1624
+ id: string;
1625
+ description: string;
1626
+ done: boolean;
1627
+ }[];
2190
1628
  progress: {
2191
1629
  total: number;
2192
1630
  complete: number;
2193
1631
  remaining: number;
2194
1632
  };
2195
1633
  state: "ready" | "blocked" | "all_done";
2196
- tasks: {
2197
- id: string;
2198
- description: string;
2199
- done: boolean;
2200
- }[];
2201
1634
  changeName: string;
2202
1635
  schemaName: string;
2203
1636
  changeDir: string;
@@ -2205,17 +1638,17 @@ declare const ApplyInstructionsSchema: z.ZodObject<{
2205
1638
  instruction: string;
2206
1639
  missingArtifacts?: string[] | undefined;
2207
1640
  }, {
1641
+ tasks: {
1642
+ id: string;
1643
+ description: string;
1644
+ done: boolean;
1645
+ }[];
2208
1646
  progress: {
2209
1647
  total: number;
2210
1648
  complete: number;
2211
1649
  remaining: number;
2212
1650
  };
2213
1651
  state: "ready" | "blocked" | "all_done";
2214
- tasks: {
2215
- id: string;
2216
- description: string;
2217
- done: boolean;
2218
- }[];
2219
1652
  changeName: string;
2220
1653
  schemaName: string;
2221
1654
  changeDir: string;
@@ -2296,13 +1729,13 @@ declare const SchemaInfoSchema: z.ZodObject<{
2296
1729
  artifacts: z.ZodArray<z.ZodString, "many">;
2297
1730
  source: z.ZodEnum<["project", "user", "package"]>;
2298
1731
  }, "strip", z.ZodTypeAny, {
2299
- source: "project" | "user" | "package";
2300
1732
  name: string;
1733
+ source: "project" | "user" | "package";
2301
1734
  artifacts: string[];
2302
1735
  description?: string | undefined;
2303
1736
  }, {
2304
- source: "project" | "user" | "package";
2305
1737
  name: string;
1738
+ source: "project" | "user" | "package";
2306
1739
  artifacts: string[];
2307
1740
  description?: string | undefined;
2308
1741
  }>;
@@ -2327,8 +1760,8 @@ declare const SchemaResolutionSchema: z.ZodObject<{
2327
1760
  }>, "many">;
2328
1761
  }, "strip", z.ZodTypeAny, {
2329
1762
  path: string;
2330
- source: "project" | "user" | "package";
2331
1763
  name: string;
1764
+ source: "project" | "user" | "package";
2332
1765
  shadows: {
2333
1766
  path: string;
2334
1767
  source: "project" | "user" | "package";
@@ -2337,8 +1770,8 @@ declare const SchemaResolutionSchema: z.ZodObject<{
2337
1770
  displayPath?: string | undefined;
2338
1771
  }, {
2339
1772
  path: string;
2340
- source: "project" | "user" | "package";
2341
1773
  name: string;
1774
+ source: "project" | "user" | "package";
2342
1775
  shadows: {
2343
1776
  path: string;
2344
1777
  source: "project" | "user" | "package";
@@ -2493,9 +1926,18 @@ interface ExportSnapshot {
2493
1926
  overview: string;
2494
1927
  requirements: Array<{
2495
1928
  id: string;
1929
+ title: string;
1930
+ bodyMarkdown: string;
2496
1931
  text: string;
2497
1932
  scenarios: Array<{
1933
+ title: string;
1934
+ bodyMarkdown: string;
2498
1935
  rawText: string;
1936
+ steps?: Array<{
1937
+ keyword: 'GIVEN' | 'WHEN' | 'THEN' | 'AND' | 'BUT';
1938
+ contentMarkdown: string;
1939
+ rawText: string;
1940
+ }>;
2499
1941
  }>;
2500
1942
  }>;
2501
1943
  createdAt: number;
@@ -2894,4 +2336,4 @@ declare class OpsxKernel {
2894
2336
  private combineSignals;
2895
2337
  }
2896
2338
  //#endregion
2897
- export { type AIToolOption, AI_TOOLS, type ApplyInstructions, ApplyInstructionsContextFilesSchema, ApplyInstructionsSchema, type ApplyTask, ApplyTaskSchema, type ArchiveMeta, type ArtifactInstructions, ArtifactInstructionsSchema, type ArtifactStatus, ArtifactStatusSchema, BUILTIN_SOUND_IDS, BUILTIN_SOUND_OPTIONS, BUILTIN_TERMINAL_SPAWN_COMMANDS, type BuiltinSoundId, BuiltinSoundIdSchema, type BuiltinSoundOption, CODE_EDITOR_THEME_VALUES, CUSTOM_SOUND_ADD_VALUE, type Change, type ChangeFile, ChangeFileSchema, type ChangeMeta, ChangeSchema, type ChangeStatus, ChangeStatusSchema, CliExecutor, type CliResult, type CliRunnerAttempt, type CliSniffResult, type CliStreamEvent, type CodeEditorTheme, CodeEditorThemeSchema, ConfigManager, type CustomSoundHash, CustomSoundHashSchema, type CustomSoundId, CustomSoundIdSchema, type CustomSoundMetadata, type CustomSoundMetadataFile, CustomSoundMetadataFileSchema, CustomSoundMetadataSchema, DASHBOARD_METRIC_KEYS, DEFAULT_BELL_SOUND_ID, DEFAULT_CONFIG, DEFAULT_GIT_DIFF_EAGER_LINE_BUDGET, DEFAULT_NOTIFICATION_SOUND_ID, DEFAULT_TERMINAL_DARK_THEME, DEFAULT_TERMINAL_LIGHT_THEME, DEFAULT_TERMINAL_THEME_MODE, type DashboardCardAvailability, type DashboardConfig, DashboardConfigSchema, type DashboardGitCommitEntry, type DashboardGitDiffStats, type DashboardGitEntry, type DashboardGitSnapshot, type DashboardGitUncommittedEntry, type DashboardGitWorktree, type DashboardMetricKey, type DashboardOverview, type DashboardSummary, type DashboardTrendKind, type DashboardTrendMeta, type DashboardTrendPoint, type DashboardTriColorTrendPoint, type Delta, type DeltaOperation, DeltaOperationType, DeltaSchema, type DeltaSpec, DeltaSpecSchema, type DependencyInfo, DependencyInfoSchema, type DocumentConsumerV1, type DocumentReadModeV1, type DocumentRefV1, type ExportSnapshot, type FileChangeEvent, type FileChangeType, type GitConfig, GitConfigSchema, type GitEntriesPage, type GitEntryCursor, type GitEntryDetail, type GitEntryFileDiff, type GitEntryFilePatch, type GitEntryFileSource, type GitEntryFileSummary, type GitEntryFiles, type GitEntryPatch, type GitEntrySelector, type GitEntryShell, type GitFileChangeType, type GitPatchFile, type GitPatchState, type GitWorktreeHandoff, type GitWorktreeOverview, type GitWorktreeSummary, HOSTED_SHELL_PROTOCOL_VERSION, type HookDiagnosticLevel, type HookDiagnosticV1, type HookLifecycleV1, type HostedBackendHealthResponse, LEGACY_SOUND_ID_MAP, MarkdownParser, NOTIFICATION_SOUND_OPTIONS, NOTIFICATION_SOUND_VALUES, type NotificationAction, NotificationActionSchema, type NotificationGroup, type NotificationGroupKey, NotificationGroupKeySchema, type NotificationPublishInput, NotificationPublishInputSchema, type NotificationRecord, NotificationRecordSchema, type NotificationSettings, NotificationSettingsSchema, type NotificationSound, NotificationSoundSchema, type NotificationSource, NotificationSourceSchema, OFFICIAL_APP_BASE_URL, OPENSPECUI_HOOKS_VERSION, OPSX_AGENT_INVOCATION_MODE_VALUES, type OnReadDocumentHookV1, type OnRunWorkflowHookV1, OpenSpecAdapter, type OpenSpecUIConfig, OpenSpecUIConfigSchema, type OpenSpecUIConfigUpdate, type OpenSpecUIHooksV1, OpenSpecWatcher, type OpsxAgentInvocationMode, OpsxAgentInvocationModeSchema, type OpsxConfig, OpsxConfigSchema, OpsxKernel, type PathCallback, type ProjectRecoveryStatus, type ProjectResidencyEvictionReason, type ProjectResidencyStatus, ProjectWatcher, type ProjectWatcherReinitializeReason, type ProjectWatcherRuntimeStatus, type ProjectWatcherRuntimeStatusListener, PtyAttachMessageSchema, PtyBellResponseSchema, PtyBufferResponseSchema, type PtyClientMessage, PtyClientMessageSchema, PtyCloseMessageSchema, PtyCreateMessageSchema, PtyCreatedResponseSchema, PtyErrorCodeSchema, PtyErrorResponseSchema, PtyExitResponseSchema, PtyInputMessageSchema, PtyListMessageSchema, PtyListResponseSchema, PtyOutputResponseSchema, type PtyPlatform, PtyPlatformSchema, PtyProcessTitleResponseSchema, PtyResizeMessageSchema, type PtyServerMessage, PtyServerMessageSchema, type PtySessionInfo, PtyTitleResponseSchema, ReactiveContext, ReactiveState, type ReactiveStateOptions, type ReadDocumentContextV1, type ReadDocumentResultV1, type Requirement, RequirementSchema, type ResolvedCliRunner, type RunWorkflowContextV1, type RunWorkflowInputV1, type RunWorkflowResultV1, SILENT_SOUND_ID, type SchemaArtifact, SchemaArtifactSchema, type SchemaDetail, SchemaDetailSchema, type SchemaInfo, SchemaInfoSchema, type SchemaResolution, SchemaResolutionSchema, SoundConfigIdSchema, type SoundId, SoundIdSchema, type Spec, type SpecMeta, SpecSchema, TERMINAL_BELL_SOUND_OPTIONS, TERMINAL_BELL_SOUND_VALUES, TERMINAL_COMMAND_FIELD_TYPE_VALUES, TERMINAL_SHELL_QUOTE_STYLE_VALUES, TERMINAL_THEME_MODE_VALUES, TERMINAL_THEME_VALUES, TOOL_WORKFLOW_TO_SKILL_DIR, type Task, TaskSchema, type TemplateContentMap, type TemplatesMap, TemplatesSchema, type TerminalBellSound, TerminalBellSoundSchema, type TerminalCommandArgument, type TerminalCommandField, TerminalCommandFieldSchema, type TerminalCommandFieldValue, type TerminalCommandFieldValues, type TerminalConfig, TerminalConfigSchema, type TerminalControlEvent, type TerminalControlParseResult, TerminalControlParser, type TerminalInvocationSettings, TerminalInvocationSettingsSchema, type TerminalNotificationEvent, type TerminalNotificationParseResult, TerminalNotificationParser, type TerminalNotificationProtocol, type TerminalProgressState, type TerminalPromptState, type TerminalRendererEngine, TerminalRendererEngineSchema, type TerminalShellDefaults, type TerminalShellProfile, TerminalShellProfileSchema, type TerminalShellQuoteStyle, TerminalShellQuoteStyleSchema, type TerminalSpawnCommand, TerminalSpawnCommandSchema, type TerminalThemeId, type TerminalThemeMode, TerminalThemeModeSchema, TerminalThemeSchema, type TerminalTitleTarget, type ToolConfig, type ToolInitDelivery, type ToolInitState, type ToolInitStatus, type ToolWorkflowId, VIRTUAL_PROJECT_DIRNAME, type ValidationIssue, type ValidationResult, Validator, type WatchEvent, type WatchEventType, type WatcherRuntimeStatus, type WorkflowActionV1, type WorkflowInvocationModeResolutionV1, type WorkflowRequestedModeV1, acquireWatcher, buildCliRunnerCandidates, buildEmbeddedUiLaunchUrl, buildHostedLaunchUrl, clearCache, closeAllProjectWatchers, closeAllWatchers, contextStorage, createCleanCliEnv, createFileChangeObservable, customHashFromSoundId, getActiveWatcherCount, getAllToolIds, getAllTools, getAvailableToolIds, getAvailableTools, getBuiltinSoundUrl, getCacheSize, getConfiguredTools, getDefaultCliCommand, getDefaultCliCommandString, getDetectedProjectTools, getNotificationGroupKey, getNotificationGroupLabel, getProjectWatcher, getTerminalCommandDefaultValues, getToolById, getToolInitStates, getWatchedProjectDir, getWatcherRuntimeStatus, groupNotifications, initWatcherPool, isGlobPattern, isHostedBackendHealthResponse, isSupportedEmbeddedUiUrl, isTerminalRendererEngine, isToolConfigured, isWatcherPoolInitialized, normalizeEmbeddedUiUrl, normalizeHostedAppBaseUrl, normalizeLegacySoundId, parseCliCommand, quoteTerminalShellArg, reactiveExists, reactiveReadDir, reactiveReadFile, reactiveStat, renderTerminalCommandArgs, renderTerminalSpawnCommandLine, resolveHostedAppBaseUrl, resolveTerminalShellDefaults, sniffGlobalCli, soundIdFromCustomHash, subscribeWatcherRuntimeStatus, terminalNotificationEventToPublishInput, toOpsxDisplayPath };
2339
+ export { type AIToolOption, AI_TOOLS, type AnnotatedOpenSpecDocument, type ApplyInstructions, ApplyInstructionsContextFilesSchema, ApplyInstructionsSchema, type ApplyTask, ApplyTaskSchema, type ArchiveMeta, type ArtifactInstructions, ArtifactInstructionsSchema, type ArtifactStatus, ArtifactStatusSchema, BUILTIN_SOUND_IDS, BUILTIN_SOUND_OPTIONS, BUILTIN_TERMINAL_SPAWN_COMMANDS, type BuiltinSoundId, BuiltinSoundIdSchema, type BuiltinSoundOption, CODE_EDITOR_THEME_VALUES, CUSTOM_SOUND_ADD_VALUE, type Change, type ChangeFile, ChangeFileSchema, type ChangeMeta, ChangeSchema, type ChangeStatus, ChangeStatusSchema, CliExecutor, type CliResult, type CliRunnerAttempt, type CliSniffResult, type CliStreamEvent, type CodeEditorTheme, CodeEditorThemeSchema, ConfigManager, type CustomSoundHash, CustomSoundHashSchema, type CustomSoundId, CustomSoundIdSchema, type CustomSoundMetadata, type CustomSoundMetadataFile, CustomSoundMetadataFileSchema, CustomSoundMetadataSchema, DASHBOARD_METRIC_KEYS, DEFAULT_BELL_SOUND_ID, DEFAULT_CONFIG, DEFAULT_GIT_DIFF_EAGER_LINE_BUDGET, DEFAULT_NOTIFICATION_SOUND_ID, DEFAULT_TERMINAL_DARK_THEME, DEFAULT_TERMINAL_LIGHT_THEME, DEFAULT_TERMINAL_THEME_MODE, type DashboardCardAvailability, type DashboardConfig, DashboardConfigSchema, type DashboardGitCommitEntry, type DashboardGitDiffStats, type DashboardGitEntry, type DashboardGitSnapshot, type DashboardGitUncommittedEntry, type DashboardGitWorktree, type DashboardMetricKey, type DashboardOverview, type DashboardSummary, type DashboardTrendKind, type DashboardTrendMeta, type DashboardTrendPoint, type DashboardTriColorTrendPoint, type Delta, type DeltaOperation, DeltaOperationType, DeltaSchema, type DeltaSpec, DeltaSpecSchema, type DependencyInfo, DependencyInfoSchema, type DocumentConsumerV1, type DocumentReadModeV1, type DocumentRefV1, type ExportSnapshot, type FileChangeEvent, type FileChangeType, type GitConfig, GitConfigSchema, type GitEntriesPage, type GitEntryCursor, type GitEntryDetail, type GitEntryFileDiff, type GitEntryFilePatch, type GitEntryFileSource, type GitEntryFileSummary, type GitEntryFiles, type GitEntryPatch, type GitEntrySelector, type GitEntryShell, type GitFileChangeType, type GitPatchFile, type GitPatchState, type GitWorktreeHandoff, type GitWorktreeOverview, type GitWorktreeSummary, HOSTED_SHELL_PROTOCOL_VERSION, type HookDiagnosticLevel, type HookDiagnosticV1, type HookLifecycleV1, type HostedBackendHealthResponse, LEGACY_SOUND_ID_MAP, type MarkdownAnnotation, type MarkdownAnnotationConfidence, type MarkdownAnnotationContext, type MarkdownAnnotationInput, type MarkdownAnnotationRule, type MarkdownFact, type MarkdownFactKind, type MarkdownFactSpan, type MarkdownFactsDocument, MarkdownParser, type MarkdownProjectionContext, type MarkdownProjectionRule, type MarkdownReadingDocument, type MarkdownReadingLookup, type MarkdownReadingPlugin, type MarkdownSourcePoint, type MarkdownSourceRange, NOTIFICATION_SOUND_OPTIONS, NOTIFICATION_SOUND_VALUES, type NotificationAction, NotificationActionSchema, type NotificationGroup, type NotificationGroupKey, NotificationGroupKeySchema, type NotificationPublishInput, NotificationPublishInputSchema, type NotificationRecord, NotificationRecordSchema, type NotificationSettings, NotificationSettingsSchema, type NotificationSound, NotificationSoundSchema, type NotificationSource, NotificationSourceSchema, OFFICIAL_APP_BASE_URL, OPENSPECUI_HOOKS_VERSION, OPEN_SPEC_READING_SECTIONS_PROJECTION_ID, OPEN_SPEC_SPEC_PROJECTION_ID, OPSX_AGENT_INVOCATION_MODE_VALUES, type OnReadDocumentHookV1, type OnRunWorkflowHookV1, OpenSpecAdapter, type OpenSpecAnnotation, type OpenSpecAnnotationConfidence, type OpenSpecHeadingSection, type OpenSpecProjectionOptions, type OpenSpecReadingSectionsProjection, type OpenSpecRequirementBlock, type OpenSpecScenarioBlock, type OpenSpecScenarioStepKeyword, type OpenSpecSemanticKind, type OpenSpecUIConfig, OpenSpecUIConfigSchema, type OpenSpecUIConfigUpdate, type OpenSpecUIHooksV1, OpenSpecWatcher, type OpsxAgentInvocationMode, OpsxAgentInvocationModeSchema, type OpsxConfig, OpsxConfigSchema, OpsxKernel, type PathCallback, type ProjectRecoveryStatus, type ProjectResidencyEvictionReason, type ProjectResidencyStatus, ProjectWatcher, type ProjectWatcherReinitializeReason, type ProjectWatcherRuntimeStatus, type ProjectWatcherRuntimeStatusListener, type ProjectedOpenSpecDocument, PtyAttachMessageSchema, PtyBellResponseSchema, PtyBufferResponseSchema, type PtyClientMessage, PtyClientMessageSchema, PtyCloseMessageSchema, PtyCreateMessageSchema, PtyCreatedResponseSchema, PtyErrorCodeSchema, PtyErrorResponseSchema, PtyExitResponseSchema, PtyInputMessageSchema, PtyListMessageSchema, PtyListResponseSchema, PtyOutputResponseSchema, type PtyPlatform, PtyPlatformSchema, PtyProcessTitleResponseSchema, PtyResizeMessageSchema, type PtyServerMessage, PtyServerMessageSchema, type PtySessionInfo, PtyTitleResponseSchema, ReactiveContext, ReactiveState, type ReactiveStateOptions, type ReadDocumentContextV1, type ReadDocumentResultV1, type Requirement, RequirementSchema, type ResolvedCliRunner, type RunWorkflowContextV1, type RunWorkflowInputV1, type RunWorkflowResultV1, SILENT_SOUND_ID, type ScenarioStep, ScenarioStepKeywordSchema, ScenarioStepSchema, type SchemaArtifact, SchemaArtifactSchema, type SchemaDetail, SchemaDetailSchema, type SchemaInfo, SchemaInfoSchema, type SchemaResolution, SchemaResolutionSchema, SoundConfigIdSchema, type SoundId, SoundIdSchema, type Spec, type SpecMeta, SpecSchema, TERMINAL_BELL_SOUND_OPTIONS, TERMINAL_BELL_SOUND_VALUES, TERMINAL_COMMAND_FIELD_TYPE_VALUES, TERMINAL_SHELL_QUOTE_STYLE_VALUES, TERMINAL_THEME_MODE_VALUES, TERMINAL_THEME_VALUES, TOOL_WORKFLOW_TO_SKILL_DIR, type Task, TaskSchema, type TemplateContentMap, type TemplatesMap, TemplatesSchema, type TerminalBellSound, TerminalBellSoundSchema, type TerminalCommandArgument, type TerminalCommandField, TerminalCommandFieldSchema, type TerminalCommandFieldValue, type TerminalCommandFieldValues, type TerminalConfig, TerminalConfigSchema, type TerminalControlEvent, type TerminalControlParseResult, TerminalControlParser, type TerminalInvocationSettings, TerminalInvocationSettingsSchema, type TerminalNotificationEvent, type TerminalNotificationParseResult, TerminalNotificationParser, type TerminalNotificationProtocol, type TerminalProgressState, type TerminalPromptState, type TerminalRendererEngine, TerminalRendererEngineSchema, type TerminalShellDefaults, type TerminalShellProfile, TerminalShellProfileSchema, type TerminalShellQuoteStyle, TerminalShellQuoteStyleSchema, type TerminalSpawnCommand, TerminalSpawnCommandSchema, type TerminalThemeId, type TerminalThemeMode, TerminalThemeModeSchema, TerminalThemeSchema, type TerminalTitleTarget, type ToolConfig, type ToolInitDelivery, type ToolInitState, type ToolInitStatus, type ToolWorkflowId, VIRTUAL_PROJECT_DIRNAME, type ValidationIssue, type ValidationResult, Validator, type WatchEvent, type WatchEventType, type WatcherRuntimeStatus, type WorkflowActionV1, type WorkflowInvocationModeResolutionV1, type WorkflowRequestedModeV1, acquireWatcher, annotateOpenSpecFacts, annotateOpenSpecMarkdown, buildCliRunnerCandidates, buildEmbeddedUiLaunchUrl, buildHostedLaunchUrl, buildMarkdownParentMap, builtinOpenSpecReadingPlugin, clearCache, closeAllProjectWatchers, closeAllWatchers, contextStorage, createCleanCliEnv, createFileChangeObservable, createMarkdownReadingDocument, createMarkdownReadingDocumentFromFacts, createOpenSpecReadingPlugin, customHashFromSoundId, getActiveWatcherCount, getAllToolIds, getAllTools, getAvailableToolIds, getAvailableTools, getBuiltinSoundUrl, getCacheSize, getConfiguredTools, getDefaultCliCommand, getDefaultCliCommandString, getDetectedProjectTools, getMarkdownAnnotation, getMarkdownAnnotationsForFact, getMarkdownFactSpan, getMarkdownHeadingEnd, getMarkdownHeadingFacts, getNotificationGroupKey, getNotificationGroupLabel, getOpenSpecAnnotation, getOpenSpecAnnotationsForFact, getOpenSpecProjectionAnnotation, getOpenSpecReadingSections, getProjectWatcher, getTerminalCommandDefaultValues, getToolById, getToolInitStates, getWatchedProjectDir, getWatcherRuntimeStatus, groupNotifications, initWatcherPool, isGlobPattern, isHostedBackendHealthResponse, isSupportedEmbeddedUiUrl, isTerminalRendererEngine, isToolConfigured, isWatcherPoolInitialized, normalizeEmbeddedUiUrl, normalizeHostedAppBaseUrl, normalizeLegacySoundId, openSpecAnnotationRules, parseCliCommand, parseMarkdownFacts, parseOpenSpecMarkdownToSpec, projectAnnotatedOpenSpecToSpec, projectOpenSpecMarkdown, quoteTerminalShellArg, reactiveExists, reactiveReadDir, reactiveReadFile, reactiveStat, renderTerminalCommandArgs, renderTerminalSpawnCommandLine, resolveHostedAppBaseUrl, resolveTerminalShellDefaults, sniffGlobalCli, soundIdFromCustomHash, subscribeWatcherRuntimeStatus, terminalNotificationEventToPublishInput, toMarkdownFactKind, toOpsxDisplayPath, trimMarkdownSlice };