@kmmao/happy-wire 0.2.2 → 0.2.4

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.
package/dist/index.cjs CHANGED
@@ -67,6 +67,15 @@ const sessionTurnEndStatusSchema = z__namespace.enum([
67
67
  "failed",
68
68
  "cancelled"
69
69
  ]);
70
+ const sessionModelUsageSchema = z__namespace.object({
71
+ inputTokens: z__namespace.number(),
72
+ outputTokens: z__namespace.number(),
73
+ cacheReadInputTokens: z__namespace.number(),
74
+ cacheCreationInputTokens: z__namespace.number(),
75
+ costUSD: z__namespace.number(),
76
+ contextWindow: z__namespace.number(),
77
+ maxOutputTokens: z__namespace.number()
78
+ });
70
79
  const sessionTurnEndEventSchema = z__namespace.object({
71
80
  t: z__namespace.literal("turn-end"),
72
81
  status: sessionTurnEndStatusSchema,
@@ -77,7 +86,10 @@ const sessionTurnEndEventSchema = z__namespace.object({
77
86
  cache_creation_input_tokens: z__namespace.number().optional(),
78
87
  cache_read_input_tokens: z__namespace.number().optional()
79
88
  }).optional(),
80
- durationMs: z__namespace.number().optional()
89
+ durationMs: z__namespace.number().optional(),
90
+ totalCostUsd: z__namespace.number().optional(),
91
+ numTurns: z__namespace.number().optional(),
92
+ modelUsage: z__namespace.record(z__namespace.string(), sessionModelUsageSchema).optional()
81
93
  });
82
94
  const sessionStopEventSchema = z__namespace.object({
83
95
  t: z__namespace.literal("stop")
@@ -129,6 +141,10 @@ const sessionToolProgressEventSchema = z__namespace.object({
129
141
  elapsedSeconds: z__namespace.number(),
130
142
  taskId: z__namespace.string().optional()
131
143
  });
144
+ const sessionPromptSuggestionEventSchema = z__namespace.object({
145
+ t: z__namespace.literal("prompt-suggestion"),
146
+ suggestion: z__namespace.string()
147
+ });
132
148
  const sessionEventSchema = z__namespace.discriminatedUnion("t", [
133
149
  sessionTextEventSchema,
134
150
  sessionServiceMessageEventSchema,
@@ -143,7 +159,8 @@ const sessionEventSchema = z__namespace.discriminatedUnion("t", [
143
159
  sessionTaskStartEventSchema,
144
160
  sessionTaskProgressEventSchema,
145
161
  sessionTaskEndEventSchema,
146
- sessionToolProgressEventSchema
162
+ sessionToolProgressEventSchema,
163
+ sessionPromptSuggestionEventSchema
147
164
  ]);
148
165
  const sessionEnvelopeSchema = z__namespace.object({
149
166
  id: z__namespace.string(),
@@ -162,7 +179,7 @@ const sessionEnvelopeSchema = z__namespace.object({
162
179
  path: ["role"]
163
180
  });
164
181
  }
165
- if ((envelope.ev.t === "start" || envelope.ev.t === "stop" || envelope.ev.t === "usage-update" || envelope.ev.t === "task-start" || envelope.ev.t === "task-progress" || envelope.ev.t === "task-end" || envelope.ev.t === "tool-progress") && envelope.role !== "agent") {
182
+ if ((envelope.ev.t === "start" || envelope.ev.t === "stop" || envelope.ev.t === "usage-update" || envelope.ev.t === "task-start" || envelope.ev.t === "task-progress" || envelope.ev.t === "task-end" || envelope.ev.t === "tool-progress" || envelope.ev.t === "prompt-suggestion") && envelope.role !== "agent") {
166
183
  ctx.addIssue({
167
184
  code: z__namespace.ZodIssueCode.custom,
168
185
  message: `${envelope.ev.t} events must use role "agent"`,
@@ -308,6 +325,8 @@ exports.createEnvelope = createEnvelope;
308
325
  exports.sessionEnvelopeSchema = sessionEnvelopeSchema;
309
326
  exports.sessionEventSchema = sessionEventSchema;
310
327
  exports.sessionFileEventSchema = sessionFileEventSchema;
328
+ exports.sessionModelUsageSchema = sessionModelUsageSchema;
329
+ exports.sessionPromptSuggestionEventSchema = sessionPromptSuggestionEventSchema;
311
330
  exports.sessionRoleSchema = sessionRoleSchema;
312
331
  exports.sessionServiceMessageEventSchema = sessionServiceMessageEventSchema;
313
332
  exports.sessionStartEventSchema = sessionStartEventSchema;