@crewx/sdk 0.8.0-rc.72 → 0.8.0-rc.74
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/README.md +380 -818
- package/dist/adapter/context-builder.d.ts +35 -0
- package/dist/adapter/context-builder.js +87 -0
- package/dist/adapter/index.d.ts +5 -0
- package/dist/{core/remote → adapter}/index.js +3 -2
- package/dist/adapter/plugin-helper.d.ts +19 -0
- package/dist/adapter/plugin-helper.js +45 -0
- package/dist/adapter/scoped-store.d.ts +12 -0
- package/dist/adapter/scoped-store.js +43 -0
- package/dist/adapter/types.d.ts +264 -0
- package/dist/adapter/types.js +23 -0
- package/dist/agent/resolver.d.ts +18 -0
- package/dist/agent/resolver.js +46 -0
- package/dist/boxing/box-storage.interface.d.ts +12 -0
- package/dist/boxing/box-storage.interface.js +3 -0
- package/dist/boxing/box.service.d.ts +4 -0
- package/dist/boxing/box.service.js +5 -1
- package/dist/boxing/box.types.d.ts +4 -0
- package/dist/boxing/box.types.js +3 -0
- package/dist/boxing/context-builder.d.ts +6 -7
- package/dist/boxing/context-builder.js +3 -0
- package/dist/client/CrewxClient.d.ts +65 -0
- package/dist/client/CrewxClient.js +86 -0
- package/dist/client/index.d.ts +3 -0
- package/dist/client/index.js +6 -0
- package/dist/config/loader.browser.d.ts +14 -0
- package/dist/config/loader.browser.js +59 -0
- package/dist/config/loader.d.ts +19 -0
- package/dist/config/loader.js +95 -0
- package/dist/conversation/index.d.ts +5 -3
- package/dist/conversation/index.js +8 -3
- package/dist/conversation/sqlite-provider.d.ts +21 -0
- package/dist/conversation/sqlite-provider.js +178 -0
- package/dist/conversation/to-task-reader.d.ts +14 -0
- package/dist/conversation/to-task-reader.js +28 -0
- package/dist/conversation/to-template-messages.d.ts +15 -0
- package/dist/conversation/to-template-messages.js +34 -0
- package/dist/conversation/types.d.ts +101 -0
- package/dist/conversation/types.js +10 -0
- package/dist/esm/agent/resolver.js +41 -0
- package/dist/esm/boxing/box-storage.interface.js +5 -0
- package/dist/esm/boxing/box.service.js +69 -0
- package/dist/esm/boxing/box.types.js +5 -0
- package/dist/esm/boxing/context-builder.js +76 -0
- package/dist/esm/client/CrewxClient.js +82 -0
- package/dist/esm/client/index.js +2 -0
- package/dist/esm/config/loader.browser.js +54 -0
- package/dist/esm/config/loader.js +77 -0
- package/dist/esm/events/TypedEventEmitter.js +61 -0
- package/dist/esm/events/types.js +8 -0
- package/dist/esm/facade/Crewx.browser.js +310 -0
- package/dist/esm/facade/Crewx.js +941 -0
- package/dist/esm/hooks/define.js +10 -0
- package/dist/esm/hooks/dispatch.js +76 -0
- package/dist/esm/hooks/index.js +6 -0
- package/dist/esm/hooks/observer.js +56 -0
- package/dist/esm/hooks/plugin.js +12 -0
- package/dist/esm/hooks/types.js +9 -0
- package/dist/esm/index.browser.js +15 -0
- package/dist/esm/index.js +60 -0
- package/dist/esm/layout/loader.js +268 -0
- package/dist/esm/layout/props-validator.js +297 -0
- package/dist/esm/layout/renderer.js +180 -0
- package/dist/esm/layout/types.js +31 -0
- package/dist/esm/parallel/agent-runtime.js +21 -0
- package/dist/esm/parallel/helpers.js +214 -0
- package/dist/esm/parallel/index.js +5 -0
- package/dist/esm/parallel/parallel-runner.js +221 -0
- package/dist/esm/parallel/types.js +5 -0
- package/dist/esm/parsers/agent-call.util.js +15 -0
- package/dist/esm/parsers/claude.parser.js +64 -0
- package/dist/esm/parsers/codex.parser.js +97 -0
- package/dist/esm/parsers/copilot.parser.js +63 -0
- package/dist/esm/parsers/gemini.parser.js +43 -0
- package/dist/esm/parsers/opencode.parser.js +73 -0
- package/dist/esm/parsers/router.js +53 -0
- package/dist/esm/platform/BrowserFsAdapter.js +80 -0
- package/dist/esm/platform/IFsAdapter.js +2 -0
- package/dist/esm/platform/NodeFsAdapter.js +34 -0
- package/dist/esm/plugin/plugin-provider.js +202 -0
- package/dist/esm/plugin/types.js +8 -0
- package/dist/esm/plugin.js +25 -0
- package/dist/esm/provider/bridge.browser.js +43 -0
- package/dist/esm/provider/bridge.js +373 -0
- package/dist/esm/provider/parse-usage.js +80 -0
- package/dist/esm/provider/register-api.js +21 -0
- package/dist/esm/provider/vercel-runtime.js +310 -0
- package/dist/esm/remote/index.js +10 -0
- package/dist/esm/remote/remote-agent-manager.js +194 -0
- package/dist/esm/remote/remote-provider.js +98 -0
- package/dist/esm/remote/remote-transport.js +79 -0
- package/dist/esm/remote/types.js +8 -0
- package/dist/esm/server/auth.js +31 -0
- package/dist/esm/server/handler.js +72 -0
- package/dist/esm/server/index.js +5 -0
- package/dist/esm/server/tool-adapter.js +92 -0
- package/dist/esm/template/engine.js +100 -0
- package/dist/esm/template/helpers/exec.browser.js +31 -0
- package/dist/esm/template/helpers/exec.js +220 -0
- package/dist/esm/template/helpers/fenced_code.js +17 -0
- package/dist/esm/template/helpers/include.js +20 -0
- package/dist/esm/template/helpers/p1p2.js +83 -0
- package/dist/esm/template/loader/DocumentLoader.js +124 -0
- package/dist/esm/template/types.js +5 -0
- package/dist/esm/tools/delegate.js +57 -0
- package/dist/esm/tools/index.js +5 -0
- package/dist/esm/tools/node/builtin.js +541 -0
- package/dist/esm/tools/node/index.js +54 -0
- package/dist/esm/types/index.js +27 -0
- package/dist/esm/types/task-log.types.js +5 -0
- package/dist/esm/utils/env-defaults.js +23 -0
- package/dist/esm/utils/glob-match.js +38 -0
- package/dist/esm/utils/id.js +46 -0
- package/dist/esm/utils/workspace.js +21 -0
- package/dist/events/TypedEventEmitter.d.ts +31 -0
- package/dist/events/TypedEventEmitter.js +65 -0
- package/dist/events/types.d.ts +139 -0
- package/dist/events/types.js +9 -0
- package/dist/facade/Crewx.browser.d.ts +73 -0
- package/dist/facade/Crewx.browser.js +314 -0
- package/dist/facade/Crewx.d.ts +267 -0
- package/dist/facade/Crewx.js +1299 -0
- package/dist/hooks/define.d.ts +10 -0
- package/dist/hooks/define.js +13 -0
- package/dist/hooks/dispatch.d.ts +61 -0
- package/dist/hooks/dispatch.js +147 -0
- package/dist/hooks/index.d.ts +13 -0
- package/dist/hooks/index.js +24 -0
- package/dist/hooks/observer.d.ts +20 -0
- package/dist/hooks/observer.js +60 -0
- package/dist/hooks/plugin.d.ts +19 -0
- package/dist/hooks/plugin.js +17 -0
- package/dist/hooks/tool-normalize.d.ts +29 -0
- package/dist/hooks/tool-normalize.js +110 -0
- package/dist/hooks/types.d.ts +79 -0
- package/dist/hooks/types.js +12 -0
- package/dist/hooks/yaml-plugin.d.ts +29 -0
- package/dist/hooks/yaml-plugin.js +356 -0
- package/dist/index.browser.d.ts +15 -0
- package/dist/index.browser.js +25 -0
- package/dist/index.d.ts +70 -58
- package/dist/index.js +144 -133
- package/dist/{services/layout-loader.service.d.ts → layout/loader.d.ts} +24 -4
- package/dist/{services/layout-loader.service.js → layout/loader.js} +103 -73
- package/dist/{services/props-validator.service.d.ts → layout/props-validator.d.ts} +7 -1
- package/dist/{services/props-validator.service.js → layout/props-validator.js} +28 -59
- package/dist/{services/layout-renderer.service.d.ts → layout/renderer.d.ts} +28 -14
- package/dist/layout/renderer.js +193 -0
- package/dist/{types/layout.types.d.ts → layout/types.d.ts} +47 -1
- package/dist/{types/layout.types.js → layout/types.js} +15 -1
- package/dist/parallel/agent-runtime.d.ts +31 -0
- package/dist/parallel/agent-runtime.js +25 -0
- package/dist/{core/parallel → parallel}/helpers.d.ts +2 -1
- package/dist/{core/parallel → parallel}/helpers.js +55 -88
- package/dist/parallel/index.d.ts +8 -0
- package/dist/{core/parallel → parallel}/index.js +5 -3
- package/dist/{core/parallel → parallel}/parallel-runner.d.ts +8 -1
- package/dist/{core/parallel → parallel}/parallel-runner.js +53 -57
- package/dist/parallel/types.d.ts +65 -0
- package/dist/parallel/types.js +6 -0
- package/dist/parsers/agent-call.util.d.ts +3 -0
- package/dist/parsers/agent-call.util.js +2 -0
- package/dist/parsers/api.parser.d.ts +10 -0
- package/dist/parsers/api.parser.js +26 -0
- package/dist/parsers/claude.parser.d.ts +8 -0
- package/dist/parsers/claude.parser.js +22 -1
- package/dist/parsers/codex.parser.d.ts +8 -0
- package/dist/parsers/codex.parser.js +11 -0
- package/dist/parsers/copilot.parser.d.ts +9 -0
- package/dist/parsers/copilot.parser.js +8 -0
- package/dist/parsers/gemini.parser.d.ts +10 -0
- package/dist/parsers/gemini.parser.js +10 -0
- package/dist/parsers/opencode.parser.d.ts +12 -0
- package/dist/parsers/opencode.parser.js +76 -0
- package/dist/parsers/router.d.ts +7 -0
- package/dist/parsers/router.js +56 -0
- package/dist/platform/BrowserFsAdapter.d.ts +37 -0
- package/dist/platform/BrowserFsAdapter.js +84 -0
- package/dist/platform/IFsAdapter.d.ts +29 -0
- package/dist/{core/remote/types.js → platform/IFsAdapter.js} +1 -1
- package/dist/platform/NodeFsAdapter.d.ts +16 -0
- package/dist/platform/NodeFsAdapter.js +38 -0
- package/dist/plugin/plugin-provider.d.ts +33 -0
- package/dist/plugin/plugin-provider.js +207 -0
- package/dist/plugin/types.d.ts +53 -0
- package/dist/plugin/types.js +9 -0
- package/dist/plugin.d.ts +33 -0
- package/dist/plugin.js +29 -0
- package/dist/plugins/conversation.d.ts +18 -0
- package/dist/plugins/conversation.js +59 -0
- package/dist/plugins/file-logger.d.ts +29 -0
- package/dist/plugins/file-logger.js +87 -0
- package/dist/plugins/index.d.ts +16 -0
- package/dist/plugins/index.js +19 -0
- package/dist/plugins/sqlite-tracing.d.ts +29 -0
- package/dist/plugins/sqlite-tracing.js +112 -0
- package/dist/provider/bridge.browser.d.ts +49 -0
- package/dist/provider/bridge.browser.js +49 -0
- package/dist/provider/bridge.d.ts +106 -0
- package/dist/provider/bridge.js +380 -0
- package/dist/provider/mastra-runtime.d.ts +45 -0
- package/dist/provider/mastra-runtime.js +208 -0
- package/dist/provider/parse-usage.d.ts +20 -0
- package/dist/provider/parse-usage.js +83 -0
- package/dist/provider/register-api.d.ts +14 -0
- package/dist/provider/register-api.js +24 -0
- package/dist/provider/vercel-runtime.d.ts +54 -0
- package/dist/provider/vercel-runtime.js +347 -0
- package/dist/remote/index.d.ts +13 -0
- package/dist/remote/index.js +32 -0
- package/dist/remote/remote-agent-manager.d.ts +54 -0
- package/dist/{core/remote → remote}/remote-agent-manager.js +100 -97
- package/dist/remote/remote-provider.d.ts +47 -0
- package/dist/remote/remote-provider.js +141 -0
- package/dist/remote/remote-transport.d.ts +32 -0
- package/dist/remote/remote-transport.js +83 -0
- package/dist/remote/types.d.ts +147 -0
- package/dist/remote/types.js +9 -0
- package/dist/server/auth.d.ts +21 -0
- package/dist/server/auth.js +35 -0
- package/dist/server/handler.d.ts +24 -0
- package/dist/server/handler.js +75 -0
- package/dist/server/index.d.ts +7 -0
- package/dist/server/index.js +9 -0
- package/dist/server/tool-adapter.d.ts +19 -0
- package/dist/server/tool-adapter.js +95 -0
- package/dist/template/engine.d.ts +28 -0
- package/dist/template/engine.js +137 -0
- package/dist/template/helpers/exec.browser.d.ts +22 -0
- package/dist/template/helpers/exec.browser.js +41 -0
- package/dist/template/helpers/exec.d.ts +60 -0
- package/dist/template/helpers/exec.js +230 -0
- package/dist/template/helpers/fenced_code.d.ts +22 -0
- package/dist/template/helpers/fenced_code.js +20 -0
- package/dist/template/helpers/format-conversation.d.ts +30 -0
- package/dist/template/helpers/format-conversation.js +53 -0
- package/dist/template/helpers/include.d.ts +16 -0
- package/dist/template/helpers/include.js +23 -0
- package/dist/template/helpers/p1p2.d.ts +37 -0
- package/dist/template/helpers/p1p2.js +90 -0
- package/dist/template/loader/DocumentLoader.d.ts +48 -0
- package/dist/template/loader/DocumentLoader.js +128 -0
- package/dist/template/types.d.ts +51 -0
- package/dist/template/types.js +6 -0
- package/dist/testing/index.d.ts +12 -0
- package/dist/testing/index.js +16 -0
- package/dist/testing/mock-audit.d.ts +10 -0
- package/dist/testing/mock-audit.js +13 -0
- package/dist/testing/mock-context.d.ts +27 -0
- package/dist/testing/mock-context.js +68 -0
- package/dist/testing/mock-logger.d.ts +15 -0
- package/dist/testing/mock-logger.js +27 -0
- package/dist/testing/mock-router.d.ts +16 -0
- package/dist/testing/mock-router.js +67 -0
- package/dist/testing/mock-storage.d.ts +9 -0
- package/dist/testing/mock-storage.js +21 -0
- package/dist/testing/mock-store.d.ts +3 -0
- package/dist/testing/mock-store.js +8 -0
- package/dist/tools/delegate.d.ts +10 -0
- package/dist/tools/delegate.js +60 -0
- package/dist/tools/index.d.ts +5 -12
- package/dist/tools/index.js +6 -37
- package/dist/tools/node/builtin.d.ts +23 -0
- package/dist/tools/node/builtin.js +547 -0
- package/dist/tools/node/index.d.ts +23 -0
- package/dist/tools/node/index.js +59 -0
- package/dist/types/index.d.ts +804 -6
- package/dist/types/index.js +29 -20
- package/dist/types/task-log.types.d.ts +4 -0
- package/dist/types/task-log.types.js +3 -0
- package/dist/utils/env-defaults.d.ts +18 -0
- package/dist/utils/env-defaults.js +27 -0
- package/dist/utils/glob-match.d.ts +18 -0
- package/dist/utils/glob-match.js +42 -0
- package/dist/{core → utils}/id.d.ts +15 -0
- package/dist/utils/id.js +50 -0
- package/dist/utils/timestamp.d.ts +2 -0
- package/dist/utils/timestamp.js +13 -0
- package/dist/{core → utils}/workspace.d.ts +4 -0
- package/dist/{core → utils}/workspace.js +3 -0
- package/package.json +67 -102
- package/src/schemas/hooks.schema.json +59 -0
- package/templates/agents/default.yaml +490 -0
- package/templates/agents/minimal.yaml +16 -0
- package/LICENSE +0 -201
- package/dist/adapters/MastraToolAdapter.d.ts +0 -9
- package/dist/adapters/MastraToolAdapter.js +0 -66
- package/dist/adapters/MastraToolAdapter.js.map +0 -1
- package/dist/api/index.d.ts +0 -2
- package/dist/api/index.js +0 -8
- package/dist/api/index.js.map +0 -1
- package/dist/boxing/box-storage.interface.js.map +0 -1
- package/dist/boxing/box.service.js.map +0 -1
- package/dist/boxing/box.types.js.map +0 -1
- package/dist/boxing/context-builder.js.map +0 -1
- package/dist/boxing/index.d.ts +0 -6
- package/dist/boxing/index.js +0 -11
- package/dist/boxing/index.js.map +0 -1
- package/dist/boxing/tokenizer.d.ts +0 -3
- package/dist/boxing/tokenizer.js +0 -11
- package/dist/boxing/tokenizer.js.map +0 -1
- package/dist/config/api-provider-parser.d.ts +0 -58
- package/dist/config/api-provider-parser.js +0 -212
- package/dist/config/api-provider-parser.js.map +0 -1
- package/dist/config/index.d.ts +0 -3
- package/dist/config/index.js +0 -20
- package/dist/config/index.js.map +0 -1
- package/dist/config/log.config.d.ts +0 -7
- package/dist/config/log.config.js +0 -20
- package/dist/config/log.config.js.map +0 -1
- package/dist/config/pricing.d.ts +0 -11
- package/dist/config/pricing.js +0 -53
- package/dist/config/pricing.js.map +0 -1
- package/dist/config/timeout.config.d.ts +0 -14
- package/dist/config/timeout.config.js +0 -34
- package/dist/config/timeout.config.js.map +0 -1
- package/dist/config/yaml-loader.d.ts +0 -8
- package/dist/config/yaml-loader.js +0 -155
- package/dist/config/yaml-loader.js.map +0 -1
- package/dist/constants/index.d.ts +0 -4
- package/dist/constants/index.js +0 -8
- package/dist/constants/index.js.map +0 -1
- package/dist/constants.d.ts +0 -1
- package/dist/constants.js +0 -18
- package/dist/constants.js.map +0 -1
- package/dist/conversation/conversation-config.d.ts +0 -9
- package/dist/conversation/conversation-config.js +0 -22
- package/dist/conversation/conversation-config.js.map +0 -1
- package/dist/conversation/conversation-history.interface.d.ts +0 -36
- package/dist/conversation/conversation-history.interface.js +0 -3
- package/dist/conversation/conversation-history.interface.js.map +0 -1
- package/dist/conversation/conversation-storage.service.d.ts +0 -16
- package/dist/conversation/conversation-storage.service.js +0 -213
- package/dist/conversation/conversation-storage.service.js.map +0 -1
- package/dist/conversation/index.js.map +0 -1
- package/dist/core/__tests__/id.test.d.ts +0 -1
- package/dist/core/__tests__/id.test.js +0 -115
- package/dist/core/__tests__/id.test.js.map +0 -1
- package/dist/core/agent/agent-factory.d.ts +0 -37
- package/dist/core/agent/agent-factory.js +0 -68
- package/dist/core/agent/agent-factory.js.map +0 -1
- package/dist/core/agent/agent-runtime.d.ts +0 -52
- package/dist/core/agent/agent-runtime.js +0 -206
- package/dist/core/agent/agent-runtime.js.map +0 -1
- package/dist/core/agent/event-bus.d.ts +0 -44
- package/dist/core/agent/event-bus.js +0 -43
- package/dist/core/agent/event-bus.js.map +0 -1
- package/dist/core/agent/index.d.ts +0 -3
- package/dist/core/agent/index.js +0 -13
- package/dist/core/agent/index.js.map +0 -1
- package/dist/core/env-defaults.d.ts +0 -1
- package/dist/core/env-defaults.js +0 -7
- package/dist/core/env-defaults.js.map +0 -1
- package/dist/core/id.js +0 -27
- package/dist/core/id.js.map +0 -1
- package/dist/core/parallel/helpers.js.map +0 -1
- package/dist/core/parallel/index.d.ts +0 -4
- package/dist/core/parallel/index.js.map +0 -1
- package/dist/core/parallel/parallel-runner.js.map +0 -1
- package/dist/core/parallel/types.d.ts +0 -41
- package/dist/core/parallel/types.js +0 -3
- package/dist/core/parallel/types.js.map +0 -1
- package/dist/core/providers/MastraAPIProvider.d.ts +0 -31
- package/dist/core/providers/MastraAPIProvider.js +0 -365
- package/dist/core/providers/MastraAPIProvider.js.map +0 -1
- package/dist/core/providers/ai-provider.interface.d.ts +0 -79
- package/dist/core/providers/ai-provider.interface.js +0 -23
- package/dist/core/providers/ai-provider.interface.js.map +0 -1
- package/dist/core/providers/base-ai.provider.d.ts +0 -84
- package/dist/core/providers/base-ai.provider.js +0 -1237
- package/dist/core/providers/base-ai.provider.js.map +0 -1
- package/dist/core/providers/base-ai.types.d.ts +0 -26
- package/dist/core/providers/base-ai.types.js +0 -3
- package/dist/core/providers/base-ai.types.js.map +0 -1
- package/dist/core/providers/claude.provider.d.ts +0 -19
- package/dist/core/providers/claude.provider.js +0 -170
- package/dist/core/providers/claude.provider.js.map +0 -1
- package/dist/core/providers/codex.provider.d.ts +0 -21
- package/dist/core/providers/codex.provider.js +0 -134
- package/dist/core/providers/codex.provider.js.map +0 -1
- package/dist/core/providers/copilot.provider.d.ts +0 -25
- package/dist/core/providers/copilot.provider.js +0 -146
- package/dist/core/providers/copilot.provider.js.map +0 -1
- package/dist/core/providers/dynamic-provider.factory.d.ts +0 -74
- package/dist/core/providers/dynamic-provider.factory.js +0 -645
- package/dist/core/providers/dynamic-provider.factory.js.map +0 -1
- package/dist/core/providers/gemini.provider.d.ts +0 -16
- package/dist/core/providers/gemini.provider.js +0 -101
- package/dist/core/providers/gemini.provider.js.map +0 -1
- package/dist/core/providers/index.d.ts +0 -8
- package/dist/core/providers/index.js +0 -20
- package/dist/core/providers/index.js.map +0 -1
- package/dist/core/providers/mock.provider.d.ts +0 -13
- package/dist/core/providers/mock.provider.js +0 -55
- package/dist/core/providers/mock.provider.js.map +0 -1
- package/dist/core/providers/provider-factory.d.ts +0 -3
- package/dist/core/providers/provider-factory.js +0 -65
- package/dist/core/providers/provider-factory.js.map +0 -1
- package/dist/core/providers/tool-call.types.d.ts +0 -39
- package/dist/core/providers/tool-call.types.js +0 -3
- package/dist/core/providers/tool-call.types.js.map +0 -1
- package/dist/core/remote/index.d.ts +0 -3
- package/dist/core/remote/index.js.map +0 -1
- package/dist/core/remote/remote-agent-manager.d.ts +0 -24
- package/dist/core/remote/remote-agent-manager.js.map +0 -1
- package/dist/core/remote/remote-transport.d.ts +0 -15
- package/dist/core/remote/remote-transport.js +0 -70
- package/dist/core/remote/remote-transport.js.map +0 -1
- package/dist/core/remote/types.d.ts +0 -79
- package/dist/core/remote/types.js.map +0 -1
- package/dist/core/workspace.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/internal/index.d.ts +0 -1
- package/dist/internal/index.js +0 -6
- package/dist/internal/index.js.map +0 -1
- package/dist/knowledge/DocumentManager.d.ts +0 -4
- package/dist/knowledge/DocumentManager.js +0 -119
- package/dist/knowledge/DocumentManager.js.map +0 -1
- package/dist/knowledge/index.d.ts +0 -1
- package/dist/knowledge/index.js +0 -18
- package/dist/knowledge/index.js.map +0 -1
- package/dist/parsers/agent-call.util.js.map +0 -1
- package/dist/parsers/claude.parser.js.map +0 -1
- package/dist/parsers/codex.parser.js.map +0 -1
- package/dist/parsers/copilot.parser.js.map +0 -1
- package/dist/parsers/gemini.parser.js.map +0 -1
- package/dist/parsers/index.d.ts +0 -7
- package/dist/parsers/index.js +0 -45
- package/dist/parsers/index.js.map +0 -1
- package/dist/schema/skills-parser.d.ts +0 -8
- package/dist/schema/skills-parser.js +0 -438
- package/dist/schema/skills-parser.js.map +0 -1
- package/dist/schema/skills.types.d.ts +0 -158
- package/dist/schema/skills.types.js +0 -41
- package/dist/schema/skills.types.js.map +0 -1
- package/dist/schemas/api-provider.schema.d.ts +0 -432
- package/dist/schemas/api-provider.schema.js +0 -50
- package/dist/schemas/api-provider.schema.js.map +0 -1
- package/dist/services/index.d.ts +0 -2
- package/dist/services/index.js +0 -19
- package/dist/services/index.js.map +0 -1
- package/dist/services/layout-loader.service.js.map +0 -1
- package/dist/services/layout-renderer.service.js +0 -325
- package/dist/services/layout-renderer.service.js.map +0 -1
- package/dist/services/props-validator.service.js.map +0 -1
- package/dist/skills/adapter/claude-skill-adapter.d.ts +0 -11
- package/dist/skills/adapter/claude-skill-adapter.js +0 -222
- package/dist/skills/adapter/claude-skill-adapter.js.map +0 -1
- package/dist/skills/index.d.ts +0 -6
- package/dist/skills/index.js +0 -31
- package/dist/skills/index.js.map +0 -1
- package/dist/skills/runtime/progressive-loader.d.ts +0 -27
- package/dist/skills/runtime/progressive-loader.js +0 -186
- package/dist/skills/runtime/progressive-loader.js.map +0 -1
- package/dist/skills/runtime/runtime-requirements-validator.d.ts +0 -23
- package/dist/skills/runtime/runtime-requirements-validator.js +0 -248
- package/dist/skills/runtime/runtime-requirements-validator.js.map +0 -1
- package/dist/skills/runtime/skill-runtime.service.d.ts +0 -42
- package/dist/skills/runtime/skill-runtime.service.js +0 -434
- package/dist/skills/runtime/skill-runtime.service.js.map +0 -1
- package/dist/tools/file-system.service.d.ts +0 -10
- package/dist/tools/file-system.service.js +0 -33
- package/dist/tools/file-system.service.js.map +0 -1
- package/dist/tools/find.tool.d.ts +0 -21
- package/dist/tools/find.tool.js +0 -139
- package/dist/tools/find.tool.js.map +0 -1
- package/dist/tools/glob.tool.d.ts +0 -24
- package/dist/tools/glob.tool.js +0 -153
- package/dist/tools/glob.tool.js.map +0 -1
- package/dist/tools/grep.tool.d.ts +0 -1
- package/dist/tools/grep.tool.js +0 -137
- package/dist/tools/grep.tool.js.map +0 -1
- package/dist/tools/index.js.map +0 -1
- package/dist/tools/ls.tool.d.ts +0 -1
- package/dist/tools/ls.tool.js +0 -94
- package/dist/tools/ls.tool.js.map +0 -1
- package/dist/tools/read-file.tool.d.ts +0 -1
- package/dist/tools/read-file.tool.js +0 -69
- package/dist/tools/read-file.tool.js.map +0 -1
- package/dist/tools/replace.tool.d.ts +0 -1
- package/dist/tools/replace.tool.js +0 -68
- package/dist/tools/replace.tool.js.map +0 -1
- package/dist/tools/run-shell-command.tool.d.ts +0 -1
- package/dist/tools/run-shell-command.tool.js +0 -64
- package/dist/tools/run-shell-command.tool.js.map +0 -1
- package/dist/tools/tree.tool.d.ts +0 -1
- package/dist/tools/tree.tool.js +0 -109
- package/dist/tools/tree.tool.js.map +0 -1
- package/dist/tools/types.d.ts +0 -42
- package/dist/tools/types.js +0 -13
- package/dist/tools/types.js.map +0 -1
- package/dist/tools/utils/file-utils.d.ts +0 -5
- package/dist/tools/utils/file-utils.js +0 -221
- package/dist/tools/utils/file-utils.js.map +0 -1
- package/dist/tools/write-file.tool.d.ts +0 -1
- package/dist/tools/write-file.tool.js +0 -55
- package/dist/tools/write-file.tool.js.map +0 -1
- package/dist/types/agent.types.d.ts +0 -134
- package/dist/types/agent.types.js +0 -16
- package/dist/types/agent.types.js.map +0 -1
- package/dist/types/api-provider.types.d.ts +0 -85
- package/dist/types/api-provider.types.js +0 -65
- package/dist/types/api-provider.types.js.map +0 -1
- package/dist/types/index.js.map +0 -1
- package/dist/types/layout.types.js.map +0 -1
- package/dist/types/provider.types.d.ts +0 -12
- package/dist/types/provider.types.js +0 -3
- package/dist/types/provider.types.js.map +0 -1
- package/dist/types/skill-runtime.types.d.ts +0 -244
- package/dist/types/skill-runtime.types.js +0 -44
- package/dist/types/skill-runtime.types.js.map +0 -1
- package/dist/types/structured-payload.types.d.ts +0 -46
- package/dist/types/structured-payload.types.js +0 -65
- package/dist/types/structured-payload.types.js.map +0 -1
- package/dist/types/task-log.types.js.map +0 -1
- package/dist/types/template.types.d.ts +0 -38
- package/dist/types/template.types.js +0 -3
- package/dist/types/template.types.js.map +0 -1
- package/dist/types.d.ts +0 -1
- package/dist/types.js +0 -18
- package/dist/types.js.map +0 -1
- package/dist/utils/api-provider-normalizer.d.ts +0 -16
- package/dist/utils/api-provider-normalizer.js +0 -135
- package/dist/utils/api-provider-normalizer.js.map +0 -1
- package/dist/utils/base-message-formatter.d.ts +0 -32
- package/dist/utils/base-message-formatter.js +0 -170
- package/dist/utils/base-message-formatter.js.map +0 -1
- package/dist/utils/error-utils.d.ts +0 -3
- package/dist/utils/error-utils.js +0 -27
- package/dist/utils/error-utils.js.map +0 -1
- package/dist/utils/index.d.ts +0 -4
- package/dist/utils/index.js +0 -21
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/math-utils.d.ts +0 -3
- package/dist/utils/math-utils.js +0 -10
- package/dist/utils/math-utils.js.map +0 -1
- package/dist/utils/mention-parser.d.ts +0 -18
- package/dist/utils/mention-parser.js +0 -136
- package/dist/utils/mention-parser.js.map +0 -1
- package/dist/utils/string-utils.d.ts +0 -1
- package/dist/utils/string-utils.js +0 -10
- package/dist/utils/string-utils.js.map +0 -1
- package/dist/utils.d.ts +0 -3
- package/dist/utils.js +0 -20
- package/dist/utils.js.map +0 -1
- package/schema/api-provider-config.json +0 -138
- package/schema/crewx-config.json +0 -224
- package/schema/skills-config.json +0 -306
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.AgentRuntime = exports.runExecutesParallel = exports.runQueriesParallel = exports.ParallelRunnerTimeoutError = exports.ParallelRunner = void 0;
|
|
4
4
|
var parallel_runner_1 = require("./parallel-runner");
|
|
5
5
|
Object.defineProperty(exports, "ParallelRunner", { enumerable: true, get: function () { return parallel_runner_1.ParallelRunner; } });
|
|
6
|
-
|
|
7
|
-
Object.defineProperty(exports, "
|
|
6
|
+
var parallel_runner_2 = require("./parallel-runner");
|
|
7
|
+
Object.defineProperty(exports, "ParallelRunnerTimeoutError", { enumerable: true, get: function () { return parallel_runner_2.ParallelRunnerTimeoutError; } });
|
|
8
8
|
var helpers_1 = require("./helpers");
|
|
9
9
|
Object.defineProperty(exports, "runQueriesParallel", { enumerable: true, get: function () { return helpers_1.runQueriesParallel; } });
|
|
10
10
|
Object.defineProperty(exports, "runExecutesParallel", { enumerable: true, get: function () { return helpers_1.runExecutesParallel; } });
|
|
11
|
+
var agent_runtime_1 = require("./agent-runtime");
|
|
12
|
+
Object.defineProperty(exports, "AgentRuntime", { enumerable: true, get: function () { return agent_runtime_1.AgentRuntime; } });
|
|
11
13
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
import type { ParallelRunnerMetrics, ParallelRunnerOptions, Task, TaskResult } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Error raised when a task exceeds the configured per-task timeout.
|
|
4
|
+
*/
|
|
2
5
|
export declare class ParallelRunnerTimeoutError extends Error {
|
|
3
6
|
readonly taskId: string;
|
|
4
7
|
readonly timeoutMs: number;
|
|
5
8
|
constructor(taskId: string, timeoutMs: number);
|
|
6
9
|
}
|
|
10
|
+
/**
|
|
11
|
+
* Executes tasks with bounded concurrency and cooperative cancellation support.
|
|
12
|
+
* Framework-agnostic — usable from CLI, SDK, or any consumer.
|
|
13
|
+
*/
|
|
7
14
|
export declare class ParallelRunner {
|
|
8
15
|
private readonly defaults;
|
|
9
16
|
private metrics;
|
|
@@ -13,4 +20,4 @@ export declare class ParallelRunner {
|
|
|
13
20
|
private mergeOptions;
|
|
14
21
|
private mergeCallbacks;
|
|
15
22
|
}
|
|
16
|
-
|
|
23
|
+
//# sourceMappingURL=parallel-runner.d.ts.map
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.ParallelRunner = exports.ParallelRunnerTimeoutError = void 0;
|
|
4
4
|
const node_perf_hooks_1 = require("node:perf_hooks");
|
|
5
|
+
/**
|
|
6
|
+
* Error raised when a task exceeds the configured per-task timeout.
|
|
7
|
+
*/
|
|
5
8
|
class ParallelRunnerTimeoutError extends Error {
|
|
9
|
+
taskId;
|
|
10
|
+
timeoutMs;
|
|
6
11
|
constructor(taskId, timeoutMs) {
|
|
7
12
|
super(`Task ${taskId} timed out after ${timeoutMs}ms`);
|
|
8
13
|
this.taskId = taskId;
|
|
@@ -11,19 +16,24 @@ class ParallelRunnerTimeoutError extends Error {
|
|
|
11
16
|
}
|
|
12
17
|
}
|
|
13
18
|
exports.ParallelRunnerTimeoutError = ParallelRunnerTimeoutError;
|
|
19
|
+
/**
|
|
20
|
+
* Executes tasks with bounded concurrency and cooperative cancellation support.
|
|
21
|
+
* Framework-agnostic — usable from CLI, SDK, or any consumer.
|
|
22
|
+
*/
|
|
14
23
|
class ParallelRunner {
|
|
24
|
+
defaults;
|
|
25
|
+
metrics = {
|
|
26
|
+
totalTasks: 0,
|
|
27
|
+
startedTasks: 0,
|
|
28
|
+
completedTasks: 0,
|
|
29
|
+
successCount: 0,
|
|
30
|
+
failureCount: 0,
|
|
31
|
+
totalDurationMs: 0,
|
|
32
|
+
averageDurationMs: 0,
|
|
33
|
+
throughput: 0,
|
|
34
|
+
};
|
|
15
35
|
constructor(defaults = {}) {
|
|
16
36
|
this.defaults = defaults;
|
|
17
|
-
this.metrics = {
|
|
18
|
-
totalTasks: 0,
|
|
19
|
-
startedTasks: 0,
|
|
20
|
-
completedTasks: 0,
|
|
21
|
-
successCount: 0,
|
|
22
|
-
failureCount: 0,
|
|
23
|
-
totalDurationMs: 0,
|
|
24
|
-
averageDurationMs: 0,
|
|
25
|
-
throughput: 0,
|
|
26
|
-
};
|
|
27
37
|
}
|
|
28
38
|
async run(tasks, options = {}) {
|
|
29
39
|
if (!Array.isArray(tasks)) {
|
|
@@ -67,29 +77,29 @@ class ParallelRunner {
|
|
|
67
77
|
if (typeof timeoutMs === 'number' && Number.isFinite(timeoutMs) && timeoutMs > 0) {
|
|
68
78
|
timeoutPromise = new Promise((_, reject) => {
|
|
69
79
|
timeoutId = setTimeout(() => {
|
|
70
|
-
const
|
|
71
|
-
controller.abort(
|
|
72
|
-
reject(
|
|
80
|
+
const err = new ParallelRunnerTimeoutError(task.id, timeoutMs);
|
|
81
|
+
controller.abort(err);
|
|
82
|
+
reject(err);
|
|
73
83
|
}, timeoutMs);
|
|
74
84
|
});
|
|
75
85
|
}
|
|
76
|
-
const
|
|
86
|
+
const taskStartedAt = node_perf_hooks_1.performance.now();
|
|
77
87
|
const runPromise = task.run(context);
|
|
78
88
|
const combinedPromise = timeoutPromise
|
|
79
89
|
? Promise.race([runPromise, timeoutPromise])
|
|
80
90
|
: runPromise;
|
|
81
91
|
try {
|
|
82
92
|
const value = await combinedPromise;
|
|
83
|
-
const
|
|
84
|
-
const durationMs =
|
|
93
|
+
const taskFinishedAt = node_perf_hooks_1.performance.now();
|
|
94
|
+
const durationMs = taskFinishedAt - taskStartedAt;
|
|
85
95
|
const success = evaluateTaskSuccess(value, task);
|
|
86
96
|
const result = {
|
|
87
97
|
taskId: task.id,
|
|
88
98
|
success,
|
|
89
99
|
value,
|
|
90
100
|
durationMs,
|
|
91
|
-
startedAt:
|
|
92
|
-
finishedAt:
|
|
101
|
+
startedAt: taskStartedAt,
|
|
102
|
+
finishedAt: taskFinishedAt,
|
|
93
103
|
metadata: task.metadata,
|
|
94
104
|
aborted: false,
|
|
95
105
|
};
|
|
@@ -103,16 +113,16 @@ class ParallelRunner {
|
|
|
103
113
|
}
|
|
104
114
|
}
|
|
105
115
|
catch (rawError) {
|
|
106
|
-
const
|
|
107
|
-
const durationMs =
|
|
116
|
+
const taskFinishedAt = node_perf_hooks_1.performance.now();
|
|
117
|
+
const durationMs = taskFinishedAt - taskStartedAt;
|
|
108
118
|
const error = rawError instanceof Error ? rawError : new Error(String(rawError));
|
|
109
119
|
const result = {
|
|
110
120
|
taskId: task.id,
|
|
111
121
|
success: false,
|
|
112
122
|
error,
|
|
113
123
|
durationMs,
|
|
114
|
-
startedAt:
|
|
115
|
-
finishedAt:
|
|
124
|
+
startedAt: taskStartedAt,
|
|
125
|
+
finishedAt: taskFinishedAt,
|
|
116
126
|
metadata: task.metadata,
|
|
117
127
|
aborted: controller.signal.aborted,
|
|
118
128
|
};
|
|
@@ -126,47 +136,42 @@ class ParallelRunner {
|
|
|
126
136
|
}
|
|
127
137
|
}
|
|
128
138
|
finally {
|
|
129
|
-
if (timeoutId)
|
|
139
|
+
if (timeoutId)
|
|
130
140
|
clearTimeout(timeoutId);
|
|
131
|
-
|
|
132
|
-
if (timeoutPromise)
|
|
141
|
+
// Prevent unhandled rejections if timeout fired before task finished
|
|
142
|
+
if (timeoutPromise)
|
|
133
143
|
runPromise.catch(() => undefined);
|
|
134
|
-
}
|
|
135
144
|
}
|
|
136
145
|
};
|
|
137
146
|
const worker = async () => {
|
|
138
147
|
while (true) {
|
|
139
|
-
if (aborted)
|
|
148
|
+
if (aborted)
|
|
140
149
|
break;
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
if (currentIndex >= tasks.length) {
|
|
150
|
+
const index = cursor;
|
|
151
|
+
if (index >= tasks.length)
|
|
144
152
|
break;
|
|
145
|
-
}
|
|
146
153
|
cursor += 1;
|
|
147
|
-
const task = tasks[
|
|
148
|
-
if (!task)
|
|
154
|
+
const task = tasks[index];
|
|
155
|
+
if (!task)
|
|
149
156
|
break;
|
|
150
|
-
}
|
|
151
157
|
await executeTask(task);
|
|
152
|
-
if (aborted)
|
|
158
|
+
if (aborted)
|
|
153
159
|
break;
|
|
154
|
-
}
|
|
155
160
|
}
|
|
156
161
|
};
|
|
157
|
-
const workers = [];
|
|
158
162
|
const workerCount = Math.min(maxConcurrency, tasks.length);
|
|
159
|
-
|
|
163
|
+
const workers = [];
|
|
164
|
+
for (let i = 0; i < workerCount; i++) {
|
|
160
165
|
workers.push(worker());
|
|
161
166
|
}
|
|
162
167
|
await Promise.all(workers);
|
|
163
168
|
const finishedAt = node_perf_hooks_1.performance.now();
|
|
164
169
|
const totalDurationMs = finishedAt - startedAt;
|
|
165
170
|
const averageDurationMs = results.length
|
|
166
|
-
? results.reduce((sum,
|
|
171
|
+
? results.reduce((sum, r) => sum + r.durationMs, 0) / results.length
|
|
167
172
|
: 0;
|
|
168
173
|
const throughput = totalDurationMs > 0
|
|
169
|
-
?
|
|
174
|
+
? results.length / (totalDurationMs / 1000)
|
|
170
175
|
: results.length;
|
|
171
176
|
this.metrics = {
|
|
172
177
|
totalTasks: tasks.length,
|
|
@@ -193,38 +198,29 @@ class ParallelRunner {
|
|
|
193
198
|
};
|
|
194
199
|
}
|
|
195
200
|
mergeCallbacks(base, override) {
|
|
196
|
-
if (!base && !override)
|
|
201
|
+
if (!base && !override)
|
|
197
202
|
return undefined;
|
|
198
|
-
}
|
|
199
203
|
return {
|
|
200
204
|
onTaskStart: async (task) => {
|
|
201
|
-
if (base?.onTaskStart)
|
|
205
|
+
if (base?.onTaskStart)
|
|
202
206
|
await base.onTaskStart(task);
|
|
203
|
-
|
|
204
|
-
if (override?.onTaskStart) {
|
|
207
|
+
if (override?.onTaskStart)
|
|
205
208
|
await override.onTaskStart(task);
|
|
206
|
-
}
|
|
207
209
|
},
|
|
208
210
|
onTaskComplete: async (result) => {
|
|
209
|
-
if (base?.onTaskComplete)
|
|
211
|
+
if (base?.onTaskComplete)
|
|
210
212
|
await base.onTaskComplete(result);
|
|
211
|
-
|
|
212
|
-
if (override?.onTaskComplete) {
|
|
213
|
+
if (override?.onTaskComplete)
|
|
213
214
|
await override.onTaskComplete(result);
|
|
214
|
-
}
|
|
215
215
|
},
|
|
216
216
|
onError: async (task, error, durationMs) => {
|
|
217
|
-
if (base?.onError)
|
|
217
|
+
if (base?.onError)
|
|
218
218
|
await base.onError(task, error, durationMs);
|
|
219
|
-
|
|
220
|
-
if (override?.onError) {
|
|
219
|
+
if (override?.onError)
|
|
221
220
|
await override.onError(task, error, durationMs);
|
|
222
|
-
}
|
|
223
221
|
},
|
|
224
222
|
};
|
|
225
223
|
}
|
|
226
224
|
}
|
|
227
225
|
exports.ParallelRunner = ParallelRunner;
|
|
228
|
-
const createDefaultParallelRunner = () => new ParallelRunner();
|
|
229
|
-
exports.createDefaultParallelRunner = createDefaultParallelRunner;
|
|
230
226
|
//# sourceMappingURL=parallel-runner.js.map
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types for the parallel execution module.
|
|
3
|
+
*/
|
|
4
|
+
/** A unit of work that can be executed by the ParallelRunner. */
|
|
5
|
+
export interface Task<T> {
|
|
6
|
+
/** Unique identifier for the task. Used for logging and metrics. */
|
|
7
|
+
id: string;
|
|
8
|
+
/** Optional metadata associated with the task. */
|
|
9
|
+
metadata?: Record<string, unknown>;
|
|
10
|
+
/** Perform the actual work, respecting the provided execution context. */
|
|
11
|
+
run: (context: TaskExecutionContext) => Promise<T>;
|
|
12
|
+
}
|
|
13
|
+
/** Context information passed to each task during execution. */
|
|
14
|
+
export interface TaskExecutionContext {
|
|
15
|
+
/** AbortSignal triggered on timeout or cooperative cancellation. */
|
|
16
|
+
signal: AbortSignal;
|
|
17
|
+
}
|
|
18
|
+
/** Result produced by the ParallelRunner for each executed task. */
|
|
19
|
+
export interface TaskResult<T> {
|
|
20
|
+
taskId: string;
|
|
21
|
+
success: boolean;
|
|
22
|
+
value?: T;
|
|
23
|
+
error?: Error;
|
|
24
|
+
/** Milliseconds spent executing the task. */
|
|
25
|
+
durationMs: number;
|
|
26
|
+
/** performance.now() timestamp when the task started. */
|
|
27
|
+
startedAt: number;
|
|
28
|
+
/** performance.now() timestamp when the task finished. */
|
|
29
|
+
finishedAt: number;
|
|
30
|
+
/** Metadata forwarded from the original task definition. */
|
|
31
|
+
metadata?: Record<string, unknown>;
|
|
32
|
+
/** Whether the failure was caused by an abort/timeout event. */
|
|
33
|
+
aborted?: boolean;
|
|
34
|
+
}
|
|
35
|
+
/** Callback hooks for task lifecycle instrumentation. */
|
|
36
|
+
export interface TaskCallbacks<T> {
|
|
37
|
+
onTaskStart?: (task: Task<T>) => void | Promise<void>;
|
|
38
|
+
onTaskComplete?: (result: TaskResult<T>) => void | Promise<void>;
|
|
39
|
+
onError?: (task: Task<T>, error: Error, durationMs: number) => void | Promise<void>;
|
|
40
|
+
}
|
|
41
|
+
/** Execution options for the ParallelRunner. */
|
|
42
|
+
export interface ParallelRunnerOptions<T = unknown> {
|
|
43
|
+
/** Maximum concurrent tasks. Defaults to 5. */
|
|
44
|
+
maxConcurrency?: number;
|
|
45
|
+
/** Per-task timeout in milliseconds. Undefined disables timeout. */
|
|
46
|
+
timeoutMs?: number;
|
|
47
|
+
/** Stop scheduling new tasks after any failure. */
|
|
48
|
+
failFast?: boolean;
|
|
49
|
+
/** Lifecycle callback hooks. */
|
|
50
|
+
callbacks?: TaskCallbacks<T>;
|
|
51
|
+
/** Determine whether a resolved value is considered successful. Defaults to always true. */
|
|
52
|
+
evaluateTaskSuccess?: (value: T, task: Task<T>) => boolean;
|
|
53
|
+
}
|
|
54
|
+
/** Metrics summary produced after a ParallelRunner.run() call. */
|
|
55
|
+
export interface ParallelRunnerMetrics {
|
|
56
|
+
totalTasks: number;
|
|
57
|
+
startedTasks: number;
|
|
58
|
+
completedTasks: number;
|
|
59
|
+
successCount: number;
|
|
60
|
+
failureCount: number;
|
|
61
|
+
totalDurationMs: number;
|
|
62
|
+
averageDurationMs: number;
|
|
63
|
+
throughput: number;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
import type { TaskLogEntry } from '../types/task-log.types';
|
|
2
|
+
/** Detect crewx execute/x command pattern */
|
|
2
3
|
export declare function isAgentCallCommand(command: string): boolean;
|
|
4
|
+
/** Extract agent_call entry from crewx x "@agent ..." command */
|
|
3
5
|
export declare function parseAgentCall(timestamp: string, command: string): TaskLogEntry;
|
|
6
|
+
//# sourceMappingURL=agent-call.util.d.ts.map
|
|
@@ -2,9 +2,11 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isAgentCallCommand = isAgentCallCommand;
|
|
4
4
|
exports.parseAgentCall = parseAgentCall;
|
|
5
|
+
/** Detect crewx execute/x command pattern */
|
|
5
6
|
function isAgentCallCommand(command) {
|
|
6
7
|
return /crewx\s+(x|execute)\s/.test(command);
|
|
7
8
|
}
|
|
9
|
+
/** Extract agent_call entry from crewx x "@agent ..." command */
|
|
8
10
|
function parseAgentCall(timestamp, command) {
|
|
9
11
|
const agentMatch = command.match(/@(\S+)/);
|
|
10
12
|
return {
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { TaskLogEntry } from '../types/task-log.types';
|
|
2
|
+
/**
|
|
3
|
+
* Parse API provider (Vercel AI SDK) structured JSONL events into TaskLogEntry[].
|
|
4
|
+
*
|
|
5
|
+
* API events:
|
|
6
|
+
* - { type: "api_tool_call", toolCallId: "...", toolName: "...", toolInput: "..." }
|
|
7
|
+
* - { type: "api_tool_result", toolCallId: "...", toolName: "...", result: "..." }
|
|
8
|
+
*/
|
|
9
|
+
export declare function parseApiEvent(timestamp: string, parsed: Record<string, unknown>): TaskLogEntry[];
|
|
10
|
+
//# sourceMappingURL=api.parser.d.ts.map
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseApiEvent = parseApiEvent;
|
|
4
|
+
/**
|
|
5
|
+
* Parse API provider (Vercel AI SDK) structured JSONL events into TaskLogEntry[].
|
|
6
|
+
*
|
|
7
|
+
* API events:
|
|
8
|
+
* - { type: "api_tool_call", toolCallId: "...", toolName: "...", toolInput: "..." }
|
|
9
|
+
* - { type: "api_tool_result", toolCallId: "...", toolName: "...", result: "..." }
|
|
10
|
+
*/
|
|
11
|
+
function parseApiEvent(timestamp, parsed) {
|
|
12
|
+
const type = parsed.type;
|
|
13
|
+
if (type === 'api_tool_call') {
|
|
14
|
+
const toolName = String(parsed.toolName || '');
|
|
15
|
+
const toolUseId = parsed.toolCallId;
|
|
16
|
+
const toolInput = String(parsed.toolInput || '{}');
|
|
17
|
+
return [{ timestamp, type: 'tool_use', toolName, toolUseId, toolInput }];
|
|
18
|
+
}
|
|
19
|
+
if (type === 'api_tool_result') {
|
|
20
|
+
const toolUseId = parsed.toolCallId;
|
|
21
|
+
const resultPreview = String(parsed.result || '');
|
|
22
|
+
return [{ timestamp, type: 'tool_result', toolUseId, resultPreview, isError: false }];
|
|
23
|
+
}
|
|
24
|
+
return [];
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=api.parser.js.map
|
|
@@ -1,2 +1,10 @@
|
|
|
1
1
|
import type { TaskLogEntry } from '../types/task-log.types';
|
|
2
|
+
/**
|
|
3
|
+
* Parse Claude stream-json events into TaskLogEntry[].
|
|
4
|
+
*
|
|
5
|
+
* Claude events:
|
|
6
|
+
* - { type: "assistant", message: { content: [{ type: "text"|"tool_use", ... }] } }
|
|
7
|
+
* - { type: "user", message: { content: [{ type: "tool_result", ... }] } }
|
|
8
|
+
*/
|
|
2
9
|
export declare function parseClaudeEvent(timestamp: string, parsed: Record<string, unknown>): TaskLogEntry[];
|
|
10
|
+
//# sourceMappingURL=claude.parser.d.ts.map
|
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.parseClaudeEvent = parseClaudeEvent;
|
|
4
4
|
const agent_call_util_1 = require("./agent-call.util");
|
|
5
|
+
/**
|
|
6
|
+
* Parse Claude stream-json events into TaskLogEntry[].
|
|
7
|
+
*
|
|
8
|
+
* Claude events:
|
|
9
|
+
* - { type: "assistant", message: { content: [{ type: "text"|"tool_use", ... }] } }
|
|
10
|
+
* - { type: "user", message: { content: [{ type: "tool_result", ... }] } }
|
|
11
|
+
*/
|
|
5
12
|
function parseClaudeEvent(timestamp, parsed) {
|
|
6
13
|
const msg = parsed.message;
|
|
7
14
|
const content = msg?.content;
|
|
@@ -38,7 +45,21 @@ function parseClaudeBlock(timestamp, block) {
|
|
|
38
45
|
if (blockType === 'tool_result') {
|
|
39
46
|
const isError = Boolean(block.is_error);
|
|
40
47
|
const toolUseId = block.tool_use_id;
|
|
41
|
-
const
|
|
48
|
+
const raw = block.output ?? block.content ?? '';
|
|
49
|
+
let output;
|
|
50
|
+
if (typeof raw === 'string') {
|
|
51
|
+
output = raw;
|
|
52
|
+
}
|
|
53
|
+
else if (Array.isArray(raw)) {
|
|
54
|
+
// Claude tool_result content can be [{ type: "text", text: "..." }, ...]
|
|
55
|
+
output = raw
|
|
56
|
+
.filter(c => c.type === 'text' && typeof c.text === 'string')
|
|
57
|
+
.map(c => c.text)
|
|
58
|
+
.join('\n');
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
output = JSON.stringify(raw);
|
|
62
|
+
}
|
|
42
63
|
return { timestamp, type: 'tool_result', toolUseId, resultPreview: output, isError };
|
|
43
64
|
}
|
|
44
65
|
return null;
|
|
@@ -1,2 +1,10 @@
|
|
|
1
1
|
import type { TaskLogEntry } from '../types/task-log.types';
|
|
2
|
+
/**
|
|
3
|
+
* Parse Codex experimental-json events into TaskLogEntry[].
|
|
4
|
+
*
|
|
5
|
+
* Codex events:
|
|
6
|
+
* - { type: "item.started", item: { type: "command_execution", command } }
|
|
7
|
+
* - { type: "item.completed", item: { type: "command_execution"|"message"|"text"|"reasoning"|"tool_use"|"tool_result", ... } }
|
|
8
|
+
*/
|
|
2
9
|
export declare function parseCodexEvent(timestamp: string, parsed: Record<string, unknown>): TaskLogEntry[];
|
|
10
|
+
//# sourceMappingURL=codex.parser.d.ts.map
|
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.parseCodexEvent = parseCodexEvent;
|
|
4
4
|
const agent_call_util_1 = require("./agent-call.util");
|
|
5
|
+
/**
|
|
6
|
+
* Parse Codex experimental-json events into TaskLogEntry[].
|
|
7
|
+
*
|
|
8
|
+
* Codex events:
|
|
9
|
+
* - { type: "item.started", item: { type: "command_execution", command } }
|
|
10
|
+
* - { type: "item.completed", item: { type: "command_execution"|"message"|"text"|"reasoning"|"tool_use"|"tool_result", ... } }
|
|
11
|
+
*/
|
|
5
12
|
function parseCodexEvent(timestamp, parsed) {
|
|
6
13
|
const type = parsed.type;
|
|
7
14
|
const item = parsed.item;
|
|
@@ -29,6 +36,7 @@ function parseItemStarted(timestamp, item) {
|
|
|
29
36
|
}
|
|
30
37
|
function parseItemCompleted(timestamp, item) {
|
|
31
38
|
const itemType = item.type;
|
|
39
|
+
// assistant_message / message / text
|
|
32
40
|
if (itemType === 'message' || itemType === 'text') {
|
|
33
41
|
const content = item.content;
|
|
34
42
|
if (Array.isArray(content)) {
|
|
@@ -45,11 +53,13 @@ function parseItemCompleted(timestamp, item) {
|
|
|
45
53
|
if (itemType === 'reasoning') {
|
|
46
54
|
return { timestamp, type: 'text', content: String(item.text || '') };
|
|
47
55
|
}
|
|
56
|
+
// command_execution completed → tool_result (with error support)
|
|
48
57
|
if (itemType === 'command_execution') {
|
|
49
58
|
const output = String(item.aggregated_output || item.output || '');
|
|
50
59
|
const isError = Boolean(item.is_error);
|
|
51
60
|
return { timestamp, type: 'tool_result', resultPreview: output, isError };
|
|
52
61
|
}
|
|
62
|
+
// tool_use from Codex item.completed
|
|
53
63
|
if (itemType === 'tool_use') {
|
|
54
64
|
const toolName = String(item.name || item.tool_name || '');
|
|
55
65
|
const input = item.input;
|
|
@@ -61,6 +71,7 @@ function parseItemCompleted(timestamp, item) {
|
|
|
61
71
|
}
|
|
62
72
|
return { timestamp, type: 'tool_use', toolName, toolInput: inputStr };
|
|
63
73
|
}
|
|
74
|
+
// tool_result from Codex item.completed
|
|
64
75
|
if (itemType === 'tool_result') {
|
|
65
76
|
const isError = Boolean(item.is_error);
|
|
66
77
|
const output = String(item.output || item.content || '');
|
|
@@ -1,2 +1,11 @@
|
|
|
1
1
|
import type { TaskLogEntry } from '../types/task-log.types';
|
|
2
|
+
/**
|
|
3
|
+
* Parse Copilot json events into TaskLogEntry[].
|
|
4
|
+
*
|
|
5
|
+
* Copilot events:
|
|
6
|
+
* - { type: "tool.execution_start", data: { toolName, arguments } }
|
|
7
|
+
* - { type: "tool.execution_complete", data: { result?: { content }, error?: { message } } }
|
|
8
|
+
* - { type: "assistant.message", data: { content } }
|
|
9
|
+
*/
|
|
2
10
|
export declare function parseCopilotEvent(timestamp: string, parsed: Record<string, unknown>): TaskLogEntry[];
|
|
11
|
+
//# sourceMappingURL=copilot.parser.d.ts.map
|
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.parseCopilotEvent = parseCopilotEvent;
|
|
4
4
|
const agent_call_util_1 = require("./agent-call.util");
|
|
5
|
+
/**
|
|
6
|
+
* Parse Copilot json events into TaskLogEntry[].
|
|
7
|
+
*
|
|
8
|
+
* Copilot events:
|
|
9
|
+
* - { type: "tool.execution_start", data: { toolName, arguments } }
|
|
10
|
+
* - { type: "tool.execution_complete", data: { result?: { content }, error?: { message } } }
|
|
11
|
+
* - { type: "assistant.message", data: { content } }
|
|
12
|
+
*/
|
|
5
13
|
function parseCopilotEvent(timestamp, parsed) {
|
|
6
14
|
const type = parsed.type;
|
|
7
15
|
const data = parsed.data;
|
|
@@ -1,2 +1,12 @@
|
|
|
1
1
|
import type { TaskLogEntry } from '../types/task-log.types';
|
|
2
|
+
/**
|
|
3
|
+
* Parse Gemini stream-json events into TaskLogEntry[].
|
|
4
|
+
*
|
|
5
|
+
* Gemini events:
|
|
6
|
+
* - { type: "message", role: "assistant", delta: true, content: "..." }
|
|
7
|
+
* - { type: "init", ... } (ignored)
|
|
8
|
+
* - { type: "tool_use", tool_name, tool_id, parameters }
|
|
9
|
+
* - { type: "tool_result", tool_id, status, output }
|
|
10
|
+
*/
|
|
2
11
|
export declare function parseGeminiEvent(timestamp: string, parsed: Record<string, unknown>): TaskLogEntry[];
|
|
12
|
+
//# sourceMappingURL=gemini.parser.d.ts.map
|
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.parseGeminiEvent = parseGeminiEvent;
|
|
4
4
|
const agent_call_util_1 = require("./agent-call.util");
|
|
5
|
+
/**
|
|
6
|
+
* Parse Gemini stream-json events into TaskLogEntry[].
|
|
7
|
+
*
|
|
8
|
+
* Gemini events:
|
|
9
|
+
* - { type: "message", role: "assistant", delta: true, content: "..." }
|
|
10
|
+
* - { type: "init", ... } (ignored)
|
|
11
|
+
* - { type: "tool_use", tool_name, tool_id, parameters }
|
|
12
|
+
* - { type: "tool_result", tool_id, status, output }
|
|
13
|
+
*/
|
|
5
14
|
function parseGeminiEvent(timestamp, parsed) {
|
|
6
15
|
const type = parsed.type;
|
|
7
16
|
if (type === 'message') {
|
|
@@ -31,6 +40,7 @@ function parseGeminiEvent(timestamp, parsed) {
|
|
|
31
40
|
const isError = parsed.status !== 'success';
|
|
32
41
|
return [{ timestamp, type: 'tool_result', toolUseId, resultPreview: output, isError }];
|
|
33
42
|
}
|
|
43
|
+
// init and other events: skip
|
|
34
44
|
return [];
|
|
35
45
|
}
|
|
36
46
|
//# sourceMappingURL=gemini.parser.js.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { TaskLogEntry } from '../types/task-log.types';
|
|
2
|
+
/**
|
|
3
|
+
* Parse OpenCode stream-json events (--format json) into TaskLogEntry[].
|
|
4
|
+
*
|
|
5
|
+
* OpenCode events:
|
|
6
|
+
* - { type: "step_start", sessionID: "ses_...", part: { type: "step-start" } }
|
|
7
|
+
* - { type: "text", part: { type: "text", text: "..." } }
|
|
8
|
+
* - { type: "step_finish", part: { reason: "stop", tokens: { total, input, output, reasoning, cache: { write, read } }, cost: 0 } }
|
|
9
|
+
* - { type: "tool_use", part: { type: "tool", tool: "bash"|"write"|..., callID: "...", state: { status, input, output } } }
|
|
10
|
+
*/
|
|
11
|
+
export declare function parseOpencodeEvent(timestamp: string, parsed: Record<string, unknown>): TaskLogEntry[];
|
|
12
|
+
//# sourceMappingURL=opencode.parser.d.ts.map
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseOpencodeEvent = parseOpencodeEvent;
|
|
4
|
+
/**
|
|
5
|
+
* Parse OpenCode stream-json events (--format json) into TaskLogEntry[].
|
|
6
|
+
*
|
|
7
|
+
* OpenCode events:
|
|
8
|
+
* - { type: "step_start", sessionID: "ses_...", part: { type: "step-start" } }
|
|
9
|
+
* - { type: "text", part: { type: "text", text: "..." } }
|
|
10
|
+
* - { type: "step_finish", part: { reason: "stop", tokens: { total, input, output, reasoning, cache: { write, read } }, cost: 0 } }
|
|
11
|
+
* - { type: "tool_use", part: { type: "tool", tool: "bash"|"write"|..., callID: "...", state: { status, input, output } } }
|
|
12
|
+
*/
|
|
13
|
+
function parseOpencodeEvent(timestamp, parsed) {
|
|
14
|
+
const type = parsed.type;
|
|
15
|
+
if (type === 'text') {
|
|
16
|
+
const part = parsed.part;
|
|
17
|
+
const text = part?.text;
|
|
18
|
+
if (!text)
|
|
19
|
+
return [];
|
|
20
|
+
return [{ timestamp, type: 'text', content: text }];
|
|
21
|
+
}
|
|
22
|
+
if (type === 'tool_use') {
|
|
23
|
+
const part = parsed.part;
|
|
24
|
+
if (!part)
|
|
25
|
+
return [];
|
|
26
|
+
const tool = String(part.tool || '');
|
|
27
|
+
const toolUseId = String(part.callID || '');
|
|
28
|
+
const state = part.state;
|
|
29
|
+
const status = String(state?.status || '');
|
|
30
|
+
const input = state?.input;
|
|
31
|
+
const inputStr = extractToolInput(input);
|
|
32
|
+
const entries = [
|
|
33
|
+
{ timestamp, type: 'tool_use', toolName: tool, toolUseId, toolInput: inputStr },
|
|
34
|
+
];
|
|
35
|
+
if (status === 'completed' && state?.output !== undefined) {
|
|
36
|
+
const output = state.output;
|
|
37
|
+
const outputStr = typeof output === 'string' ? output : JSON.stringify(output);
|
|
38
|
+
entries.push({ timestamp, type: 'tool_result', toolUseId, resultPreview: outputStr, isError: false });
|
|
39
|
+
}
|
|
40
|
+
else if (status === 'error') {
|
|
41
|
+
entries.push({
|
|
42
|
+
timestamp,
|
|
43
|
+
type: 'tool_result',
|
|
44
|
+
toolUseId,
|
|
45
|
+
resultPreview: String(state?.error || 'tool error'),
|
|
46
|
+
isError: true,
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
return entries;
|
|
50
|
+
}
|
|
51
|
+
// step_start, step_finish: skip (usage is extracted by parse-usage.ts)
|
|
52
|
+
return [];
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Extract a human-friendly string from OpenCode tool input.
|
|
56
|
+
*
|
|
57
|
+
* Matches Claude/Gemini parser behaviour:
|
|
58
|
+
* - bash-like → input.command ("mkdir -p /tmp/foo")
|
|
59
|
+
* - file tools → input.filePath ("/tmp/foo/bar.ts")
|
|
60
|
+
* - otherwise → JSON.stringify fallback
|
|
61
|
+
*/
|
|
62
|
+
function extractToolInput(input) {
|
|
63
|
+
if (typeof input === 'string')
|
|
64
|
+
return input;
|
|
65
|
+
if (!input || typeof input !== 'object')
|
|
66
|
+
return JSON.stringify(input ?? {});
|
|
67
|
+
const obj = input;
|
|
68
|
+
if (obj.command)
|
|
69
|
+
return String(obj.command);
|
|
70
|
+
if (obj.filePath)
|
|
71
|
+
return String(obj.filePath);
|
|
72
|
+
if (obj.pattern)
|
|
73
|
+
return String(obj.pattern);
|
|
74
|
+
return JSON.stringify(obj);
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=opencode.parser.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* parseStdoutEvent — routes a single stdout JSONL event to the appropriate provider parser.
|
|
3
|
+
* Returns TaskLogEntry[] (may be empty if event is not recognized or irrelevant).
|
|
4
|
+
*/
|
|
5
|
+
import type { TaskLogEntry } from '../types/task-log.types';
|
|
6
|
+
export declare function parseStdoutEvent(timestamp: string, message: string): TaskLogEntry[];
|
|
7
|
+
//# sourceMappingURL=router.d.ts.map
|