@superblocksteam/vite-plugin-file-sync 2.0.83-next.1 → 2.0.83
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/dist/ai-service/agent/middleware.d.ts +0 -36
- package/dist/ai-service/agent/middleware.d.ts.map +1 -1
- package/dist/ai-service/agent/middleware.js +1 -65
- package/dist/ai-service/agent/middleware.js.map +1 -1
- package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts +1 -1
- package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
- package/dist/ai-service/agent/prompts/build-base-system-prompt.js +57 -101
- package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
- package/dist/ai-service/agent/tool-message-utils.js +1 -1
- package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/api-executor.js +1 -1
- package/dist/ai-service/agent/tools/apis/api-executor.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/api-validation-orchestrator.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/api-validation-orchestrator.js +1 -1
- package/dist/ai-service/agent/tools/apis/api-validation-orchestrator.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/build-api-artifact.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/build-api-artifact.js +7 -23
- package/dist/ai-service/agent/tools/apis/build-api-artifact.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/build-api.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/build-api.js +19 -36
- package/dist/ai-service/agent/tools/apis/build-api.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/get-api-docs.d.ts +1 -1
- package/dist/ai-service/agent/tools/apis/sample-json.js +1 -1
- package/dist/ai-service/agent/tools/apis/sample-json.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api.d.ts +1 -11
- package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api.js +54 -95
- package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
- package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts +0 -3
- package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-capture-screenshot.js +8 -12
- package/dist/ai-service/agent/tools/build-capture-screenshot.js.map +1 -1
- package/dist/ai-service/agent/tools/build-debug.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-debug.js +10 -30
- package/dist/ai-service/agent/tools/build-debug.js.map +1 -1
- package/dist/ai-service/agent/tools/build-delete-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-delete-file.js +2 -6
- package/dist/ai-service/agent/tools/build-delete-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-edit-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-edit-file.js +5 -20
- package/dist/ai-service/agent/tools/build-edit-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-finalize.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-finalize.js +4 -30
- package/dist/ai-service/agent/tools/build-finalize.js.map +1 -1
- package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +1 -1
- package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-multi-edit-file.js +4 -14
- package/dist/ai-service/agent/tools/build-multi-edit-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-read-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-read-file.js +11 -23
- package/dist/ai-service/agent/tools/build-read-file.js.map +1 -1
- package/dist/ai-service/agent/tools/debug-cache.js +1 -1
- package/dist/ai-service/agent/tools/debug-cache.js.map +1 -1
- package/dist/ai-service/agent/tools/get-console-logs.d.ts +29 -0
- package/dist/ai-service/agent/tools/get-console-logs.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/get-console-logs.js +171 -0
- package/dist/ai-service/agent/tools/get-console-logs.js.map +1 -0
- package/dist/ai-service/agent/tools/index.d.ts +1 -1
- package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/index.js +1 -1
- package/dist/ai-service/agent/tools/index.js.map +1 -1
- package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/integrations/execute-request.js +5 -20
- package/dist/ai-service/agent/tools/integrations/execute-request.js.map +1 -1
- package/dist/ai-service/agent/tools/integrations/internal.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/integrations/internal.js +3 -12
- package/dist/ai-service/agent/tools/integrations/internal.js.map +1 -1
- package/dist/ai-service/agent/tools.d.ts.map +1 -1
- package/dist/ai-service/agent/tools.js +28 -19
- package/dist/ai-service/agent/tools.js.map +1 -1
- package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/registry.js +15 -37
- package/dist/ai-service/agent/tools2/registry.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/bash.d.ts +1 -1
- package/dist/ai-service/agent/tools2/tools/edit.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/edit.js +4 -9
- package/dist/ai-service/agent/tools2/tools/edit.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/grep.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/grep.js +7 -73
- package/dist/ai-service/agent/tools2/tools/grep.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/read.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/read.js +4 -9
- package/dist/ai-service/agent/tools2/tools/read.js.map +1 -1
- package/dist/ai-service/agent/tools2/types.d.ts +8 -40
- package/dist/ai-service/agent/tools2/types.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/types.js +3 -41
- package/dist/ai-service/agent/tools2/types.js.map +1 -1
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.d.ts +1 -0
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.d.ts.map +1 -1
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.js +54 -60
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.js.map +1 -1
- package/dist/ai-service/chat/chat-session-store.d.ts +0 -6
- package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
- package/dist/ai-service/chat/chat-session-store.js +0 -44
- package/dist/ai-service/chat/chat-session-store.js.map +1 -1
- package/dist/ai-service/features.d.ts +0 -8
- package/dist/ai-service/features.d.ts.map +1 -1
- package/dist/ai-service/features.js +0 -8
- package/dist/ai-service/features.js.map +1 -1
- package/dist/ai-service/index.d.ts +2 -34
- package/dist/ai-service/index.d.ts.map +1 -1
- package/dist/ai-service/index.js +18 -112
- package/dist/ai-service/index.js.map +1 -1
- package/dist/ai-service/integrations/metadata-storage/local.d.ts.map +1 -1
- package/dist/ai-service/integrations/metadata-storage/local.js +2 -4
- package/dist/ai-service/integrations/metadata-storage/local.js.map +1 -1
- package/dist/ai-service/integrations/store.d.ts +3 -6
- package/dist/ai-service/integrations/store.d.ts.map +1 -1
- package/dist/ai-service/integrations/store.js +6 -96
- package/dist/ai-service/integrations/store.js.map +1 -1
- package/dist/ai-service/judge/judge-executor.js +1 -1
- package/dist/ai-service/judge/judge-executor.js.map +1 -1
- package/dist/ai-service/judge/tools/playwright-action.d.ts +1 -1
- package/dist/ai-service/llm/client.d.ts.map +1 -1
- package/dist/ai-service/llm/client.js +13 -26
- package/dist/ai-service/llm/client.js.map +1 -1
- package/dist/ai-service/llm/context-v2/adapter.d.ts +0 -2
- package/dist/ai-service/llm/context-v2/adapter.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/adapter.js +0 -6
- package/dist/ai-service/llm/context-v2/adapter.js.map +1 -1
- package/dist/ai-service/llm/context-v2/context.d.ts +0 -17
- package/dist/ai-service/llm/context-v2/context.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/context.js +1 -54
- package/dist/ai-service/llm/context-v2/context.js.map +1 -1
- package/dist/ai-service/llm/context-v2/conversation-context.d.ts +1 -11
- package/dist/ai-service/llm/context-v2/conversation-context.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/phase1-tool-summarizer.d.ts +1 -1
- package/dist/ai-service/llm/context-v2/phase1-tool-summarizer.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/phase1-tool-summarizer.js +6 -42
- package/dist/ai-service/llm/context-v2/phase1-tool-summarizer.js.map +1 -1
- package/dist/ai-service/llm/context-v2/types.d.ts +0 -4
- package/dist/ai-service/llm/context-v2/types.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/types.js.map +1 -1
- package/dist/ai-service/llm/error.js +1 -1
- package/dist/ai-service/llm/error.js.map +1 -1
- package/dist/ai-service/llm/interaction/adapters/vercel.js +5 -5
- package/dist/ai-service/llm/stream/config.d.ts +1 -1
- package/dist/ai-service/llm/stream/config.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/config.js.map +1 -1
- package/dist/ai-service/llm/stream/observers/llmobs.js +1 -1
- package/dist/ai-service/llm/stream/observers/llmobs.js.map +1 -1
- package/dist/ai-service/llm/stream/observers/logging.d.ts +0 -20
- package/dist/ai-service/llm/stream/observers/logging.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/observers/logging.js +18 -115
- package/dist/ai-service/llm/stream/observers/logging.js.map +1 -1
- package/dist/ai-service/llm/stream/observers/retry-notification.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/observers/retry-notification.js +1 -2
- package/dist/ai-service/llm/stream/observers/retry-notification.js.map +1 -1
- package/dist/ai-service/llm/stream/orchestrator.js +4 -4
- package/dist/ai-service/llm/stream/orchestrator.js.map +1 -1
- package/dist/ai-service/llm/stream/retry-engine.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/retry-engine.js +1 -1
- package/dist/ai-service/llm/stream/retry-engine.js.map +1 -1
- package/dist/ai-service/llmobs/otel-exporter.d.ts +14 -111
- package/dist/ai-service/llmobs/otel-exporter.d.ts.map +1 -1
- package/dist/ai-service/llmobs/otel-exporter.js +66 -441
- package/dist/ai-service/llmobs/otel-exporter.js.map +1 -1
- package/dist/ai-service/llmobs/tracer.d.ts.map +1 -1
- package/dist/ai-service/llmobs/tracer.js +4 -40
- package/dist/ai-service/llmobs/tracer.js.map +1 -1
- package/dist/ai-service/mcp/playwright-server.d.ts.map +1 -1
- package/dist/ai-service/mcp/playwright-server.js +2 -11
- package/dist/ai-service/mcp/playwright-server.js.map +1 -1
- package/dist/ai-service/security/safety-classifier.d.ts.map +1 -1
- package/dist/ai-service/security/safety-classifier.js +3 -9
- package/dist/ai-service/security/safety-classifier.js.map +1 -1
- package/dist/ai-service/skills/index.d.ts +11 -23
- package/dist/ai-service/skills/index.d.ts.map +1 -1
- package/dist/ai-service/skills/index.js +21 -86
- package/dist/ai-service/skills/index.js.map +1 -1
- package/dist/ai-service/skills/system/superblocks-api/references/code-blocks.generated.d.ts +1 -1
- package/dist/ai-service/skills/system/superblocks-api/references/code-blocks.generated.d.ts.map +1 -1
- package/dist/ai-service/skills/system/superblocks-api/references/code-blocks.generated.js +0 -56
- package/dist/ai-service/skills/system/superblocks-api/references/code-blocks.generated.js.map +1 -1
- package/dist/ai-service/skills/system/superblocks-api/references/sql-databases.generated.d.ts +1 -1
- package/dist/ai-service/skills/system/superblocks-api/references/sql-databases.generated.d.ts.map +1 -1
- package/dist/ai-service/skills/system/superblocks-api/references/sql-databases.generated.js +11 -143
- package/dist/ai-service/skills/system/superblocks-api/references/sql-databases.generated.js.map +1 -1
- package/dist/ai-service/skills/system/superblocks-api/skill.generated.d.ts +1 -1
- package/dist/ai-service/skills/system/superblocks-api/skill.generated.d.ts.map +1 -1
- package/dist/ai-service/skills/system/superblocks-api/skill.generated.js +3 -130
- package/dist/ai-service/skills/system/superblocks-api/skill.generated.js.map +1 -1
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts +1 -1
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts.map +1 -1
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js +17 -97
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js.map +1 -1
- package/dist/ai-service/skills/types.d.ts +0 -24
- package/dist/ai-service/skills/types.d.ts.map +1 -1
- package/dist/ai-service/skills/types.js +0 -45
- package/dist/ai-service/skills/types.js.map +1 -1
- package/dist/ai-service/state-machine/clark-fsm.d.ts +2 -33
- package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
- package/dist/ai-service/state-machine/clark-fsm.js +1 -6
- package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.js +21 -24
- package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.js +5 -120
- package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
- package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
- package/dist/ai-service/state-machine/mocks.js +0 -23
- package/dist/ai-service/state-machine/mocks.js.map +1 -1
- package/dist/ai-service/state-machine/traced-fsm.d.ts.map +1 -1
- package/dist/ai-service/state-machine/traced-fsm.js +1 -1
- package/dist/ai-service/state-machine/traced-fsm.js.map +1 -1
- package/dist/ai-service/test-utils/anthropic-service-mock.d.ts +2 -0
- package/dist/ai-service/test-utils/anthropic-service-mock.d.ts.map +1 -0
- package/dist/ai-service/test-utils/anthropic-service-mock.js +91 -0
- package/dist/ai-service/test-utils/anthropic-service-mock.js.map +1 -0
- package/dist/ai-service/test-utils/app-generation-mocks/orders-app.d.ts +3 -0
- package/dist/ai-service/test-utils/app-generation-mocks/orders-app.d.ts.map +1 -0
- package/dist/ai-service/test-utils/app-generation-mocks/orders-app.js +886 -0
- package/dist/ai-service/test-utils/app-generation-mocks/orders-app.js.map +1 -0
- package/dist/ai-service/test-utils/app-generation-mocks/reprompt.d.ts +3 -0
- package/dist/ai-service/test-utils/app-generation-mocks/reprompt.d.ts.map +1 -0
- package/dist/ai-service/test-utils/app-generation-mocks/reprompt.js +70 -0
- package/dist/ai-service/test-utils/app-generation-mocks/reprompt.js.map +1 -0
- package/dist/ai-service/test-utils/app-generation-mocks/smoketest.d.ts +3 -0
- package/dist/ai-service/test-utils/app-generation-mocks/smoketest.d.ts.map +1 -0
- package/dist/ai-service/test-utils/app-generation-mocks/smoketest.js +109 -0
- package/dist/ai-service/test-utils/app-generation-mocks/smoketest.js.map +1 -0
- package/dist/ai-service/test-utils/mock-utils.d.ts +12 -0
- package/dist/ai-service/test-utils/mock-utils.d.ts.map +1 -0
- package/dist/ai-service/test-utils/mock-utils.js +70 -0
- package/dist/ai-service/test-utils/mock-utils.js.map +1 -0
- package/dist/ai-service/util/safe-stringify.d.ts +2 -0
- package/dist/ai-service/util/safe-stringify.d.ts.map +1 -0
- package/dist/ai-service/util/safe-stringify.js +75 -0
- package/dist/ai-service/util/safe-stringify.js.map +1 -0
- package/dist/file-sync-vite-plugin.d.ts.map +1 -1
- package/dist/file-sync-vite-plugin.js +22 -52
- package/dist/file-sync-vite-plugin.js.map +1 -1
- package/dist/ids.d.ts +0 -1
- package/dist/ids.d.ts.map +1 -1
- package/dist/ids.js +0 -3
- package/dist/ids.js.map +1 -1
- package/dist/refactor/entities.d.ts.map +1 -1
- package/dist/refactor/entities.js +1 -0
- package/dist/refactor/entities.js.map +1 -1
- package/dist/socket-manager.d.ts.map +1 -1
- package/dist/socket-manager.js +3 -21
- package/dist/socket-manager.js.map +1 -1
- package/dist/sync-service/index.d.ts +0 -4
- package/dist/sync-service/index.d.ts.map +1 -1
- package/dist/sync-service/index.js +0 -6
- package/dist/sync-service/index.js.map +1 -1
- package/dist/util/logger.d.ts +0 -4
- package/dist/util/logger.d.ts.map +1 -1
- package/dist/util/logger.js +19 -77
- package/dist/util/logger.js.map +1 -1
- package/package.json +14 -17
- package/dist/ai-service/agent/tools/get-logs.d.ts +0 -72
- package/dist/ai-service/agent/tools/get-logs.d.ts.map +0 -1
- package/dist/ai-service/agent/tools/get-logs.js +0 -343
- package/dist/ai-service/agent/tools/get-logs.js.map +0 -1
- package/dist/ai-service/agent/tools/integrations/errors.d.ts +0 -9
- package/dist/ai-service/agent/tools/integrations/errors.d.ts.map +0 -1
- package/dist/ai-service/agent/tools/integrations/errors.js +0 -35
- package/dist/ai-service/agent/tools/integrations/errors.js.map +0 -1
- package/dist/ai-service/facts/helpers.d.ts +0 -9
- package/dist/ai-service/facts/helpers.d.ts.map +0 -1
- package/dist/ai-service/facts/helpers.js +0 -72
- package/dist/ai-service/facts/helpers.js.map +0 -1
- package/dist/ai-service/facts/index.d.ts +0 -4
- package/dist/ai-service/facts/index.d.ts.map +0 -1
- package/dist/ai-service/facts/index.js +0 -3
- package/dist/ai-service/facts/index.js.map +0 -1
- package/dist/ai-service/facts/knowledge-manager.d.ts +0 -50
- package/dist/ai-service/facts/knowledge-manager.d.ts.map +0 -1
- package/dist/ai-service/facts/knowledge-manager.js +0 -195
- package/dist/ai-service/facts/knowledge-manager.js.map +0 -1
- package/dist/ai-service/recording/index.d.ts +0 -25
- package/dist/ai-service/recording/index.d.ts.map +0 -1
- package/dist/ai-service/recording/index.js +0 -27
- package/dist/ai-service/recording/index.js.map +0 -1
- package/dist/ai-service/recording/recorders/llm-recorder.d.ts +0 -35
- package/dist/ai-service/recording/recorders/llm-recorder.d.ts.map +0 -1
- package/dist/ai-service/recording/recorders/llm-recorder.js +0 -221
- package/dist/ai-service/recording/recorders/llm-recorder.js.map +0 -1
- package/dist/ai-service/recording/recorders/socket-recorder.d.ts +0 -38
- package/dist/ai-service/recording/recorders/socket-recorder.d.ts.map +0 -1
- package/dist/ai-service/recording/recorders/socket-recorder.js +0 -44
- package/dist/ai-service/recording/recorders/socket-recorder.js.map +0 -1
- package/dist/ai-service/recording/recorders/tool-recorder.d.ts +0 -25
- package/dist/ai-service/recording/recorders/tool-recorder.d.ts.map +0 -1
- package/dist/ai-service/recording/recorders/tool-recorder.js +0 -58
- package/dist/ai-service/recording/recorders/tool-recorder.js.map +0 -1
- package/dist/ai-service/recording/recording-manager.d.ts +0 -104
- package/dist/ai-service/recording/recording-manager.d.ts.map +0 -1
- package/dist/ai-service/recording/recording-manager.js +0 -308
- package/dist/ai-service/recording/recording-manager.js.map +0 -1
- package/dist/ai-service/recording/storage/session-recording-storage.d.ts +0 -143
- package/dist/ai-service/recording/storage/session-recording-storage.d.ts.map +0 -1
- package/dist/ai-service/recording/storage/session-recording-storage.js +0 -374
- package/dist/ai-service/recording/storage/session-recording-storage.js.map +0 -1
- package/dist/ai-service/recording/types.d.ts +0 -148
- package/dist/ai-service/recording/types.d.ts.map +0 -1
- package/dist/ai-service/recording/types.js +0 -8
- package/dist/ai-service/recording/types.js.map +0 -1
- package/dist/ai-service/skills/system/_registry.generated.d.ts +0 -6
- package/dist/ai-service/skills/system/_registry.generated.d.ts.map +0 -1
- package/dist/ai-service/skills/system/_registry.generated.js +0 -24
- package/dist/ai-service/skills/system/_registry.generated.js.map +0 -1
- package/dist/ai-service/skills/system/superblocks-frontend/references/embedding.generated.d.ts +0 -2
- package/dist/ai-service/skills/system/superblocks-frontend/references/embedding.generated.d.ts.map +0 -1
- package/dist/ai-service/skills/system/superblocks-frontend/references/embedding.generated.js +0 -155
- package/dist/ai-service/skills/system/superblocks-frontend/references/embedding.generated.js.map +0 -1
- package/dist/util/log-sanitizer.d.ts +0 -42
- package/dist/util/log-sanitizer.d.ts.map +0 -1
- package/dist/util/log-sanitizer.js +0 -177
- package/dist/util/log-sanitizer.js.map +0 -1
|
@@ -1,343 +0,0 @@
|
|
|
1
|
-
import z from "zod";
|
|
2
|
-
import { createToolFactory, ToolCategory } from "../tools2/types.js";
|
|
3
|
-
// Default truncation limit for messages (5KB)
|
|
4
|
-
const DEFAULT_MESSAGE_TRUNCATE_LIMIT = 5 * 1024;
|
|
5
|
-
/**
|
|
6
|
-
* Truncates a string to a maximum number of characters, adding a truncation indicator if needed.
|
|
7
|
-
*/
|
|
8
|
-
function truncateMessage(str, maxChars) {
|
|
9
|
-
if (str.length <= maxChars) {
|
|
10
|
-
return { text: str, truncated: false, originalLength: str.length };
|
|
11
|
-
}
|
|
12
|
-
return {
|
|
13
|
-
text: str.slice(0, maxChars) +
|
|
14
|
-
`... [truncated, ${str.length - maxChars} more chars]`,
|
|
15
|
-
truncated: true,
|
|
16
|
-
originalLength: str.length,
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Console log entries include:
|
|
21
|
-
* - id: unique identifier for the log entry
|
|
22
|
-
* - timestamp: when the log was created (milliseconds since epoch)
|
|
23
|
-
* - timeAgo: human-readable relative time (e.g., "2 minutes ago", "just now")
|
|
24
|
-
* - level: log level (log/info/debug/warn/error)
|
|
25
|
-
* - message: the logged message (objects are JSON stringified)
|
|
26
|
-
* - stack: stack trace
|
|
27
|
-
* - generationTimestamp: ISO timestamp of when log was captured
|
|
28
|
-
*
|
|
29
|
-
* API run records (controlled by includeApiRuns flag):
|
|
30
|
-
* - Light mode (default): Only includes small predictable fields:
|
|
31
|
-
* - apiId, id, callId, timestamp, timeAgo, statusCode, timeTaken, isTestRun, loading
|
|
32
|
-
* - Full mode: Includes additional fields based on flags:
|
|
33
|
-
* - inputs: Input parameters used (includeApiInputs)
|
|
34
|
-
* - response: API response data (includeApiResponse)
|
|
35
|
-
* - error: Error message if execution failed (includeApiError)
|
|
36
|
-
* - stepLogs: Per-step execution details (includeStepOutputs, includeStepLogs):
|
|
37
|
-
* - stepName: Name of the step (e.g., "Step1", "GetUsers")
|
|
38
|
-
* - stdout: Array of console.log output (includeStepLogs)
|
|
39
|
-
* - stderr: Array of console.error output (includeStepLogs)
|
|
40
|
-
* - error: Step error message (includeStepLogs)
|
|
41
|
-
* - output: The step's return value (includeStepOutputs)
|
|
42
|
-
*
|
|
43
|
-
* Returns:
|
|
44
|
-
* - consoleLogs: Array of console log entries (most recent first)
|
|
45
|
-
* - apiRuns: Array of API run records (most recent first, empty if feature flag disabled)
|
|
46
|
-
* - consoleLogCount: Number of console logs returned
|
|
47
|
-
* - apiRunCount: Number of API runs returned
|
|
48
|
-
* - totalConsoleLogCount: Total number of console logs in buffer
|
|
49
|
-
* - totalApiRunCount: Total number of API runs in buffer
|
|
50
|
-
*/
|
|
51
|
-
export const buildGetLogsToolFactory = createToolFactory("get_logs", ({ clark, services, }) => {
|
|
52
|
-
// Feature flag controls whether API run logs are enabled
|
|
53
|
-
const apiRunLogsEnabled = services.features.apiRunLogsEnabled ?? true;
|
|
54
|
-
return {
|
|
55
|
-
category: ToolCategory.DEBUG,
|
|
56
|
-
description: `
|
|
57
|
-
Retrieve console logs, API execution history, and server-side step logs from the user's application.
|
|
58
|
-
|
|
59
|
-
Use to investigate errors, verify API execution, and debug runtime issues.
|
|
60
|
-
When apiId is provided, logs are automatically correlated with that API's execution window.
|
|
61
|
-
Records sorted by recency, retained for 10 minutes.
|
|
62
|
-
|
|
63
|
-
By default, API runs return only lightweight metadata. Set apiRunLightMode=false and use the include* flags for detailed data.
|
|
64
|
-
|
|
65
|
-
If the apiRuns field is undefined, API run tracking is disabled. If apiRuns is an empty array, it means the API did NOT execute.`,
|
|
66
|
-
inputSchema: z.object({
|
|
67
|
-
apiId: z
|
|
68
|
-
.string()
|
|
69
|
-
.optional()
|
|
70
|
-
.describe("Filter by specific API name. Returns API runs for this API and console logs correlated to those runs."),
|
|
71
|
-
level: z
|
|
72
|
-
.enum(["log", "info", "debug", "warn", "error"])
|
|
73
|
-
.optional()
|
|
74
|
-
.describe("Filter console logs by level"),
|
|
75
|
-
prefix: z
|
|
76
|
-
.string()
|
|
77
|
-
.min(3, "Prefix must be at least 3 characters")
|
|
78
|
-
.optional()
|
|
79
|
-
.describe("Filter console logs where message starts with this prefix (e.g., '[DEBUG]', 'Error:')"),
|
|
80
|
-
limit: z
|
|
81
|
-
.number()
|
|
82
|
-
.positive()
|
|
83
|
-
.max(200)
|
|
84
|
-
.optional()
|
|
85
|
-
.describe("Maximum number of entries to return (most recent first). Default: 50, max: 200."),
|
|
86
|
-
fullContent: z
|
|
87
|
-
.boolean()
|
|
88
|
-
.optional()
|
|
89
|
-
.describe("If true, return full (non-truncated) console log messages. Use when you need complete log content."),
|
|
90
|
-
maxMessageLength: z
|
|
91
|
-
.number()
|
|
92
|
-
.positive()
|
|
93
|
-
.optional()
|
|
94
|
-
.describe("Maximum characters per console log message before truncation. Default: 5000. Ignored if fullContent is true."),
|
|
95
|
-
apiRunLightMode: z
|
|
96
|
-
.boolean()
|
|
97
|
-
.optional()
|
|
98
|
-
.describe("If true, API runs only include lightweight metadata (apiId, statusCode, timeTaken, etc.). " +
|
|
99
|
-
"Set to false and use include* flags for detailed data. Default: true."),
|
|
100
|
-
includeApiInputs: z
|
|
101
|
-
.boolean()
|
|
102
|
-
.optional()
|
|
103
|
-
.describe("Include API input parameters in results. Requires apiRunLightMode=false. Default: false."),
|
|
104
|
-
includeApiResponse: z
|
|
105
|
-
.boolean()
|
|
106
|
-
.optional()
|
|
107
|
-
.describe("Include API response data in results. Requires apiRunLightMode=false. Default: false."),
|
|
108
|
-
includeApiError: z
|
|
109
|
-
.boolean()
|
|
110
|
-
.optional()
|
|
111
|
-
.describe("Include API-level error details in results. Requires apiRunLightMode=false. Default: false."),
|
|
112
|
-
includeStepOutputs: z
|
|
113
|
-
.boolean()
|
|
114
|
-
.optional()
|
|
115
|
-
.describe("Include each step's return value in stepLogs. Requires apiRunLightMode=false. Default: false."),
|
|
116
|
-
includeStepLogs: z
|
|
117
|
-
.boolean()
|
|
118
|
-
.optional()
|
|
119
|
-
.describe("Include step console output (stdout/stderr) and step errors in stepLogs. Requires apiRunLightMode=false. Default: false."),
|
|
120
|
-
apiRunLimit: z
|
|
121
|
-
.number()
|
|
122
|
-
.positive()
|
|
123
|
-
.max(20)
|
|
124
|
-
.optional()
|
|
125
|
-
.describe("Maximum number of API runs to return. Default: 5."),
|
|
126
|
-
}),
|
|
127
|
-
execute: async ({ apiId, level, prefix, limit, fullContent, maxMessageLength, apiRunLightMode = true, includeApiInputs = false, includeApiResponse = false, includeApiError = false, includeStepOutputs = false, includeStepLogs = false, apiRunLimit = 5, }) => {
|
|
128
|
-
const allConsoleLogs = clark.context.consoleLogs ?? [];
|
|
129
|
-
const allApiRuns = clark.context.apiRunRecords ?? [];
|
|
130
|
-
const now = Date.now();
|
|
131
|
-
const effectiveLimit = limit ?? 50;
|
|
132
|
-
const truncateLimit = maxMessageLength ?? DEFAULT_MESSAGE_TRUNCATE_LIMIT;
|
|
133
|
-
// Helper function to format relative time
|
|
134
|
-
const formatTimeAgo = (timestamp) => {
|
|
135
|
-
const seconds = Math.floor((now - timestamp) / 1000);
|
|
136
|
-
if (seconds < 10)
|
|
137
|
-
return "just now";
|
|
138
|
-
if (seconds < 60)
|
|
139
|
-
return `${seconds} seconds ago`;
|
|
140
|
-
const minutes = Math.floor(seconds / 60);
|
|
141
|
-
return `${minutes} ${minutes === 1 ? "minute" : "minutes"} ago`;
|
|
142
|
-
};
|
|
143
|
-
// Filter API runs
|
|
144
|
-
let apiRuns = allApiRuns;
|
|
145
|
-
if (apiId) {
|
|
146
|
-
apiRuns = apiRuns.filter((run) => run.apiId === apiId);
|
|
147
|
-
}
|
|
148
|
-
// Sort API runs by timestamp descending (most recent first) and limit
|
|
149
|
-
apiRuns = apiRuns
|
|
150
|
-
.sort((a, b) => (b.timestamp ?? 0) - (a.timestamp ?? 0))
|
|
151
|
-
.slice(0, apiRunLimit);
|
|
152
|
-
// Filter console logs
|
|
153
|
-
let consoleLogs = allConsoleLogs;
|
|
154
|
-
if (level) {
|
|
155
|
-
consoleLogs = consoleLogs.filter((log) => log.level === level);
|
|
156
|
-
}
|
|
157
|
-
// Filter by prefix if specified
|
|
158
|
-
if (prefix) {
|
|
159
|
-
consoleLogs = consoleLogs.filter((log) => typeof log.message === "string" && log.message.startsWith(prefix));
|
|
160
|
-
}
|
|
161
|
-
// If apiId is provided, correlate console logs with API execution windows
|
|
162
|
-
if (apiId) {
|
|
163
|
-
// First loop: calculate overall bounds across all API runs
|
|
164
|
-
let overallStart = Infinity;
|
|
165
|
-
let overallEnd = -Infinity;
|
|
166
|
-
for (const run of apiRuns) {
|
|
167
|
-
const runStart = run.timestamp ?? 0;
|
|
168
|
-
const runEnd = runStart + (run.timeTaken ?? 0);
|
|
169
|
-
// Include logs within the API execution window plus a small buffer (500ms before/after)
|
|
170
|
-
const windowStart = runStart - 500;
|
|
171
|
-
const windowEnd = runEnd + 500;
|
|
172
|
-
overallStart = Math.min(overallStart, windowStart);
|
|
173
|
-
overallEnd = Math.max(overallEnd, windowEnd);
|
|
174
|
-
}
|
|
175
|
-
// Second loop: filter logs within overall bounds
|
|
176
|
-
// This captures logs between runs and related processes outside individual run windows
|
|
177
|
-
consoleLogs = consoleLogs
|
|
178
|
-
.filter((log) => {
|
|
179
|
-
const logTime = log.timestamp ?? 0;
|
|
180
|
-
return logTime >= overallStart && logTime <= overallEnd;
|
|
181
|
-
})
|
|
182
|
-
.sort((a, b) => (b.timestamp ?? 0) - (a.timestamp ?? 0));
|
|
183
|
-
}
|
|
184
|
-
else {
|
|
185
|
-
// Sort console logs by timestamp descending (most recent first)
|
|
186
|
-
consoleLogs = consoleLogs.sort((a, b) => (b.timestamp ?? 0) - (a.timestamp ?? 0));
|
|
187
|
-
}
|
|
188
|
-
// Apply limit (default 50, applies to combined results)
|
|
189
|
-
// Combine and sort all entries by timestamp
|
|
190
|
-
const allEntries = [
|
|
191
|
-
...apiRuns.map((run) => ({
|
|
192
|
-
type: "apiRun",
|
|
193
|
-
timestamp: run.timestamp ?? 0,
|
|
194
|
-
data: run,
|
|
195
|
-
})),
|
|
196
|
-
...consoleLogs.map((log) => ({
|
|
197
|
-
type: "consoleLog",
|
|
198
|
-
timestamp: log.timestamp ?? 0,
|
|
199
|
-
data: log,
|
|
200
|
-
})),
|
|
201
|
-
].sort((a, b) => b.timestamp - a.timestamp);
|
|
202
|
-
const limitedEntries = allEntries.slice(0, effectiveLimit);
|
|
203
|
-
apiRuns = limitedEntries
|
|
204
|
-
.filter((e) => e.type === "apiRun")
|
|
205
|
-
.map((e) => e.data);
|
|
206
|
-
consoleLogs = limitedEntries
|
|
207
|
-
.filter((e) => e.type === "consoleLog")
|
|
208
|
-
.map((e) => e.data);
|
|
209
|
-
// Process API runs based on feature flag
|
|
210
|
-
const processedApiRuns = apiRunLogsEnabled
|
|
211
|
-
? apiRuns.map((run) => {
|
|
212
|
-
const timeAgo = run.timestamp
|
|
213
|
-
? formatTimeAgo(run.timestamp)
|
|
214
|
-
: "unknown";
|
|
215
|
-
// Light mode: only include small predictable fields
|
|
216
|
-
if (apiRunLightMode) {
|
|
217
|
-
return {
|
|
218
|
-
apiId: run.apiId,
|
|
219
|
-
id: run.id,
|
|
220
|
-
callId: run.callId,
|
|
221
|
-
timestamp: run.timestamp,
|
|
222
|
-
timeAgo,
|
|
223
|
-
statusCode: run.statusCode,
|
|
224
|
-
timeTaken: run.timeTaken,
|
|
225
|
-
isTestRun: run.isTestRun,
|
|
226
|
-
loading: run.loading,
|
|
227
|
-
};
|
|
228
|
-
}
|
|
229
|
-
// Full mode: include fields based on individual flags
|
|
230
|
-
const result = {
|
|
231
|
-
apiId: run.apiId,
|
|
232
|
-
id: run.id,
|
|
233
|
-
callId: run.callId,
|
|
234
|
-
timestamp: run.timestamp,
|
|
235
|
-
timeAgo,
|
|
236
|
-
statusCode: run.statusCode,
|
|
237
|
-
timeTaken: run.timeTaken,
|
|
238
|
-
isTestRun: run.isTestRun,
|
|
239
|
-
loading: run.loading,
|
|
240
|
-
};
|
|
241
|
-
if (includeApiInputs) {
|
|
242
|
-
result.inputs = run.inputs;
|
|
243
|
-
}
|
|
244
|
-
if (includeApiResponse) {
|
|
245
|
-
result.response = run.response;
|
|
246
|
-
}
|
|
247
|
-
if (includeApiError) {
|
|
248
|
-
result.error = run.error;
|
|
249
|
-
}
|
|
250
|
-
// Process stepLogs based on flags
|
|
251
|
-
if (run.stepLogs &&
|
|
252
|
-
run.stepLogs.length > 0 &&
|
|
253
|
-
(includeStepOutputs || includeStepLogs)) {
|
|
254
|
-
result.stepLogs = run.stepLogs.map((step) => {
|
|
255
|
-
const stepResult = {
|
|
256
|
-
stepName: step.stepName,
|
|
257
|
-
};
|
|
258
|
-
if (includeStepLogs) {
|
|
259
|
-
stepResult.stdout = step.stdout;
|
|
260
|
-
stepResult.stderr = step.stderr;
|
|
261
|
-
stepResult.error = step.error;
|
|
262
|
-
}
|
|
263
|
-
if (includeStepOutputs) {
|
|
264
|
-
stepResult.output = step.output;
|
|
265
|
-
}
|
|
266
|
-
return stepResult;
|
|
267
|
-
});
|
|
268
|
-
}
|
|
269
|
-
return result;
|
|
270
|
-
})
|
|
271
|
-
: [];
|
|
272
|
-
let truncatedCount = 0;
|
|
273
|
-
// Process console logs: add timeAgo and handle truncation
|
|
274
|
-
const processedConsoleLogs = consoleLogs.map((log) => {
|
|
275
|
-
const shouldTruncate = !fullContent;
|
|
276
|
-
const message = typeof log.message === "string"
|
|
277
|
-
? log.message
|
|
278
|
-
: String(log.message ?? "");
|
|
279
|
-
// Truncate message if needed
|
|
280
|
-
const messageResult = shouldTruncate
|
|
281
|
-
? truncateMessage(message, truncateLimit)
|
|
282
|
-
: {
|
|
283
|
-
text: message,
|
|
284
|
-
truncated: false,
|
|
285
|
-
originalLength: message.length,
|
|
286
|
-
};
|
|
287
|
-
// Truncate stack if present and truncation is enabled
|
|
288
|
-
const stack = typeof log.stack === "string" ? log.stack : undefined;
|
|
289
|
-
const stackResult = stack
|
|
290
|
-
? shouldTruncate
|
|
291
|
-
? truncateMessage(stack, truncateLimit)
|
|
292
|
-
: {
|
|
293
|
-
text: stack,
|
|
294
|
-
truncated: false,
|
|
295
|
-
originalLength: stack.length,
|
|
296
|
-
}
|
|
297
|
-
: undefined;
|
|
298
|
-
if (messageResult.truncated || stackResult?.truncated) {
|
|
299
|
-
truncatedCount++;
|
|
300
|
-
}
|
|
301
|
-
return {
|
|
302
|
-
id: log.id,
|
|
303
|
-
timestamp: log.timestamp,
|
|
304
|
-
timeAgo: log.timestamp ? formatTimeAgo(log.timestamp) : "unknown",
|
|
305
|
-
level: log.level,
|
|
306
|
-
message: messageResult.text,
|
|
307
|
-
messageTruncated: messageResult.truncated,
|
|
308
|
-
messageOriginalLength: messageResult.truncated
|
|
309
|
-
? messageResult.originalLength
|
|
310
|
-
: undefined,
|
|
311
|
-
stack: stackResult?.text,
|
|
312
|
-
stackTruncated: stackResult?.truncated,
|
|
313
|
-
generationTimestamp: log.generationTimestamp,
|
|
314
|
-
};
|
|
315
|
-
});
|
|
316
|
-
return {
|
|
317
|
-
consoleLogs: processedConsoleLogs,
|
|
318
|
-
consoleLogCount: processedConsoleLogs.length,
|
|
319
|
-
totalConsoleLogCount: allConsoleLogs.length,
|
|
320
|
-
truncatedCount,
|
|
321
|
-
// Only include API run fields when feature flag is enabled
|
|
322
|
-
...(apiRunLogsEnabled && {
|
|
323
|
-
apiRuns: processedApiRuns,
|
|
324
|
-
apiRunCount: processedApiRuns.length,
|
|
325
|
-
totalApiRunCount: allApiRuns.length,
|
|
326
|
-
}),
|
|
327
|
-
};
|
|
328
|
-
},
|
|
329
|
-
readOnly: true,
|
|
330
|
-
getSummary: (_input, output) => {
|
|
331
|
-
const logCount = output.consoleLogCount ?? 0;
|
|
332
|
-
const logText = `${logCount} log${logCount === 1 ? "" : "s"}`;
|
|
333
|
-
if (!apiRunLogsEnabled) {
|
|
334
|
-
return { output: logText };
|
|
335
|
-
}
|
|
336
|
-
const runCount = output.apiRunCount ?? 0;
|
|
337
|
-
return {
|
|
338
|
-
output: `${logText}, ${runCount} API run${runCount === 1 ? "" : "s"}`,
|
|
339
|
-
};
|
|
340
|
-
},
|
|
341
|
-
};
|
|
342
|
-
});
|
|
343
|
-
//# sourceMappingURL=get-logs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-logs.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools/get-logs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { ToolExecutionErrorSeverity } from "../../tools2/types.js";
|
|
2
|
-
/**
|
|
3
|
-
* Classify an external API error and return appropriate severity.
|
|
4
|
-
*
|
|
5
|
-
* - WARN: External API 4xx errors, database schema errors - external issues or AI mistakes
|
|
6
|
-
* - ERROR: Connection errors, auth errors, permission errors - actual problems
|
|
7
|
-
*/
|
|
8
|
-
export declare function classifyExternalErrorSeverity(errorMessage: string): ToolExecutionErrorSeverity;
|
|
9
|
-
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAuBxE;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,MAAM,GACnB,0BAA0B,CAQ5B"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
// Warning-level patterns (external issues or AI mistakes)
|
|
2
|
-
const WARNING_PATTERNS = [
|
|
3
|
-
// Database schema errors (AI made a schema mistake)
|
|
4
|
-
/column.*not found/i,
|
|
5
|
-
/column.*does not exist/i,
|
|
6
|
-
/unknown column/i,
|
|
7
|
-
/no such column/i,
|
|
8
|
-
/table.*not found/i,
|
|
9
|
-
/table.*does not exist/i,
|
|
10
|
-
/relation.*does not exist/i,
|
|
11
|
-
/invalid.*column/i,
|
|
12
|
-
/field.*not found/i,
|
|
13
|
-
/undefined column/i,
|
|
14
|
-
// External API 4xx client errors
|
|
15
|
-
/400.*bad request/i,
|
|
16
|
-
/404.*not found/i,
|
|
17
|
-
/405.*method not allowed/i,
|
|
18
|
-
/422.*unprocessable/i,
|
|
19
|
-
/429.*rate limit/i,
|
|
20
|
-
];
|
|
21
|
-
/**
|
|
22
|
-
* Classify an external API error and return appropriate severity.
|
|
23
|
-
*
|
|
24
|
-
* - WARN: External API 4xx errors, database schema errors - external issues or AI mistakes
|
|
25
|
-
* - ERROR: Connection errors, auth errors, permission errors - actual problems
|
|
26
|
-
*/
|
|
27
|
-
export function classifyExternalErrorSeverity(errorMessage) {
|
|
28
|
-
// External issues or AI mistakes → WARN
|
|
29
|
-
if (WARNING_PATTERNS.some((p) => p.test(errorMessage))) {
|
|
30
|
-
return "warn";
|
|
31
|
-
}
|
|
32
|
-
// Everything else (connection, auth, permission errors) → ERROR
|
|
33
|
-
return "error";
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/errors.ts"],"names":[],"mappings":"AAEA,0DAA0D;AAC1D,MAAM,gBAAgB,GAAG;IACvB,oDAAoD;IACpD,oBAAoB;IACpB,yBAAyB;IACzB,iBAAiB;IACjB,iBAAiB;IACjB,mBAAmB;IACnB,wBAAwB;IACxB,2BAA2B;IAC3B,kBAAkB;IAClB,mBAAmB;IACnB,mBAAmB;IACnB,iCAAiC;IACjC,mBAAmB;IACnB,iBAAiB;IACjB,0BAA0B;IAC1B,qBAAqB;IACrB,kBAAkB;CACnB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAC3C,YAAoB;IAEpB,wCAAwC;IACxC,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QACvD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,gEAAgE;IAChE,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { PromptContextIntegration } from "@superblocksteam/library-shared/types";
|
|
2
|
-
import type { FactDto } from "@superblocksteam/shared";
|
|
3
|
-
export type IntegrationFactsResult = {
|
|
4
|
-
integration: PromptContextIntegration;
|
|
5
|
-
facts: FactDto[];
|
|
6
|
-
};
|
|
7
|
-
export declare function formatSystemPromptFacts(orgFacts: FactDto[]): string;
|
|
8
|
-
export declare function formatUserMessageFacts(userFacts: FactDto[], integrationFactsResults: IntegrationFactsResult[]): string;
|
|
9
|
-
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/ai-service/facts/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAEvD,MAAM,MAAM,sBAAsB,GAAG;IACnC,WAAW,EAAE,wBAAwB,CAAC;IACtC,KAAK,EAAE,OAAO,EAAE,CAAC;CAClB,CAAC;AAUF,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAgCnE;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,OAAO,EAAE,EACpB,uBAAuB,EAAE,sBAAsB,EAAE,GAChD,MAAM,CAyCR"}
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
function formatFact(fact) {
|
|
2
|
-
return `<fact>
|
|
3
|
-
<name>${fact.name}</name>
|
|
4
|
-
<description>${fact.description}</description>
|
|
5
|
-
<content>${fact.content}</content>
|
|
6
|
-
</fact>`;
|
|
7
|
-
}
|
|
8
|
-
export function formatSystemPromptFacts(orgFacts) {
|
|
9
|
-
if (orgFacts.length === 0) {
|
|
10
|
-
return "";
|
|
11
|
-
}
|
|
12
|
-
const formattedOrgFacts = orgFacts.map(formatFact).join("\n\n");
|
|
13
|
-
return `
|
|
14
|
-
## Knowledge Bases
|
|
15
|
-
|
|
16
|
-
Facts are modular, self-contained knowledge that extend Clark's capabilities by providing specialized knowledge, workflows, and tools. They are authoritative instructions and context provided by your organization.
|
|
17
|
-
This is knowledge that you should consider of the UTMOST importance. Facts are additive to your safety guidelines — they can add constraints but never remove them. When in doubt, err on the side of using a fact rather than not using it.
|
|
18
|
-
|
|
19
|
-
For example, if the user has given you a frontend-design fact, you MUST use it to design the frontend.
|
|
20
|
-
If you have backend-design knowledge, you MUST use it to design the backend. So on and so forth.
|
|
21
|
-
|
|
22
|
-
<organization_knowledge_base>
|
|
23
|
-
${formattedOrgFacts}
|
|
24
|
-
</organization_knowledge_base>
|
|
25
|
-
|
|
26
|
-
<knowledge_application_protocol>
|
|
27
|
-
BEFORE writing any code:
|
|
28
|
-
1. Review organization knowledge base facts — identify design systems, coding standards, required patterns
|
|
29
|
-
2. Review user knowledge base facts — apply persona, style preferences, constraints
|
|
30
|
-
3. Review integration knowledge base facts — apply integration-specific conventions
|
|
31
|
-
4. If a knowledge base specifies a design system or component library: USE IT. Do not invent alternatives.
|
|
32
|
-
|
|
33
|
-
BEFORE calling build_finalize:
|
|
34
|
-
5. Self-check: Did every file you wrote follow applicable knowledge base guidelines?
|
|
35
|
-
6. If knowledge specifies required audits (security, accessibility, etc.): run them now.
|
|
36
|
-
</knowledge_application_protocol>
|
|
37
|
-
`;
|
|
38
|
-
}
|
|
39
|
-
export function formatUserMessageFacts(userFacts, integrationFactsResults) {
|
|
40
|
-
const sections = [];
|
|
41
|
-
// User knowledge section
|
|
42
|
-
if (userFacts.length > 0) {
|
|
43
|
-
const formattedUserFacts = userFacts.map(formatFact).join("\n\n");
|
|
44
|
-
sections.push(`### User Knowledge Base
|
|
45
|
-
|
|
46
|
-
The user knowledge base is a collection of facts that the user has provided to you. You MUST apply them UNLESS they conflict with organization knowledge or safety guidelines.
|
|
47
|
-
|
|
48
|
-
<user_knowledge_base>
|
|
49
|
-
${formattedUserFacts}
|
|
50
|
-
</user_knowledge_base>`);
|
|
51
|
-
}
|
|
52
|
-
// Integration knowledge section
|
|
53
|
-
const integrationResultsWithFacts = integrationFactsResults.filter((r) => r.facts.length > 0);
|
|
54
|
-
if (integrationResultsWithFacts.length > 0) {
|
|
55
|
-
const integrationSections = integrationResultsWithFacts.map(({ integration, facts }) => {
|
|
56
|
-
const displayName = integration.displayName || integration.name;
|
|
57
|
-
const formattedFacts = facts.map(formatFact).join("\n\n");
|
|
58
|
-
return `### ${displayName} (id: ${integration.id}, type: ${integration.type})
|
|
59
|
-
|
|
60
|
-
${formattedFacts}`;
|
|
61
|
-
});
|
|
62
|
-
sections.push(`### Integration Knowledge Base
|
|
63
|
-
|
|
64
|
-
The following are guidelines specific to the integrations selected for this request. You must apply these when you are using the integrations to build.
|
|
65
|
-
|
|
66
|
-
<integration_knowledge_base>
|
|
67
|
-
${integrationSections.join("\n\n")}
|
|
68
|
-
</integration_knowledge_base>`);
|
|
69
|
-
}
|
|
70
|
-
return sections.join("\n\n");
|
|
71
|
-
}
|
|
72
|
-
//# sourceMappingURL=helpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/ai-service/facts/helpers.ts"],"names":[],"mappings":"AAQA,SAAS,UAAU,CAAC,IAAa;IAC/B,OAAO;UACC,IAAI,CAAC,IAAI;iBACF,IAAI,CAAC,WAAW;aACpB,IAAI,CAAC,OAAO;QACjB,CAAC;AACT,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,QAAmB;IACzD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,iBAAiB,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEhE,OAAO;;;;;;;;;;EAUP,iBAAiB;;;;;;;;;;;;;;CAclB,CAAC;AACF,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,SAAoB,EACpB,uBAAiD;IAEjD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,yBAAyB;IACzB,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,kBAAkB,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClE,QAAQ,CAAC,IAAI,CAAC;;;;;EAKhB,kBAAkB;uBACG,CAAC,CAAC;IACvB,CAAC;IAED,gCAAgC;IAChC,MAAM,2BAA2B,GAAG,uBAAuB,CAAC,MAAM,CAChE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAC1B,CAAC;IAEF,IAAI,2BAA2B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3C,MAAM,mBAAmB,GAAG,2BAA2B,CAAC,GAAG,CACzD,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE;YACzB,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC;YAChE,MAAM,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1D,OAAO,OAAO,WAAW,SAAS,WAAW,CAAC,EAAE,WAAW,WAAW,CAAC,IAAI;;EAEjF,cAAc,EAAE,CAAC;QACb,CAAC,CACF,CAAC;QAEF,QAAQ,CAAC,IAAI,CAAC;;;;;EAKhB,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC;8BACJ,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai-service/facts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,YAAY,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai-service/facts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAA+B,MAAM,cAAc,CAAC"}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { type FactDto } from "@superblocksteam/shared";
|
|
2
|
-
import { type Logger } from "../../util/logger.js";
|
|
3
|
-
import type { AutoConnectingRpcClient } from "../../server-rpc/index.js";
|
|
4
|
-
import type { PromptContextIntegration } from "@superblocksteam/library-shared/types";
|
|
5
|
-
export type LoadedFacts = {
|
|
6
|
-
org: FactDto[];
|
|
7
|
-
user: FactDto[];
|
|
8
|
-
integrations: Record<string, FactDto[]>;
|
|
9
|
-
};
|
|
10
|
-
export type FactsPromptSections = {
|
|
11
|
-
systemPromptSection: string;
|
|
12
|
-
userMessageSection: string;
|
|
13
|
-
facts: LoadedFacts;
|
|
14
|
-
};
|
|
15
|
-
/**
|
|
16
|
-
* Manages knowledge/facts loading, caching, and tracking for a chat session.
|
|
17
|
-
* - Caches facts with TTL to reduce RPC calls
|
|
18
|
-
* - Tracks which facts have been sent to UI to only push net-new knowledge
|
|
19
|
-
*/
|
|
20
|
-
export declare class KnowledgeManager {
|
|
21
|
-
private cache;
|
|
22
|
-
private sentFactIds;
|
|
23
|
-
private isCacheValid;
|
|
24
|
-
private getCached;
|
|
25
|
-
private setCache;
|
|
26
|
-
loadOrgFacts(rpcClient: AutoConnectingRpcClient, organizationId: string, logger: Logger): Promise<FactDto[]>;
|
|
27
|
-
loadIntegrationFacts(rpcClient: AutoConnectingRpcClient, integrationId: string, logger: Logger): Promise<FactDto[]>;
|
|
28
|
-
loadUserFacts(rpcClient: AutoConnectingRpcClient, userId: string, logger: Logger): Promise<FactDto[]>;
|
|
29
|
-
/**
|
|
30
|
-
* Merge and de-duplicate integrations by id.
|
|
31
|
-
* This is so we can load all facts when a user might have not tagged something
|
|
32
|
-
* but Clark put it in the plan.
|
|
33
|
-
*/
|
|
34
|
-
private mergeIntegrations;
|
|
35
|
-
loadFactsPromptSections({ rpcClient, organizationId, userId, promptIntegrations, planIntegrations, logger, }: {
|
|
36
|
-
rpcClient: AutoConnectingRpcClient;
|
|
37
|
-
organizationId: string;
|
|
38
|
-
userId: string;
|
|
39
|
-
logger: Logger;
|
|
40
|
-
promptIntegrations: PromptContextIntegration[];
|
|
41
|
-
planIntegrations?: PromptContextIntegration[];
|
|
42
|
-
}): Promise<FactsPromptSections>;
|
|
43
|
-
/**
|
|
44
|
-
* Given loaded facts, returns only the facts that haven't been sent to UI yet.
|
|
45
|
-
* Also marks these facts as sent.
|
|
46
|
-
*/
|
|
47
|
-
getNetNewFacts(facts: LoadedFacts): LoadedFacts;
|
|
48
|
-
hasAnyFacts(facts: LoadedFacts): boolean;
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=knowledge-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge-manager.d.ts","sourceRoot":"","sources":["../../../src/ai-service/facts/knowledge-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,OAAO,EACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGjE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AActF,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,OAAO,EAAE,CAAC;IACf,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,WAAW,CAAC;CACpB,CAAC;AAEF;;;;GAIG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,WAAW,CAA0B;IAE7C,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,QAAQ;IAOV,YAAY,CAChB,SAAS,EAAE,uBAAuB,EAClC,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,EAAE,CAAC;IAyBf,oBAAoB,CACxB,SAAS,EAAE,uBAAuB,EAClC,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,EAAE,CAAC;IAwBf,aAAa,CACjB,SAAS,EAAE,uBAAuB,EAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,EAAE,CAAC;IAwBrB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgBnB,uBAAuB,CAAC,EAC5B,SAAS,EACT,cAAc,EACd,MAAM,EACN,kBAAkB,EAClB,gBAAgB,EAChB,MAAM,GACP,EAAE;QACD,SAAS,EAAE,uBAAuB,CAAC;QACnC,cAAc,EAAE,MAAM,CAAC;QACvB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,kBAAkB,EAAE,wBAAwB,EAAE,CAAC;QAC/C,gBAAgB,CAAC,EAAE,wBAAwB,EAAE,CAAC;KAC/C,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAwEhC;;;OAGG;IACH,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;IA4B/C,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;CAOzC"}
|