@xenosystem/agent-sdk 0.9.21 → 0.9.24

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 (60) hide show
  1. package/README.md +18 -8
  2. package/dist/artifacts/index.cjs +1 -1
  3. package/dist/artifacts/index.js +1 -1
  4. package/dist/automation/index.cjs +16 -3
  5. package/dist/automation/index.d.cts +367 -1
  6. package/dist/automation/index.d.ts +367 -1
  7. package/dist/automation/index.js +16 -3
  8. package/dist/automation/metafile-cjs.json +1 -1
  9. package/dist/automation/metafile-esm.json +1 -1
  10. package/dist/control-plane/index.cjs +1 -1
  11. package/dist/control-plane/index.js +1 -1
  12. package/dist/control-room/index.d.cts +1 -1
  13. package/dist/control-room/index.d.ts +1 -1
  14. package/dist/control-room/metafile-cjs.json +1 -1
  15. package/dist/control-room/metafile-esm.json +1 -1
  16. package/dist/coordination/index.cjs +2 -0
  17. package/dist/coordination/index.d.cts +395 -0
  18. package/dist/coordination/index.d.ts +395 -0
  19. package/dist/coordination/index.js +2 -0
  20. package/dist/coordination/metafile-cjs.json +1 -0
  21. package/dist/coordination/metafile-esm.json +1 -0
  22. package/dist/electron/index.cjs +123 -119
  23. package/dist/electron/index.d.cts +61 -0
  24. package/dist/electron/index.d.ts +61 -0
  25. package/dist/electron/index.js +118 -114
  26. package/dist/electron/metafile-cjs.json +1 -1
  27. package/dist/electron/metafile-esm.json +1 -1
  28. package/dist/governance/index.d.cts +29 -0
  29. package/dist/governance/index.d.ts +29 -0
  30. package/dist/hosted/index.cjs +1 -1
  31. package/dist/hosted/index.js +1 -1
  32. package/dist/hosted/metafile-cjs.json +1 -1
  33. package/dist/hosted/metafile-esm.json +1 -1
  34. package/dist/index.cjs +359 -351
  35. package/dist/index.d.cts +1964 -1254
  36. package/dist/index.d.ts +1964 -1254
  37. package/dist/index.js +359 -351
  38. package/dist/mcp/index.d.cts +28 -0
  39. package/dist/mcp/index.d.ts +28 -0
  40. package/dist/metafile-cjs.json +1 -1
  41. package/dist/metafile-esm.json +1 -1
  42. package/dist/providers/metafile-cjs.json +1 -1
  43. package/dist/providers/metafile-esm.json +1 -1
  44. package/dist/session/index.cjs +56 -54
  45. package/dist/session/index.d.cts +69 -1
  46. package/dist/session/index.d.ts +69 -1
  47. package/dist/session/index.js +56 -54
  48. package/dist/session/metafile-cjs.json +1 -1
  49. package/dist/session/metafile-esm.json +1 -1
  50. package/dist/skills/index.d.cts +28 -0
  51. package/dist/skills/index.d.ts +28 -0
  52. package/dist/ui/index.d.cts +28 -0
  53. package/dist/ui/index.d.ts +28 -0
  54. package/dist/utils/index.cjs +17 -16
  55. package/dist/utils/index.d.cts +31 -1
  56. package/dist/utils/index.d.ts +31 -1
  57. package/dist/utils/index.js +14 -13
  58. package/dist/utils/metafile-cjs.json +1 -1
  59. package/dist/utils/metafile-esm.json +1 -1
  60. package/package.json +6 -1
@@ -74,6 +74,33 @@ interface CompactionRecord {
74
74
  artifactReferences: string[];
75
75
  createdAt: string;
76
76
  }
77
+ declare const WEB_CONTEXT_TOOL_RESULT_SCHEMA: "xeno.web-context.tool-result.v1";
78
+ interface WebContextEvidenceProjection {
79
+ evidenceId: string;
80
+ requestId: string;
81
+ sourceUrl: string;
82
+ finalUrl?: string;
83
+ citations: Array<{
84
+ url: string;
85
+ title?: string;
86
+ artifactId?: string;
87
+ }>;
88
+ }
89
+ interface WebContextToolResult {
90
+ schemaVersion: typeof WEB_CONTEXT_TOOL_RESULT_SCHEMA;
91
+ operation: "search" | "fetch";
92
+ requestId: string;
93
+ evidence: WebContextEvidenceProjection;
94
+ job?: {
95
+ jobId: string;
96
+ state: string;
97
+ };
98
+ artifact?: {
99
+ artifactId: string;
100
+ mediaType: string;
101
+ bytes: number;
102
+ };
103
+ }
77
104
  type PermissionProfileName = "default" | "read-only" | "trusted-dev";
78
105
  type PermissionProfileDecision = "allow" | "ask" | "deny";
79
106
  type PermissionProfileMode = "default" | "acceptEdits" | "bypassPermissions" | "auto";
@@ -219,6 +246,7 @@ interface ToolResult {
219
246
  assistantOnlyContent?: ToolAssistantContentBlock[];
220
247
  operation?: ToolOperationSnapshot;
221
248
  evidence?: ToolEvidence[];
249
+ webContext?: WebContextToolResult;
222
250
  retryable?: boolean;
223
251
  }
224
252
  interface ToolExecutionContext {
@@ -262,6 +290,7 @@ interface ToolResultBlock {
262
290
  is_error?: boolean;
263
291
  operation?: ToolOperationSnapshot;
264
292
  evidence?: ToolEvidence[];
293
+ web_context?: WebContextToolResult;
265
294
  retryable?: boolean;
266
295
  }
267
296
  type ContentBlock = TextBlock | ToolUseBlock;
@@ -412,6 +441,7 @@ interface ContextCompressedData {
412
441
  messagesRemoved: number;
413
442
  tokensSaved: number;
414
443
  compaction?: CompactionRecord;
444
+ activeContextMessages?: Message[];
415
445
  }
416
446
  interface SessionEndData {
417
447
  reason: "user_exit" | "error" | "completed";
@@ -947,6 +977,7 @@ type XenoRuntimeEvent = (XenoRuntimeEventBase & {
947
977
  success: boolean;
948
978
  outputPreview: string;
949
979
  error?: string;
980
+ webContext?: WebContextToolResult;
950
981
  elapsedMs: number;
951
982
  iteration?: number;
952
983
  }) | (XenoRuntimeEventBase & {
@@ -1080,6 +1111,16 @@ declare class TranscriptWriter {
1080
1111
  offset?: number;
1081
1112
  }): Promise<TranscriptEvent[]>;
1082
1113
  private isMessageData;
1114
+ isMessageEvent(event: TranscriptEvent): event is TranscriptEvent & {
1115
+ data: Message;
1116
+ };
1117
+ readValidated(): Promise<{
1118
+ events: TranscriptEvent[];
1119
+ issues: Array<{
1120
+ code: "torn_transcript_tail" | "invalid_transcript_event" | "non_monotonic_sequence";
1121
+ detail: string;
1122
+ }>;
1123
+ }>;
1083
1124
  getMessages(): Promise<Message[]>;
1084
1125
  replaceMessages(messages: Message[]): Promise<void>;
1085
1126
  truncateAfterMessageCount(messageCount: number): Promise<void>;
@@ -1122,18 +1163,38 @@ interface SessionResumeOptions {
1122
1163
  sessionId: string;
1123
1164
  fromCheckpoint?: string;
1124
1165
  }
1166
+ type SessionRecoverySource = "transcript" | "checkpoint" | "empty";
1167
+ interface SessionRecoveryIssue {
1168
+ code: "torn_transcript_tail" | "invalid_transcript_event" | "non_monotonic_sequence" | "interrupted_tool_call" | "checkpoint_fallback" | "divergent_checkpoint" | "stale_metadata" | "invalid_compaction_snapshot";
1169
+ detail: string;
1170
+ }
1171
+ interface SessionRecoveryResult {
1172
+ messages: Message[];
1173
+ transcriptMessages: Message[];
1174
+ source: SessionRecoverySource;
1175
+ sourceId?: string;
1176
+ issues: SessionRecoveryIssue[];
1177
+ repairMessages: Message[];
1178
+ transcriptEventCount: number;
1179
+ latestTimestamp?: string;
1180
+ }
1125
1181
  declare class SessionManager {
1126
1182
  private sessionDir;
1127
1183
  private _meta;
1128
1184
  private _transcript;
1129
1185
  private _checkpoints;
1130
1186
  private _lock;
1187
+ private _recovery;
1188
+ private _detachedForHandoff;
1131
1189
  private constructor();
1132
1190
  static create(options: SessionCreateOptions): Promise<SessionManager>;
1133
1191
  static resume(options: SessionResumeOptions): Promise<SessionManager>;
1134
1192
  get meta(): SessionMeta;
1135
1193
  get transcript(): TranscriptWriter;
1136
1194
  get checkpoints(): CheckpointManager;
1195
+ get recovery(): SessionRecoveryResult;
1196
+ detachForHandoff(): Promise<void>;
1197
+ get detachedForHandoff(): boolean;
1137
1198
  updateMeta(partial: Partial<SessionMeta>): Promise<void>;
1138
1199
  end(status?: "completed" | "abandoned"): Promise<void>;
1139
1200
  recordUserMessage(content: string): Promise<void>;
@@ -74,6 +74,33 @@ interface CompactionRecord {
74
74
  artifactReferences: string[];
75
75
  createdAt: string;
76
76
  }
77
+ declare const WEB_CONTEXT_TOOL_RESULT_SCHEMA: "xeno.web-context.tool-result.v1";
78
+ interface WebContextEvidenceProjection {
79
+ evidenceId: string;
80
+ requestId: string;
81
+ sourceUrl: string;
82
+ finalUrl?: string;
83
+ citations: Array<{
84
+ url: string;
85
+ title?: string;
86
+ artifactId?: string;
87
+ }>;
88
+ }
89
+ interface WebContextToolResult {
90
+ schemaVersion: typeof WEB_CONTEXT_TOOL_RESULT_SCHEMA;
91
+ operation: "search" | "fetch";
92
+ requestId: string;
93
+ evidence: WebContextEvidenceProjection;
94
+ job?: {
95
+ jobId: string;
96
+ state: string;
97
+ };
98
+ artifact?: {
99
+ artifactId: string;
100
+ mediaType: string;
101
+ bytes: number;
102
+ };
103
+ }
77
104
  type PermissionProfileName = "default" | "read-only" | "trusted-dev";
78
105
  type PermissionProfileDecision = "allow" | "ask" | "deny";
79
106
  type PermissionProfileMode = "default" | "acceptEdits" | "bypassPermissions" | "auto";
@@ -219,6 +246,7 @@ interface ToolResult {
219
246
  assistantOnlyContent?: ToolAssistantContentBlock[];
220
247
  operation?: ToolOperationSnapshot;
221
248
  evidence?: ToolEvidence[];
249
+ webContext?: WebContextToolResult;
222
250
  retryable?: boolean;
223
251
  }
224
252
  interface ToolExecutionContext {
@@ -262,6 +290,7 @@ interface ToolResultBlock {
262
290
  is_error?: boolean;
263
291
  operation?: ToolOperationSnapshot;
264
292
  evidence?: ToolEvidence[];
293
+ web_context?: WebContextToolResult;
265
294
  retryable?: boolean;
266
295
  }
267
296
  type ContentBlock = TextBlock | ToolUseBlock;
@@ -412,6 +441,7 @@ interface ContextCompressedData {
412
441
  messagesRemoved: number;
413
442
  tokensSaved: number;
414
443
  compaction?: CompactionRecord;
444
+ activeContextMessages?: Message[];
415
445
  }
416
446
  interface SessionEndData {
417
447
  reason: "user_exit" | "error" | "completed";
@@ -947,6 +977,7 @@ type XenoRuntimeEvent = (XenoRuntimeEventBase & {
947
977
  success: boolean;
948
978
  outputPreview: string;
949
979
  error?: string;
980
+ webContext?: WebContextToolResult;
950
981
  elapsedMs: number;
951
982
  iteration?: number;
952
983
  }) | (XenoRuntimeEventBase & {
@@ -1080,6 +1111,16 @@ declare class TranscriptWriter {
1080
1111
  offset?: number;
1081
1112
  }): Promise<TranscriptEvent[]>;
1082
1113
  private isMessageData;
1114
+ isMessageEvent(event: TranscriptEvent): event is TranscriptEvent & {
1115
+ data: Message;
1116
+ };
1117
+ readValidated(): Promise<{
1118
+ events: TranscriptEvent[];
1119
+ issues: Array<{
1120
+ code: "torn_transcript_tail" | "invalid_transcript_event" | "non_monotonic_sequence";
1121
+ detail: string;
1122
+ }>;
1123
+ }>;
1083
1124
  getMessages(): Promise<Message[]>;
1084
1125
  replaceMessages(messages: Message[]): Promise<void>;
1085
1126
  truncateAfterMessageCount(messageCount: number): Promise<void>;
@@ -1122,18 +1163,38 @@ interface SessionResumeOptions {
1122
1163
  sessionId: string;
1123
1164
  fromCheckpoint?: string;
1124
1165
  }
1166
+ type SessionRecoverySource = "transcript" | "checkpoint" | "empty";
1167
+ interface SessionRecoveryIssue {
1168
+ code: "torn_transcript_tail" | "invalid_transcript_event" | "non_monotonic_sequence" | "interrupted_tool_call" | "checkpoint_fallback" | "divergent_checkpoint" | "stale_metadata" | "invalid_compaction_snapshot";
1169
+ detail: string;
1170
+ }
1171
+ interface SessionRecoveryResult {
1172
+ messages: Message[];
1173
+ transcriptMessages: Message[];
1174
+ source: SessionRecoverySource;
1175
+ sourceId?: string;
1176
+ issues: SessionRecoveryIssue[];
1177
+ repairMessages: Message[];
1178
+ transcriptEventCount: number;
1179
+ latestTimestamp?: string;
1180
+ }
1125
1181
  declare class SessionManager {
1126
1182
  private sessionDir;
1127
1183
  private _meta;
1128
1184
  private _transcript;
1129
1185
  private _checkpoints;
1130
1186
  private _lock;
1187
+ private _recovery;
1188
+ private _detachedForHandoff;
1131
1189
  private constructor();
1132
1190
  static create(options: SessionCreateOptions): Promise<SessionManager>;
1133
1191
  static resume(options: SessionResumeOptions): Promise<SessionManager>;
1134
1192
  get meta(): SessionMeta;
1135
1193
  get transcript(): TranscriptWriter;
1136
1194
  get checkpoints(): CheckpointManager;
1195
+ get recovery(): SessionRecoveryResult;
1196
+ detachForHandoff(): Promise<void>;
1197
+ get detachedForHandoff(): boolean;
1137
1198
  updateMeta(partial: Partial<SessionMeta>): Promise<void>;
1138
1199
  end(status?: "completed" | "abandoned"): Promise<void>;
1139
1200
  recordUserMessage(content: string): Promise<void>;