@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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"find.tool.js","sourceRoot":"","sources":["../../src/tools/find.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
export declare const globToolInputSchema: z.ZodObject<{
|
|
3
|
-
pattern: z.ZodString;
|
|
4
|
-
dir_path: z.ZodOptional<z.ZodString>;
|
|
5
|
-
case_sensitive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
6
|
-
respect_git_ignore: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
7
|
-
max_results: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
8
|
-
}, "strip", z.ZodTypeAny, {
|
|
9
|
-
pattern: string;
|
|
10
|
-
case_sensitive: boolean;
|
|
11
|
-
max_results: number;
|
|
12
|
-
respect_git_ignore: boolean;
|
|
13
|
-
dir_path?: string | undefined;
|
|
14
|
-
}, {
|
|
15
|
-
pattern: string;
|
|
16
|
-
dir_path?: string | undefined;
|
|
17
|
-
case_sensitive?: boolean | undefined;
|
|
18
|
-
max_results?: number | undefined;
|
|
19
|
-
respect_git_ignore?: boolean | undefined;
|
|
20
|
-
}>;
|
|
21
|
-
export declare const globToolOutputSchema: z.ZodString;
|
|
22
|
-
export type GlobToolInput = z.infer<typeof globToolInputSchema>;
|
|
23
|
-
export type GlobToolOutput = z.infer<typeof globToolOutputSchema>;
|
|
24
|
-
export declare const globTool: any;
|
package/dist/tools/glob.tool.js
DELETED
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.globTool = exports.globToolOutputSchema = exports.globToolInputSchema = void 0;
|
|
37
|
-
const core_1 = require("@mastra/core");
|
|
38
|
-
const zod_1 = require("zod");
|
|
39
|
-
const glob_1 = require("glob");
|
|
40
|
-
const path = __importStar(require("path"));
|
|
41
|
-
const fs = __importStar(require("fs"));
|
|
42
|
-
exports.globToolInputSchema = zod_1.z.object({
|
|
43
|
-
pattern: zod_1.z
|
|
44
|
-
.string()
|
|
45
|
-
.describe('Glob pattern to match files against (e.g., "**/*.ts", "src/**/*.yaml", "*.md"). Supports * (any chars), ? (single char), ** (recursive directories)'),
|
|
46
|
-
dir_path: zod_1.z
|
|
47
|
-
.string()
|
|
48
|
-
.optional()
|
|
49
|
-
.describe('Directory to search in (default: current directory). Use "." for current, or relative/absolute path'),
|
|
50
|
-
case_sensitive: zod_1.z
|
|
51
|
-
.boolean()
|
|
52
|
-
.optional()
|
|
53
|
-
.default(false)
|
|
54
|
-
.describe('Whether to match case-sensitively (default: false)'),
|
|
55
|
-
respect_git_ignore: zod_1.z
|
|
56
|
-
.boolean()
|
|
57
|
-
.optional()
|
|
58
|
-
.default(true)
|
|
59
|
-
.describe('Whether to respect .gitignore patterns (default: true)'),
|
|
60
|
-
max_results: zod_1.z
|
|
61
|
-
.number()
|
|
62
|
-
.optional()
|
|
63
|
-
.default(100)
|
|
64
|
-
.describe('Maximum number of results to return (default: 100)'),
|
|
65
|
-
});
|
|
66
|
-
exports.globToolOutputSchema = zod_1.z.string();
|
|
67
|
-
function sortFileEntries(entries) {
|
|
68
|
-
const oneDayInMs = 24 * 60 * 60 * 1000;
|
|
69
|
-
const nowTimestamp = Date.now();
|
|
70
|
-
return entries.sort((a, b) => {
|
|
71
|
-
const mtimeA = a.mtimeMs ?? 0;
|
|
72
|
-
const mtimeB = b.mtimeMs ?? 0;
|
|
73
|
-
const aIsRecent = nowTimestamp - mtimeA < oneDayInMs;
|
|
74
|
-
const bIsRecent = nowTimestamp - mtimeB < oneDayInMs;
|
|
75
|
-
if (aIsRecent && bIsRecent) {
|
|
76
|
-
return mtimeB - mtimeA;
|
|
77
|
-
}
|
|
78
|
-
if (aIsRecent) {
|
|
79
|
-
return -1;
|
|
80
|
-
}
|
|
81
|
-
if (bIsRecent) {
|
|
82
|
-
return 1;
|
|
83
|
-
}
|
|
84
|
-
return a.fullpath.localeCompare(b.fullpath);
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
exports.globTool = (0, core_1.createTool)({
|
|
88
|
-
id: 'glob',
|
|
89
|
-
description: 'Efficiently finds files matching glob patterns (e.g., "**/*.ts", "src/**/*.yaml"). Returns absolute paths sorted by modification time (newest first). Ideal for locating files by path structure.',
|
|
90
|
-
inputSchema: exports.globToolInputSchema,
|
|
91
|
-
outputSchema: exports.globToolOutputSchema,
|
|
92
|
-
execute: async ({ context }) => {
|
|
93
|
-
const { pattern, dir_path = '.', case_sensitive = false, respect_git_ignore = true, max_results = 100 } = context;
|
|
94
|
-
try {
|
|
95
|
-
const searchDir = path.resolve(process.cwd(), dir_path);
|
|
96
|
-
if (!fs.existsSync(searchDir)) {
|
|
97
|
-
return `Error: Directory not found: ${searchDir}`;
|
|
98
|
-
}
|
|
99
|
-
if (!fs.statSync(searchDir).isDirectory()) {
|
|
100
|
-
return `Error: Path is not a directory: ${searchDir}`;
|
|
101
|
-
}
|
|
102
|
-
const ignorePatterns = [
|
|
103
|
-
'**/node_modules/**',
|
|
104
|
-
'**/.git/**',
|
|
105
|
-
'**/dist/**',
|
|
106
|
-
'**/build/**',
|
|
107
|
-
'**/.next/**',
|
|
108
|
-
'**/.crewx/**',
|
|
109
|
-
];
|
|
110
|
-
const matches = await (0, glob_1.glob)(pattern, {
|
|
111
|
-
cwd: searchDir,
|
|
112
|
-
nocase: !case_sensitive,
|
|
113
|
-
ignore: respect_git_ignore ? ignorePatterns : ['**/node_modules/**', '**/.git/**'],
|
|
114
|
-
nodir: true,
|
|
115
|
-
withFileTypes: true,
|
|
116
|
-
stat: true,
|
|
117
|
-
dot: true,
|
|
118
|
-
follow: false,
|
|
119
|
-
});
|
|
120
|
-
if (matches.length === 0) {
|
|
121
|
-
return `No files found matching pattern: ${pattern}\nSearched in: ${searchDir}`;
|
|
122
|
-
}
|
|
123
|
-
const fileEntries = matches.map((entry) => ({
|
|
124
|
-
fullpath: path.resolve(searchDir, entry.fullpath()),
|
|
125
|
-
mtimeMs: entry.mtimeMs,
|
|
126
|
-
}));
|
|
127
|
-
const sortedEntries = sortFileEntries(fileEntries);
|
|
128
|
-
const limitedEntries = sortedEntries.slice(0, max_results);
|
|
129
|
-
const resultLines = limitedEntries.map((entry, index) => {
|
|
130
|
-
const relativePath = path.relative(process.cwd(), entry.fullpath);
|
|
131
|
-
const stats = fs.statSync(entry.fullpath);
|
|
132
|
-
const sizeKB = (stats.size / 1024).toFixed(1);
|
|
133
|
-
const mtime = new Date(stats.mtime);
|
|
134
|
-
const now = new Date();
|
|
135
|
-
const isRecent = now.getTime() - mtime.getTime() < 24 * 60 * 60 * 1000;
|
|
136
|
-
const marker = isRecent ? '🔥' : ' ';
|
|
137
|
-
return `${marker} ${index + 1}. ${relativePath} (${sizeKB} KB)`;
|
|
138
|
-
});
|
|
139
|
-
const header = `Found ${limitedEntries.length} file(s) matching "${pattern}":\n`;
|
|
140
|
-
const footer = sortedEntries.length > max_results
|
|
141
|
-
? `\n(Limited to ${max_results} results. Use max_results parameter to see more. Total matches: ${sortedEntries.length})`
|
|
142
|
-
: sortedEntries.length === limitedEntries.length && matches.length > sortedEntries.length
|
|
143
|
-
? `\n(Total matches: ${matches.length})`
|
|
144
|
-
: '';
|
|
145
|
-
return header + resultLines.join('\n') + footer;
|
|
146
|
-
}
|
|
147
|
-
catch (error) {
|
|
148
|
-
const errorMessage = error instanceof Error ? error.message : 'Unknown error';
|
|
149
|
-
return `Error during glob search: ${errorMessage}`;
|
|
150
|
-
}
|
|
151
|
-
},
|
|
152
|
-
});
|
|
153
|
-
//# sourceMappingURL=glob.tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"glob.tool.js","sourceRoot":"","sources":["../../src/tools/glob.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const grepTool: any;
|
package/dist/tools/grep.tool.js
DELETED
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.grepTool = void 0;
|
|
7
|
-
const tools_1 = require("@mastra/core/tools");
|
|
8
|
-
const zod_1 = require("zod");
|
|
9
|
-
const node_path_1 = __importDefault(require("node:path"));
|
|
10
|
-
const promises_1 = __importDefault(require("node:fs/promises"));
|
|
11
|
-
async function searchFile(filePath, pattern, basePath) {
|
|
12
|
-
try {
|
|
13
|
-
const content = await promises_1.default.readFile(filePath, 'utf-8');
|
|
14
|
-
const lines = content.split('\n');
|
|
15
|
-
const matches = [];
|
|
16
|
-
const relativePath = node_path_1.default.relative(basePath, filePath);
|
|
17
|
-
for (let i = 0; i < lines.length; i++) {
|
|
18
|
-
const line = lines[i];
|
|
19
|
-
if (line !== undefined && pattern.test(line)) {
|
|
20
|
-
matches.push(`${relativePath}:${i + 1}: ${line}`);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
return matches;
|
|
24
|
-
}
|
|
25
|
-
catch (error) {
|
|
26
|
-
return [];
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
async function searchRecursive(dirPath, pattern, basePath, maxDepth = 10, currentDepth = 0) {
|
|
30
|
-
if (currentDepth >= maxDepth) {
|
|
31
|
-
return [];
|
|
32
|
-
}
|
|
33
|
-
const results = [];
|
|
34
|
-
const entries = await promises_1.default.readdir(dirPath, { withFileTypes: true });
|
|
35
|
-
for (const entry of entries) {
|
|
36
|
-
const fullPath = node_path_1.default.join(dirPath, entry.name);
|
|
37
|
-
if (entry.isDirectory()) {
|
|
38
|
-
const dirName = entry.name;
|
|
39
|
-
if (dirName === 'node_modules' ||
|
|
40
|
-
dirName === '.git' ||
|
|
41
|
-
dirName === 'dist' ||
|
|
42
|
-
dirName === 'build' ||
|
|
43
|
-
dirName === '.next') {
|
|
44
|
-
continue;
|
|
45
|
-
}
|
|
46
|
-
try {
|
|
47
|
-
const subResults = await searchRecursive(fullPath, pattern, basePath, maxDepth, currentDepth + 1);
|
|
48
|
-
results.push(...subResults);
|
|
49
|
-
}
|
|
50
|
-
catch {
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
const matches = await searchFile(fullPath, pattern, basePath);
|
|
55
|
-
results.push(...matches);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
return results;
|
|
59
|
-
}
|
|
60
|
-
exports.grepTool = (0, tools_1.createTool)({
|
|
61
|
-
id: 'grep',
|
|
62
|
-
description: `Searches for a pattern in files using regular expressions. Can search recursively through directories. Returns matching lines with file paths and line numbers. Automatically skips common build directories (node_modules, .git, dist, build, .next).`,
|
|
63
|
-
inputSchema: zod_1.z.object({
|
|
64
|
-
pattern: zod_1.z
|
|
65
|
-
.string()
|
|
66
|
-
.describe('The regular expression pattern to search for.'),
|
|
67
|
-
path: zod_1.z
|
|
68
|
-
.string()
|
|
69
|
-
.optional()
|
|
70
|
-
.default('.')
|
|
71
|
-
.describe('The file or directory path to search in (default: current directory).'),
|
|
72
|
-
recursive: zod_1.z
|
|
73
|
-
.boolean()
|
|
74
|
-
.optional()
|
|
75
|
-
.default(true)
|
|
76
|
-
.describe('Optional: Search recursively through subdirectories (default: true).'),
|
|
77
|
-
}),
|
|
78
|
-
outputSchema: zod_1.z.string().describe('Search results or error message'),
|
|
79
|
-
execute: async ({ context }) => {
|
|
80
|
-
const { pattern, path: searchPath = '.', recursive = true } = context;
|
|
81
|
-
if (pattern.trim() === '') {
|
|
82
|
-
throw new Error("The 'pattern' parameter must be non-empty.");
|
|
83
|
-
}
|
|
84
|
-
let regex;
|
|
85
|
-
try {
|
|
86
|
-
regex = new RegExp(pattern);
|
|
87
|
-
}
|
|
88
|
-
catch (error) {
|
|
89
|
-
throw new Error(`Invalid regular expression: ${error.message}`);
|
|
90
|
-
}
|
|
91
|
-
const resolvedPath = node_path_1.default.resolve(searchPath);
|
|
92
|
-
try {
|
|
93
|
-
const stats = await promises_1.default.stat(resolvedPath);
|
|
94
|
-
const basePath = stats.isDirectory() ? resolvedPath : node_path_1.default.dirname(resolvedPath);
|
|
95
|
-
let matches = [];
|
|
96
|
-
if (stats.isDirectory()) {
|
|
97
|
-
if (recursive) {
|
|
98
|
-
matches = await searchRecursive(resolvedPath, regex, basePath);
|
|
99
|
-
}
|
|
100
|
-
else {
|
|
101
|
-
const entries = await promises_1.default.readdir(resolvedPath, { withFileTypes: true });
|
|
102
|
-
for (const entry of entries) {
|
|
103
|
-
if (!entry.isDirectory()) {
|
|
104
|
-
const fullPath = node_path_1.default.join(resolvedPath, entry.name);
|
|
105
|
-
const fileMatches = await searchFile(fullPath, regex, basePath);
|
|
106
|
-
matches.push(...fileMatches);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
matches = await searchFile(resolvedPath, regex, basePath);
|
|
113
|
-
}
|
|
114
|
-
if (matches.length === 0) {
|
|
115
|
-
return `No matches found for pattern: ${pattern}`;
|
|
116
|
-
}
|
|
117
|
-
const maxResults = 100;
|
|
118
|
-
const limited = matches.slice(0, maxResults);
|
|
119
|
-
let output = `Found ${matches.length} match(es) for pattern: ${pattern}\n\n`;
|
|
120
|
-
output += limited.join('\n');
|
|
121
|
-
if (matches.length > maxResults) {
|
|
122
|
-
output += `\n\n... and ${matches.length - maxResults} more matches (output truncated)`;
|
|
123
|
-
}
|
|
124
|
-
return output;
|
|
125
|
-
}
|
|
126
|
-
catch (error) {
|
|
127
|
-
if (error.code === 'ENOENT') {
|
|
128
|
-
throw new Error(`Path not found: ${searchPath}`);
|
|
129
|
-
}
|
|
130
|
-
if (error.code === 'EACCES') {
|
|
131
|
-
throw new Error(`Permission denied: ${searchPath}`);
|
|
132
|
-
}
|
|
133
|
-
throw error;
|
|
134
|
-
}
|
|
135
|
-
},
|
|
136
|
-
});
|
|
137
|
-
//# sourceMappingURL=grep.tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"grep.tool.js","sourceRoot":"","sources":["../../src/tools/grep.tool.ts"],"names":[],"mappings":";;;;;;AAKA,8CAAgD;AAChD,6BAAwB;AACxB,0DAA6B;AAC7B,gEAAkC;AAKlC,KAAK,UAAU,UAAU,CACvB,QAAgB,EAChB,OAAe,EACf,QAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,MAAM,YAAY,GAAG,mBAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7C,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAEf,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAKD,KAAK,UAAU,eAAe,CAC5B,OAAe,EACf,OAAe,EACf,QAAgB,EAChB,WAAmB,EAAE,EACrB,eAAuB,CAAC;IAExB,IAAI,YAAY,IAAI,QAAQ,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,MAAM,kBAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAEnE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAGhD,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;YAC3B,IACE,OAAO,KAAK,cAAc;gBAC1B,OAAO,KAAK,MAAM;gBAClB,OAAO,KAAK,MAAM;gBAClB,OAAO,KAAK,OAAO;gBACnB,OAAO,KAAK,OAAO,EACnB,CAAC;gBACD,SAAS;YACX,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,MAAM,eAAe,CACtC,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,YAAY,GAAG,CAAC,CACjB,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;YAC9B,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9D,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAOY,QAAA,QAAQ,GAAG,IAAA,kBAAU,EAAC;IACjC,EAAE,EAAE,MAAM;IACV,WAAW,EAAE,wPAAwP;IAErQ,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC;QACpB,OAAO,EAAE,OAAC;aACP,MAAM,EAAE;aACR,QAAQ,CAAC,+CAA+C,CAAC;QAC5D,IAAI,EAAE,OAAC;aACJ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,OAAO,CAAC,GAAG,CAAC;aACZ,QAAQ,CAAC,uEAAuE,CAAC;QACpF,SAAS,EAAE,OAAC;aACT,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CAAC,sEAAsE,CAAC;KACpF,CAAC;IAEF,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IAEpE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAO,EAAE,EAAE;QAClC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,GAAG,GAAG,EAAE,SAAS,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QAGtE,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,KAAa,CAAC;QAClB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,YAAY,GAAG,mBAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAE9C,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,kBAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC1C,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,mBAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAEjF,IAAI,OAAO,GAAa,EAAE,CAAC;YAE3B,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,IAAI,SAAS,EAAE,CAAC;oBACd,OAAO,GAAG,MAAM,eAAe,CAAC,YAAY,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;gBACjE,CAAC;qBAAM,CAAC;oBACN,MAAM,OAAO,GAAG,MAAM,kBAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;oBACxE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;wBAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;4BACzB,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;4BACrD,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;4BAChE,OAAO,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;wBAC/B,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBAEN,OAAO,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC5D,CAAC;YAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,iCAAiC,OAAO,EAAE,CAAC;YACpD,CAAC;YAGD,MAAM,UAAU,GAAG,GAAG,CAAC;YACvB,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;YAC7C,IAAI,MAAM,GAAG,SAAS,OAAO,CAAC,MAAM,2BAA2B,OAAO,MAAM,CAAC;YAC7E,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE7B,IAAI,OAAO,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;gBAChC,MAAM,IAAI,eAAe,OAAO,CAAC,MAAM,GAAG,UAAU,kCAAkC,CAAC;YACzF,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;YACnD,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,sBAAsB,UAAU,EAAE,CAAC,CAAC;YACtD,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF,CAAC,CAAC"}
|
package/dist/tools/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAKA,yDAAmD;AAA1C,iHAAA,YAAY,OAAA;AACrB,qDAAgD;AAAvC,8GAAA,WAAW,OAAA;AACpB,yEAAkE;AAAzD,gIAAA,mBAAmB,OAAA;AAC5B,2CAAsC;AAA7B,oGAAA,MAAM,OAAA;AACf,+CAA0C;AAAjC,wGAAA,QAAQ,OAAA;AACjB,2DAAqD;AAA5C,mHAAA,aAAa,OAAA;AACtB,+CAA0C;AAAjC,wGAAA,QAAQ,OAAA;AACjB,+CAA0C;AAAjC,wGAAA,QAAQ,OAAA;AACjB,+CAA0C;AAAjC,wGAAA,QAAQ,OAAA;AACjB,mEAAqE;AAA5D,mIAAA,yBAAyB,OAAA;AAClC,6CAA2B;AAC3B,wDAAsC"}
|
package/dist/tools/ls.tool.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const lsTool: any;
|
package/dist/tools/ls.tool.js
DELETED
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.lsTool = void 0;
|
|
7
|
-
const tools_1 = require("@mastra/core/tools");
|
|
8
|
-
const zod_1 = require("zod");
|
|
9
|
-
const node_path_1 = __importDefault(require("node:path"));
|
|
10
|
-
const promises_1 = __importDefault(require("node:fs/promises"));
|
|
11
|
-
async function listRecursive(dirPath, basePath, maxDepth = 5, currentDepth = 0) {
|
|
12
|
-
if (currentDepth >= maxDepth) {
|
|
13
|
-
return [`${dirPath}/ (max depth reached)`];
|
|
14
|
-
}
|
|
15
|
-
const results = [];
|
|
16
|
-
const entries = await promises_1.default.readdir(dirPath, { withFileTypes: true });
|
|
17
|
-
for (const entry of entries) {
|
|
18
|
-
const fullPath = node_path_1.default.join(dirPath, entry.name);
|
|
19
|
-
const relativePath = node_path_1.default.relative(basePath, fullPath);
|
|
20
|
-
if (entry.isDirectory()) {
|
|
21
|
-
results.push(`${relativePath}/`);
|
|
22
|
-
try {
|
|
23
|
-
const subResults = await listRecursive(fullPath, basePath, maxDepth, currentDepth + 1);
|
|
24
|
-
results.push(...subResults);
|
|
25
|
-
}
|
|
26
|
-
catch (error) {
|
|
27
|
-
results.push(`${relativePath}/ (permission denied)`);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
const stats = await promises_1.default.stat(fullPath);
|
|
32
|
-
results.push(`${relativePath} (${stats.size} bytes)`);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return results;
|
|
36
|
-
}
|
|
37
|
-
exports.lsTool = (0, tools_1.createTool)({
|
|
38
|
-
id: 'ls',
|
|
39
|
-
description: `Lists contents of a directory. Can list recursively with the 'recursive' flag. Shows file sizes and distinguishes directories with trailing slashes.`,
|
|
40
|
-
inputSchema: zod_1.z.object({
|
|
41
|
-
path: zod_1.z
|
|
42
|
-
.string()
|
|
43
|
-
.optional()
|
|
44
|
-
.default('.')
|
|
45
|
-
.describe('The directory path to list (default: current directory).'),
|
|
46
|
-
recursive: zod_1.z
|
|
47
|
-
.boolean()
|
|
48
|
-
.optional()
|
|
49
|
-
.default(false)
|
|
50
|
-
.describe('Optional: List contents recursively (default: false).'),
|
|
51
|
-
}),
|
|
52
|
-
outputSchema: zod_1.z.string().describe('Directory listing or error message'),
|
|
53
|
-
execute: async ({ context }) => {
|
|
54
|
-
const { path: dirPath = '.', recursive = false } = context;
|
|
55
|
-
const resolvedPath = node_path_1.default.resolve(dirPath);
|
|
56
|
-
try {
|
|
57
|
-
const stats = await promises_1.default.stat(resolvedPath);
|
|
58
|
-
if (!stats.isDirectory()) {
|
|
59
|
-
throw new Error(`Path is not a directory: ${dirPath}`);
|
|
60
|
-
}
|
|
61
|
-
let output = `Directory listing: ${dirPath}\n\n`;
|
|
62
|
-
if (recursive) {
|
|
63
|
-
const entries = await listRecursive(resolvedPath, resolvedPath);
|
|
64
|
-
output += entries.join('\n');
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
const entries = await promises_1.default.readdir(resolvedPath, { withFileTypes: true });
|
|
68
|
-
const lines = [];
|
|
69
|
-
for (const entry of entries) {
|
|
70
|
-
const fullPath = node_path_1.default.join(resolvedPath, entry.name);
|
|
71
|
-
if (entry.isDirectory()) {
|
|
72
|
-
lines.push(`${entry.name}/`);
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
const stats = await promises_1.default.stat(fullPath);
|
|
76
|
-
lines.push(`${entry.name} (${stats.size} bytes)`);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
output += lines.join('\n');
|
|
80
|
-
}
|
|
81
|
-
return output || 'Directory is empty';
|
|
82
|
-
}
|
|
83
|
-
catch (error) {
|
|
84
|
-
if (error.code === 'ENOENT') {
|
|
85
|
-
throw new Error(`Directory not found: ${dirPath}`);
|
|
86
|
-
}
|
|
87
|
-
if (error.code === 'EACCES') {
|
|
88
|
-
throw new Error(`Permission denied: ${dirPath}`);
|
|
89
|
-
}
|
|
90
|
-
throw error;
|
|
91
|
-
}
|
|
92
|
-
},
|
|
93
|
-
});
|
|
94
|
-
//# sourceMappingURL=ls.tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ls.tool.js","sourceRoot":"","sources":["../../src/tools/ls.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const readFileTool: any;
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.readFileTool = void 0;
|
|
7
|
-
const tools_1 = require("@mastra/core/tools");
|
|
8
|
-
const zod_1 = require("zod");
|
|
9
|
-
const node_path_1 = __importDefault(require("node:path"));
|
|
10
|
-
const file_utils_js_1 = require("./utils/file-utils.js");
|
|
11
|
-
const file_system_service_js_1 = require("./file-system.service.js");
|
|
12
|
-
exports.readFileTool = (0, tools_1.createTool)({
|
|
13
|
-
id: 'read_file',
|
|
14
|
-
description: `Reads and returns the content of a specified file. If the file is large, the content will be truncated. The tool's response will clearly indicate if truncation has occurred and will provide details on how to read more of the file using the 'offset' and 'limit' parameters. Handles text, images (PNG, JPG, GIF, WEBP, SVG, BMP), and PDF files. For text files, it can read specific line ranges.`,
|
|
15
|
-
inputSchema: zod_1.z.object({
|
|
16
|
-
file_path: zod_1.z
|
|
17
|
-
.string()
|
|
18
|
-
.describe('The path to the file to read.'),
|
|
19
|
-
offset: zod_1.z
|
|
20
|
-
.number()
|
|
21
|
-
.int()
|
|
22
|
-
.nonnegative()
|
|
23
|
-
.optional()
|
|
24
|
-
.describe("Optional: For text files, the 0-based line number to start reading from. Use for paginating through large files."),
|
|
25
|
-
limit: zod_1.z
|
|
26
|
-
.number()
|
|
27
|
-
.int()
|
|
28
|
-
.positive()
|
|
29
|
-
.optional()
|
|
30
|
-
.describe("Optional: For text files, maximum number of lines to read. Use with 'offset' to paginate through large files."),
|
|
31
|
-
}),
|
|
32
|
-
outputSchema: zod_1.z.string().describe('The file content or error message'),
|
|
33
|
-
execute: async ({ context }) => {
|
|
34
|
-
const { file_path, offset, limit } = context;
|
|
35
|
-
if (file_path.trim() === '') {
|
|
36
|
-
throw new Error("The 'file_path' parameter must be non-empty.");
|
|
37
|
-
}
|
|
38
|
-
const targetDir = process.cwd();
|
|
39
|
-
const resolvedPath = node_path_1.default.resolve(file_path);
|
|
40
|
-
const fileSystemService = new file_system_service_js_1.StandardFileSystemService();
|
|
41
|
-
const result = await (0, file_utils_js_1.processSingleFileContent)(resolvedPath, targetDir, fileSystemService, offset, limit);
|
|
42
|
-
if (result.error) {
|
|
43
|
-
throw new Error(result.error);
|
|
44
|
-
}
|
|
45
|
-
if (typeof result.llmContent === 'string') {
|
|
46
|
-
if (result.isTruncated) {
|
|
47
|
-
const [start, end] = result.linesShown;
|
|
48
|
-
const total = result.originalLineCount;
|
|
49
|
-
const nextOffset = offset ? offset + end - start + 1 : end;
|
|
50
|
-
return `IMPORTANT: The file content has been truncated.
|
|
51
|
-
Status: Showing lines ${start}-${end} of ${total} total lines.
|
|
52
|
-
Action: To read more of the file, you can use the 'offset' and 'limit' parameters in a subsequent 'read_file' call. For example, to read the next section of the file, use offset: ${nextOffset}.
|
|
53
|
-
|
|
54
|
-
--- FILE CONTENT (truncated) ---
|
|
55
|
-
${result.llmContent}`;
|
|
56
|
-
}
|
|
57
|
-
return result.llmContent;
|
|
58
|
-
}
|
|
59
|
-
const relativePath2 = (0, file_utils_js_1.makeRelative)(resolvedPath, targetDir);
|
|
60
|
-
const inlineData = result.llmContent.inlineData;
|
|
61
|
-
return `File read successfully: ${(0, file_utils_js_1.shortenPath)(relativePath2)}
|
|
62
|
-
Type: ${inlineData.mimeType}
|
|
63
|
-
Size: ${Buffer.from(inlineData.data, 'base64').length} bytes
|
|
64
|
-
|
|
65
|
-
Note: Binary content (image/PDF) has been loaded. The agent can work with this file.
|
|
66
|
-
Base64 data: ${inlineData.data.substring(0, 100)}...`;
|
|
67
|
-
},
|
|
68
|
-
});
|
|
69
|
-
//# sourceMappingURL=read-file.tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"read-file.tool.js","sourceRoot":"","sources":["../../src/tools/read-file.tool.ts"],"names":[],"mappings":";;;;;;AAKA,8CAAgD;AAChD,6BAAwB;AACxB,0DAA6B;AAE7B,yDAI+B;AAC/B,qEAAqE;AAQxD,QAAA,YAAY,GAAG,IAAA,kBAAU,EAAC;IACrC,EAAE,EAAE,WAAW;IACf,WAAW,EAAE,yYAAyY;IAEtZ,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,OAAC;aACT,MAAM,EAAE;aACR,QAAQ,CAAC,+BAA+B,CAAC;QAC5C,MAAM,EAAE,OAAC;aACN,MAAM,EAAE;aACR,GAAG,EAAE;aACL,WAAW,EAAE;aACb,QAAQ,EAAE;aACV,QAAQ,CACP,kHAAkH,CACnH;QACH,KAAK,EAAE,OAAC;aACL,MAAM,EAAE;aACR,GAAG,EAAE;aACL,QAAQ,EAAE;aACV,QAAQ,EAAE;aACV,QAAQ,CACP,+GAA+G,CAChH;KACJ,CAAC;IAEF,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IAEtE,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAO,EAAE,EAAE;QAClC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAE7C,IAAI,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QAGD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAChC,MAAM,YAAY,GAAG,mBAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAM7C,MAAM,iBAAiB,GAAsB,IAAI,kDAAyB,EAAE,CAAC;QAG7E,MAAM,MAAM,GAAG,MAAM,IAAA,wCAAwB,EAC3C,YAAY,EACZ,SAAS,EACT,iBAAiB,EACjB,MAAM,EACN,KAAK,CACN,CAAC;QAEF,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QAGD,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YAE1C,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACvB,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,UAAW,CAAC;gBACxC,MAAM,KAAK,GAAG,MAAM,CAAC,iBAAkB,CAAC;gBACxC,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAE3D,OAAO;wBACS,KAAK,IAAI,GAAG,OAAO,KAAK;qLACqI,UAAU;;;EAG7L,MAAM,CAAC,UAAU,EAAE,CAAC;YAChB,CAAC;YAED,OAAO,MAAM,CAAC,UAAU,CAAC;QAC3B,CAAC;QAGD,MAAM,aAAa,GAAG,IAAA,4BAAY,EAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAC5D,MAAM,UAAU,GAAI,MAAM,CAAC,UAAkB,CAAC,UAAU,CAAC;QAEzD,OAAO,2BAA2B,IAAA,2BAAW,EAAC,aAAa,CAAC;QACxD,UAAU,CAAC,QAAQ;QACnB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,MAAM;;;eAGtC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC;IACpD,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const replaceTool: any;
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.replaceTool = void 0;
|
|
7
|
-
const tools_1 = require("@mastra/core/tools");
|
|
8
|
-
const zod_1 = require("zod");
|
|
9
|
-
const node_path_1 = __importDefault(require("node:path"));
|
|
10
|
-
const promises_1 = __importDefault(require("node:fs/promises"));
|
|
11
|
-
exports.replaceTool = (0, tools_1.createTool)({
|
|
12
|
-
id: 'replace',
|
|
13
|
-
description: `Replaces a range of lines in a file with new text. Useful for editing existing files. Requires start_line, end_line, and new_text parameters. Line numbers are 1-based.`,
|
|
14
|
-
inputSchema: zod_1.z.object({
|
|
15
|
-
file_path: zod_1.z
|
|
16
|
-
.string()
|
|
17
|
-
.describe('The path to the file to modify.'),
|
|
18
|
-
start_line: zod_1.z
|
|
19
|
-
.number()
|
|
20
|
-
.int()
|
|
21
|
-
.positive()
|
|
22
|
-
.describe('The starting line number to replace (1-based, inclusive).'),
|
|
23
|
-
end_line: zod_1.z
|
|
24
|
-
.number()
|
|
25
|
-
.int()
|
|
26
|
-
.positive()
|
|
27
|
-
.describe('The ending line number to replace (1-based, inclusive).'),
|
|
28
|
-
new_text: zod_1.z
|
|
29
|
-
.string()
|
|
30
|
-
.describe('The new text to insert in place of the specified lines.'),
|
|
31
|
-
}),
|
|
32
|
-
outputSchema: zod_1.z.string().describe('Success message or error'),
|
|
33
|
-
execute: async ({ context }) => {
|
|
34
|
-
const { file_path, start_line, end_line, new_text } = context;
|
|
35
|
-
if (file_path.trim() === '') {
|
|
36
|
-
throw new Error("The 'file_path' parameter must be non-empty.");
|
|
37
|
-
}
|
|
38
|
-
if (start_line > end_line) {
|
|
39
|
-
throw new Error(`Invalid line range: start_line (${start_line}) must be <= end_line (${end_line}).`);
|
|
40
|
-
}
|
|
41
|
-
const resolvedPath = node_path_1.default.resolve(file_path);
|
|
42
|
-
try {
|
|
43
|
-
await promises_1.default.access(resolvedPath);
|
|
44
|
-
const content = await promises_1.default.readFile(resolvedPath, 'utf-8');
|
|
45
|
-
const lines = content.split('\n');
|
|
46
|
-
if (start_line < 1 || start_line > lines.length) {
|
|
47
|
-
throw new Error(`start_line (${start_line}) is out of range. File has ${lines.length} lines.`);
|
|
48
|
-
}
|
|
49
|
-
if (end_line > lines.length) {
|
|
50
|
-
throw new Error(`end_line (${end_line}) is out of range. File has ${lines.length} lines.`);
|
|
51
|
-
}
|
|
52
|
-
const newLines = new_text.split('\n');
|
|
53
|
-
lines.splice(start_line - 1, end_line - start_line + 1, ...newLines);
|
|
54
|
-
await promises_1.default.writeFile(resolvedPath, lines.join('\n'), 'utf-8');
|
|
55
|
-
return `Successfully replaced lines ${start_line}-${end_line} in ${file_path}`;
|
|
56
|
-
}
|
|
57
|
-
catch (error) {
|
|
58
|
-
if (error.code === 'ENOENT') {
|
|
59
|
-
throw new Error(`File not found: ${file_path}`);
|
|
60
|
-
}
|
|
61
|
-
if (error.code === 'EACCES') {
|
|
62
|
-
throw new Error(`Permission denied: ${file_path}`);
|
|
63
|
-
}
|
|
64
|
-
throw error;
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
});
|
|
68
|
-
//# sourceMappingURL=replace.tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"replace.tool.js","sourceRoot":"","sources":["../../src/tools/replace.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const runShellCommandTool: any;
|