@agentick/core 0.7.0 → 0.8.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.
Files changed (96) hide show
  1. package/dist/.tsbuildinfo.build +1 -1
  2. package/dist/agentick-instance.d.ts.map +1 -1
  3. package/dist/agentick-instance.js +28 -0
  4. package/dist/agentick-instance.js.map +1 -1
  5. package/dist/app/inbox-storage.d.ts +24 -0
  6. package/dist/app/inbox-storage.d.ts.map +1 -0
  7. package/dist/app/inbox-storage.js +99 -0
  8. package/dist/app/inbox-storage.js.map +1 -0
  9. package/dist/app/session.d.ts +23 -2
  10. package/dist/app/session.d.ts.map +1 -1
  11. package/dist/app/session.js +283 -26
  12. package/dist/app/session.js.map +1 -1
  13. package/dist/app/types.d.ts +97 -0
  14. package/dist/app/types.d.ts.map +1 -1
  15. package/dist/app.d.ts +2 -1
  16. package/dist/app.d.ts.map +1 -1
  17. package/dist/app.js +1 -0
  18. package/dist/app.js.map +1 -1
  19. package/dist/com/object-model.d.ts +9 -3
  20. package/dist/com/object-model.d.ts.map +1 -1
  21. package/dist/com/object-model.js +52 -24
  22. package/dist/com/object-model.js.map +1 -1
  23. package/dist/compiler/collector.d.ts.map +1 -1
  24. package/dist/compiler/collector.js +177 -8
  25. package/dist/compiler/collector.js.map +1 -1
  26. package/dist/engine/tool-executor.d.ts +15 -1
  27. package/dist/engine/tool-executor.d.ts.map +1 -1
  28. package/dist/engine/tool-executor.js +64 -6
  29. package/dist/engine/tool-executor.js.map +1 -1
  30. package/dist/hooks/expandable.d.ts +29 -2
  31. package/dist/hooks/expandable.d.ts.map +1 -1
  32. package/dist/hooks/expandable.js +28 -7
  33. package/dist/hooks/expandable.js.map +1 -1
  34. package/dist/hooks/gate.d.ts +27 -0
  35. package/dist/hooks/gate.d.ts.map +1 -0
  36. package/dist/hooks/gate.js +59 -0
  37. package/dist/hooks/gate.js.map +1 -0
  38. package/dist/hooks/index.d.ts +1 -0
  39. package/dist/hooks/index.d.ts.map +1 -1
  40. package/dist/hooks/index.js +2 -0
  41. package/dist/hooks/index.js.map +1 -1
  42. package/dist/index.d.ts +2 -2
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +5 -1
  45. package/dist/index.js.map +1 -1
  46. package/dist/jsx/components/auto-summary.d.ts +31 -0
  47. package/dist/jsx/components/auto-summary.d.ts.map +1 -0
  48. package/dist/jsx/components/auto-summary.js +83 -0
  49. package/dist/jsx/components/auto-summary.js.map +1 -0
  50. package/dist/jsx/components/collapsed.d.ts +12 -2
  51. package/dist/jsx/components/collapsed.d.ts.map +1 -1
  52. package/dist/jsx/components/collapsed.js +16 -1
  53. package/dist/jsx/components/collapsed.js.map +1 -1
  54. package/dist/jsx/components/content.d.ts +26 -13
  55. package/dist/jsx/components/content.d.ts.map +1 -1
  56. package/dist/jsx/components/content.js +64 -15
  57. package/dist/jsx/components/content.js.map +1 -1
  58. package/dist/jsx/components/index.d.ts +1 -0
  59. package/dist/jsx/components/index.d.ts.map +1 -1
  60. package/dist/jsx/components/index.js +1 -0
  61. package/dist/jsx/components/index.js.map +1 -1
  62. package/dist/jsx/components/primitives.d.ts +34 -2
  63. package/dist/jsx/components/primitives.d.ts.map +1 -1
  64. package/dist/jsx/components/primitives.js +79 -21
  65. package/dist/jsx/components/primitives.js.map +1 -1
  66. package/dist/local-transport.d.ts.map +1 -1
  67. package/dist/local-transport.js +4 -0
  68. package/dist/local-transport.js.map +1 -1
  69. package/dist/model/adapter.d.ts +1 -1
  70. package/dist/model/adapter.d.ts.map +1 -1
  71. package/dist/model/adapter.js +7 -4
  72. package/dist/model/adapter.js.map +1 -1
  73. package/dist/model/model.d.ts +2 -0
  74. package/dist/model/model.d.ts.map +1 -1
  75. package/dist/renderers/base.d.ts +9 -0
  76. package/dist/renderers/base.d.ts.map +1 -1
  77. package/dist/renderers/base.js +31 -0
  78. package/dist/renderers/base.js.map +1 -1
  79. package/dist/renderers/markdown.d.ts.map +1 -1
  80. package/dist/renderers/markdown.js +21 -3
  81. package/dist/renderers/markdown.js.map +1 -1
  82. package/dist/renderers/xml.d.ts.map +1 -1
  83. package/dist/renderers/xml.js +9 -1
  84. package/dist/renderers/xml.js.map +1 -1
  85. package/dist/testing/mock-app.d.ts.map +1 -1
  86. package/dist/testing/mock-app.js +12 -0
  87. package/dist/testing/mock-app.js.map +1 -1
  88. package/dist/tool/tool.d.ts +10 -0
  89. package/dist/tool/tool.d.ts.map +1 -1
  90. package/dist/tool/tool.js +2 -0
  91. package/dist/tool/tool.js.map +1 -1
  92. package/dist/utils/classify-error.d.ts +1 -1
  93. package/dist/utils/classify-error.d.ts.map +1 -1
  94. package/dist/utils/classify-error.js +8 -0
  95. package/dist/utils/classify-error.js.map +1 -1
  96. package/package.json +3 -3
@@ -2,11 +2,21 @@ import React from "react";
2
2
  export interface CollapsedProps {
3
3
  name: string;
4
4
  group?: string;
5
- children?: string;
5
+ children?: React.ReactNode;
6
6
  }
7
+ /**
8
+ * Collapsed intrinsic wrapper.
9
+ *
10
+ * Compiles to a text content block with semantic metadata:
11
+ * - `rendererTag: "collapsed"` for format-specific rendering
12
+ * - `rendererAttrs: { name, group }` for expand targeting
13
+ *
14
+ * String children pass through as `text` prop.
15
+ * ReactNode children render as child elements — the collector's
16
+ * extractText recursively collects text from them.
17
+ */
7
18
  export declare function Collapsed({ name, group, children }: CollapsedProps): React.ReactElement<{
8
19
  name: string;
9
20
  group: string | undefined;
10
- text: string;
11
21
  }, string | React.JSXElementConstructor<any>>;
12
22
  //# sourceMappingURL=collapsed.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"collapsed.d.ts","sourceRoot":"","sources":["../../../src/jsx/components/collapsed.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,cAAc;;;;8CAElE"}
1
+ {"version":3,"file":"collapsed.d.ts","sourceRoot":"","sources":["../../../src/jsx/components/collapsed.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,cAAc;;;8CAMlE"}
@@ -1,6 +1,21 @@
1
1
  import React from "react";
2
2
  const h = React.createElement;
3
+ /**
4
+ * Collapsed intrinsic wrapper.
5
+ *
6
+ * Compiles to a text content block with semantic metadata:
7
+ * - `rendererTag: "collapsed"` for format-specific rendering
8
+ * - `rendererAttrs: { name, group }` for expand targeting
9
+ *
10
+ * String children pass through as `text` prop.
11
+ * ReactNode children render as child elements — the collector's
12
+ * extractText recursively collects text from them.
13
+ */
3
14
  export function Collapsed({ name, group, children }) {
4
- return h("Collapsed", { name, group, text: children ?? "" });
15
+ if (typeof children === "string" || typeof children === "number") {
16
+ return h("Collapsed", { name, group, text: String(children) });
17
+ }
18
+ // ReactNode children: render as child elements for recursive text extraction
19
+ return h("Collapsed", { name, group }, children);
5
20
  }
6
21
  //# sourceMappingURL=collapsed.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"collapsed.js","sourceRoot":"","sources":["../../../src/jsx/components/collapsed.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC;AAQ9B,MAAM,UAAU,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAkB;IACjE,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,IAAI,EAAE,EAAE,CAAC,CAAC;AAC/D,CAAC"}
1
+ {"version":3,"file":"collapsed.js","sourceRoot":"","sources":["../../../src/jsx/components/collapsed.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC;AAQ9B;;;;;;;;;;GAUG;AACH,MAAM,UAAU,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAkB;IACjE,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjE,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,6EAA6E;IAC7E,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC"}
@@ -1,12 +1,27 @@
1
+ import React from "react";
1
2
  import type { JSX } from "react";
2
3
  import type { ContentBlock as ContentBlockType, MediaSource } from "@agentick/shared";
3
4
  import type { CodeLanguage } from "@agentick/shared";
4
5
  import type { ComponentBaseProps } from "../jsx-types";
6
+ /**
7
+ * Collapse props shared by all expandable content blocks.
8
+ * When `collapsed` is provided, the block renders an Expandable wrapper
9
+ * that shows a summary by default, expandable via set_knob.
10
+ *
11
+ * - `true`: auto-summarize based on content block type
12
+ * - `string`: use this string as the collapsed summary
13
+ * - `ReactNode`: render this as collapsed content (must produce text)
14
+ */
15
+ export interface CollapseProps {
16
+ collapsed?: boolean | string | React.ReactNode;
17
+ collapsedName?: string;
18
+ collapsedGroup?: string;
19
+ }
5
20
  /**
6
21
  * Content component primitives for composing Message content.
7
22
  * These provide a React-like API for building ContentBlock[].
8
23
  */
9
- export interface ContentBlockProps extends ComponentBaseProps {
24
+ export interface ContentBlockProps extends ComponentBaseProps, CollapseProps {
10
25
  id?: string;
11
26
  }
12
27
  export type { ContentBlockType };
@@ -14,19 +29,9 @@ export type { ContentBlockType };
14
29
  * Text content block.
15
30
  * Usage: <Text>Hello world</Text> or <Text text="Hello" />
16
31
  *
17
- * Children take precedence over text prop (React convention - explicit wins).
18
- * Children can include JSX formatting elements (bold, italic, code, etc.)
19
- * which will be collected and formatted appropriately.
20
- *
21
32
  * @example
22
- * // Plain text
23
33
  * <Text>Hello world</Text>
24
- *
25
- * // With inline formatting
26
34
  * <Text>Hello <b>bold</b> and <inlineCode>code</inlineCode></Text>
27
- *
28
- * // With dynamic content
29
- * <Text><b>{isOld ? '[OLD] ' : ''}</b>{message.text}</Text>
30
35
  */
31
36
  export interface TextProps extends ContentBlockProps {
32
37
  children?: any;
@@ -86,8 +91,6 @@ export declare function Code(props: CodeProps): JSX.Element;
86
91
  /**
87
92
  * JSON content block.
88
93
  * Usage: <Json data={{ key: 'value' }} />
89
- *
90
- * Children take precedence over text prop (React convention - explicit wins).
91
94
  */
92
95
  export interface JsonProps extends ContentBlockProps {
93
96
  data?: any;
@@ -95,4 +98,14 @@ export interface JsonProps extends ContentBlockProps {
95
98
  text?: string;
96
99
  }
97
100
  export declare function Json(props: JsonProps): JSX.Element;
101
+ /**
102
+ * Tool use content block.
103
+ * Usage: <ToolUse name="shell" toolUseId="call_1" input={{ cmd: "ls" }} />
104
+ */
105
+ export interface ToolUseProps extends ContentBlockProps {
106
+ name: string;
107
+ toolUseId: string;
108
+ input?: Record<string, unknown>;
109
+ }
110
+ export declare function ToolUse(props: ToolUseProps): JSX.Element;
98
111
  //# sourceMappingURL=content.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../../src/jsx/components/content.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,EAAE,YAAY,IAAI,gBAAgB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACtF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAKvD;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAGD,YAAY,EAAE,gBAAgB,EAAE,CAAC;AAEjC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,SAAU,SAAQ,iBAAiB;IAClD,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG,CAAC,OAAO,CAElD;AAED;;;GAGG;AACH,MAAM,WAAW,UAAW,SAAQ,iBAAiB;IACnD,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AACD,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,CAAC,OAAO,CAEpD;AAED;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,GAAG,CAAC,OAAO,CAE1D;AAED;;;GAGG;AACH,MAAM,WAAW,UAAW,SAAQ,iBAAiB;IACnD,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AACD,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,CAAC,OAAO,CAEpD;AAED;;;GAGG;AACH,MAAM,WAAW,UAAW,SAAQ,iBAAiB;IACnD,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AACD,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,CAAC,OAAO,CAEpD;AAED;;;GAGG;AACH,MAAM,WAAW,SAAU,SAAQ,iBAAiB;IAClD,QAAQ,EAAE,YAAY,GAAG,MAAM,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG,CAAC,OAAO,CAElD;AAED;;;;;GAKG;AACH,MAAM,WAAW,SAAU,SAAQ,iBAAiB;IAClD,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG,CAAC,OAAO,CAYlD"}
1
+ {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../../src/jsx/components/content.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,EAAE,YAAY,IAAI,gBAAgB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACtF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAYvD;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IAC/C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB,EAAE,aAAa;IAC1E,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAGD,YAAY,EAAE,gBAAgB,EAAE,CAAC;AAgDjC;;;;;;;GAOG;AACH,MAAM,WAAW,SAAU,SAAQ,iBAAiB;IAClD,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG,CAAC,OAAO,CAGlD;AAMD;;;GAGG;AACH,MAAM,WAAW,UAAW,SAAQ,iBAAiB;IACnD,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AACD,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,CAAC,OAAO,CAGpD;AAMD;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,GAAG,CAAC,OAAO,CAG1D;AAMD;;;GAGG;AACH,MAAM,WAAW,UAAW,SAAQ,iBAAiB;IACnD,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AACD,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,CAAC,OAAO,CAGpD;AAMD;;;GAGG;AACH,MAAM,WAAW,UAAW,SAAQ,iBAAiB;IACnD,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AACD,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,CAAC,OAAO,CAGpD;AAMD;;;GAGG;AACH,MAAM,WAAW,SAAU,SAAQ,iBAAiB;IAClD,QAAQ,EAAE,YAAY,GAAG,MAAM,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG,CAAC,OAAO,CAGlD;AAMD;;;GAGG;AACH,MAAM,WAAW,SAAU,SAAQ,iBAAiB;IAClD,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG,CAAC,OAAO,CAgBlD;AAMD;;;GAGG;AACH,MAAM,WAAW,YAAa,SAAQ,iBAAiB;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AACD,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,GAAG,CAAC,OAAO,CAGxD"}
@@ -1,36 +1,85 @@
1
1
  import React from "react";
2
+ import { Expandable } from "../../hooks/expandable";
3
+ import { Collapsed } from "./collapsed";
4
+ import { autoContentSummary } from "./auto-summary";
2
5
  // Helper for createElement
3
6
  const h = React.createElement;
7
+ // ============================================================================
8
+ // Helper to strip collapse props before passing to intrinsic elements
9
+ // ============================================================================
10
+ function stripCollapse(props) {
11
+ const { collapsed: _c, collapsedName: _cn, collapsedGroup: _cg, ...rest } = props;
12
+ return rest;
13
+ }
14
+ /**
15
+ * Wrap an intrinsic element in Expandable when collapsed prop is set.
16
+ * Collapsed state renders a Collapsed intrinsic; expanded renders the original block.
17
+ *
18
+ * The `intrinsicType` and `intrinsicProps` are needed for auto-summary
19
+ * when collapsed={true} — the summary is derived from the block type and props.
20
+ */
21
+ function withCollapse(props, intrinsic, intrinsicType, intrinsicProps) {
22
+ if (props.collapsed === undefined || props.collapsed === false)
23
+ return intrinsic;
24
+ // Derive knob summary (always a string, for set_knob tool description)
25
+ const summary = typeof props.collapsed === "string"
26
+ ? props.collapsed
27
+ : autoContentSummary(intrinsicType, intrinsicProps);
28
+ // Derive collapsed children for the Collapsed intrinsic
29
+ const collapsedChildren = props.collapsed === true ? summary : props.collapsed;
30
+ return h(Expandable, {
31
+ name: props.collapsedName,
32
+ group: props.collapsedGroup,
33
+ summary,
34
+ children: (expanded, name) => expanded ? intrinsic : h(Collapsed, { name, group: props.collapsedGroup }, collapsedChildren),
35
+ });
36
+ }
4
37
  export function Text(props) {
5
- return h("Text", props);
38
+ const stripped = stripCollapse(props);
39
+ return withCollapse(props, h("Text", stripped), "Text", stripped);
6
40
  }
7
41
  export function Image(props) {
8
- return h("Image", props);
42
+ const stripped = stripCollapse(props);
43
+ return withCollapse(props, h("Image", stripped), "Image", stripped);
9
44
  }
10
45
  export function Document(props) {
11
- return h("Document", props);
46
+ const stripped = stripCollapse(props);
47
+ return withCollapse(props, h("Document", stripped), "Document", stripped);
12
48
  }
13
49
  export function Audio(props) {
14
- return h("Audio", props);
50
+ const stripped = stripCollapse(props);
51
+ return withCollapse(props, h("Audio", stripped), "Audio", stripped);
15
52
  }
16
53
  export function Video(props) {
17
- return h("Video", props);
54
+ const stripped = stripCollapse(props);
55
+ return withCollapse(props, h("Video", stripped), "Video", stripped);
18
56
  }
19
57
  export function Code(props) {
20
- return h("Code", props);
58
+ const stripped = stripCollapse(props);
59
+ return withCollapse(props, h("Code", stripped), "Code", stripped);
21
60
  }
22
61
  export function Json(props) {
23
- const childrenText = props.children !== undefined
24
- ? typeof props.children === "string"
25
- ? props.children
26
- : props.children?.join("") || ""
62
+ const stripped = stripCollapse(props);
63
+ const childrenText = stripped.children !== undefined
64
+ ? typeof stripped.children === "string"
65
+ ? stripped.children
66
+ : stripped.children?.join("") || ""
27
67
  : undefined;
28
- const text = childrenText ?? props.text ?? "";
29
- return h("Json", {
30
- ...omit(props, ["children"]),
31
- text: text || JSON.stringify(props.data),
32
- });
68
+ const text = childrenText ?? stripped.text ?? "";
69
+ const intrinsicProps = {
70
+ ...omit(stripped, ["children"]),
71
+ text: text || JSON.stringify(stripped.data),
72
+ };
73
+ const intrinsic = h("Json", intrinsicProps);
74
+ return withCollapse(props, intrinsic, "Json", intrinsicProps);
75
+ }
76
+ export function ToolUse(props) {
77
+ const stripped = stripCollapse(props);
78
+ return withCollapse(props, h("ToolUse", stripped), "ToolUse", stripped);
33
79
  }
80
+ // ============================================================================
81
+ // Helpers
82
+ // ============================================================================
34
83
  function omit(obj, keys) {
35
84
  const result = { ...obj };
36
85
  for (const key of keys) {
@@ -1 +1 @@
1
- {"version":3,"file":"content.js","sourceRoot":"","sources":["../../../src/jsx/components/content.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,2BAA2B;AAC3B,MAAM,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC;AAmC9B,MAAM,UAAU,IAAI,CAAC,KAAgB;IACnC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC1B,CAAC;AAWD,MAAM,UAAU,KAAK,CAAC,KAAiB;IACrC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAC3B,CAAC;AAWD,MAAM,UAAU,QAAQ,CAAC,KAAoB;IAC3C,OAAO,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC;AAWD,MAAM,UAAU,KAAK,CAAC,KAAiB;IACrC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAC3B,CAAC;AAWD,MAAM,UAAU,KAAK,CAAC,KAAiB;IACrC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAC3B,CAAC;AAWD,MAAM,UAAU,IAAI,CAAC,KAAgB;IACnC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC1B,CAAC;AAaD,MAAM,UAAU,IAAI,CAAC,KAAgB;IACnC,MAAM,YAAY,GAChB,KAAK,CAAC,QAAQ,KAAK,SAAS;QAC1B,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;YAClC,CAAC,CAAC,KAAK,CAAC,QAAQ;YAChB,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE;QAClC,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,IAAI,GAAG,YAAY,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;IAC9C,OAAO,CAAC,CAAC,MAAM,EAAE;QACf,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,UAAU,CAAC,CAAC;QAC5B,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;KACzC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,IAAI,CAAuB,GAAM,EAAE,IAAS;IACnD,MAAM,MAAM,GAAQ,EAAE,GAAG,GAAG,EAAE,CAAC;IAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"content.js","sourceRoot":"","sources":["../../../src/jsx/components/content.tsx"],"names":[],"mappings":"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"}
@@ -9,4 +9,5 @@ export * from "./xml";
9
9
  export * from "./token-budget";
10
10
  export * from "./timeline";
11
11
  export * from "./collapsed";
12
+ export * from "./auto-summary";
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jsx/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jsx/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC"}
@@ -9,4 +9,5 @@ export * from "./xml";
9
9
  export * from "./token-budget";
10
10
  export * from "./timeline";
11
11
  export * from "./collapsed";
12
+ export * from "./auto-summary";
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/jsx/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/jsx/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { ContentBlock, Message, MessageRoles } from "@agentick/shared";
2
+ import React from "react";
2
3
  import type { JSX } from "react";
3
4
  import type { JSX as AgentickJSX } from "../jsx-runtime";
4
5
  import type { StreamEvent } from "../../engine/engine-events";
@@ -66,12 +67,31 @@ export type EntryProps = {
66
67
  } & EntryCommonProps;
67
68
  }[EntryKind];
68
69
  export declare function Entry(props: EntryProps): JSX.Element;
70
+ /**
71
+ * Section primitive component props.
72
+ * Extends intrinsic section props with collapse support.
73
+ */
74
+ export type SectionProps = AgentickJSX.IntrinsicElements["section"] & {
75
+ /**
76
+ * Enables collapse behavior.
77
+ * - `true`: auto-summarize from title/id
78
+ * - `string`: use as collapsed summary
79
+ * - `ReactNode`: render as collapsed content (must produce text)
80
+ */
81
+ collapsed?: boolean | string | React.ReactNode;
82
+ /** Explicit knob name for collapse toggle. Auto-generated if omitted. */
83
+ collapsedName?: string;
84
+ /** Group name for batch expansion via set_knob. */
85
+ collapsedGroup?: string;
86
+ };
69
87
  /**
70
88
  * Section primitive component.
71
89
  * When used in JSX: <Section id="..." content="..." />
72
90
  * Returns an intrinsic "section" element for react-reconciler compatibility.
91
+ *
92
+ * When `collapsed` is provided, enables collapse/expand behavior via knob.
73
93
  */
74
- export declare function Section(props: AgentickJSX.IntrinsicElements["section"]): JSX.Element;
94
+ export declare function Section(props: SectionProps): JSX.Element;
75
95
  /**
76
96
  * Message primitive component props.
77
97
  * Allows spreading Message objects directly, plus JSX-specific props.
@@ -88,16 +108,28 @@ export type MessageProps = Partial<Omit<Message, "content" | "role">> & {
88
108
  tags?: string[];
89
109
  visibility?: "model" | "observer" | "log";
90
110
  children?: any;
111
+ /**
112
+ * Enables collapse behavior.
113
+ * - `true`: auto-summarize from role and content
114
+ * - `string`: use as collapsed summary
115
+ * - `ReactNode`: render as collapsed content (must produce text)
116
+ */
117
+ collapsed?: boolean | string | React.ReactNode;
118
+ /** Explicit knob name for collapse toggle. Auto-generated if omitted. */
119
+ collapsedName?: string;
120
+ /** Group name for batch expansion via set_knob. */
121
+ collapsedGroup?: string;
91
122
  } & ComponentBaseProps;
92
123
  /**
93
124
  * Message primitive component.
94
- * Semantic sugar wrapper that wraps Entry with kind="message" for intuitive API.
95
125
  *
96
126
  * Accepts Message objects via spreading, converts to Entry structure.
127
+ * When `collapsed` is provided, enables collapse/expand behavior via knob.
97
128
  *
98
129
  * Usage:
99
130
  * <Message role="user">Hello</Message>
100
131
  * <Message {...messageFromTimeline} tags={['important']} />
132
+ * <Message {...msg} collapsed="[ref:3] user asked about weather" />
101
133
  * Compiles to: <Entry kind="message" message={{ role: 'user', content: [...] }} />
102
134
  */
103
135
  export declare function Message(props: MessageProps): JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../src/jsx/components/primitives.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../../src/jsx/components/primitives.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,7 @@
1
1
  import React, { useDebugValue } from "react";
2
+ import { Expandable } from "../../hooks/expandable";
3
+ import { Collapsed } from "./collapsed";
4
+ import { autoMessageSummary, autoSectionSummary } from "./auto-summary";
2
5
  // Helper for createElement
3
6
  const h = React.createElement;
4
7
  // Re-export Timeline component from timeline.tsx
@@ -9,42 +12,55 @@ export function Entry(props) {
9
12
  // Type assertion needed because React.createElement doesn't handle discriminated unions well
10
13
  return h("entry", props);
11
14
  }
15
+ function SectionInner(props) {
16
+ useDebugValue(`Section: ${props.title ?? props.id ?? "untitled"}`);
17
+ return h("section", props);
18
+ }
19
+ function CollapsibleSection(props) {
20
+ const { collapsed, collapsedName, collapsedGroup, ...sectionProps } = props;
21
+ const summary = typeof collapsed === "string"
22
+ ? collapsed
23
+ : autoSectionSummary(sectionProps.title, sectionProps.id);
24
+ const collapsedChildren = collapsed === true ? summary : collapsed;
25
+ return h(Expandable, {
26
+ name: collapsedName,
27
+ group: collapsedGroup,
28
+ summary,
29
+ children: (expanded, name) => expanded
30
+ ? h(SectionInner, sectionProps)
31
+ : h(SectionInner, {
32
+ ...sectionProps,
33
+ children: h(Collapsed, { name, group: collapsedGroup }, collapsedChildren),
34
+ }),
35
+ });
36
+ }
12
37
  /**
13
38
  * Section primitive component.
14
39
  * When used in JSX: <Section id="..." content="..." />
15
40
  * Returns an intrinsic "section" element for react-reconciler compatibility.
41
+ *
42
+ * When `collapsed` is provided, enables collapse/expand behavior via knob.
16
43
  */
17
44
  export function Section(props) {
18
- // Debug value shows section title for React DevTools
19
- useDebugValue(`Section: ${props.title ?? props.id ?? "untitled"}`);
20
- // Use intrinsic "section" element for react-reconciler compatibility
21
- return h("section", props);
45
+ if (props.collapsed !== undefined && props.collapsed !== false) {
46
+ return h(CollapsibleSection, props);
47
+ }
48
+ return h(SectionInner, props);
22
49
  }
23
50
  /**
24
- * Message primitive component.
25
- * Semantic sugar wrapper that wraps Entry with kind="message" for intuitive API.
26
- *
27
- * Accepts Message objects via spreading, converts to Entry structure.
28
- *
29
- * Usage:
30
- * <Message role="user">Hello</Message>
31
- * <Message {...messageFromTimeline} tags={['important']} />
32
- * Compiles to: <Entry kind="message" message={{ role: 'user', content: [...] }} />
51
+ * Internal: renders a message entry with useDebugValue.
33
52
  */
34
- export function Message(props) {
53
+ function MessageInner(props) {
35
54
  const { role, content, children, id, metadata, tags, visibility, createdAt, updatedAt, ...rest } = props;
36
- // Debug value shows role and content preview for React DevTools
37
55
  const preview = typeof content === "string"
38
56
  ? content.slice(0, 30) + (content.length > 30 ? "..." : "")
39
57
  : children
40
58
  ? "[children]"
41
59
  : "[empty]";
42
60
  useDebugValue(`${role}: ${preview}`);
43
- // Convert MessageProps to Message structure for EntryKindMap
44
- // If content is already ContentBlock[], use it; otherwise renderer will convert children
45
61
  const message = {
46
62
  role,
47
- content: content || [], // Will be converted to ContentBlock[] by renderer if needed
63
+ content: content || [],
48
64
  id,
49
65
  metadata,
50
66
  createdAt,
@@ -53,12 +69,54 @@ export function Message(props) {
53
69
  return h(Entry, {
54
70
  kind: "message",
55
71
  message,
56
- tags, // Entry-level props
57
- visibility, // Entry-level props
72
+ tags,
73
+ visibility,
58
74
  ...rest,
59
- children, // Pass children through - renderer will collect them into message.content
75
+ children,
60
76
  });
61
77
  }
78
+ /**
79
+ * Internal: message with collapse/expand toggle via Expandable.
80
+ * When collapsed, renders MessageInner with summary as children.
81
+ * When expanded (knob toggled), renders MessageInner with original content.
82
+ */
83
+ function CollapsibleMessage(props) {
84
+ const { collapsed, collapsedName, collapsedGroup, ...messageProps } = props;
85
+ const summary = typeof collapsed === "string"
86
+ ? collapsed
87
+ : autoMessageSummary(messageProps.role, messageProps.content);
88
+ const collapsedChildren = collapsed === true ? summary : collapsed;
89
+ return h(Expandable, {
90
+ name: collapsedName,
91
+ group: collapsedGroup,
92
+ summary,
93
+ children: (expanded, name) => expanded
94
+ ? h(MessageInner, messageProps)
95
+ : h(MessageInner, {
96
+ ...messageProps,
97
+ content: undefined,
98
+ children: h(Collapsed, { name, group: collapsedGroup }, collapsedChildren),
99
+ }),
100
+ });
101
+ }
102
+ /**
103
+ * Message primitive component.
104
+ *
105
+ * Accepts Message objects via spreading, converts to Entry structure.
106
+ * When `collapsed` is provided, enables collapse/expand behavior via knob.
107
+ *
108
+ * Usage:
109
+ * <Message role="user">Hello</Message>
110
+ * <Message {...messageFromTimeline} tags={['important']} />
111
+ * <Message {...msg} collapsed="[ref:3] user asked about weather" />
112
+ * Compiles to: <Entry kind="message" message={{ role: 'user', content: [...] }} />
113
+ */
114
+ export function Message(props) {
115
+ if (props.collapsed !== undefined && props.collapsed !== false) {
116
+ return h(CollapsibleMessage, props);
117
+ }
118
+ return h(MessageInner, props);
119
+ }
62
120
  /**
63
121
  * Tool primitive component.
64
122
  * When used in JSX: <Tool definition={myTool} />
@@ -1 +1 @@
1
- {"version":3,"file":"primitives.js","sourceRoot":"","sources":["../../../src/jsx/components/primitives.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAM7C,2BAA2B;AAC3B,MAAM,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC;AAE9B,iDAAiD;AACjD,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAmE1D,MAAM,UAAU,KAAK,CAAC,KAAiB;IACrC,mEAAmE;IACnE,kEAAkE;IAClE,6FAA6F;IAC7F,OAAO,CAAC,CAAC,OAAO,EAAE,KAAY,CAAC,CAAC;AAClC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,OAAO,CAAC,KAA+C;IACrE,qDAAqD;IACrD,aAAa,CAAC,YAAY,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,EAAE,IAAI,UAAU,EAAE,CAAC,CAAC;IACnE,qEAAqE;IACrE,OAAO,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAC7B,CAAC;AAoBD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,OAAO,CAAC,KAAmB;IACzC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAC9F,KAAK,CAAC;IAER,gEAAgE;IAChE,MAAM,OAAO,GACX,OAAO,OAAO,KAAK,QAAQ;QACzB,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,CAAC,CAAC,QAAQ;YACR,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,SAAS,CAAC;IAClB,aAAa,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC;IAErC,6DAA6D;IAC7D,yFAAyF;IACzF,MAAM,OAAO,GAAY;QACvB,IAAI;QACJ,OAAO,EAAG,OAA8B,IAAI,EAAE,EAAE,4DAA4D;QAC5G,EAAE;QACF,QAAQ;QACR,SAAS;QACT,SAAS;KACV,CAAC;IAEF,OAAO,CAAC,CAAC,KAAK,EAAE;QACd,IAAI,EAAE,SAAS;QACf,OAAO;QACP,IAAI,EAAE,oBAAoB;QAC1B,UAAU,EAAE,oBAAoB;QAChC,GAAG,IAAI;QACP,QAAQ,EAAE,0EAA0E;KACrF,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,IAAI,CAAC,KAA4C;IAC/D,iDAAiD;IACjD,aAAa,CAAC,SAAS,KAAK,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;IAClD,kEAAkE;IAClE,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC1B,CAAC;AAED,6BAA6B;AAC7B,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG9C,+BAA+B;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,gCAAgC;AAChC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAE/F,oCAAoC;AACpC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAa9F,mCAAmC;AACnC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGlE,+EAA+E"}
1
+ {"version":3,"file":"primitives.js","sourceRoot":"","sources":["../../../src/jsx/components/primitives.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"local-transport.d.ts","sourceRoot":"","sources":["../src/local-transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,eAAe,EAOhB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,eAAe,CA+G9D"}
1
+ {"version":3,"file":"local-transport.d.ts","sourceRoot":"","sources":["../src/local-transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,eAAe,EAOhB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,eAAe,CAoH9D"}
@@ -101,6 +101,10 @@ export function createLocalTransport(app) {
101
101
  async subscribeToChannel(_sessionId, _channel) {
102
102
  // No-op for local transport — channels are in-process
103
103
  },
104
+ async dispatch(sessionId, name, input) {
105
+ const session = await app.session(sessionId);
106
+ return session.dispatch(name, input);
107
+ },
104
108
  onEvent(handler) {
105
109
  _eventHandlers.add(handler);
106
110
  return () => {
@@ -1 +1 @@
1
- {"version":3,"file":"local-transport.js","sourceRoot":"","sources":["../src/local-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-transport.js","sourceRoot":"","sources":["../src/local-transport.ts"],"names":[],"mappings":"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"}
@@ -245,7 +245,7 @@ export interface AdapterOptions<TProviderInput, TProviderOutput, TChunk> {
245
245
  * }
246
246
  * ```
247
247
  */
248
- mapChunk: (chunk: TChunk) => AdapterDelta | null;
248
+ mapChunk: (chunk: TChunk) => AdapterDelta | AdapterDelta[] | null;
249
249
  /**
250
250
  * Execute non-streaming generation.
251
251
  */
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/model/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/model/adapter.ts"],"names":[],"mappings":"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"}
@@ -361,12 +361,15 @@ export function createAdapter(options) {
361
361
  }
362
362
  }
363
363
  }
364
- // Map chunk to AdapterDelta and push to accumulator
364
+ // Map chunk to AdapterDelta(s) and push to accumulator
365
365
  const delta = mapChunk(chunk);
366
366
  if (delta) {
367
- const events = accumulator.push(delta);
368
- for (const event of events) {
369
- yield event;
367
+ const deltas = Array.isArray(delta) ? delta : [delta];
368
+ for (const d of deltas) {
369
+ const events = accumulator.push(d);
370
+ for (const event of events) {
371
+ yield event;
372
+ }
370
373
  }
371
374
  }
372
375
  }