@agentick/core 0.0.1
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/LICENSE +21 -0
- package/README.md +875 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/.tsbuildinfo.build +1 -0
- package/dist/agent.d.ts +32 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +26 -0
- package/dist/agent.js.map +1 -0
- package/dist/agentick-instance.d.ts +285 -0
- package/dist/agentick-instance.d.ts.map +1 -0
- package/dist/agentick-instance.js +700 -0
- package/dist/agentick-instance.js.map +1 -0
- package/dist/aidk-instance.d.ts +294 -0
- package/dist/aidk-instance.d.ts.map +1 -0
- package/dist/aidk-instance.js +340 -0
- package/dist/aidk-instance.js.map +1 -0
- package/dist/app/session-store.d.ts +57 -0
- package/dist/app/session-store.d.ts.map +1 -0
- package/dist/app/session-store.js +87 -0
- package/dist/app/session-store.js.map +1 -0
- package/dist/app/session.d.ts +209 -0
- package/dist/app/session.d.ts.map +1 -0
- package/dist/app/session.js +2131 -0
- package/dist/app/session.js.map +1 -0
- package/dist/app/sqlite-session-store.d.ts +60 -0
- package/dist/app/sqlite-session-store.d.ts.map +1 -0
- package/dist/app/sqlite-session-store.js +234 -0
- package/dist/app/sqlite-session-store.js.map +1 -0
- package/dist/app/types.d.ts +1461 -0
- package/dist/app/types.d.ts.map +1 -0
- package/dist/app/types.js +14 -0
- package/dist/app/types.js.map +1 -0
- package/dist/app.d.ts +79 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +83 -0
- package/dist/app.js.map +1 -0
- package/dist/channels/adapters/index.d.ts +2 -0
- package/dist/channels/adapters/index.d.ts.map +1 -0
- package/dist/channels/adapters/index.js +2 -0
- package/dist/channels/adapters/index.js.map +1 -0
- package/dist/channels/adapters/redis.d.ts +77 -0
- package/dist/channels/adapters/redis.d.ts.map +1 -0
- package/dist/channels/adapters/redis.js +259 -0
- package/dist/channels/adapters/redis.js.map +1 -0
- package/dist/channels/index.d.ts +38 -0
- package/dist/channels/index.d.ts.map +1 -0
- package/dist/channels/index.js +38 -0
- package/dist/channels/index.js.map +1 -0
- package/dist/channels/service.d.ts +684 -0
- package/dist/channels/service.d.ts.map +1 -0
- package/dist/channels/service.js +870 -0
- package/dist/channels/service.js.map +1 -0
- package/dist/channels/transports/index.d.ts +4 -0
- package/dist/channels/transports/index.d.ts.map +1 -0
- package/dist/channels/transports/index.js +4 -0
- package/dist/channels/transports/index.js.map +1 -0
- package/dist/channels/transports/socketio.d.ts +98 -0
- package/dist/channels/transports/socketio.d.ts.map +1 -0
- package/dist/channels/transports/socketio.js +246 -0
- package/dist/channels/transports/socketio.js.map +1 -0
- package/dist/channels/transports/streamable-http.d.ts +107 -0
- package/dist/channels/transports/streamable-http.d.ts.map +1 -0
- package/dist/channels/transports/streamable-http.js +353 -0
- package/dist/channels/transports/streamable-http.js.map +1 -0
- package/dist/channels/transports/websocket.d.ts +117 -0
- package/dist/channels/transports/websocket.d.ts.map +1 -0
- package/dist/channels/transports/websocket.js +416 -0
- package/dist/channels/transports/websocket.js.map +1 -0
- package/dist/com/index.d.ts +29 -0
- package/dist/com/index.d.ts.map +1 -0
- package/dist/com/index.js +29 -0
- package/dist/com/index.js.map +1 -0
- package/dist/com/object-model.d.ts +634 -0
- package/dist/com/object-model.d.ts.map +1 -0
- package/dist/com/object-model.js +963 -0
- package/dist/com/object-model.js.map +1 -0
- package/dist/com/types.d.ts +192 -0
- package/dist/com/types.d.ts.map +1 -0
- package/dist/com/types.js +1 -0
- package/dist/com/types.js.map +1 -0
- package/dist/compiler/collector.d.ts +16 -0
- package/dist/compiler/collector.d.ts.map +1 -0
- package/dist/compiler/collector.js +388 -0
- package/dist/compiler/collector.js.map +1 -0
- package/dist/compiler/content-block-registry.d.ts +11 -0
- package/dist/compiler/content-block-registry.d.ts.map +1 -0
- package/dist/compiler/content-block-registry.js +312 -0
- package/dist/compiler/content-block-registry.js.map +1 -0
- package/dist/compiler/extractors.d.ts +68 -0
- package/dist/compiler/extractors.d.ts.map +1 -0
- package/dist/compiler/extractors.js +547 -0
- package/dist/compiler/extractors.js.map +1 -0
- package/dist/compiler/fiber-compiler.d.ts +203 -0
- package/dist/compiler/fiber-compiler.d.ts.map +1 -0
- package/dist/compiler/fiber-compiler.js +498 -0
- package/dist/compiler/fiber-compiler.js.map +1 -0
- package/dist/compiler/fiber.d.ts +61 -0
- package/dist/compiler/fiber.d.ts.map +1 -0
- package/dist/compiler/fiber.js +244 -0
- package/dist/compiler/fiber.js.map +1 -0
- package/dist/compiler/index.d.ts +18 -0
- package/dist/compiler/index.d.ts.map +1 -0
- package/dist/compiler/index.js +38 -0
- package/dist/compiler/index.js.map +1 -0
- package/dist/compiler/scheduler.d.ts +95 -0
- package/dist/compiler/scheduler.d.ts.map +1 -0
- package/dist/compiler/scheduler.js +138 -0
- package/dist/compiler/scheduler.js.map +1 -0
- package/dist/compiler/structure-renderer.d.ts +42 -0
- package/dist/compiler/structure-renderer.d.ts.map +1 -0
- package/dist/compiler/structure-renderer.js +189 -0
- package/dist/compiler/structure-renderer.js.map +1 -0
- package/dist/compiler/types.d.ts +96 -0
- package/dist/compiler/types.d.ts.map +1 -0
- package/dist/compiler/types.js +19 -0
- package/dist/compiler/types.js.map +1 -0
- package/dist/component/component-hooks.d.ts +68 -0
- package/dist/component/component-hooks.d.ts.map +1 -0
- package/dist/component/component-hooks.js +112 -0
- package/dist/component/component-hooks.js.map +1 -0
- package/dist/component/component.d.ts +314 -0
- package/dist/component/component.d.ts.map +1 -0
- package/dist/component/component.js +64 -0
- package/dist/component/component.js.map +1 -0
- package/dist/component/index.d.ts +47 -0
- package/dist/component/index.d.ts.map +1 -0
- package/dist/component/index.js +47 -0
- package/dist/component/index.js.map +1 -0
- package/dist/component/tentickle-component.d.ts +185 -0
- package/dist/component/tentickle-component.d.ts.map +1 -0
- package/dist/component/tentickle-component.js +182 -0
- package/dist/component/tentickle-component.js.map +1 -0
- package/dist/content/index.d.ts +12 -0
- package/dist/content/index.d.ts.map +1 -0
- package/dist/content/index.js +17 -0
- package/dist/content/index.js.map +1 -0
- package/dist/context/index.d.ts +51 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context/index.js +69 -0
- package/dist/context/index.js.map +1 -0
- package/dist/core/channel-helpers.d.ts +31 -0
- package/dist/core/channel-helpers.d.ts.map +1 -0
- package/dist/core/channel-helpers.js +62 -0
- package/dist/core/channel-helpers.js.map +1 -0
- package/dist/core/channel.d.ts +164 -0
- package/dist/core/channel.d.ts.map +1 -0
- package/dist/core/channel.js +199 -0
- package/dist/core/channel.js.map +1 -0
- package/dist/core/context.d.ts +412 -0
- package/dist/core/context.d.ts.map +1 -0
- package/dist/core/context.js +290 -0
- package/dist/core/context.js.map +1 -0
- package/dist/core/event-buffer.d.ts +212 -0
- package/dist/core/event-buffer.d.ts.map +1 -0
- package/dist/core/event-buffer.js +346 -0
- package/dist/core/event-buffer.js.map +1 -0
- package/dist/core/execution-helpers.d.ts +179 -0
- package/dist/core/execution-helpers.d.ts.map +1 -0
- package/dist/core/execution-helpers.js +212 -0
- package/dist/core/execution-helpers.js.map +1 -0
- package/dist/core/execution-tracker.d.ts +53 -0
- package/dist/core/execution-tracker.d.ts.map +1 -0
- package/dist/core/execution-tracker.js +309 -0
- package/dist/core/execution-tracker.js.map +1 -0
- package/dist/core/index.d.ts +58 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +58 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/logger.d.ts +341 -0
- package/dist/core/logger.d.ts.map +1 -0
- package/dist/core/logger.js +346 -0
- package/dist/core/logger.js.map +1 -0
- package/dist/core/metrics-helpers.d.ts +40 -0
- package/dist/core/metrics-helpers.d.ts.map +1 -0
- package/dist/core/metrics-helpers.js +72 -0
- package/dist/core/metrics-helpers.js.map +1 -0
- package/dist/core/otel-provider.d.ts +54 -0
- package/dist/core/otel-provider.d.ts.map +1 -0
- package/dist/core/otel-provider.js +107 -0
- package/dist/core/otel-provider.js.map +1 -0
- package/dist/core/procedure-graph.d.ts +136 -0
- package/dist/core/procedure-graph.d.ts.map +1 -0
- package/dist/core/procedure-graph.js +272 -0
- package/dist/core/procedure-graph.js.map +1 -0
- package/dist/core/procedure.d.ts +755 -0
- package/dist/core/procedure.d.ts.map +1 -0
- package/dist/core/procedure.js +899 -0
- package/dist/core/procedure.js.map +1 -0
- package/dist/core/stream.d.ts +106 -0
- package/dist/core/stream.d.ts.map +1 -0
- package/dist/core/stream.js +186 -0
- package/dist/core/stream.js.map +1 -0
- package/dist/core/telemetry.d.ts +182 -0
- package/dist/core/telemetry.d.ts.map +1 -0
- package/dist/core/telemetry.js +124 -0
- package/dist/core/telemetry.js.map +1 -0
- package/dist/engine/client-tool-coordinator.d.ts +50 -0
- package/dist/engine/client-tool-coordinator.d.ts.map +1 -0
- package/dist/engine/client-tool-coordinator.js +121 -0
- package/dist/engine/client-tool-coordinator.js.map +1 -0
- package/dist/engine/engine-events.d.ts +117 -0
- package/dist/engine/engine-events.d.ts.map +1 -0
- package/dist/engine/engine-events.js +178 -0
- package/dist/engine/engine-events.js.map +1 -0
- package/dist/engine/engine-response.d.ts +48 -0
- package/dist/engine/engine-response.d.ts.map +1 -0
- package/dist/engine/engine-response.js +2 -0
- package/dist/engine/engine-response.js.map +1 -0
- package/dist/engine/execution-graph.d.ts +104 -0
- package/dist/engine/execution-graph.d.ts.map +1 -0
- package/dist/engine/execution-graph.js +257 -0
- package/dist/engine/execution-graph.js.map +1 -0
- package/dist/engine/execution-handle.d.ts +212 -0
- package/dist/engine/execution-handle.d.ts.map +1 -0
- package/dist/engine/execution-handle.js +602 -0
- package/dist/engine/execution-handle.js.map +1 -0
- package/dist/engine/execution-types.d.ts +248 -0
- package/dist/engine/execution-types.d.ts.map +1 -0
- package/dist/engine/execution-types.js +23 -0
- package/dist/engine/execution-types.js.map +1 -0
- package/dist/engine/index.d.ts +21 -0
- package/dist/engine/index.d.ts.map +1 -0
- package/dist/engine/index.js +23 -0
- package/dist/engine/index.js.map +1 -0
- package/dist/engine/tool-confirmation-coordinator.d.ts +74 -0
- package/dist/engine/tool-confirmation-coordinator.d.ts.map +1 -0
- package/dist/engine/tool-confirmation-coordinator.js +137 -0
- package/dist/engine/tool-confirmation-coordinator.js.map +1 -0
- package/dist/engine/tool-executor.d.ts +127 -0
- package/dist/engine/tool-executor.d.ts.map +1 -0
- package/dist/engine/tool-executor.js +363 -0
- package/dist/engine/tool-executor.js.map +1 -0
- package/dist/hibernation/index.d.ts +126 -0
- package/dist/hibernation/index.d.ts.map +1 -0
- package/dist/hibernation/index.js +127 -0
- package/dist/hibernation/index.js.map +1 -0
- package/dist/hooks/base-hook-registry.d.ts +41 -0
- package/dist/hooks/base-hook-registry.d.ts.map +1 -0
- package/dist/hooks/base-hook-registry.js +76 -0
- package/dist/hooks/base-hook-registry.js.map +1 -0
- package/dist/hooks/com-state.d.ts +40 -0
- package/dist/hooks/com-state.d.ts.map +1 -0
- package/dist/hooks/com-state.js +90 -0
- package/dist/hooks/com-state.js.map +1 -0
- package/dist/hooks/context-info.d.ts +139 -0
- package/dist/hooks/context-info.d.ts.map +1 -0
- package/dist/hooks/context-info.js +115 -0
- package/dist/hooks/context-info.js.map +1 -0
- package/dist/hooks/context-internal.d.ts +21 -0
- package/dist/hooks/context-internal.d.ts.map +1 -0
- package/dist/hooks/context-internal.js +20 -0
- package/dist/hooks/context-internal.js.map +1 -0
- package/dist/hooks/context.d.ts +64 -0
- package/dist/hooks/context.d.ts.map +1 -0
- package/dist/hooks/context.js +83 -0
- package/dist/hooks/context.js.map +1 -0
- package/dist/hooks/data.d.ts +33 -0
- package/dist/hooks/data.d.ts.map +1 -0
- package/dist/hooks/data.js +84 -0
- package/dist/hooks/data.js.map +1 -0
- package/dist/hooks/formatter-context.d.ts +34 -0
- package/dist/hooks/formatter-context.d.ts.map +1 -0
- package/dist/hooks/formatter-context.js +34 -0
- package/dist/hooks/formatter-context.js.map +1 -0
- package/dist/hooks/hook-registry.d.ts +45 -0
- package/dist/hooks/hook-registry.d.ts.map +1 -0
- package/dist/hooks/hook-registry.js +109 -0
- package/dist/hooks/hook-registry.js.map +1 -0
- package/dist/hooks/index.d.ts +20 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +47 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/knob.d.ts +87 -0
- package/dist/hooks/knob.d.ts.map +1 -0
- package/dist/hooks/knob.js +129 -0
- package/dist/hooks/knob.js.map +1 -0
- package/dist/hooks/knobs-component.d.ts +70 -0
- package/dist/hooks/knobs-component.d.ts.map +1 -0
- package/dist/hooks/knobs-component.js +300 -0
- package/dist/hooks/knobs-component.js.map +1 -0
- package/dist/hooks/lifecycle.d.ts +158 -0
- package/dist/hooks/lifecycle.d.ts.map +1 -0
- package/dist/hooks/lifecycle.js +217 -0
- package/dist/hooks/lifecycle.js.map +1 -0
- package/dist/hooks/message-context.d.ts +101 -0
- package/dist/hooks/message-context.d.ts.map +1 -0
- package/dist/hooks/message-context.js +145 -0
- package/dist/hooks/message-context.js.map +1 -0
- package/dist/hooks/policy-context.d.ts.map +1 -0
- package/dist/hooks/runtime-context.d.ts +122 -0
- package/dist/hooks/runtime-context.d.ts.map +1 -0
- package/dist/hooks/runtime-context.js +149 -0
- package/dist/hooks/runtime-context.js.map +1 -0
- package/dist/hooks/signal.d.ts +267 -0
- package/dist/hooks/signal.d.ts.map +1 -0
- package/dist/hooks/signal.js +825 -0
- package/dist/hooks/signal.js.map +1 -0
- package/dist/hooks/types.d.ts +179 -0
- package/dist/hooks/types.d.ts.map +1 -0
- package/dist/hooks/types.js +5 -0
- package/dist/hooks/types.js.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +50 -0
- package/dist/index.js.map +1 -0
- package/dist/jsx/components/agent.d.ts +64 -0
- package/dist/jsx/components/agent.d.ts.map +1 -0
- package/dist/jsx/components/agent.js +80 -0
- package/dist/jsx/components/agent.js.map +1 -0
- package/dist/jsx/components/complete.d.ts +65 -0
- package/dist/jsx/components/complete.d.ts.map +1 -0
- package/dist/jsx/components/complete.js +64 -0
- package/dist/jsx/components/complete.js.map +1 -0
- package/dist/jsx/components/content.d.ts +98 -0
- package/dist/jsx/components/content.d.ts.map +1 -0
- package/dist/jsx/components/content.js +51 -0
- package/dist/jsx/components/content.js.map +1 -0
- package/dist/jsx/components/harness.d.ts +118 -0
- package/dist/jsx/components/harness.d.ts.map +1 -0
- package/dist/jsx/components/harness.js +117 -0
- package/dist/jsx/components/harness.js.map +1 -0
- package/dist/jsx/components/index.d.ts +11 -0
- package/dist/jsx/components/index.d.ts.map +1 -0
- package/dist/jsx/components/index.js +11 -0
- package/dist/jsx/components/index.js.map +1 -0
- package/dist/jsx/components/markdown.d.ts +31 -0
- package/dist/jsx/components/markdown.d.ts.map +1 -0
- package/dist/jsx/components/markdown.js +17 -0
- package/dist/jsx/components/markdown.js.map +1 -0
- package/dist/jsx/components/messages.d.ts +283 -0
- package/dist/jsx/components/messages.d.ts.map +1 -0
- package/dist/jsx/components/messages.js +257 -0
- package/dist/jsx/components/messages.js.map +1 -0
- package/dist/jsx/components/model.d.ts +94 -0
- package/dist/jsx/components/model.d.ts.map +1 -0
- package/dist/jsx/components/model.js +96 -0
- package/dist/jsx/components/model.js.map +1 -0
- package/dist/jsx/components/primitives.d.ts +117 -0
- package/dist/jsx/components/primitives.d.ts.map +1 -0
- package/dist/jsx/components/primitives.js +83 -0
- package/dist/jsx/components/primitives.js.map +1 -0
- package/dist/jsx/components/renderer.d.ts +24 -0
- package/dist/jsx/components/renderer.d.ts.map +1 -0
- package/dist/jsx/components/renderer.js +11 -0
- package/dist/jsx/components/renderer.js.map +1 -0
- package/dist/jsx/components/semantic.d.ts +155 -0
- package/dist/jsx/components/semantic.d.ts.map +1 -0
- package/dist/jsx/components/semantic.js +39 -0
- package/dist/jsx/components/semantic.js.map +1 -0
- package/dist/jsx/components/timeline.d.ts +157 -0
- package/dist/jsx/components/timeline.d.ts.map +1 -0
- package/dist/jsx/components/timeline.js +357 -0
- package/dist/jsx/components/timeline.js.map +1 -0
- package/dist/jsx/components/token-budget.d.ts +70 -0
- package/dist/jsx/components/token-budget.d.ts.map +1 -0
- package/dist/jsx/components/token-budget.js +135 -0
- package/dist/jsx/components/token-budget.js.map +1 -0
- package/dist/jsx/components/xml.d.ts +27 -0
- package/dist/jsx/components/xml.d.ts.map +1 -0
- package/dist/jsx/components/xml.js +17 -0
- package/dist/jsx/components/xml.js.map +1 -0
- package/dist/jsx/index.d.ts +58 -0
- package/dist/jsx/index.d.ts.map +1 -0
- package/dist/jsx/index.js +59 -0
- package/dist/jsx/index.js.map +1 -0
- package/dist/jsx/jsx-runtime.d.ts +370 -0
- package/dist/jsx/jsx-runtime.d.ts.map +1 -0
- package/dist/jsx/jsx-runtime.js +79 -0
- package/dist/jsx/jsx-runtime.js.map +1 -0
- package/dist/jsx/jsx-types.d.ts +23 -0
- package/dist/jsx/jsx-types.d.ts.map +1 -0
- package/dist/jsx/jsx-types.js +1 -0
- package/dist/jsx/jsx-types.js.map +1 -0
- package/dist/mcp/client.d.ts +46 -0
- package/dist/mcp/client.d.ts.map +1 -0
- package/dist/mcp/client.js +138 -0
- package/dist/mcp/client.js.map +1 -0
- package/dist/mcp/component.d.ts +95 -0
- package/dist/mcp/component.d.ts.map +1 -0
- package/dist/mcp/component.js +185 -0
- package/dist/mcp/component.js.map +1 -0
- package/dist/mcp/create-mcp-tool.d.ts +191 -0
- package/dist/mcp/create-mcp-tool.d.ts.map +1 -0
- package/dist/mcp/create-mcp-tool.js +228 -0
- package/dist/mcp/create-mcp-tool.js.map +1 -0
- package/dist/mcp/index.d.ts +49 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +48 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/service.d.ts +39 -0
- package/dist/mcp/service.d.ts.map +1 -0
- package/dist/mcp/service.js +77 -0
- package/dist/mcp/service.js.map +1 -0
- package/dist/mcp/tool.d.ts +55 -0
- package/dist/mcp/tool.d.ts.map +1 -0
- package/dist/mcp/tool.js +119 -0
- package/dist/mcp/tool.js.map +1 -0
- package/dist/mcp/types.d.ts +72 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/types.js +6 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/middleware/defaults.d.ts +9 -0
- package/dist/middleware/defaults.d.ts.map +1 -0
- package/dist/middleware/defaults.js +47 -0
- package/dist/middleware/defaults.js.map +1 -0
- package/dist/model/adapter-helpers.d.ts +161 -0
- package/dist/model/adapter-helpers.d.ts.map +1 -0
- package/dist/model/adapter-helpers.js +351 -0
- package/dist/model/adapter-helpers.js.map +1 -0
- package/dist/model/adapter.d.ts +399 -0
- package/dist/model/adapter.d.ts.map +1 -0
- package/dist/model/adapter.js +497 -0
- package/dist/model/adapter.js.map +1 -0
- package/dist/model/index.d.ts +54 -0
- package/dist/model/index.d.ts.map +1 -0
- package/dist/model/index.js +55 -0
- package/dist/model/index.js.map +1 -0
- package/dist/model/model-hooks.d.ts +45 -0
- package/dist/model/model-hooks.d.ts.map +1 -0
- package/dist/model/model-hooks.js +24 -0
- package/dist/model/model-hooks.js.map +1 -0
- package/dist/model/model.d.ts +302 -0
- package/dist/model/model.d.ts.map +1 -0
- package/dist/model/model.js +20 -0
- package/dist/model/model.js.map +1 -0
- package/dist/model/simple-adapter.d.ts +176 -0
- package/dist/model/simple-adapter.d.ts.map +1 -0
- package/dist/model/simple-adapter.js +264 -0
- package/dist/model/simple-adapter.js.map +1 -0
- package/dist/model/stream-accumulator.d.ts +284 -0
- package/dist/model/stream-accumulator.d.ts.map +1 -0
- package/dist/model/stream-accumulator.js +532 -0
- package/dist/model/stream-accumulator.js.map +1 -0
- package/dist/model/utils/index.d.ts +2 -0
- package/dist/model/utils/index.d.ts.map +1 -0
- package/dist/model/utils/index.js +2 -0
- package/dist/model/utils/index.js.map +1 -0
- package/dist/model/utils/language-model.d.ts +26 -0
- package/dist/model/utils/language-model.d.ts.map +1 -0
- package/dist/model/utils/language-model.js +706 -0
- package/dist/model/utils/language-model.js.map +1 -0
- package/dist/procedure/index.d.ts +20 -0
- package/dist/procedure/index.d.ts.map +1 -0
- package/dist/procedure/index.js +19 -0
- package/dist/procedure/index.js.map +1 -0
- package/dist/reconciler/devtools-bridge.d.ts +40 -0
- package/dist/reconciler/devtools-bridge.d.ts.map +1 -0
- package/dist/reconciler/devtools-bridge.js +79 -0
- package/dist/reconciler/devtools-bridge.js.map +1 -0
- package/dist/reconciler/host-config.d.ts +39 -0
- package/dist/reconciler/host-config.d.ts.map +1 -0
- package/dist/reconciler/host-config.js +195 -0
- package/dist/reconciler/host-config.js.map +1 -0
- package/dist/reconciler/index.d.ts +7 -0
- package/dist/reconciler/index.d.ts.map +1 -0
- package/dist/reconciler/index.js +7 -0
- package/dist/reconciler/index.js.map +1 -0
- package/dist/reconciler/reconciler.d.ts +47 -0
- package/dist/reconciler/reconciler.d.ts.map +1 -0
- package/dist/reconciler/reconciler.js +89 -0
- package/dist/reconciler/reconciler.js.map +1 -0
- package/dist/reconciler/types.d.ts +86 -0
- package/dist/reconciler/types.d.ts.map +1 -0
- package/dist/reconciler/types.js +37 -0
- package/dist/reconciler/types.js.map +1 -0
- package/dist/renderers/base.d.ts +98 -0
- package/dist/renderers/base.d.ts.map +1 -0
- package/dist/renderers/base.js +82 -0
- package/dist/renderers/base.js.map +1 -0
- package/dist/renderers/index.d.ts +31 -0
- package/dist/renderers/index.d.ts.map +1 -0
- package/dist/renderers/index.js +31 -0
- package/dist/renderers/index.js.map +1 -0
- package/dist/renderers/markdown.d.ts +48 -0
- package/dist/renderers/markdown.d.ts.map +1 -0
- package/dist/renderers/markdown.js +432 -0
- package/dist/renderers/markdown.js.map +1 -0
- package/dist/renderers/types.d.ts +7 -0
- package/dist/renderers/types.d.ts.map +1 -0
- package/dist/renderers/types.js +7 -0
- package/dist/renderers/types.js.map +1 -0
- package/dist/renderers/xml.d.ts +49 -0
- package/dist/renderers/xml.d.ts.map +1 -0
- package/dist/renderers/xml.js +444 -0
- package/dist/renderers/xml.js.map +1 -0
- package/dist/state/boundary.d.ts +347 -0
- package/dist/state/boundary.d.ts.map +1 -0
- package/dist/state/boundary.js +341 -0
- package/dist/state/boundary.js.map +1 -0
- package/dist/state/context.d.ts +138 -0
- package/dist/state/context.d.ts.map +1 -0
- package/dist/state/context.js +139 -0
- package/dist/state/context.js.map +1 -0
- package/dist/state/hooks.d.ts +798 -0
- package/dist/state/hooks.d.ts.map +1 -0
- package/dist/state/hooks.js +1437 -0
- package/dist/state/hooks.js.map +1 -0
- package/dist/state/index.d.ts +72 -0
- package/dist/state/index.d.ts.map +1 -0
- package/dist/state/index.js +73 -0
- package/dist/state/index.js.map +1 -0
- package/dist/state/signal.d.ts +223 -0
- package/dist/state/signal.d.ts.map +1 -0
- package/dist/state/signal.js +699 -0
- package/dist/state/signal.js.map +1 -0
- package/dist/state/use-state.d.ts +210 -0
- package/dist/state/use-state.d.ts.map +1 -0
- package/dist/state/use-state.js +327 -0
- package/dist/state/use-state.js.map +1 -0
- package/dist/tentickle-instance.d.ts +285 -0
- package/dist/tentickle-instance.d.ts.map +1 -0
- package/dist/tentickle-instance.js +700 -0
- package/dist/tentickle-instance.js.map +1 -0
- package/dist/testing/act.d.ts +59 -0
- package/dist/testing/act.d.ts.map +1 -0
- package/dist/testing/act.js +92 -0
- package/dist/testing/act.js.map +1 -0
- package/dist/testing/async-helpers.d.ts +99 -0
- package/dist/testing/async-helpers.d.ts.map +1 -0
- package/dist/testing/async-helpers.js +193 -0
- package/dist/testing/async-helpers.js.map +1 -0
- package/dist/testing/compile-agent.d.ts +101 -0
- package/dist/testing/compile-agent.d.ts.map +1 -0
- package/dist/testing/compile-agent.js +136 -0
- package/dist/testing/compile-agent.js.map +1 -0
- package/dist/testing/index.d.ts +57 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +59 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/mock-app.d.ts +163 -0
- package/dist/testing/mock-app.d.ts.map +1 -0
- package/dist/testing/mock-app.js +393 -0
- package/dist/testing/mock-app.js.map +1 -0
- package/dist/testing/mocks.d.ts +142 -0
- package/dist/testing/mocks.d.ts.map +1 -0
- package/dist/testing/mocks.js +191 -0
- package/dist/testing/mocks.js.map +1 -0
- package/dist/testing/render-agent.d.ts +146 -0
- package/dist/testing/render-agent.d.ts.map +1 -0
- package/dist/testing/render-agent.js +200 -0
- package/dist/testing/render-agent.js.map +1 -0
- package/dist/testing/test-adapter.d.ts +157 -0
- package/dist/testing/test-adapter.d.ts.map +1 -0
- package/dist/testing/test-adapter.js +297 -0
- package/dist/testing/test-adapter.js.map +1 -0
- package/dist/testing/test-model.d.ts +132 -0
- package/dist/testing/test-model.d.ts.map +1 -0
- package/dist/testing/test-model.js +260 -0
- package/dist/testing/test-model.js.map +1 -0
- package/dist/tool/index.d.ts +61 -0
- package/dist/tool/index.d.ts.map +1 -0
- package/dist/tool/index.js +63 -0
- package/dist/tool/index.js.map +1 -0
- package/dist/tool/tool-hooks.d.ts +45 -0
- package/dist/tool/tool-hooks.d.ts.map +1 -0
- package/dist/tool/tool-hooks.js +35 -0
- package/dist/tool/tool-hooks.js.map +1 -0
- package/dist/tool/tool.d.ts +403 -0
- package/dist/tool/tool.d.ts.map +1 -0
- package/dist/tool/tool.js +176 -0
- package/dist/tool/tool.js.map +1 -0
- package/dist/types.d.ts +442 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +97 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/abort-utils.d.ts +5 -0
- package/dist/utils/abort-utils.d.ts.map +1 -0
- package/dist/utils/abort-utils.js +50 -0
- package/dist/utils/abort-utils.js.map +1 -0
- package/dist/utils/classify-error.d.ts +19 -0
- package/dist/utils/classify-error.d.ts.map +1 -0
- package/dist/utils/classify-error.js +77 -0
- package/dist/utils/classify-error.js.map +1 -0
- package/dist/utils/index.d.ts +21 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +21 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/normalization.d.ts +6 -0
- package/dist/utils/normalization.d.ts.map +1 -0
- package/dist/utils/normalization.js +103 -0
- package/dist/utils/normalization.js.map +1 -0
- package/dist/utils/registry.d.ts +15 -0
- package/dist/utils/registry.d.ts.map +1 -0
- package/dist/utils/registry.js +28 -0
- package/dist/utils/registry.js.map +1 -0
- package/dist/utils/schema.d.ts +7 -0
- package/dist/utils/schema.d.ts.map +1 -0
- package/dist/utils/schema.js +13 -0
- package/dist/utils/schema.js.map +1 -0
- package/dist/utils/token-estimate.d.ts +87 -0
- package/dist/utils/token-estimate.d.ts.map +1 -0
- package/dist/utils/token-estimate.js +199 -0
- package/dist/utils/token-estimate.js.map +1 -0
- package/dist/v2/reconciler/host-config.d.ts +31 -0
- package/dist/v2/reconciler/host-config.d.ts.map +1 -0
- package/dist/v2/reconciler/host-config.js +197 -0
- package/dist/v2/reconciler/host-config.js.map +1 -0
- package/dist/v2/reconciler/index.d.ts +7 -0
- package/dist/v2/reconciler/index.d.ts.map +1 -0
- package/dist/v2/reconciler/index.js +7 -0
- package/dist/v2/reconciler/index.js.map +1 -0
- package/dist/v2/reconciler/reconciler.d.ts +39 -0
- package/dist/v2/reconciler/reconciler.d.ts.map +1 -0
- package/dist/v2/reconciler/reconciler.js +54 -0
- package/dist/v2/reconciler/reconciler.js.map +1 -0
- package/dist/v2/reconciler/types.d.ts +64 -0
- package/dist/v2/reconciler/types.d.ts.map +1 -0
- package/dist/v2/reconciler/types.js +20 -0
- package/dist/v2/reconciler/types.js.map +1 -0
- package/dist/v2/renderers/index.d.ts +7 -0
- package/dist/v2/renderers/index.d.ts.map +1 -0
- package/dist/v2/renderers/index.js +7 -0
- package/dist/v2/renderers/index.js.map +1 -0
- package/dist/v2/renderers/markdown.d.ts +16 -0
- package/dist/v2/renderers/markdown.d.ts.map +1 -0
- package/dist/v2/renderers/markdown.js +65 -0
- package/dist/v2/renderers/markdown.js.map +1 -0
- package/dist/v2/renderers/types.d.ts +26 -0
- package/dist/v2/renderers/types.d.ts.map +1 -0
- package/dist/v2/renderers/types.js +6 -0
- package/dist/v2/renderers/types.js.map +1 -0
- package/dist/v2/renderers/xml.d.ts +17 -0
- package/dist/v2/renderers/xml.d.ts.map +1 -0
- package/dist/v2/renderers/xml.js +73 -0
- package/dist/v2/renderers/xml.js.map +1 -0
- package/package.json +49 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knobs-component.js","sourceRoot":"","sources":["../../src/hooks/knobs-component.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lifecycle Hooks
|
|
3
|
+
*
|
|
4
|
+
* Event-driven hooks for component and tick lifecycle phases.
|
|
5
|
+
* All callbacks receive data first, ctx (context) last.
|
|
6
|
+
*/
|
|
7
|
+
import type { TickStartCallback, TickEndCallback, AfterCompileCallback, MountCallback, UnmountCallback } from "./types";
|
|
8
|
+
/**
|
|
9
|
+
* Register a callback to run when the component mounts.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* useOnMount((ctx) => {
|
|
14
|
+
* console.log("Component mounted");
|
|
15
|
+
* ctx.setState("initialized", true);
|
|
16
|
+
* });
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export declare function useOnMount(callback: MountCallback): void;
|
|
20
|
+
/**
|
|
21
|
+
* Register a callback to run when the component unmounts.
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```tsx
|
|
25
|
+
* useOnUnmount((ctx) => {
|
|
26
|
+
* console.log("Component unmounting");
|
|
27
|
+
* ctx.setState("initialized", false);
|
|
28
|
+
* });
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export declare function useOnUnmount(callback: UnmountCallback): void;
|
|
32
|
+
/**
|
|
33
|
+
* Register a callback to run at the start of each tick.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```tsx
|
|
37
|
+
* useOnTickStart((tickState) => {
|
|
38
|
+
* console.log(`Tick ${tickState.tick} starting!`);
|
|
39
|
+
* });
|
|
40
|
+
*
|
|
41
|
+
* useOnTickStart((tickState, ctx) => {
|
|
42
|
+
* ctx.setState("lastTickStart", tickState.tick);
|
|
43
|
+
* });
|
|
44
|
+
* ```
|
|
45
|
+
*
|
|
46
|
+
* **Timing:** Fires from tick 2+ (the tick after the component mounts).
|
|
47
|
+
* This follows the React lifecycle model — the component must render
|
|
48
|
+
* before its effects can register callbacks, and `notifyTickStart`
|
|
49
|
+
* fires before compilation.
|
|
50
|
+
*
|
|
51
|
+
* For first-tick setup, use `useOnMount`. For logic that must run
|
|
52
|
+
* on every tick including the first, combine both:
|
|
53
|
+
*
|
|
54
|
+
* ```tsx
|
|
55
|
+
* useOnMount((ctx) => { setupForFirstTick(ctx); });
|
|
56
|
+
* useOnTickStart((tickState, ctx) => { setupForSubsequentTicks(tickState, ctx); });
|
|
57
|
+
* ```
|
|
58
|
+
*/
|
|
59
|
+
export declare function useOnTickStart(callback: TickStartCallback): void;
|
|
60
|
+
/**
|
|
61
|
+
* Register a callback to run at the end of each tick.
|
|
62
|
+
*
|
|
63
|
+
* The callback receives TickResult (primary data) and COM (context).
|
|
64
|
+
* TickResult contains data about the completed tick and control methods
|
|
65
|
+
* to influence whether execution continues.
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```tsx
|
|
69
|
+
* // Simple: inspect results
|
|
70
|
+
* useOnTickEnd((result) => {
|
|
71
|
+
* console.log(`Tick ${result.tick} complete, tokens: ${result.usage?.totalTokens}`);
|
|
72
|
+
* });
|
|
73
|
+
*
|
|
74
|
+
* // Control continuation with boolean return
|
|
75
|
+
* useOnTickEnd((result) => !result.text?.includes("<DONE>"));
|
|
76
|
+
*
|
|
77
|
+
* // Control continuation with methods (includes reasons)
|
|
78
|
+
* useOnTickEnd((result, ctx) => {
|
|
79
|
+
* if (result.text?.includes("<DONE>")) {
|
|
80
|
+
* result.stop("task-complete");
|
|
81
|
+
* } else {
|
|
82
|
+
* result.continue("still-working");
|
|
83
|
+
* }
|
|
84
|
+
* });
|
|
85
|
+
*
|
|
86
|
+
* // Async verification
|
|
87
|
+
* useOnTickEnd(async (result) => {
|
|
88
|
+
* const verified = await checkWithModel(result.text);
|
|
89
|
+
* return !verified; // continue if not verified
|
|
90
|
+
* });
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
export declare function useOnTickEnd(callback: TickEndCallback): void;
|
|
94
|
+
/**
|
|
95
|
+
* Register a callback to run after compilation.
|
|
96
|
+
* This is where you can inspect the compiled output and request recompilation.
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* ```tsx
|
|
100
|
+
* // Inspect compiled output
|
|
101
|
+
* useAfterCompile((compiled) => {
|
|
102
|
+
* console.log(`Compiled ${compiled.tools.length} tools`);
|
|
103
|
+
* });
|
|
104
|
+
*
|
|
105
|
+
* // Request recompilation when needed
|
|
106
|
+
* useAfterCompile((compiled, ctx) => {
|
|
107
|
+
* if (compiled.tools.length === 0) {
|
|
108
|
+
* registerMoreTools();
|
|
109
|
+
* ctx.requestRecompile('adding tools');
|
|
110
|
+
* }
|
|
111
|
+
* });
|
|
112
|
+
* ```
|
|
113
|
+
*/
|
|
114
|
+
export declare function useAfterCompile(callback: AfterCompileCallback): void;
|
|
115
|
+
/**
|
|
116
|
+
* Control whether execution continues after each tick.
|
|
117
|
+
*
|
|
118
|
+
* This is the primary hook for implementing agent loops with custom termination conditions.
|
|
119
|
+
* The callback receives TickResult and optionally COM, and should return whether to continue.
|
|
120
|
+
*
|
|
121
|
+
* The callback can:
|
|
122
|
+
* 1. Return a boolean (true = continue, false = stop)
|
|
123
|
+
* 2. Call result.stop(reason?) or result.continue(reason?) for control with reasons
|
|
124
|
+
* 3. Be async for verification with external services
|
|
125
|
+
*
|
|
126
|
+
* @param shouldContinue - Callback that determines whether to continue execution
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* ```tsx
|
|
130
|
+
* // Simple: continue until done token
|
|
131
|
+
* useContinuation((r) => !r.text?.includes("<DONE>"));
|
|
132
|
+
*
|
|
133
|
+
* // With reasons
|
|
134
|
+
* useContinuation((r) => {
|
|
135
|
+
* if (r.text?.includes("<DONE>")) {
|
|
136
|
+
* r.stop("task-complete");
|
|
137
|
+
* } else if (r.tick >= 10) {
|
|
138
|
+
* r.stop("max-ticks-reached");
|
|
139
|
+
* } else {
|
|
140
|
+
* r.continue("still-working");
|
|
141
|
+
* }
|
|
142
|
+
* });
|
|
143
|
+
*
|
|
144
|
+
* // Async verification
|
|
145
|
+
* useContinuation(async (r) => {
|
|
146
|
+
* const verified = await verifyWithModel(r.text);
|
|
147
|
+
* return verified ? false : true; // stop if verified
|
|
148
|
+
* });
|
|
149
|
+
*
|
|
150
|
+
* // Multiple conditions
|
|
151
|
+
* useContinuation((r) =>
|
|
152
|
+
* r.toolCalls.length > 0 || // pending tools
|
|
153
|
+
* (r.tick < 10 && !r.text?.includes("DONE"))
|
|
154
|
+
* );
|
|
155
|
+
* ```
|
|
156
|
+
*/
|
|
157
|
+
export declare function useContinuation(shouldContinue: TickEndCallback): void;
|
|
158
|
+
//# sourceMappingURL=lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/hooks/lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAUxD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAY5D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAgBhE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAc5D;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI,CAcpE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAgB,eAAe,CAAC,cAAc,EAAE,eAAe,GAAG,IAAI,CAErE"}
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lifecycle Hooks
|
|
3
|
+
*
|
|
4
|
+
* Event-driven hooks for component and tick lifecycle phases.
|
|
5
|
+
* All callbacks receive data first, ctx (context) last.
|
|
6
|
+
*/
|
|
7
|
+
import { useEffect, useRef, useDebugValue } from "react";
|
|
8
|
+
import { useRuntimeStore } from "./runtime-context";
|
|
9
|
+
import { useCom } from "./context";
|
|
10
|
+
/**
|
|
11
|
+
* Register a callback to run when the component mounts.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```tsx
|
|
15
|
+
* useOnMount((ctx) => {
|
|
16
|
+
* console.log("Component mounted");
|
|
17
|
+
* ctx.setState("initialized", true);
|
|
18
|
+
* });
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export function useOnMount(callback) {
|
|
22
|
+
const ctx = useCom();
|
|
23
|
+
const savedCallback = useRef(callback);
|
|
24
|
+
savedCallback.current = callback;
|
|
25
|
+
useDebugValue("onMount registered");
|
|
26
|
+
useEffect(() => {
|
|
27
|
+
savedCallback.current(ctx);
|
|
28
|
+
}, [ctx]);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Register a callback to run when the component unmounts.
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```tsx
|
|
35
|
+
* useOnUnmount((ctx) => {
|
|
36
|
+
* console.log("Component unmounting");
|
|
37
|
+
* ctx.setState("initialized", false);
|
|
38
|
+
* });
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export function useOnUnmount(callback) {
|
|
42
|
+
const ctx = useCom();
|
|
43
|
+
const savedCallback = useRef(callback);
|
|
44
|
+
savedCallback.current = callback;
|
|
45
|
+
useDebugValue("onUnmount registered");
|
|
46
|
+
useEffect(() => {
|
|
47
|
+
return () => {
|
|
48
|
+
savedCallback.current(ctx);
|
|
49
|
+
};
|
|
50
|
+
}, [ctx]);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Register a callback to run at the start of each tick.
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* ```tsx
|
|
57
|
+
* useOnTickStart((tickState) => {
|
|
58
|
+
* console.log(`Tick ${tickState.tick} starting!`);
|
|
59
|
+
* });
|
|
60
|
+
*
|
|
61
|
+
* useOnTickStart((tickState, ctx) => {
|
|
62
|
+
* ctx.setState("lastTickStart", tickState.tick);
|
|
63
|
+
* });
|
|
64
|
+
* ```
|
|
65
|
+
*
|
|
66
|
+
* **Timing:** Fires from tick 2+ (the tick after the component mounts).
|
|
67
|
+
* This follows the React lifecycle model — the component must render
|
|
68
|
+
* before its effects can register callbacks, and `notifyTickStart`
|
|
69
|
+
* fires before compilation.
|
|
70
|
+
*
|
|
71
|
+
* For first-tick setup, use `useOnMount`. For logic that must run
|
|
72
|
+
* on every tick including the first, combine both:
|
|
73
|
+
*
|
|
74
|
+
* ```tsx
|
|
75
|
+
* useOnMount((ctx) => { setupForFirstTick(ctx); });
|
|
76
|
+
* useOnTickStart((tickState, ctx) => { setupForSubsequentTicks(tickState, ctx); });
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
79
|
+
export function useOnTickStart(callback) {
|
|
80
|
+
const store = useRuntimeStore();
|
|
81
|
+
const savedCallback = useRef(callback);
|
|
82
|
+
// Update ref on each render so callback has fresh closure
|
|
83
|
+
savedCallback.current = callback;
|
|
84
|
+
useDebugValue("onTickStart registered");
|
|
85
|
+
useEffect(() => {
|
|
86
|
+
const cb = (tickState, ctx) => savedCallback.current(tickState, ctx);
|
|
87
|
+
store.tickStartCallbacks.add(cb);
|
|
88
|
+
return () => {
|
|
89
|
+
store.tickStartCallbacks.delete(cb);
|
|
90
|
+
};
|
|
91
|
+
}, [store]);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Register a callback to run at the end of each tick.
|
|
95
|
+
*
|
|
96
|
+
* The callback receives TickResult (primary data) and COM (context).
|
|
97
|
+
* TickResult contains data about the completed tick and control methods
|
|
98
|
+
* to influence whether execution continues.
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* ```tsx
|
|
102
|
+
* // Simple: inspect results
|
|
103
|
+
* useOnTickEnd((result) => {
|
|
104
|
+
* console.log(`Tick ${result.tick} complete, tokens: ${result.usage?.totalTokens}`);
|
|
105
|
+
* });
|
|
106
|
+
*
|
|
107
|
+
* // Control continuation with boolean return
|
|
108
|
+
* useOnTickEnd((result) => !result.text?.includes("<DONE>"));
|
|
109
|
+
*
|
|
110
|
+
* // Control continuation with methods (includes reasons)
|
|
111
|
+
* useOnTickEnd((result, ctx) => {
|
|
112
|
+
* if (result.text?.includes("<DONE>")) {
|
|
113
|
+
* result.stop("task-complete");
|
|
114
|
+
* } else {
|
|
115
|
+
* result.continue("still-working");
|
|
116
|
+
* }
|
|
117
|
+
* });
|
|
118
|
+
*
|
|
119
|
+
* // Async verification
|
|
120
|
+
* useOnTickEnd(async (result) => {
|
|
121
|
+
* const verified = await checkWithModel(result.text);
|
|
122
|
+
* return !verified; // continue if not verified
|
|
123
|
+
* });
|
|
124
|
+
* ```
|
|
125
|
+
*/
|
|
126
|
+
export function useOnTickEnd(callback) {
|
|
127
|
+
const store = useRuntimeStore();
|
|
128
|
+
const savedCallback = useRef(callback);
|
|
129
|
+
savedCallback.current = callback;
|
|
130
|
+
useDebugValue("onTickEnd registered");
|
|
131
|
+
useEffect(() => {
|
|
132
|
+
const cb = (result, ctx) => savedCallback.current(result, ctx);
|
|
133
|
+
store.tickEndCallbacks.add(cb);
|
|
134
|
+
return () => {
|
|
135
|
+
store.tickEndCallbacks.delete(cb);
|
|
136
|
+
};
|
|
137
|
+
}, [store]);
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Register a callback to run after compilation.
|
|
141
|
+
* This is where you can inspect the compiled output and request recompilation.
|
|
142
|
+
*
|
|
143
|
+
* @example
|
|
144
|
+
* ```tsx
|
|
145
|
+
* // Inspect compiled output
|
|
146
|
+
* useAfterCompile((compiled) => {
|
|
147
|
+
* console.log(`Compiled ${compiled.tools.length} tools`);
|
|
148
|
+
* });
|
|
149
|
+
*
|
|
150
|
+
* // Request recompilation when needed
|
|
151
|
+
* useAfterCompile((compiled, ctx) => {
|
|
152
|
+
* if (compiled.tools.length === 0) {
|
|
153
|
+
* registerMoreTools();
|
|
154
|
+
* ctx.requestRecompile('adding tools');
|
|
155
|
+
* }
|
|
156
|
+
* });
|
|
157
|
+
* ```
|
|
158
|
+
*/
|
|
159
|
+
export function useAfterCompile(callback) {
|
|
160
|
+
const store = useRuntimeStore();
|
|
161
|
+
const savedCallback = useRef(callback);
|
|
162
|
+
savedCallback.current = callback;
|
|
163
|
+
useDebugValue("onAfterCompile registered");
|
|
164
|
+
useEffect(() => {
|
|
165
|
+
const cb = (compiled, ctx) => savedCallback.current(compiled, ctx);
|
|
166
|
+
store.afterCompileCallbacks.add(cb);
|
|
167
|
+
return () => {
|
|
168
|
+
store.afterCompileCallbacks.delete(cb);
|
|
169
|
+
};
|
|
170
|
+
}, [store]);
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Control whether execution continues after each tick.
|
|
174
|
+
*
|
|
175
|
+
* This is the primary hook for implementing agent loops with custom termination conditions.
|
|
176
|
+
* The callback receives TickResult and optionally COM, and should return whether to continue.
|
|
177
|
+
*
|
|
178
|
+
* The callback can:
|
|
179
|
+
* 1. Return a boolean (true = continue, false = stop)
|
|
180
|
+
* 2. Call result.stop(reason?) or result.continue(reason?) for control with reasons
|
|
181
|
+
* 3. Be async for verification with external services
|
|
182
|
+
*
|
|
183
|
+
* @param shouldContinue - Callback that determines whether to continue execution
|
|
184
|
+
*
|
|
185
|
+
* @example
|
|
186
|
+
* ```tsx
|
|
187
|
+
* // Simple: continue until done token
|
|
188
|
+
* useContinuation((r) => !r.text?.includes("<DONE>"));
|
|
189
|
+
*
|
|
190
|
+
* // With reasons
|
|
191
|
+
* useContinuation((r) => {
|
|
192
|
+
* if (r.text?.includes("<DONE>")) {
|
|
193
|
+
* r.stop("task-complete");
|
|
194
|
+
* } else if (r.tick >= 10) {
|
|
195
|
+
* r.stop("max-ticks-reached");
|
|
196
|
+
* } else {
|
|
197
|
+
* r.continue("still-working");
|
|
198
|
+
* }
|
|
199
|
+
* });
|
|
200
|
+
*
|
|
201
|
+
* // Async verification
|
|
202
|
+
* useContinuation(async (r) => {
|
|
203
|
+
* const verified = await verifyWithModel(r.text);
|
|
204
|
+
* return verified ? false : true; // stop if verified
|
|
205
|
+
* });
|
|
206
|
+
*
|
|
207
|
+
* // Multiple conditions
|
|
208
|
+
* useContinuation((r) =>
|
|
209
|
+
* r.toolCalls.length > 0 || // pending tools
|
|
210
|
+
* (r.tick < 10 && !r.text?.includes("DONE"))
|
|
211
|
+
* );
|
|
212
|
+
* ```
|
|
213
|
+
*/
|
|
214
|
+
export function useContinuation(shouldContinue) {
|
|
215
|
+
useOnTickEnd(shouldContinue);
|
|
216
|
+
}
|
|
217
|
+
//# sourceMappingURL=lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/hooks/lifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* V2 Message Context
|
|
3
|
+
*
|
|
4
|
+
* Provides message handling capabilities to components.
|
|
5
|
+
* This enables components to react to incoming messages and queue outgoing messages.
|
|
6
|
+
*
|
|
7
|
+
* Architecture:
|
|
8
|
+
* - The React tree stays mounted across ticks (persistent)
|
|
9
|
+
* - Components can register message handlers that are called when messages arrive
|
|
10
|
+
* - Components can queue messages for the next tick
|
|
11
|
+
* - The runtime drains the queue when entering a tick
|
|
12
|
+
*/
|
|
13
|
+
import React, { type ReactNode } from "react";
|
|
14
|
+
import type { ExecutionMessage } from "../engine/execution-types";
|
|
15
|
+
import type { COM } from "../com/object-model";
|
|
16
|
+
import type { TickState } from "../component/component";
|
|
17
|
+
/**
|
|
18
|
+
* Message handler signature.
|
|
19
|
+
* @param message - The message that was received
|
|
20
|
+
* @param ctx - The Context Object Model
|
|
21
|
+
* @param state - The current tick state
|
|
22
|
+
*/
|
|
23
|
+
export type MessageHandler = (message: ExecutionMessage, ctx: COM, state: TickState) => void | Promise<void>;
|
|
24
|
+
export interface MessageStore {
|
|
25
|
+
/** Queued messages */
|
|
26
|
+
queue: ExecutionMessage[];
|
|
27
|
+
/** Message handlers - just the handler functions */
|
|
28
|
+
handlers: Set<MessageHandler>;
|
|
29
|
+
/** Last received message */
|
|
30
|
+
lastMessage: ExecutionMessage | null;
|
|
31
|
+
/** Subscribers for state changes */
|
|
32
|
+
subscribers: Set<() => void>;
|
|
33
|
+
/** Current COM reference (set by compiler) */
|
|
34
|
+
ctx: COM | null;
|
|
35
|
+
/** Current TickState reference (set by compiler) */
|
|
36
|
+
tickState: TickState | null;
|
|
37
|
+
}
|
|
38
|
+
export declare function createMessageStore(): MessageStore;
|
|
39
|
+
export interface MessageContextValue {
|
|
40
|
+
/** Queue a message for the next tick */
|
|
41
|
+
queueMessage: (message: ExecutionMessage) => void;
|
|
42
|
+
/** Get all queued messages */
|
|
43
|
+
getQueuedMessages: () => ExecutionMessage[];
|
|
44
|
+
/** Clear the queue and return all messages */
|
|
45
|
+
drainQueue: () => ExecutionMessage[];
|
|
46
|
+
/** Register a message handler */
|
|
47
|
+
addMessageHandler: (handler: MessageHandler) => () => void;
|
|
48
|
+
/** Last received message */
|
|
49
|
+
lastMessage: ExecutionMessage | null;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Provider for message context.
|
|
53
|
+
*/
|
|
54
|
+
export declare function MessageProvider({ store, children, }: {
|
|
55
|
+
store: MessageStore;
|
|
56
|
+
children?: ReactNode;
|
|
57
|
+
}): React.ReactElement;
|
|
58
|
+
/**
|
|
59
|
+
* Get the message context.
|
|
60
|
+
*/
|
|
61
|
+
export declare function useMessageContext(): MessageContextValue;
|
|
62
|
+
/**
|
|
63
|
+
* Register a handler for incoming messages.
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* ```tsx
|
|
67
|
+
* function MyComponent() {
|
|
68
|
+
* useOnMessage((message, ctx, state) => {
|
|
69
|
+
* console.log('Received:', message);
|
|
70
|
+
* });
|
|
71
|
+
* return <System>I respond to messages</System>;
|
|
72
|
+
* }
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
export declare function useOnMessage(handler: MessageHandler): void;
|
|
76
|
+
/**
|
|
77
|
+
* Get the queue of pending messages for this tick.
|
|
78
|
+
*
|
|
79
|
+
* Returns messages queued for this tick from tickState.queuedMessages.
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```tsx
|
|
83
|
+
* function MyComponent() {
|
|
84
|
+
* const queuedMessages = useQueuedMessages();
|
|
85
|
+
*
|
|
86
|
+
* return (
|
|
87
|
+
* <div>
|
|
88
|
+
* {queuedMessages.map((msg, i) => (
|
|
89
|
+
* <span key={i}>{msg.type}</span>
|
|
90
|
+
* ))}
|
|
91
|
+
* </div>
|
|
92
|
+
* );
|
|
93
|
+
* }
|
|
94
|
+
* ```
|
|
95
|
+
*/
|
|
96
|
+
export declare function useQueuedMessages(): ExecutionMessage[];
|
|
97
|
+
/**
|
|
98
|
+
* Get the last received message.
|
|
99
|
+
*/
|
|
100
|
+
export declare function useLastMessage(): ExecutionMessage | null;
|
|
101
|
+
//# sourceMappingURL=message-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-context.d.ts","sourceRoot":"","sources":["../../src/hooks/message-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,EAMZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAUxD;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,CAC3B,OAAO,EAAE,gBAAgB,EACzB,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,SAAS,KACb,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAM1B,MAAM,WAAW,YAAY;IAC3B,sBAAsB;IACtB,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAE1B,oDAAoD;IACpD,QAAQ,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;IAE9B,4BAA4B;IAC5B,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAErC,oCAAoC;IACpC,WAAW,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IAE7B,8CAA8C;IAC9C,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IAEhB,oDAAoD;IACpD,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;CAC7B;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CASjD;AAMD,MAAM,WAAW,mBAAmB;IAClC,wCAAwC;IACxC,YAAY,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAElD,8BAA8B;IAC9B,iBAAiB,EAAE,MAAM,gBAAgB,EAAE,CAAC;IAE5C,8CAA8C;IAC9C,UAAU,EAAE,MAAM,gBAAgB,EAAE,CAAC;IAErC,iCAAiC;IACjC,iBAAiB,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,MAAM,IAAI,CAAC;IAE3D,4BAA4B;IAC5B,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACtC;AAQD;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,GAAG,KAAK,CAAC,YAAY,CAwCrB;AAMD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,mBAAmB,CAMvD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAmB1D;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,IAAI,gBAAgB,EAAE,CAStD;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,gBAAgB,GAAG,IAAI,CAGxD"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* V2 Message Context
|
|
3
|
+
*
|
|
4
|
+
* Provides message handling capabilities to components.
|
|
5
|
+
* This enables components to react to incoming messages and queue outgoing messages.
|
|
6
|
+
*
|
|
7
|
+
* Architecture:
|
|
8
|
+
* - The React tree stays mounted across ticks (persistent)
|
|
9
|
+
* - Components can register message handlers that are called when messages arrive
|
|
10
|
+
* - Components can queue messages for the next tick
|
|
11
|
+
* - The runtime drains the queue when entering a tick
|
|
12
|
+
*/
|
|
13
|
+
import React, { createContext, useContext, useCallback, useRef, useEffect, } from "react";
|
|
14
|
+
import { useTickState } from "./context";
|
|
15
|
+
// Helper for createElement
|
|
16
|
+
const h = React.createElement;
|
|
17
|
+
export function createMessageStore() {
|
|
18
|
+
return {
|
|
19
|
+
queue: [],
|
|
20
|
+
handlers: new Set(),
|
|
21
|
+
lastMessage: null,
|
|
22
|
+
subscribers: new Set(),
|
|
23
|
+
ctx: null,
|
|
24
|
+
tickState: null,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
// ============================================================
|
|
28
|
+
// React Context
|
|
29
|
+
// ============================================================
|
|
30
|
+
const MessageContext = createContext(null);
|
|
31
|
+
/**
|
|
32
|
+
* Provider for message context.
|
|
33
|
+
*/
|
|
34
|
+
export function MessageProvider({ store, children, }) {
|
|
35
|
+
// Stable reference to store operations
|
|
36
|
+
const queueMessage = useCallback((message) => {
|
|
37
|
+
store.queue.push(message);
|
|
38
|
+
// Notify subscribers
|
|
39
|
+
for (const sub of store.subscribers) {
|
|
40
|
+
sub();
|
|
41
|
+
}
|
|
42
|
+
}, [store]);
|
|
43
|
+
const getQueuedMessages = useCallback(() => [...store.queue], [store]);
|
|
44
|
+
const drainQueue = useCallback(() => {
|
|
45
|
+
const messages = store.queue;
|
|
46
|
+
store.queue = [];
|
|
47
|
+
return messages;
|
|
48
|
+
}, [store]);
|
|
49
|
+
const addMessageHandler = useCallback((handler) => {
|
|
50
|
+
store.handlers.add(handler);
|
|
51
|
+
return () => {
|
|
52
|
+
store.handlers.delete(handler);
|
|
53
|
+
};
|
|
54
|
+
}, [store]);
|
|
55
|
+
const value = {
|
|
56
|
+
queueMessage,
|
|
57
|
+
getQueuedMessages,
|
|
58
|
+
drainQueue,
|
|
59
|
+
addMessageHandler,
|
|
60
|
+
lastMessage: store.lastMessage,
|
|
61
|
+
};
|
|
62
|
+
return h(MessageContext.Provider, { value }, children);
|
|
63
|
+
}
|
|
64
|
+
// ============================================================
|
|
65
|
+
// Hooks
|
|
66
|
+
// ============================================================
|
|
67
|
+
/**
|
|
68
|
+
* Get the message context.
|
|
69
|
+
*/
|
|
70
|
+
export function useMessageContext() {
|
|
71
|
+
const ctx = useContext(MessageContext);
|
|
72
|
+
if (!ctx) {
|
|
73
|
+
throw new Error("useMessageContext must be used within a MessageProvider");
|
|
74
|
+
}
|
|
75
|
+
return ctx;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Register a handler for incoming messages.
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```tsx
|
|
82
|
+
* function MyComponent() {
|
|
83
|
+
* useOnMessage((message, ctx, state) => {
|
|
84
|
+
* console.log('Received:', message);
|
|
85
|
+
* });
|
|
86
|
+
* return <System>I respond to messages</System>;
|
|
87
|
+
* }
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
export function useOnMessage(handler) {
|
|
91
|
+
const ctx = useContext(MessageContext);
|
|
92
|
+
const handlerRef = useRef(handler);
|
|
93
|
+
handlerRef.current = handler;
|
|
94
|
+
useEffect(() => {
|
|
95
|
+
if (!ctx)
|
|
96
|
+
return;
|
|
97
|
+
// Create a stable wrapper that always calls the latest handler
|
|
98
|
+
const wrappedHandler = (message, ctx, state) => {
|
|
99
|
+
return handlerRef.current(message, ctx, state);
|
|
100
|
+
};
|
|
101
|
+
const cleanup = ctx.addMessageHandler(wrappedHandler);
|
|
102
|
+
return () => {
|
|
103
|
+
cleanup();
|
|
104
|
+
};
|
|
105
|
+
}, [ctx]);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Get the queue of pending messages for this tick.
|
|
109
|
+
*
|
|
110
|
+
* Returns messages queued for this tick from tickState.queuedMessages.
|
|
111
|
+
*
|
|
112
|
+
* @example
|
|
113
|
+
* ```tsx
|
|
114
|
+
* function MyComponent() {
|
|
115
|
+
* const queuedMessages = useQueuedMessages();
|
|
116
|
+
*
|
|
117
|
+
* return (
|
|
118
|
+
* <div>
|
|
119
|
+
* {queuedMessages.map((msg, i) => (
|
|
120
|
+
* <span key={i}>{msg.type}</span>
|
|
121
|
+
* ))}
|
|
122
|
+
* </div>
|
|
123
|
+
* );
|
|
124
|
+
* }
|
|
125
|
+
* ```
|
|
126
|
+
*/
|
|
127
|
+
export function useQueuedMessages() {
|
|
128
|
+
try {
|
|
129
|
+
const tickState = useTickState();
|
|
130
|
+
return (tickState?.queuedMessages ?? []);
|
|
131
|
+
}
|
|
132
|
+
catch {
|
|
133
|
+
// Fallback to message context queue if outside AgentickProvider
|
|
134
|
+
const ctx = useContext(MessageContext);
|
|
135
|
+
return ctx?.getQueuedMessages() ?? [];
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Get the last received message.
|
|
140
|
+
*/
|
|
141
|
+
export function useLastMessage() {
|
|
142
|
+
const ctx = useContext(MessageContext);
|
|
143
|
+
return ctx?.lastMessage ?? null;
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=message-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-context.js","sourceRoot":"","sources":["../../src/hooks/message-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy-context.d.ts","sourceRoot":"","sources":["../../src/hooks/policy-context.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AASzE,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;IACtD,SAAS,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;CAC3B;AAMD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,EACzC,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,GACpD,gBAAgB,CAAC,CAAC,CAAC,CAqBrB"}
|