@poncho-ai/sdk 1.2.0 → 1.4.0

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.
@@ -1,5 +1,5 @@
1
1
 
2
- > @poncho-ai/sdk@1.2.0 build /home/runner/work/poncho-ai/poncho-ai/packages/sdk
2
+ > @poncho-ai/sdk@1.4.0 build /home/runner/work/poncho-ai/poncho-ai/packages/sdk
3
3
  > tsup src/index.ts --format esm --dts
4
4
 
5
5
  CLI Building entry: src/index.ts
@@ -7,8 +7,8 @@
7
7
  CLI tsup v8.5.1
8
8
  CLI Target: es2022
9
9
  ESM Build start
10
- ESM dist/index.js 10.17 KB
11
- ESM ⚡️ Build success in 18ms
10
+ ESM dist/index.js 10.57 KB
11
+ ESM ⚡️ Build success in 17ms
12
12
  DTS Build start
13
- DTS ⚡️ Build success in 1214ms
14
- DTS dist/index.d.ts 19.67 KB
13
+ DTS ⚡️ Build success in 1324ms
14
+ DTS dist/index.d.ts 20.32 KB
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @poncho-ai/sdk
2
2
 
3
+ ## 1.4.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`075b9ac`](https://github.com/cesr/poncho-ai/commit/075b9ac3556847af913bf2b58f030575c3b99852) Thanks [@cesr](https://github.com/cesr)! - Batch tool approvals, fix serverless session persistence and adapter init
8
+ - Batch tool approvals: all approval-requiring tool calls in a single step are now collected and presented together instead of one at a time.
9
+ - Fix messaging adapter route registration: routes are only registered after successful initialization, preventing "Adapter not initialised" errors on Vercel.
10
+ - Add stateless signed-cookie sessions so web UI auth survives serverless cold starts.
11
+
12
+ ## 1.3.0
13
+
14
+ ### Minor Changes
15
+
16
+ - [`cd6ccd7`](https://github.com/cesr/poncho-ai/commit/cd6ccd7846e16fbaf17167617666796320ec29ce) Thanks [@cesr](https://github.com/cesr)! - Add MCP custom headers support, tool:generating streaming feedback, and cross-owner subagent recovery
17
+ - **MCP custom headers**: `poncho mcp add --header "Name: value"` and `headers` config field let servers like Arcade receive extra HTTP headers alongside bearer auth.
18
+ - **tool:generating event**: the harness now emits `tool:generating` events when the model begins writing tool-call arguments, so the web UI shows real-time "preparing <tool>" feedback instead of appearing stuck during large tool calls.
19
+ - **Subagent recovery**: `list`/`listSummaries` accept optional `ownerId` so stale-subagent recovery on server restart scans across all owners.
20
+
3
21
  ## 1.2.0
4
22
 
5
23
  ### Minor Changes
package/dist/index.d.ts CHANGED
@@ -403,6 +403,21 @@ declare const ONBOARDING_FIELDS: readonly [{
403
403
  readonly fieldId: "messaging.platform";
404
404
  readonly equals: "resend";
405
405
  };
406
+ }, {
407
+ readonly id: "env.RESEND_REPLY_TO";
408
+ readonly domain: "messaging";
409
+ readonly target: "env";
410
+ readonly path: "RESEND_REPLY_TO";
411
+ readonly kind: "string";
412
+ readonly scopes: ["full"];
413
+ readonly label: "Reply-To Address";
414
+ readonly prompt: "Reply-To address for outgoing emails (optional, defaults to From address)";
415
+ readonly defaultValue: "";
416
+ readonly placeholder: "support@yourdomain.com";
417
+ readonly dependsOn: {
418
+ readonly fieldId: "messaging.platform";
419
+ readonly equals: "resend";
420
+ };
406
421
  }, {
407
422
  readonly id: "messaging.resend.mode";
408
423
  readonly domain: "messaging";
@@ -571,6 +586,10 @@ type AgentEvent = {
571
586
  } | {
572
587
  type: "model:response";
573
588
  usage: TokenUsage;
589
+ } | {
590
+ type: "tool:generating";
591
+ tool: string;
592
+ toolCallId: string;
574
593
  } | {
575
594
  type: "tool:started";
576
595
  tool: string;
@@ -600,10 +619,12 @@ type AgentEvent = {
600
619
  reason?: string;
601
620
  } | {
602
621
  type: "tool:approval:checkpoint";
603
- approvalId: string;
604
- tool: string;
605
- toolCallId: string;
606
- input: Record<string, unknown>;
622
+ approvals: Array<{
623
+ approvalId: string;
624
+ tool: string;
625
+ toolCallId: string;
626
+ input: Record<string, unknown>;
627
+ }>;
607
628
  checkpointMessages: Message[];
608
629
  pendingToolCalls: Array<{
609
630
  id: string;
package/dist/index.js CHANGED
@@ -321,6 +321,19 @@ var ONBOARDING_FIELDS = [
321
321
  placeholder: "Agent <agent@yourdomain.com>",
322
322
  dependsOn: { fieldId: "messaging.platform", equals: "resend" }
323
323
  },
324
+ {
325
+ id: "env.RESEND_REPLY_TO",
326
+ domain: "messaging",
327
+ target: "env",
328
+ path: "RESEND_REPLY_TO",
329
+ kind: "string",
330
+ scopes: ["full"],
331
+ label: "Reply-To Address",
332
+ prompt: "Reply-To address for outgoing emails (optional, defaults to From address)",
333
+ defaultValue: "",
334
+ placeholder: "support@yourdomain.com",
335
+ dependsOn: { fieldId: "messaging.platform", equals: "resend" }
336
+ },
324
337
  {
325
338
  id: "messaging.resend.mode",
326
339
  domain: "messaging",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@poncho-ai/sdk",
3
- "version": "1.2.0",
3
+ "version": "1.4.0",
4
4
  "description": "Core types and utilities for building Poncho skills",
5
5
  "repository": {
6
6
  "type": "git",
@@ -366,6 +366,19 @@ export const ONBOARDING_FIELDS = [
366
366
  placeholder: "Agent <agent@yourdomain.com>",
367
367
  dependsOn: { fieldId: "messaging.platform", equals: "resend" },
368
368
  },
369
+ {
370
+ id: "env.RESEND_REPLY_TO",
371
+ domain: "messaging",
372
+ target: "env",
373
+ path: "RESEND_REPLY_TO",
374
+ kind: "string",
375
+ scopes: ["full"],
376
+ label: "Reply-To Address",
377
+ prompt: "Reply-To address for outgoing emails (optional, defaults to From address)",
378
+ defaultValue: "",
379
+ placeholder: "support@yourdomain.com",
380
+ dependsOn: { fieldId: "messaging.platform", equals: "resend" },
381
+ },
369
382
  {
370
383
  id: "messaging.resend.mode",
371
384
  domain: "messaging",
package/src/index.ts CHANGED
@@ -135,6 +135,7 @@ export type AgentEvent =
135
135
  | { type: "model:request"; tokens: number }
136
136
  | { type: "model:chunk"; content: string }
137
137
  | { type: "model:response"; usage: TokenUsage }
138
+ | { type: "tool:generating"; tool: string; toolCallId: string }
138
139
  | { type: "tool:started"; tool: string; input: unknown }
139
140
  | { type: "tool:completed"; tool: string; output: unknown; duration: number; outputTokenEstimate?: number }
140
141
  | { type: "tool:error"; tool: string; error: string; recoverable: boolean }
@@ -148,10 +149,12 @@ export type AgentEvent =
148
149
  | { type: "tool:approval:denied"; approvalId: string; reason?: string }
149
150
  | {
150
151
  type: "tool:approval:checkpoint";
151
- approvalId: string;
152
- tool: string;
153
- toolCallId: string;
154
- input: Record<string, unknown>;
152
+ approvals: Array<{
153
+ approvalId: string;
154
+ tool: string;
155
+ toolCallId: string;
156
+ input: Record<string, unknown>;
157
+ }>;
155
158
  checkpointMessages: Message[];
156
159
  pendingToolCalls: Array<{ id: string; name: string; input: Record<string, unknown> }>;
157
160
  }