@agentdock/wire 0.0.45 → 0.0.46

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 (94) hide show
  1. package/dist/agentCapabilities.d.ts.map +1 -0
  2. package/dist/agentCapabilities.js +195 -1
  3. package/dist/agentCapabilities.js.map +1 -0
  4. package/dist/agentCommonEnv.d.ts.map +1 -0
  5. package/dist/agentCommonEnv.js +20 -1
  6. package/dist/agentCommonEnv.js.map +1 -0
  7. package/dist/agentInstallGuide.d.ts.map +1 -0
  8. package/dist/agentInstallGuide.js +81 -1
  9. package/dist/agentInstallGuide.js.map +1 -0
  10. package/dist/checkpointSchemas.d.ts.map +1 -0
  11. package/dist/checkpointSchemas.js +46 -1
  12. package/dist/checkpointSchemas.js.map +1 -0
  13. package/dist/controlLevel.d.ts.map +1 -0
  14. package/dist/controlLevel.js +11 -1
  15. package/dist/controlLevel.js.map +1 -0
  16. package/dist/edition.d.ts.map +1 -0
  17. package/dist/edition.js +13 -1
  18. package/dist/edition.js.map +1 -0
  19. package/dist/envelope.d.ts.map +1 -0
  20. package/dist/envelope.js +78 -1
  21. package/dist/envelope.js.map +1 -0
  22. package/dist/errorMessage.d.ts.map +1 -0
  23. package/dist/errorMessage.js +6 -1
  24. package/dist/errorMessage.js.map +1 -0
  25. package/dist/events.d.ts.map +1 -0
  26. package/dist/events.js +97 -1
  27. package/dist/events.js.map +1 -0
  28. package/dist/features.d.ts.map +1 -0
  29. package/dist/features.js +112 -1
  30. package/dist/features.js.map +1 -0
  31. package/dist/feedback.d.ts.map +1 -0
  32. package/dist/feedback.js +26 -1
  33. package/dist/feedback.js.map +1 -0
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/index.js +64 -1
  36. package/dist/index.js.map +1 -0
  37. package/dist/interactionEvents.d.ts.map +1 -0
  38. package/dist/interactionEvents.js +108 -1
  39. package/dist/interactionEvents.js.map +1 -0
  40. package/dist/legacyProtocol.d.ts.map +1 -0
  41. package/dist/legacyProtocol.js +30 -1
  42. package/dist/legacyProtocol.js.map +1 -0
  43. package/dist/license.d.ts.map +1 -0
  44. package/dist/license.js +17 -1
  45. package/dist/license.js.map +1 -0
  46. package/dist/machine.d.ts.map +1 -0
  47. package/dist/machine.js +56 -1
  48. package/dist/machine.js.map +1 -0
  49. package/dist/messageMeta.d.ts.map +1 -0
  50. package/dist/messageMeta.js +60 -1
  51. package/dist/messageMeta.js.map +1 -0
  52. package/dist/messages.d.ts.map +1 -0
  53. package/dist/messages.js +35 -1
  54. package/dist/messages.js.map +1 -0
  55. package/dist/ops.d.ts.map +1 -0
  56. package/dist/ops.js +74 -1
  57. package/dist/ops.js.map +1 -0
  58. package/dist/pairing.d.ts.map +1 -0
  59. package/dist/pairing.js +115 -1
  60. package/dist/pairing.js.map +1 -0
  61. package/dist/protocol.d.ts.map +1 -0
  62. package/dist/protocol.js +7 -1
  63. package/dist/protocol.js.map +1 -0
  64. package/dist/rpc.d.ts.map +1 -0
  65. package/dist/rpc.js +246 -1
  66. package/dist/rpc.js.map +1 -0
  67. package/dist/scheduledTasks.d.ts.map +1 -0
  68. package/dist/scheduledTasks.js +81 -1
  69. package/dist/scheduledTasks.js.map +1 -0
  70. package/dist/semver.d.ts.map +1 -0
  71. package/dist/semver.js +60 -1
  72. package/dist/semver.js.map +1 -0
  73. package/dist/sessionResult.d.ts.map +1 -0
  74. package/dist/sessionResult.js +23 -1
  75. package/dist/sessionResult.js.map +1 -0
  76. package/dist/socketEvents.d.ts.map +1 -0
  77. package/dist/socketEvents.js +44 -1
  78. package/dist/socketEvents.js.map +1 -0
  79. package/dist/spawnError.d.ts.map +1 -0
  80. package/dist/spawnError.js +31 -1
  81. package/dist/spawnError.js.map +1 -0
  82. package/dist/stats.d.ts.map +1 -0
  83. package/dist/stats.js +126 -1
  84. package/dist/stats.js.map +1 -0
  85. package/dist/sync.d.ts.map +1 -0
  86. package/dist/sync.js +78 -1
  87. package/dist/sync.js.map +1 -0
  88. package/dist/telemetry.d.ts.map +1 -0
  89. package/dist/telemetry.js +80 -1
  90. package/dist/telemetry.js.map +1 -0
  91. package/dist/utils.d.ts.map +1 -0
  92. package/dist/utils.js +2 -1
  93. package/dist/utils.js.map +1 -0
  94. package/package.json +1 -1
package/dist/events.js CHANGED
@@ -1 +1,97 @@
1
- "use strict";import{z as e}from"zod";import{SessionQuestionEventSchema as t,SessionPermissionRequestEventSchema as n,SessionAnswerEventSchema as o,SessionPermissionResolvedEventSchema as s}from"./interactionEvents.js";export const SessionTextEventSchema=e.object({t:e.literal("text"),text:e.string(),thinking:e.boolean().optional()}),SessionServiceEventSchema=e.object({t:e.literal("service"),text:e.string()}),SessionToolCallStartEventSchema=e.object({t:e.literal("tool-call-start"),call:e.string(),name:e.string(),title:e.string(),description:e.string(),args:e.record(e.string(),e.unknown())}),SessionToolCallEndEventSchema=e.object({t:e.literal("tool-call-end"),call:e.string(),result:e.string().optional(),error:e.boolean().optional()}),SessionFileEventSchema=e.object({t:e.literal("file"),ref:e.string(),name:e.string(),size:e.number(),image:e.object({width:e.number(),height:e.number(),thumbhash:e.string()}).optional()}),SessionTurnStartEventSchema=e.object({t:e.literal("turn-start")}),SessionTurnEndStatusSchema=e.enum(["completed","failed","cancelled"]),TurnUsageSchema=e.object({inputTokens:e.number().int().nonnegative(),outputTokens:e.number().int().nonnegative(),cacheReadTokens:e.number().int().nonnegative().optional(),cacheWriteTokens:e.number().int().nonnegative().optional()}),SessionTurnEndEventSchema=e.object({t:e.literal("turn-end"),status:SessionTurnEndStatusSchema,usage:TurnUsageSchema.optional(),model:e.string().optional()}),SessionStartEventSchema=e.object({t:e.literal("start"),title:e.string().optional()}),SessionStopEventSchema=e.object({t:e.literal("stop")}),SessionImageEventSchema=e.object({t:e.literal("image"),data:e.string(),mediaType:e.string()}),SessionEventSchema=e.discriminatedUnion("t",[SessionTextEventSchema,SessionServiceEventSchema,SessionToolCallStartEventSchema,SessionToolCallEndEventSchema,SessionFileEventSchema,SessionTurnStartEventSchema,SessionTurnEndEventSchema,SessionStartEventSchema,SessionStopEventSchema,t,n,o,s,SessionImageEventSchema]);export{SessionQuestionEventSchema,SessionPermissionRequestEventSchema,SessionAnswerEventSchema,SessionPermissionResolvedEventSchema,PermissionActionSchema,ImageAttachmentSchema}from"./interactionEvents.js";
1
+ /**
2
+ * Session event schemas — aligned with Happy sessionProtocol.
3
+ *
4
+ * Event types: text, service, tool-call-start, tool-call-end,
5
+ * file, turn-start, turn-end, start, stop.
6
+ */
7
+ import { z } from 'zod';
8
+ import { SessionQuestionEventSchema, SessionPermissionRequestEventSchema, SessionAnswerEventSchema, SessionPermissionResolvedEventSchema, } from './interactionEvents.js';
9
+ export const SessionTextEventSchema = z.object({
10
+ t: z.literal('text'),
11
+ text: z.string(),
12
+ thinking: z.boolean().optional(),
13
+ });
14
+ export const SessionServiceEventSchema = z.object({
15
+ t: z.literal('service'),
16
+ text: z.string(),
17
+ });
18
+ export const SessionToolCallStartEventSchema = z.object({
19
+ t: z.literal('tool-call-start'),
20
+ call: z.string(),
21
+ name: z.string(),
22
+ title: z.string(),
23
+ description: z.string(),
24
+ args: z.record(z.string(), z.unknown()),
25
+ });
26
+ export const SessionToolCallEndEventSchema = z.object({
27
+ t: z.literal('tool-call-end'),
28
+ call: z.string(),
29
+ /** Tool output text (may be truncated at source). */
30
+ result: z.string().optional(),
31
+ /** True when the tool returned an error result. */
32
+ error: z.boolean().optional(),
33
+ });
34
+ export const SessionFileEventSchema = z.object({
35
+ t: z.literal('file'),
36
+ ref: z.string(),
37
+ name: z.string(),
38
+ size: z.number(),
39
+ image: z
40
+ .object({
41
+ width: z.number(),
42
+ height: z.number(),
43
+ thumbhash: z.string(),
44
+ })
45
+ .optional(),
46
+ });
47
+ export const SessionTurnStartEventSchema = z.object({
48
+ t: z.literal('turn-start'),
49
+ });
50
+ export const SessionTurnEndStatusSchema = z.enum(['completed', 'failed', 'cancelled']);
51
+ /** Token usage stats reported at turn end. */
52
+ export const TurnUsageSchema = z.object({
53
+ inputTokens: z.number().int().nonnegative(),
54
+ outputTokens: z.number().int().nonnegative(),
55
+ cacheReadTokens: z.number().int().nonnegative().optional(),
56
+ cacheWriteTokens: z.number().int().nonnegative().optional(),
57
+ });
58
+ export const SessionTurnEndEventSchema = z.object({
59
+ t: z.literal('turn-end'),
60
+ status: SessionTurnEndStatusSchema,
61
+ usage: TurnUsageSchema.optional(),
62
+ model: z.string().optional(),
63
+ });
64
+ export const SessionStartEventSchema = z.object({
65
+ t: z.literal('start'),
66
+ title: z.string().optional(),
67
+ });
68
+ export const SessionStopEventSchema = z.object({
69
+ t: z.literal('stop'),
70
+ });
71
+ /** User-sent image stored inline in envelope (base64). */
72
+ export const SessionImageEventSchema = z.object({
73
+ t: z.literal('image'),
74
+ /** Base64-encoded image data. */
75
+ data: z.string(),
76
+ /** MIME type: image/jpeg, image/png, image/gif, image/webp. */
77
+ mediaType: z.string(),
78
+ });
79
+ export const SessionEventSchema = z.discriminatedUnion('t', [
80
+ SessionTextEventSchema,
81
+ SessionServiceEventSchema,
82
+ SessionToolCallStartEventSchema,
83
+ SessionToolCallEndEventSchema,
84
+ SessionFileEventSchema,
85
+ SessionTurnStartEventSchema,
86
+ SessionTurnEndEventSchema,
87
+ SessionStartEventSchema,
88
+ SessionStopEventSchema,
89
+ SessionQuestionEventSchema,
90
+ SessionPermissionRequestEventSchema,
91
+ SessionAnswerEventSchema,
92
+ SessionPermissionResolvedEventSchema,
93
+ SessionImageEventSchema,
94
+ ]);
95
+ // Re-export interaction event schemas for convenience
96
+ export { SessionQuestionEventSchema, SessionPermissionRequestEventSchema, SessionAnswerEventSchema, SessionPermissionResolvedEventSchema, PermissionActionSchema, ImageAttachmentSchema, } from './interactionEvents.js';
97
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../src/features.ts"],"names":[],"mappings":"AASA,sFAAsF;AACtF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9C;AAED,sFAAsF;AACtF,MAAM,WAAW,iBAAiB;IAChC,iCAAiC;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,uDAAuD;IACvD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,qEAAqE;IACrE,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IAC7C,uEAAuE;IACvE,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACxD;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,iBAAiB,EAsC/C,CAAC;AAEX;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,SAAS,MAAM,EAAE,GAClC,OAAO,CAKT;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,gBAAgB,EAAE,SAAS,MAAM,EAAE,EACnC,aAAa,EAAE,MAAM,GAAG,SAAS,GAChC,OAAO,CAYT;AAED,8DAA8D;AAC9D,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,SAAS,CAGpB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,SAAS,MAAM,EAAE,EACnC,aAAa,CAAC,EAAE,MAAM,GACrB,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAAE,CAkBjD"}
package/dist/features.js CHANGED
@@ -1 +1,112 @@
1
- "use strict";import{satisfiesMin as d}from"./semver.js";export const FEATURE_REGISTRY=[{id:"agent-settings",requiredMethods:["get-agent-settings","set-agent-settings"],sinceVersion:"0.0.4",subFeatures:[{id:"startup-scripts",sinceVersion:"0.0.30"}]},{id:"labs-settings",requiredMethods:["get-labs-settings","set-labs-settings"],sinceVersion:"0.0.12"},{id:"history-sync",requiredMethods:["backfill-history-session"],sinceVersion:"0.0.12"},{id:"check-path",requiredMethods:["check-path"],sinceVersion:"0.0.7"},{id:"remote-upgrade",requiredMethods:["trigger-upgrade"],sinceVersion:"0.0.30"},{id:"checkpoint",requiredMethods:["checkpoint-list","checkpoint-diff","checkpoint-rollback"],sinceVersion:"0.0.30",subFeatures:[{id:"conversation-rollback",sinceVersion:"0.0.32"}]},{id:"scheduled-tasks",requiredMethods:["spawn-session"],sinceVersion:"0.0.35"}];export function isFeatureAvailable(r,n){const t=FEATURE_REGISTRY.find(e=>e.id===r);if(!t)return!1;const i=new Set(n);return t.requiredMethods.every(e=>i.has(e))}export function isSubFeatureAvailable(r,n,t,i){const e=FEATURE_REGISTRY.find(o=>o.id===r);if(!e||!isFeatureAvailable(r,t))return!1;const s=e.subFeatures?.find(o=>o.id===n);if(!s||!i||!d(i,s.sinceVersion))return!1;if(s.requiredMethods){const o=new Set(t);return s.requiredMethods.every(u=>o.has(u))}return!0}export function getSubFeatureMinVersion(r,n){return FEATURE_REGISTRY.find(i=>i.id===r)?.subFeatures?.find(i=>i.id===n)?.sinceVersion}export function getUnavailableFeatures(r,n){const t=[],i=new Set(r);for(const e of FEATURE_REGISTRY)if(!e.requiredMethods.every(s=>i.has(s)))t.push({id:e.id,sinceVersion:e.sinceVersion});else if(e.subFeatures&&n)for(const s of e.subFeatures){const o=!d(n,s.sinceVersion),u=s.requiredMethods!=null&&!s.requiredMethods.every(c=>i.has(c));(o||u)&&t.push({id:`${e.id}/${s.id}`,sinceVersion:s.sinceVersion})}return t}
1
+ /* Feature availability layer (RFC-035).
2
+ *
3
+ * Maps high-level features to the RPC methods they require.
4
+ * Used by web to determine which features a daemon supports
5
+ * based on the methods it has registered.
6
+ */
7
+ import { satisfiesMin } from './semver.js';
8
+ /**
9
+ * Registry of all known features and their RPC dependencies.
10
+ * Add new entries here when introducing features that require new daemon RPC methods.
11
+ */
12
+ export const FEATURE_REGISTRY = [
13
+ {
14
+ id: 'agent-settings',
15
+ requiredMethods: ['get-agent-settings', 'set-agent-settings'],
16
+ sinceVersion: '0.0.4',
17
+ subFeatures: [{ id: 'startup-scripts', sinceVersion: '0.0.30' }],
18
+ },
19
+ {
20
+ id: 'labs-settings',
21
+ requiredMethods: ['get-labs-settings', 'set-labs-settings'],
22
+ sinceVersion: '0.0.12',
23
+ },
24
+ {
25
+ id: 'history-sync',
26
+ requiredMethods: ['backfill-history-session'],
27
+ sinceVersion: '0.0.12',
28
+ },
29
+ {
30
+ id: 'check-path',
31
+ requiredMethods: ['check-path'],
32
+ sinceVersion: '0.0.7',
33
+ },
34
+ {
35
+ id: 'remote-upgrade',
36
+ requiredMethods: ['trigger-upgrade'],
37
+ sinceVersion: '0.0.30',
38
+ },
39
+ {
40
+ id: 'checkpoint',
41
+ requiredMethods: ['checkpoint-list', 'checkpoint-diff', 'checkpoint-rollback'],
42
+ sinceVersion: '0.0.30',
43
+ subFeatures: [{ id: 'conversation-rollback', sinceVersion: '0.0.32' }],
44
+ },
45
+ {
46
+ id: 'scheduled-tasks',
47
+ requiredMethods: ['spawn-session'],
48
+ sinceVersion: '0.0.35',
49
+ },
50
+ ];
51
+ /**
52
+ * Check whether a specific feature is available given the set of supported methods.
53
+ * A feature is available when ALL its required methods are present.
54
+ */
55
+ export function isFeatureAvailable(featureId, supportedMethods) {
56
+ const feature = FEATURE_REGISTRY.find((f) => f.id === featureId);
57
+ if (!feature)
58
+ return false;
59
+ const methodSet = new Set(supportedMethods);
60
+ return feature.requiredMethods.every((m) => methodSet.has(m));
61
+ }
62
+ /**
63
+ * Check whether a sub-feature is available given supported methods and daemon version.
64
+ * Requires the parent feature to be available AND the daemon version to satisfy the sub-feature minimum.
65
+ */
66
+ export function isSubFeatureAvailable(featureId, subFeatureId, supportedMethods, daemonVersion) {
67
+ const feature = FEATURE_REGISTRY.find((f) => f.id === featureId);
68
+ if (!feature)
69
+ return false;
70
+ if (!isFeatureAvailable(featureId, supportedMethods))
71
+ return false;
72
+ const sub = feature.subFeatures?.find((s) => s.id === subFeatureId);
73
+ if (!sub)
74
+ return false;
75
+ if (!daemonVersion || !satisfiesMin(daemonVersion, sub.sinceVersion))
76
+ return false;
77
+ if (sub.requiredMethods) {
78
+ const methodSet = new Set(supportedMethods);
79
+ return sub.requiredMethods.every((m) => methodSet.has(m));
80
+ }
81
+ return true;
82
+ }
83
+ /** Look up the minimum version required for a sub-feature. */
84
+ export function getSubFeatureMinVersion(featureId, subFeatureId) {
85
+ const feature = FEATURE_REGISTRY.find((f) => f.id === featureId);
86
+ return feature?.subFeatures?.find((s) => s.id === subFeatureId)?.sinceVersion;
87
+ }
88
+ /**
89
+ * Return all features (and sub-features) that are NOT available.
90
+ * Sub-features are returned as "parentId/subId" when the parent is available
91
+ * but the daemon version is too low for the sub-feature.
92
+ */
93
+ export function getUnavailableFeatures(supportedMethods, daemonVersion) {
94
+ const results = [];
95
+ const methodSet = new Set(supportedMethods);
96
+ for (const f of FEATURE_REGISTRY) {
97
+ if (!f.requiredMethods.every((m) => methodSet.has(m))) {
98
+ results.push({ id: f.id, sinceVersion: f.sinceVersion });
99
+ }
100
+ else if (f.subFeatures && daemonVersion) {
101
+ for (const sub of f.subFeatures) {
102
+ const versionLocked = !satisfiesMin(daemonVersion, sub.sinceVersion);
103
+ const methodsLocked = sub.requiredMethods != null && !sub.requiredMethods.every((m) => methodSet.has(m));
104
+ if (versionLocked || methodsLocked) {
105
+ results.push({ id: `${f.id}/${sub.id}`, sinceVersion: sub.sinceVersion });
106
+ }
107
+ }
108
+ }
109
+ }
110
+ return results;
111
+ }
112
+ //# sourceMappingURL=features.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features.js","sourceRoot":"","sources":["../src/features.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../src/feedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB,wCAAsC,CAAC;AACtE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB,2CAAyC,CAAC;AAC3E,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;EAQhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAG3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,0BAA0B;;;;;;EAErC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
package/dist/feedback.js CHANGED
@@ -1 +1,26 @@
1
- "use strict";import{z as t}from"zod";export const FeedbackTypeSchema=t.enum(["BUG","FEATURE","OTHER"]),FeedbackStatusSchema=t.enum(["UNREAD","READ","ARCHIVED"]),MachineSnapshotSchema=t.object({machineId:t.string(),platform:t.string().optional(),arch:t.string().optional(),hostname:t.string().optional(),daemonVersion:t.string().optional(),availableAgents:t.array(t.string()).optional(),nodeVersion:t.string().optional()}),DeviceInfoSchema=t.object({machines:t.array(MachineSnapshotSchema).optional(),appVersion:t.string().optional()}),CreateFeedbackSchema=t.object({type:FeedbackTypeSchema,description:t.string().min(1).max(5e3),screenshots:t.array(t.string().max(7e5)).max(3).optional(),deviceInfo:DeviceInfoSchema}),UpdateFeedbackStatusSchema=t.object({status:t.enum(["READ","ARCHIVED"])});
1
+ import { z } from 'zod';
2
+ export const FeedbackTypeSchema = z.enum(['BUG', 'FEATURE', 'OTHER']);
3
+ export const FeedbackStatusSchema = z.enum(['UNREAD', 'READ', 'ARCHIVED']);
4
+ export const MachineSnapshotSchema = z.object({
5
+ machineId: z.string(),
6
+ platform: z.string().optional(),
7
+ arch: z.string().optional(),
8
+ hostname: z.string().optional(),
9
+ daemonVersion: z.string().optional(),
10
+ availableAgents: z.array(z.string()).optional(),
11
+ nodeVersion: z.string().optional(),
12
+ });
13
+ export const DeviceInfoSchema = z.object({
14
+ machines: z.array(MachineSnapshotSchema).optional(),
15
+ appVersion: z.string().optional(),
16
+ });
17
+ export const CreateFeedbackSchema = z.object({
18
+ type: FeedbackTypeSchema,
19
+ description: z.string().min(1).max(5000),
20
+ screenshots: z.array(z.string().max(700_000)).max(3).optional(),
21
+ deviceInfo: DeviceInfoSchema,
22
+ });
23
+ export const UpdateFeedbackStatusSchema = z.object({
24
+ status: z.enum(['READ', 'ARCHIVED']),
25
+ });
26
+ //# sourceMappingURL=feedback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../src/feedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;AAGtE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;AAG3E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC/C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE;IACnD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;IACxC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/D,UAAU,EAAE,gBAAgB;CAC7B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CACrC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1 +1,64 @@
1
- "use strict";export{SessionTextEventSchema,SessionServiceEventSchema,SessionToolCallStartEventSchema,SessionToolCallEndEventSchema,SessionFileEventSchema,SessionTurnStartEventSchema,SessionTurnEndEventSchema,SessionTurnEndStatusSchema,TurnUsageSchema,SessionStartEventSchema,SessionStopEventSchema,SessionEventSchema,SessionPermissionResolvedEventSchema,PermissionActionSchema,SessionImageEventSchema,ImageAttachmentSchema}from"./events.js";export{QuestionOptionSchema,SessionQuestionEventSchema,SessionPermissionRequestEventSchema,SessionAnswerEventSchema,AnswerQuestionParamsSchema,ApprovePermissionParamsSchema,DenyPermissionParamsSchema,PermissionModeSchema}from"./interactionEvents.js";export{SessionRoleSchema,SessionEnvelopeSchema,createEnvelope}from"./envelope.js";export{AgentTypeSchema,MessageMetaSchema,AGENT_TYPES,SPAWNABLE_AGENTS,CLI_AGENT_TYPES}from"./messageMeta.js";export{AGENT_SUPPORTS_IMAGES}from"./messageMeta.js";export{SessionMessageContentSchema,SessionMessageSchema,SessionProtocolMessageSchema,MessageContentSchema}from"./messages.js";export{UserMessageSchema,AgentMessageSchema,LegacyMessageContentSchema}from"./legacyProtocol.js";export{VersionedEncryptedValueSchema,VersionedNullableEncryptedValueSchema,VersionedMachineEncryptedValueSchema,UpdateNewMessageBodySchema,UpdateSessionBodySchema,UpdateMachineBodySchema,UpdateSessionResetBodySchema,CoreUpdateBodySchema,CoreUpdateContainerSchema}from"./sync.js";export{RpcMethod,SESSION_RPC_METHODS,MACHINE_RPC_METHODS,DAEMON_REQUIRED_RPC_METHODS,RpcCallSchema,RpcResultSchema,SpawnSessionParamsSchema,GetMessagesParamsSchema,GetMessagesResponseSchema,MachineInfoResponseSchema,CheckPathParamsSchema,AGENT_ENV_NONE,AgentEnvConfigSchema,AgentSettingsSchema,LabsSettingsSchema,CustomModelSchema,SkillDefinitionSchema}from"./rpc.js";export{AGENT_CAPABILITIES,getAgentCapability,updateDynamicModes,getDynamicModes,normalizeModelId}from"./agentCapabilities.js";export{ModelUsageEntrySchema,DailyActivitySchema,DailyModelTokensSchema,LongestSessionSchema,SessionTokenSummarySchema,ClaudeStatsDataSchema,ProjectSummarySchema,StatsOverviewSchema,AgentTypeUsageSchema,ActivityUploadSchema,UsageReportSchema,TokenTrendPointSchema,ModelBreakdownEntrySchema,QuotaConfigSchema}from"./stats.js";export{ControlLevel}from"./controlLevel.js";export{PairingState,PairingRequestSchema,PairingResponseSchema,PairingExchangeSchema,PairingDeliverSchema,PairingStatusSchema}from"./pairing.js";export{PlatformSchema,SessionStatusSchema,MachineSummarySchema,MachineRegisterResultSchema}from"./machine.js";export{FEATURE_REGISTRY,isFeatureAvailable,getUnavailableFeatures,isSubFeatureAvailable,getSubFeatureMinVersion}from"./features.js";export{SessionResultSchema}from"./sessionResult.js";export{SpawnErrorCodeSchema,SpawnErrorSchema,createSpawnError}from"./spawnError.js";export{AGENT_INSTALL_GUIDE}from"./agentInstallGuide.js";export{AGENT_COMMON_ENV_VARS}from"./agentCommonEnv.js";export{RetryPolicySchema,MissedRunPolicySchema,ScheduledSpawnParamsSchema,TaskExecutionStatusSchema,TaskExecutionTriggerSchema,CreateScheduledTaskSchema,UpdateScheduledTaskSchema,ScheduledTaskSummarySchema,TaskExecutionSchema,CRON_RE}from"./scheduledTasks.js";export{PROTOCOL_VERSION}from"./protocol.js";export{parseSemver,compareVersions,satisfiesMin}from"./semver.js";export{createId}from"./utils.js";export{errorMessage}from"./errorMessage.js";export{SOCKET_EVENTS}from"./socketEvents.js";export{TelemetryEventTypeSchema,TelemetryEventSchema,TelemetryReportPayloadSchema,sanitizeContext}from"./telemetry.js";export*from"./checkpointSchemas.js";export{OpsRpcMessageSchema,OpsMethodSchema,OpsRpcTypeSchema,FileEntrySchema,FileStatSchema,StorageUsageSchema,SyncUserSchema,SyncFullPayloadSchema,SyncUserCreatedPayloadSchema,SyncContainerStatusPayloadSchema,SyncUserPairedPayloadSchema}from"./ops.js";export*from"./edition.js";export{LicensePayloadSchema,LicenseFileSchema}from"./license.js";export{FeedbackTypeSchema,FeedbackStatusSchema,DeviceInfoSchema,CreateFeedbackSchema,UpdateFeedbackStatusSchema}from"./feedback.js";
1
+ // @agentdock/wire — Protocol definitions
2
+ // This is the "constitution" of the system.
3
+ // All components communicate through formats defined here.
4
+ // Session events
5
+ export { SessionTextEventSchema, SessionServiceEventSchema, SessionToolCallStartEventSchema, SessionToolCallEndEventSchema, SessionFileEventSchema, SessionTurnStartEventSchema, SessionTurnEndEventSchema, SessionTurnEndStatusSchema, TurnUsageSchema, SessionStartEventSchema, SessionStopEventSchema, SessionEventSchema, SessionPermissionResolvedEventSchema, PermissionActionSchema, SessionImageEventSchema, ImageAttachmentSchema, } from './events.js';
6
+ // Interaction events
7
+ export { QuestionOptionSchema, SessionQuestionEventSchema, SessionPermissionRequestEventSchema, SessionAnswerEventSchema, AnswerQuestionParamsSchema, ApprovePermissionParamsSchema, DenyPermissionParamsSchema, PermissionModeSchema, } from './interactionEvents.js';
8
+ // Session envelope
9
+ export { SessionRoleSchema, SessionEnvelopeSchema, createEnvelope } from './envelope.js';
10
+ // Message meta
11
+ export { AgentTypeSchema, MessageMetaSchema, AGENT_TYPES, SPAWNABLE_AGENTS, CLI_AGENT_TYPES, } from './messageMeta.js';
12
+ export { AGENT_SUPPORTS_IMAGES } from './messageMeta.js';
13
+ // Messages
14
+ export { SessionMessageContentSchema, SessionMessageSchema, SessionProtocolMessageSchema, MessageContentSchema, } from './messages.js';
15
+ // Legacy protocol
16
+ export { UserMessageSchema, AgentMessageSchema, LegacyMessageContentSchema, } from './legacyProtocol.js';
17
+ // Sync update protocol
18
+ export { VersionedEncryptedValueSchema, VersionedNullableEncryptedValueSchema, VersionedMachineEncryptedValueSchema, UpdateNewMessageBodySchema, UpdateSessionBodySchema, UpdateMachineBodySchema, UpdateSessionResetBodySchema, CoreUpdateBodySchema, CoreUpdateContainerSchema, } from './sync.js';
19
+ // RPC
20
+ export { RpcMethod, SESSION_RPC_METHODS, MACHINE_RPC_METHODS, DAEMON_REQUIRED_RPC_METHODS, RpcCallSchema, RpcResultSchema, SpawnSessionParamsSchema, GetMessagesParamsSchema, GetMessagesResponseSchema, MachineInfoResponseSchema, CheckPathParamsSchema, AGENT_ENV_NONE, AgentEnvConfigSchema, AgentSettingsSchema, LabsSettingsSchema, CustomModelSchema, SkillDefinitionSchema, } from './rpc.js';
21
+ // Agent capabilities
22
+ export { AGENT_CAPABILITIES, getAgentCapability, updateDynamicModes, getDynamicModes, normalizeModelId, } from './agentCapabilities.js';
23
+ // Stats (OBS-2)
24
+ export { ModelUsageEntrySchema, DailyActivitySchema, DailyModelTokensSchema, LongestSessionSchema, SessionTokenSummarySchema, ClaudeStatsDataSchema, ProjectSummarySchema, StatsOverviewSchema, AgentTypeUsageSchema, ActivityUploadSchema, UsageReportSchema, TokenTrendPointSchema, ModelBreakdownEntrySchema, QuotaConfigSchema, } from './stats.js';
25
+ // Control level
26
+ export { ControlLevel } from './controlLevel.js';
27
+ // Pairing protocol
28
+ export { PairingState, PairingRequestSchema, PairingResponseSchema, PairingExchangeSchema, PairingDeliverSchema, PairingStatusSchema, } from './pairing.js';
29
+ // Machine & session status (DASH-2)
30
+ export { PlatformSchema, SessionStatusSchema, MachineSummarySchema, MachineRegisterResultSchema, } from './machine.js';
31
+ // Feature availability (RFC-035)
32
+ export { FEATURE_REGISTRY, isFeatureAvailable, getUnavailableFeatures, isSubFeatureAvailable, getSubFeatureMinVersion, } from './features.js';
33
+ // Session result (PROTO-2)
34
+ export { SessionResultSchema } from './sessionResult.js';
35
+ // Spawn errors
36
+ export { SpawnErrorCodeSchema, SpawnErrorSchema, createSpawnError } from './spawnError.js';
37
+ // Agent install guide
38
+ export { AGENT_INSTALL_GUIDE } from './agentInstallGuide.js';
39
+ // Agent common env vars
40
+ export { AGENT_COMMON_ENV_VARS } from './agentCommonEnv.js';
41
+ // Scheduled tasks (RFC-044)
42
+ export { RetryPolicySchema, MissedRunPolicySchema, ScheduledSpawnParamsSchema, TaskExecutionStatusSchema, TaskExecutionTriggerSchema, CreateScheduledTaskSchema, UpdateScheduledTaskSchema, ScheduledTaskSummarySchema, TaskExecutionSchema, CRON_RE, } from './scheduledTasks.js';
43
+ // Protocol version (RFC-021)
44
+ export { PROTOCOL_VERSION } from './protocol.js';
45
+ // Semver
46
+ export { parseSemver, compareVersions, satisfiesMin } from './semver.js';
47
+ // Utils
48
+ export { createId } from './utils.js';
49
+ export { errorMessage } from './errorMessage.js';
50
+ // Socket.IO event name constants
51
+ export { SOCKET_EVENTS } from './socketEvents.js';
52
+ // Telemetry (RFC-043)
53
+ export { TelemetryEventTypeSchema, TelemetryEventSchema, TelemetryReportPayloadSchema, sanitizeContext, } from './telemetry.js';
54
+ // Checkpoint RPC (RFC-044)
55
+ export * from './checkpointSchemas.js';
56
+ // Ops RPC (RFC-034)
57
+ export { OpsRpcMessageSchema, OpsMethodSchema, OpsRpcTypeSchema, FileEntrySchema, FileStatSchema, StorageUsageSchema, SyncUserSchema, SyncFullPayloadSchema, SyncUserCreatedPayloadSchema, SyncContainerStatusPayloadSchema, SyncUserPairedPayloadSchema, } from './ops.js';
58
+ // Edition (RFC-053)
59
+ export * from './edition.js';
60
+ // License
61
+ export { LicensePayloadSchema, LicenseFileSchema } from './license.js';
62
+ // Feedback
63
+ export { FeedbackTypeSchema, FeedbackStatusSchema, DeviceInfoSchema, CreateFeedbackSchema, UpdateFeedbackStatusSchema, } from './feedback.js';
64
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactionEvents.d.ts","sourceRoot":"","sources":["../src/interactionEvents.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,yDAAyD;AACzD,eAAO,MAAM,oBAAoB;;;;;;;;;EAG/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,sCAAsC;AACtC,eAAO,MAAM,0BAA0B;;;;;IAOrC,qDAAqD;;IAErD,0DAA0D;;;;;;;;;;;IAE1D,gDAAgD;;;;;;;;;;;;;;;;;;;;;;;;EAEhD,CAAC;AAEH,8CAA8C;AAC9C,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;EAO9C,CAAC;AAEH,sDAAsD;AACtD,eAAO,MAAM,wBAAwB;;;;;;;;;;;;EAInC,CAAC;AAEH,uFAAuF;AACvF,eAAO,MAAM,sBAAsB,qEAKjC,CAAC;AAEH,+FAA+F;AAC/F,eAAO,MAAM,oCAAoC;;;;IAI/C,wEAAwE;;;;;;;;;;;;EAExE,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAChG,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AAIlG,uEAAuE;AACvE,eAAO,MAAM,qBAAqB;IAChC,sDAAsD;;IAEtD,+DAA+D;;;;;;;;EAE/D,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAIpE,iDAAiD;AACjD,eAAO,MAAM,0BAA0B;;;;IAIrC,gFAAgF;;QAfhF,sDAAsD;;QAEtD,+DAA+D;;;;;;;;;;;;;;;;;;;;;;;;;EAe/D,CAAC;AAEH,2CAA2C;AAC3C,eAAO,MAAM,oBAAoB,uJAY/B,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEvE,sDAAsD;AACtD,eAAO,MAAM,6BAA6B;;;;IAIxC,oFAAoF;;IAEpF,6FAA6F;;;;;;;;;;;;;;EAE7F,CAAC;AAEH,oDAAoD;AACpD,eAAO,MAAM,0BAA0B;;;;IAIrC,wEAAwE;;;;;;;;;;;;EAExE,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AACpF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
@@ -1 +1,108 @@
1
- "use strict";import{z as e}from"zod";export const QuestionOptionSchema=e.object({label:e.string(),description:e.string().default("")}),SessionQuestionEventSchema=e.object({t:e.literal("question"),requestId:e.string(),text:e.string(),questionType:e.enum(["free-text","yes-no","single-select","multi-select"]).default("free-text"),header:e.string().optional(),options:e.array(QuestionOptionSchema).optional(),multiSelect:e.boolean().optional()}),SessionPermissionRequestEventSchema=e.object({t:e.literal("permission-request"),requestId:e.string(),toolName:e.string(),toolCallId:e.string(),args:e.record(e.unknown()),description:e.string().default("")}),SessionAnswerEventSchema=e.object({t:e.literal("answer"),requestId:e.string(),text:e.string()}),PermissionActionSchema=e.enum(["approve","approve-all-edits","approve-tool","deny"]),SessionPermissionResolvedEventSchema=e.object({t:e.literal("permission-resolved"),requestId:e.string(),action:PermissionActionSchema,reason:e.string().optional()}),ImageAttachmentSchema=e.object({data:e.string(),mediaType:e.string()}),AnswerQuestionParamsSchema=e.object({sessionId:e.string(),requestId:e.string(),text:e.string(),images:e.array(ImageAttachmentSchema).max(5).optional()}),PermissionModeSchema=e.enum(["default","acceptEdits","autoEdit","bypassPermissions","plan","read-only","safe-yolo","yolo","suggest","auto-edit","full-auto"]),ApprovePermissionParamsSchema=e.object({sessionId:e.string(),requestId:e.string(),toolCallId:e.string(),mode:PermissionModeSchema.optional(),allowTools:e.array(e.string()).optional()}),DenyPermissionParamsSchema=e.object({sessionId:e.string(),requestId:e.string(),toolCallId:e.string(),reason:e.string().optional()});
1
+ /**
2
+ * Interaction event schemas for bidirectional communication.
3
+ *
4
+ * Event types: question, permission-request, answer.
5
+ * RPC params: answer-question, approve-permission, deny-permission.
6
+ */
7
+ import { z } from 'zod';
8
+ // ── Session Events ──
9
+ /** Option for structured (multiple-choice) questions. */
10
+ export const QuestionOptionSchema = z.object({
11
+ label: z.string(),
12
+ description: z.string().default(''),
13
+ });
14
+ /** Agent asks the user a question. */
15
+ export const SessionQuestionEventSchema = z.object({
16
+ t: z.literal('question'),
17
+ requestId: z.string(),
18
+ text: z.string(),
19
+ questionType: z
20
+ .enum(['free-text', 'yes-no', 'single-select', 'multi-select'])
21
+ .default('free-text'),
22
+ /** Header/category chip for structured questions. */
23
+ header: z.string().optional(),
24
+ /** Options for single-select / multi-select questions. */
25
+ options: z.array(QuestionOptionSchema).optional(),
26
+ /** Whether multiple options can be selected. */
27
+ multiSelect: z.boolean().optional(),
28
+ });
29
+ /** Agent requests tool execution approval. */
30
+ export const SessionPermissionRequestEventSchema = z.object({
31
+ t: z.literal('permission-request'),
32
+ requestId: z.string(),
33
+ toolName: z.string(),
34
+ toolCallId: z.string(),
35
+ args: z.record(z.unknown()),
36
+ description: z.string().default(''),
37
+ });
38
+ /** User's answer to a question or acknowledgement. */
39
+ export const SessionAnswerEventSchema = z.object({
40
+ t: z.literal('answer'),
41
+ requestId: z.string(),
42
+ text: z.string(),
43
+ });
44
+ /** How a permission was resolved — persisted in envelope stream for history replay. */
45
+ export const PermissionActionSchema = z.enum([
46
+ 'approve',
47
+ 'approve-all-edits',
48
+ 'approve-tool',
49
+ 'deny',
50
+ ]);
51
+ /** Records the user's decision on a permission request (sent immediately after resolution). */
52
+ export const SessionPermissionResolvedEventSchema = z.object({
53
+ t: z.literal('permission-resolved'),
54
+ requestId: z.string(),
55
+ action: PermissionActionSchema,
56
+ /** Optional feedback from user explaining why permission was denied. */
57
+ reason: z.string().optional(),
58
+ });
59
+ // ── Image Attachment ──
60
+ /** A single image attachment (base64-encoded, frontend-compressed). */
61
+ export const ImageAttachmentSchema = z.object({
62
+ /** Base64-encoded image data (no data URI prefix). */
63
+ data: z.string(),
64
+ /** MIME type: image/jpeg, image/png, image/gif, image/webp. */
65
+ mediaType: z.string(),
66
+ });
67
+ // ── RPC Params ──
68
+ /** Params for answering a free-text question. */
69
+ export const AnswerQuestionParamsSchema = z.object({
70
+ sessionId: z.string(),
71
+ requestId: z.string(),
72
+ text: z.string(),
73
+ /** Optional image attachments (max 5, each ≤200KB base64 after compression). */
74
+ images: z.array(ImageAttachmentSchema).max(5).optional(),
75
+ });
76
+ /** Permission mode for Claude sessions. */
77
+ export const PermissionModeSchema = z.enum([
78
+ 'default',
79
+ 'acceptEdits',
80
+ 'autoEdit',
81
+ 'bypassPermissions',
82
+ 'plan',
83
+ 'read-only',
84
+ 'safe-yolo',
85
+ 'yolo',
86
+ 'suggest',
87
+ 'auto-edit',
88
+ 'full-auto',
89
+ ]);
90
+ /** Params for approving a tool permission request. */
91
+ export const ApprovePermissionParamsSchema = z.object({
92
+ sessionId: z.string(),
93
+ requestId: z.string(),
94
+ toolCallId: z.string(),
95
+ /** Optional mode change (e.g. 'acceptEdits' for "allow all edits this session"). */
96
+ mode: PermissionModeSchema.optional(),
97
+ /** Optional tool whitelist (e.g. ['Bash(npm test)'] for "don't ask again for this tool"). */
98
+ allowTools: z.array(z.string()).optional(),
99
+ });
100
+ /** Params for denying a tool permission request. */
101
+ export const DenyPermissionParamsSchema = z.object({
102
+ sessionId: z.string(),
103
+ requestId: z.string(),
104
+ toolCallId: z.string(),
105
+ /** Optional feedback from user explaining why permission was denied. */
106
+ reason: z.string().optional(),
107
+ });
108
+ //# sourceMappingURL=interactionEvents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactionEvents.js","sourceRoot":"","sources":["../src/interactionEvents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacyProtocol.d.ts","sourceRoot":"","sources":["../src/legacyProtocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQ5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQ7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGrC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
@@ -1 +1,30 @@
1
- "use strict";import{z as e}from"zod";import{MessageMetaSchema as t}from"./messageMeta.js";export const UserMessageSchema=e.object({role:e.literal("user"),content:e.object({type:e.literal("text"),text:e.string()}),localKey:e.string().optional(),meta:t.optional()}),AgentMessageSchema=e.object({role:e.literal("agent"),content:e.object({type:e.string()}).passthrough(),meta:t.optional()}),LegacyMessageContentSchema=e.discriminatedUnion("role",[UserMessageSchema,AgentMessageSchema]);
1
+ /**
2
+ * Legacy protocol — aligned with Happy legacyProtocol.ts.
3
+ *
4
+ * Defines UserMessage and AgentMessage for backward compatibility.
5
+ */
6
+ import { z } from 'zod';
7
+ import { MessageMetaSchema } from './messageMeta.js';
8
+ export const UserMessageSchema = z.object({
9
+ role: z.literal('user'),
10
+ content: z.object({
11
+ type: z.literal('text'),
12
+ text: z.string(),
13
+ }),
14
+ localKey: z.string().optional(),
15
+ meta: MessageMetaSchema.optional(),
16
+ });
17
+ export const AgentMessageSchema = z.object({
18
+ role: z.literal('agent'),
19
+ content: z
20
+ .object({
21
+ type: z.string(),
22
+ })
23
+ .passthrough(),
24
+ meta: MessageMetaSchema.optional(),
25
+ });
26
+ export const LegacyMessageContentSchema = z.discriminatedUnion('role', [
27
+ UserMessageSchema,
28
+ AgentMessageSchema,
29
+ ]);
30
+ //# sourceMappingURL=legacyProtocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacyProtocol.js","sourceRoot":"","sources":["../src/legacyProtocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACvB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;QAChB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;KACjB,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,IAAI,EAAE,iBAAiB,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxB,OAAO,EAAE,CAAC;SACP,MAAM,CAAC;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;KACjB,CAAC;SACD,WAAW,EAAE;IAChB,IAAI,EAAE,iBAAiB,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACrE,iBAAiB;IACjB,kBAAkB;CACnB,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"license.d.ts","sourceRoot":"","sources":["../src/license.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;EAW/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;EAE5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
package/dist/license.js CHANGED
@@ -1 +1,17 @@
1
- "use strict";import{z as e}from"zod";export const LicensePayloadSchema=e.object({licensee:e.string().min(1),edition:e.literal("enterprise"),maxUsers:e.number().int().positive(),expiresAt:e.string().regex(/^\d{4}-\d{2}-\d{2}$/),issuedAt:e.string().regex(/^\d{4}-\d{2}-\d{2}$/),suffix:e.string().min(1).max(32).regex(/^[a-z0-9_-]+$/)}),LicenseFileSchema=LicensePayloadSchema.extend({signature:e.string().min(1)});
1
+ import { z } from 'zod';
2
+ export const LicensePayloadSchema = z.object({
3
+ licensee: z.string().min(1),
4
+ edition: z.literal('enterprise'),
5
+ maxUsers: z.number().int().positive(),
6
+ expiresAt: z.string().regex(/^\d{4}-\d{2}-\d{2}$/),
7
+ issuedAt: z.string().regex(/^\d{4}-\d{2}-\d{2}$/),
8
+ suffix: z
9
+ .string()
10
+ .min(1)
11
+ .max(32)
12
+ .regex(/^[a-z0-9_-]+$/),
13
+ });
14
+ export const LicenseFileSchema = LicensePayloadSchema.extend({
15
+ signature: z.string().min(1),
16
+ });
17
+ //# sourceMappingURL=license.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"license.js","sourceRoot":"","sources":["../src/license.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;IAChC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC;IAClD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC;IACjD,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,KAAK,CAAC,eAAe,CAAC;CAC1B,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,MAAM,CAAC;IAC3D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC7B,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"machine.d.ts","sourceRoot":"","sources":["../src/machine.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,cAAc,yCAAuC,CAAC;AACnE,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEtD,eAAO,MAAM,mBAAmB,wFAM9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,oBAAoB;;;;;;;;;;IAU/B,iEAAiE;;IAEjE,iDAAiD;;IAEjD,gDAAgD;;IAEhD,gFAAgF;;IAEhF,kEAAkE;;IAElE,+FAA+F;;IAE/F,8DAA8D;;IAE9D,8DAA8D;;IAE9D,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEjF,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;EAKtC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,eAAO,MAAM,2BAA2B;;;;;;EAEtC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}