@relay-harness/coding-agent 0.0.0-stage → 1.0.2
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/CHANGELOG.md +6111 -0
- package/README.md +80 -2
- package/dist/bun/cli.d.ts +5 -0
- package/dist/bun/cli.d.ts.map +1 -0
- package/dist/bun/cli.js +5 -0
- package/dist/bun/cli.js.map +1 -0
- package/dist/bun/restore-sandbox-env.d.ts +17 -0
- package/dist/bun/restore-sandbox-env.d.ts.map +1 -0
- package/dist/bun/restore-sandbox-env.js +36 -0
- package/dist/bun/restore-sandbox-env.js.map +1 -0
- package/dist/bun/runtime-setup.d.ts +2 -0
- package/dist/bun/runtime-setup.d.ts.map +1 -0
- package/dist/bun/runtime-setup.js +12 -0
- package/dist/bun/runtime-setup.js.map +1 -0
- package/dist/bun/sandbox-env-setup.d.ts +2 -0
- package/dist/bun/sandbox-env-setup.d.ts.map +1 -0
- package/dist/bun/sandbox-env-setup.js +4 -0
- package/dist/bun/sandbox-env-setup.js.map +1 -0
- package/dist/bundle/chunks/anthropic-messages-TXWUAW5N.js +6 -0
- package/dist/bundle/chunks/anthropic.js +75 -0
- package/dist/bundle/chunks/azure-openai-responses-EJG46ESA.js +2 -0
- package/dist/bundle/chunks/bedrock-converse-stream.js +83 -0
- package/dist/bundle/chunks/chunk-3QND5D7W.js +82 -0
- package/dist/bundle/chunks/chunk-3XNI2SB6.js +15 -0
- package/dist/bundle/chunks/chunk-4L3WN2XY.js +2 -0
- package/dist/bundle/chunks/chunk-6CYCI3EJ.js +12 -0
- package/dist/bundle/chunks/chunk-7ZC4UXSL.js +2 -0
- package/dist/bundle/chunks/chunk-A3JYRWB6.js +2 -0
- package/dist/bundle/chunks/chunk-C47CLQZK.js +2 -0
- package/dist/bundle/chunks/chunk-DRQDKNXA.js +2 -0
- package/dist/bundle/chunks/chunk-EQ2HXQGJ.js +2 -0
- package/dist/bundle/chunks/chunk-F5ZABL6Z.js +20 -0
- package/dist/bundle/chunks/chunk-H3QXYIF7.js +31 -0
- package/dist/bundle/chunks/chunk-H6S6DQTM.js +2 -0
- package/dist/bundle/chunks/chunk-ISNO4JTR.js +127 -0
- package/dist/bundle/chunks/chunk-KJUDFE6Y.js +11 -0
- package/dist/bundle/chunks/chunk-L2ZPNLYD.js +2 -0
- package/dist/bundle/chunks/chunk-LD2P6SFZ.js +2 -0
- package/dist/bundle/chunks/chunk-MP5FU7MG.js +20 -0
- package/dist/bundle/chunks/chunk-O7R77OAK.js +2 -0
- package/dist/bundle/chunks/chunk-PGXDEOVV.js +2 -0
- package/dist/bundle/chunks/chunk-PJACZCIR.js +2 -0
- package/dist/bundle/chunks/chunk-PRRNXB7S.js +2 -0
- package/dist/bundle/chunks/chunk-PTRF7IZB.js +2 -0
- package/dist/bundle/chunks/chunk-RZ4KG4BP.js +44 -0
- package/dist/bundle/chunks/chunk-S3GGRYIO.js +6 -0
- package/dist/bundle/chunks/chunk-TEPMHNKQ.js +2 -0
- package/dist/bundle/chunks/chunk-TRDNDS6A.js +4 -0
- package/dist/bundle/chunks/chunk-USJZMAIR.js +2 -0
- package/dist/bundle/chunks/chunk-UTB4DTYQ.js +2 -0
- package/dist/bundle/chunks/chunk-WMTXXI7H.js +4 -0
- package/dist/bundle/chunks/chunk-XDAWU2J5.js +132 -0
- package/dist/bundle/chunks/chunk-XSLAMYCK.js +1297 -0
- package/dist/bundle/chunks/chunk-Z2G7KLPH.js +11 -0
- package/dist/bundle/chunks/cli-K4CNHWOI.js +51 -0
- package/dist/bundle/chunks/cloudflare-workers-ai-system-one-NM3JRRWQ.js +2 -0
- package/dist/bundle/chunks/codemode-worker.js +374 -0
- package/dist/bundle/chunks/easter-egg-3d-TGRCIHA4.js +2 -0
- package/dist/bundle/chunks/execute-6E5DA2QI.js +388 -0
- package/dist/bundle/chunks/github-copilot.js +2 -0
- package/dist/bundle/chunks/google-generative-ai-HYUNEOCJ.js +2 -0
- package/dist/bundle/chunks/google-vertex-J7MDGTNM.js +2 -0
- package/dist/bundle/chunks/https-proxy-agent-2VXB7436.js +13 -0
- package/dist/bundle/chunks/image-resize-worker.js +2 -0
- package/dist/bundle/chunks/jiti-loader-C3NU2SDH.js +21 -0
- package/dist/bundle/chunks/jiti-static-loader-E6ANQD5T.js +2 -0
- package/dist/bundle/chunks/kimi-coding.js +2 -0
- package/dist/bundle/chunks/lib-TEDK3E5I.js +9 -0
- package/dist/bundle/chunks/llama-cpp-classify-XT44PI3C.js +22 -0
- package/dist/bundle/chunks/meta.js +2 -0
- package/dist/bundle/chunks/mistral-conversations-UD2HHXKZ.js +5 -0
- package/dist/bundle/chunks/multipart-parser-SQ6GDJL7.js +3 -0
- package/dist/bundle/chunks/node-N5BSDOA5.js +16 -0
- package/dist/bundle/chunks/node-TWVVAGPO.js +2 -0
- package/dist/bundle/chunks/openai-chatgpt.js +75 -0
- package/dist/bundle/chunks/openai-codex-responses-EMHXEJR4.js +10 -0
- package/dist/bundle/chunks/openai-codex.js +75 -0
- package/dist/bundle/chunks/openai-completions-LPKRZYMC.js +7 -0
- package/dist/bundle/chunks/openai-responses-TOOBRHUV.js +3 -0
- package/dist/bundle/chunks/openrouter-images-ZVXWCSIM.js +2 -0
- package/dist/bundle/chunks/openrouter.js +75 -0
- package/dist/bundle/chunks/relay-messages-QRFJXG5X.js +8 -0
- package/dist/bundle/chunks/runtime-O5HLCH3V.js +2 -0
- package/dist/bundle/chunks/src-UK77SYZE.js +4 -0
- package/dist/bundle/chunks/typesafe-system-one-PRR5K6CI.js +2 -0
- package/dist/bundle/chunks/virtual-modules-FNVEVB65.js +2 -0
- package/dist/bundle/chunks/xai.js +2 -0
- package/dist/bundle/cli-runtime.js +3 -0
- package/dist/bundle/cli.js +5 -0
- package/dist/bundle/index.js +2 -0
- package/dist/bundle/rpc-entry.js +3 -0
- package/dist/cli/args.d.ts +61 -0
- package/dist/cli/args.d.ts.map +1 -0
- package/dist/cli/args.js +454 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/auth-check.d.ts +19 -0
- package/dist/cli/auth-check.d.ts.map +1 -0
- package/dist/cli/auth-check.js +50 -0
- package/dist/cli/auth-check.js.map +1 -0
- package/dist/cli/auth-command.d.ts +24 -0
- package/dist/cli/auth-command.d.ts.map +1 -0
- package/dist/cli/auth-command.js +103 -0
- package/dist/cli/auth-command.js.map +1 -0
- package/dist/cli/config-selector.d.ts +16 -0
- package/dist/cli/config-selector.d.ts.map +1 -0
- package/dist/cli/config-selector.js +32 -0
- package/dist/cli/config-selector.js.map +1 -0
- package/dist/cli/credential-print.d.ts +13 -0
- package/dist/cli/credential-print.d.ts.map +1 -0
- package/dist/cli/credential-print.js +76 -0
- package/dist/cli/credential-print.js.map +1 -0
- package/dist/cli/file-processor.d.ts +15 -0
- package/dist/cli/file-processor.d.ts.map +1 -0
- package/dist/cli/file-processor.js +71 -0
- package/dist/cli/file-processor.js.map +1 -0
- package/dist/cli/initial-message.d.ts +18 -0
- package/dist/cli/initial-message.d.ts.map +1 -0
- package/dist/cli/initial-message.js +22 -0
- package/dist/cli/initial-message.js.map +1 -0
- package/dist/cli/list-models.d.ts +9 -0
- package/dist/cli/list-models.d.ts.map +1 -0
- package/dist/cli/list-models.js +98 -0
- package/dist/cli/list-models.js.map +1 -0
- package/dist/cli/project-trust.d.ts +10 -0
- package/dist/cli/project-trust.d.ts.map +1 -0
- package/dist/cli/project-trust.js +48 -0
- package/dist/cli/project-trust.js.map +1 -0
- package/dist/cli/session-picker.d.ts +10 -0
- package/dist/cli/session-picker.d.ts.map +1 -0
- package/dist/cli/session-picker.js +36 -0
- package/dist/cli/session-picker.js.map +1 -0
- package/dist/cli/setup.d.ts +2 -0
- package/dist/cli/setup.d.ts.map +1 -0
- package/dist/cli/setup.js +12 -0
- package/dist/cli/setup.js.map +1 -0
- package/dist/cli/startup-ui.d.ts +20 -0
- package/dist/cli/startup-ui.d.ts.map +1 -0
- package/dist/cli/startup-ui.js +193 -0
- package/dist/cli/startup-ui.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +6 -0
- package/dist/cli.js.map +1 -0
- package/dist/config.d.ts +108 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +264 -0
- package/dist/config.js.map +1 -0
- package/dist/core/agent-session-runtime.d.ts +119 -0
- package/dist/core/agent-session-runtime.d.ts.map +1 -0
- package/dist/core/agent-session-runtime.js +317 -0
- package/dist/core/agent-session-runtime.js.map +1 -0
- package/dist/core/agent-session-services.d.ts +86 -0
- package/dist/core/agent-session-services.d.ts.map +1 -0
- package/dist/core/agent-session-services.js +147 -0
- package/dist/core/agent-session-services.js.map +1 -0
- package/dist/core/agent-session.d.ts +891 -0
- package/dist/core/agent-session.d.ts.map +1 -0
- package/dist/core/agent-session.js +3553 -0
- package/dist/core/agent-session.js.map +1 -0
- package/dist/core/auth-guidance.d.ts +5 -0
- package/dist/core/auth-guidance.d.ts.map +1 -0
- package/dist/core/auth-guidance.js +21 -0
- package/dist/core/auth-guidance.js.map +1 -0
- package/dist/core/auth-storage.d.ts +72 -0
- package/dist/core/auth-storage.d.ts.map +1 -0
- package/dist/core/auth-storage.js +426 -0
- package/dist/core/auth-storage.js.map +1 -0
- package/dist/core/bash-executor.d.ts +32 -0
- package/dist/core/bash-executor.d.ts.map +1 -0
- package/dist/core/bash-executor.js +106 -0
- package/dist/core/bash-executor.js.map +1 -0
- package/dist/core/bug-report.d.ts +176 -0
- package/dist/core/bug-report.d.ts.map +1 -0
- package/dist/core/bug-report.js +292 -0
- package/dist/core/bug-report.js.map +1 -0
- package/dist/core/cache-stats.d.ts +49 -0
- package/dist/core/cache-stats.d.ts.map +1 -0
- package/dist/core/cache-stats.js +112 -0
- package/dist/core/cache-stats.js.map +1 -0
- package/dist/core/cache-warmer.d.ts +103 -0
- package/dist/core/cache-warmer.d.ts.map +1 -0
- package/dist/core/cache-warmer.js +356 -0
- package/dist/core/cache-warmer.js.map +1 -0
- package/dist/core/compaction/branch-summarization.d.ts +98 -0
- package/dist/core/compaction/branch-summarization.d.ts.map +1 -0
- package/dist/core/compaction/branch-summarization.js +251 -0
- package/dist/core/compaction/branch-summarization.js.map +1 -0
- package/dist/core/compaction/compaction.d.ts +145 -0
- package/dist/core/compaction/compaction.d.ts.map +1 -0
- package/dist/core/compaction/compaction.js +744 -0
- package/dist/core/compaction/compaction.js.map +1 -0
- package/dist/core/compaction/index.d.ts +7 -0
- package/dist/core/compaction/index.d.ts.map +1 -0
- package/dist/core/compaction/index.js +7 -0
- package/dist/core/compaction/index.js.map +1 -0
- package/dist/core/compaction/utils.d.ts +39 -0
- package/dist/core/compaction/utils.d.ts.map +1 -0
- package/dist/core/compaction/utils.js +149 -0
- package/dist/core/compaction/utils.js.map +1 -0
- package/dist/core/crash-log.d.ts +27 -0
- package/dist/core/crash-log.d.ts.map +1 -0
- package/dist/core/crash-log.js +140 -0
- package/dist/core/crash-log.js.map +1 -0
- package/dist/core/defaults.d.ts +4 -0
- package/dist/core/defaults.d.ts.map +1 -0
- package/dist/core/defaults.js +11 -0
- package/dist/core/defaults.js.map +1 -0
- package/dist/core/diagnostics.d.ts +15 -0
- package/dist/core/diagnostics.d.ts.map +1 -0
- package/dist/core/diagnostics.js +2 -0
- package/dist/core/diagnostics.js.map +1 -0
- package/dist/core/event-bus.d.ts +9 -0
- package/dist/core/event-bus.d.ts.map +1 -0
- package/dist/core/event-bus.js +25 -0
- package/dist/core/event-bus.js.map +1 -0
- package/dist/core/exec.d.ts +29 -0
- package/dist/core/exec.d.ts.map +1 -0
- package/dist/core/exec.js +75 -0
- package/dist/core/exec.js.map +1 -0
- package/dist/core/experimental.d.ts +2 -0
- package/dist/core/experimental.d.ts.map +1 -0
- package/dist/core/experimental.js +4 -0
- package/dist/core/experimental.js.map +1 -0
- package/dist/core/export-html/ansi-to-html.d.ts +22 -0
- package/dist/core/export-html/ansi-to-html.d.ts.map +1 -0
- package/dist/core/export-html/ansi-to-html.js +249 -0
- package/dist/core/export-html/ansi-to-html.js.map +1 -0
- package/dist/core/export-html/index.d.ts +37 -0
- package/dist/core/export-html/index.d.ts.map +1 -0
- package/dist/core/export-html/index.js +226 -0
- package/dist/core/export-html/index.js.map +1 -0
- package/dist/core/export-html/template.css +1076 -0
- package/dist/core/export-html/template.html +55 -0
- package/dist/core/export-html/template.js +1918 -0
- package/dist/core/export-html/tool-renderer.d.ts +34 -0
- package/dist/core/export-html/tool-renderer.d.ts.map +1 -0
- package/dist/core/export-html/tool-renderer.js +108 -0
- package/dist/core/export-html/tool-renderer.js.map +1 -0
- package/dist/core/export-html/vendor/highlight.min.js +1213 -0
- package/dist/core/export-html/vendor/marked.min.js +78 -0
- package/dist/core/extensions/index.d.ts +12 -0
- package/dist/core/extensions/index.d.ts.map +1 -0
- package/dist/core/extensions/index.js +9 -0
- package/dist/core/extensions/index.js.map +1 -0
- package/dist/core/extensions/jiti-loader.d.ts +2 -0
- package/dist/core/extensions/jiti-loader.d.ts.map +1 -0
- package/dist/core/extensions/jiti-loader.js +4 -0
- package/dist/core/extensions/jiti-loader.js.map +1 -0
- package/dist/core/extensions/jiti-static-loader.d.ts +2 -0
- package/dist/core/extensions/jiti-static-loader.d.ts.map +1 -0
- package/dist/core/extensions/jiti-static-loader.js +4 -0
- package/dist/core/extensions/jiti-static-loader.js.map +1 -0
- package/dist/core/extensions/loader.d.ts +23 -0
- package/dist/core/extensions/loader.d.ts.map +1 -0
- package/dist/core/extensions/loader.js +701 -0
- package/dist/core/extensions/loader.js.map +1 -0
- package/dist/core/extensions/runner.d.ts +213 -0
- package/dist/core/extensions/runner.d.ts.map +1 -0
- package/dist/core/extensions/runner.js +1239 -0
- package/dist/core/extensions/runner.js.map +1 -0
- package/dist/core/extensions/types.d.ts +1720 -0
- package/dist/core/extensions/types.d.ts.map +1 -0
- package/dist/core/extensions/types.js +48 -0
- package/dist/core/extensions/types.js.map +1 -0
- package/dist/core/extensions/virtual-modules.d.ts +3 -0
- package/dist/core/extensions/virtual-modules.d.ts.map +1 -0
- package/dist/core/extensions/virtual-modules.js +38 -0
- package/dist/core/extensions/virtual-modules.js.map +1 -0
- package/dist/core/extensions/wrapper.d.ts +20 -0
- package/dist/core/extensions/wrapper.d.ts.map +1 -0
- package/dist/core/extensions/wrapper.js +22 -0
- package/dist/core/extensions/wrapper.js.map +1 -0
- package/dist/core/footer-data-provider.d.ts +64 -0
- package/dist/core/footer-data-provider.d.ts.map +1 -0
- package/dist/core/footer-data-provider.js +338 -0
- package/dist/core/footer-data-provider.js.map +1 -0
- package/dist/core/harness-core.d.ts +50 -0
- package/dist/core/harness-core.d.ts.map +1 -0
- package/dist/core/harness-core.js +240 -0
- package/dist/core/harness-core.js.map +1 -0
- package/dist/core/http-dispatcher.d.ts +22 -0
- package/dist/core/http-dispatcher.d.ts.map +1 -0
- package/dist/core/http-dispatcher.js +98 -0
- package/dist/core/http-dispatcher.js.map +1 -0
- package/dist/core/index.d.ts +14 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +13 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/keybindings.d.ts +428 -0
- package/dist/core/keybindings.d.ts.map +1 -0
- package/dist/core/keybindings.js +321 -0
- package/dist/core/keybindings.js.map +1 -0
- package/dist/core/mcp-servers.d.ts +125 -0
- package/dist/core/mcp-servers.d.ts.map +1 -0
- package/dist/core/mcp-servers.js +198 -0
- package/dist/core/mcp-servers.js.map +1 -0
- package/dist/core/messages.d.ts +77 -0
- package/dist/core/messages.d.ts.map +1 -0
- package/dist/core/messages.js +124 -0
- package/dist/core/messages.js.map +1 -0
- package/dist/core/model-config.d.ts +759 -0
- package/dist/core/model-config.d.ts.map +1 -0
- package/dist/core/model-config.js +293 -0
- package/dist/core/model-config.js.map +1 -0
- package/dist/core/model-registry.d.ts +63 -0
- package/dist/core/model-registry.d.ts.map +1 -0
- package/dist/core/model-registry.js +144 -0
- package/dist/core/model-registry.js.map +1 -0
- package/dist/core/model-resolver.d.ts +124 -0
- package/dist/core/model-resolver.d.ts.map +1 -0
- package/dist/core/model-resolver.js +589 -0
- package/dist/core/model-resolver.js.map +1 -0
- package/dist/core/model-runtime.d.ts +142 -0
- package/dist/core/model-runtime.d.ts.map +1 -0
- package/dist/core/model-runtime.js +732 -0
- package/dist/core/model-runtime.js.map +1 -0
- package/dist/core/models-store.d.ts +22 -0
- package/dist/core/models-store.d.ts.map +1 -0
- package/dist/core/models-store.js +115 -0
- package/dist/core/models-store.js.map +1 -0
- package/dist/core/nested-tool-calls.d.ts +102 -0
- package/dist/core/nested-tool-calls.d.ts.map +1 -0
- package/dist/core/nested-tool-calls.js +178 -0
- package/dist/core/nested-tool-calls.js.map +1 -0
- package/dist/core/output-guard.d.ts +7 -0
- package/dist/core/output-guard.d.ts.map +1 -0
- package/dist/core/output-guard.js +89 -0
- package/dist/core/output-guard.js.map +1 -0
- package/dist/core/package-manager.d.ts +217 -0
- package/dist/core/package-manager.d.ts.map +1 -0
- package/dist/core/package-manager.js +2224 -0
- package/dist/core/package-manager.js.map +1 -0
- package/dist/core/project-trust.d.ts +15 -0
- package/dist/core/project-trust.d.ts.map +1 -0
- package/dist/core/project-trust.js +59 -0
- package/dist/core/project-trust.js.map +1 -0
- package/dist/core/prompt-templates.d.ts +59 -0
- package/dist/core/prompt-templates.d.ts.map +1 -0
- package/dist/core/prompt-templates.js +262 -0
- package/dist/core/prompt-templates.js.map +1 -0
- package/dist/core/provider-attribution.d.ts +4 -0
- package/dist/core/provider-attribution.d.ts.map +1 -0
- package/dist/core/provider-attribution.js +72 -0
- package/dist/core/provider-attribution.js.map +1 -0
- package/dist/core/provider-composer.d.ts +80 -0
- package/dist/core/provider-composer.d.ts.map +1 -0
- package/dist/core/provider-composer.js +484 -0
- package/dist/core/provider-composer.js.map +1 -0
- package/dist/core/relay-manifest.d.ts +8 -0
- package/dist/core/relay-manifest.d.ts.map +1 -0
- package/dist/core/relay-manifest.js +26 -0
- package/dist/core/relay-manifest.js.map +1 -0
- package/dist/core/resolve-config-value.d.ts +30 -0
- package/dist/core/resolve-config-value.d.ts.map +1 -0
- package/dist/core/resolve-config-value.js +247 -0
- package/dist/core/resolve-config-value.js.map +1 -0
- package/dist/core/resource-loader.d.ts +227 -0
- package/dist/core/resource-loader.d.ts.map +1 -0
- package/dist/core/resource-loader.js +1005 -0
- package/dist/core/resource-loader.js.map +1 -0
- package/dist/core/runtime-credentials.d.ts +15 -0
- package/dist/core/runtime-credentials.d.ts.map +1 -0
- package/dist/core/runtime-credentials.js +39 -0
- package/dist/core/runtime-credentials.js.map +1 -0
- package/dist/core/sdk.d.ts +108 -0
- package/dist/core/sdk.d.ts.map +1 -0
- package/dist/core/sdk.js +315 -0
- package/dist/core/sdk.js.map +1 -0
- package/dist/core/session-cwd.d.ts +19 -0
- package/dist/core/session-cwd.d.ts.map +1 -0
- package/dist/core/session-cwd.js +38 -0
- package/dist/core/session-cwd.js.map +1 -0
- package/dist/core/session-export.d.ts +8 -0
- package/dist/core/session-export.d.ts.map +1 -0
- package/dist/core/session-export.js +33 -0
- package/dist/core/session-export.js.map +1 -0
- package/dist/core/session-manager.d.ts +416 -0
- package/dist/core/session-manager.d.ts.map +1 -0
- package/dist/core/session-manager.js +1523 -0
- package/dist/core/session-manager.js.map +1 -0
- package/dist/core/settings-diagnostics.d.ts +9 -0
- package/dist/core/settings-diagnostics.d.ts.map +1 -0
- package/dist/core/settings-diagnostics.js +21 -0
- package/dist/core/settings-diagnostics.js.map +1 -0
- package/dist/core/settings-manager.d.ts +421 -0
- package/dist/core/settings-manager.d.ts.map +1 -0
- package/dist/core/settings-manager.js +1120 -0
- package/dist/core/settings-manager.js.map +1 -0
- package/dist/core/skills.d.ts +60 -0
- package/dist/core/skills.d.ts.map +1 -0
- package/dist/core/skills.js +408 -0
- package/dist/core/skills.js.map +1 -0
- package/dist/core/slash-commands.d.ts +15 -0
- package/dist/core/slash-commands.d.ts.map +1 -0
- package/dist/core/slash-commands.js +29 -0
- package/dist/core/slash-commands.js.map +1 -0
- package/dist/core/source-info.d.ts +26 -0
- package/dist/core/source-info.d.ts.map +1 -0
- package/dist/core/source-info.js +35 -0
- package/dist/core/source-info.js.map +1 -0
- package/dist/core/system-prompt.d.ts +71 -0
- package/dist/core/system-prompt.d.ts.map +1 -0
- package/dist/core/system-prompt.js +147 -0
- package/dist/core/system-prompt.js.map +1 -0
- package/dist/core/telemetry.d.ts +3 -0
- package/dist/core/telemetry.d.ts.map +1 -0
- package/dist/core/telemetry.js +9 -0
- package/dist/core/telemetry.js.map +1 -0
- package/dist/core/timings.d.ts +10 -0
- package/dist/core/timings.d.ts.map +1 -0
- package/dist/core/timings.js +41 -0
- package/dist/core/timings.js.map +1 -0
- package/dist/core/tools/bash.d.ts +100 -0
- package/dist/core/tools/bash.d.ts.map +1 -0
- package/dist/core/tools/bash.js +333 -0
- package/dist/core/tools/bash.js.map +1 -0
- package/dist/core/tools/edit-diff.d.ts +101 -0
- package/dist/core/tools/edit-diff.d.ts.map +1 -0
- package/dist/core/tools/edit-diff.js +421 -0
- package/dist/core/tools/edit-diff.js.map +1 -0
- package/dist/core/tools/edit.d.ts +44 -0
- package/dist/core/tools/edit.d.ts.map +1 -0
- package/dist/core/tools/edit.js +147 -0
- package/dist/core/tools/edit.js.map +1 -0
- package/dist/core/tools/file-mutation-queue.d.ts +6 -0
- package/dist/core/tools/file-mutation-queue.d.ts.map +1 -0
- package/dist/core/tools/file-mutation-queue.js +52 -0
- package/dist/core/tools/file-mutation-queue.js.map +1 -0
- package/dist/core/tools/find.d.ts +42 -0
- package/dist/core/tools/find.d.ts.map +1 -0
- package/dist/core/tools/find.js +251 -0
- package/dist/core/tools/find.js.map +1 -0
- package/dist/core/tools/grep.d.ts +41 -0
- package/dist/core/tools/grep.d.ts.map +1 -0
- package/dist/core/tools/grep.js +252 -0
- package/dist/core/tools/grep.js.map +1 -0
- package/dist/core/tools/index.d.ts +43 -0
- package/dist/core/tools/index.d.ts.map +1 -0
- package/dist/core/tools/index.js +129 -0
- package/dist/core/tools/index.js.map +1 -0
- package/dist/core/tools/ls.d.ts +41 -0
- package/dist/core/tools/ls.d.ts.map +1 -0
- package/dist/core/tools/ls.js +126 -0
- package/dist/core/tools/ls.js.map +1 -0
- package/dist/core/tools/output-accumulator.d.ts +63 -0
- package/dist/core/tools/output-accumulator.d.ts.map +1 -0
- package/dist/core/tools/output-accumulator.js +214 -0
- package/dist/core/tools/output-accumulator.js.map +1 -0
- package/dist/core/tools/path-utils.d.ts +10 -0
- package/dist/core/tools/path-utils.d.ts.map +1 -0
- package/dist/core/tools/path-utils.js +99 -0
- package/dist/core/tools/path-utils.js.map +1 -0
- package/dist/core/tools/powershell.d.ts +16 -0
- package/dist/core/tools/powershell.d.ts.map +1 -0
- package/dist/core/tools/powershell.js +39 -0
- package/dist/core/tools/powershell.js.map +1 -0
- package/dist/core/tools/read.d.ts +42 -0
- package/dist/core/tools/read.d.ts.map +1 -0
- package/dist/core/tools/read.js +169 -0
- package/dist/core/tools/read.js.map +1 -0
- package/dist/core/tools/render-utils.d.ts +30 -0
- package/dist/core/tools/render-utils.d.ts.map +1 -0
- package/dist/core/tools/render-utils.js +91 -0
- package/dist/core/tools/render-utils.js.map +1 -0
- package/dist/core/tools/renderers/bash.d.ts +12 -0
- package/dist/core/tools/renderers/bash.d.ts.map +1 -0
- package/dist/core/tools/renderers/bash.js +117 -0
- package/dist/core/tools/renderers/bash.js.map +1 -0
- package/dist/core/tools/renderers/edit.d.ts +23 -0
- package/dist/core/tools/renderers/edit.d.ts.map +1 -0
- package/dist/core/tools/renderers/edit.js +167 -0
- package/dist/core/tools/renderers/edit.js.map +1 -0
- package/dist/core/tools/renderers/find.d.ts +10 -0
- package/dist/core/tools/renderers/find.d.ts.map +1 -0
- package/dist/core/tools/renderers/find.js +64 -0
- package/dist/core/tools/renderers/find.js.map +1 -0
- package/dist/core/tools/renderers/grep.d.ts +10 -0
- package/dist/core/tools/renderers/grep.d.ts.map +1 -0
- package/dist/core/tools/renderers/grep.js +69 -0
- package/dist/core/tools/renderers/grep.js.map +1 -0
- package/dist/core/tools/renderers/index.d.ts +28 -0
- package/dist/core/tools/renderers/index.d.ts.map +1 -0
- package/dist/core/tools/renderers/index.js +47 -0
- package/dist/core/tools/renderers/index.js.map +1 -0
- package/dist/core/tools/renderers/ls.d.ts +10 -0
- package/dist/core/tools/renderers/ls.d.ts.map +1 -0
- package/dist/core/tools/renderers/ls.js +58 -0
- package/dist/core/tools/renderers/ls.js.map +1 -0
- package/dist/core/tools/renderers/read.d.ts +11 -0
- package/dist/core/tools/renderers/read.d.ts.map +1 -0
- package/dist/core/tools/renderers/read.js +130 -0
- package/dist/core/tools/renderers/read.js.map +1 -0
- package/dist/core/tools/renderers/write.d.ts +10 -0
- package/dist/core/tools/renderers/write.d.ts.map +1 -0
- package/dist/core/tools/renderers/write.js +153 -0
- package/dist/core/tools/renderers/write.js.map +1 -0
- package/dist/core/tools/tool-definition-wrapper.d.ts +16 -0
- package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -0
- package/dist/core/tools/tool-definition-wrapper.js +38 -0
- package/dist/core/tools/tool-definition-wrapper.js.map +1 -0
- package/dist/core/tools/truncate.d.ts +84 -0
- package/dist/core/tools/truncate.d.ts.map +1 -0
- package/dist/core/tools/truncate.js +244 -0
- package/dist/core/tools/truncate.js.map +1 -0
- package/dist/core/tools/write.d.ts +30 -0
- package/dist/core/tools/write.d.ts.map +1 -0
- package/dist/core/tools/write.js +61 -0
- package/dist/core/tools/write.js.map +1 -0
- package/dist/core/trust-manager.d.ts +36 -0
- package/dist/core/trust-manager.d.ts.map +1 -0
- package/dist/core/trust-manager.js +204 -0
- package/dist/core/trust-manager.js.map +1 -0
- package/dist/core/usage-totals.d.ts +21 -0
- package/dist/core/usage-totals.d.ts.map +1 -0
- package/dist/core/usage-totals.js +79 -0
- package/dist/core/usage-totals.js.map +1 -0
- package/dist/core/virtual-models.d.ts +117 -0
- package/dist/core/virtual-models.d.ts.map +1 -0
- package/dist/core/virtual-models.js +124 -0
- package/dist/core/virtual-models.js.map +1 -0
- package/dist/core/workspace-probe.d.ts +8 -0
- package/dist/core/workspace-probe.d.ts.map +1 -0
- package/dist/core/workspace-probe.js +65 -0
- package/dist/core/workspace-probe.js.map +1 -0
- package/dist/extensions/codemode/execute.d.ts +16 -0
- package/dist/extensions/codemode/execute.d.ts.map +1 -0
- package/dist/extensions/codemode/execute.js +577 -0
- package/dist/extensions/codemode/execute.js.map +1 -0
- package/dist/extensions/codemode/execute.lazy.d.ts +3 -0
- package/dist/extensions/codemode/execute.lazy.d.ts.map +1 -0
- package/dist/extensions/codemode/execute.lazy.js +3 -0
- package/dist/extensions/codemode/execute.lazy.js.map +1 -0
- package/dist/extensions/codemode/index.d.ts +21 -0
- package/dist/extensions/codemode/index.d.ts.map +1 -0
- package/dist/extensions/codemode/index.js +31 -0
- package/dist/extensions/codemode/index.js.map +1 -0
- package/dist/extensions/codemode/renderer.d.ts +12 -0
- package/dist/extensions/codemode/renderer.d.ts.map +1 -0
- package/dist/extensions/codemode/renderer.js +137 -0
- package/dist/extensions/codemode/renderer.js.map +1 -0
- package/dist/extensions/codemode/tool.d.ts +123 -0
- package/dist/extensions/codemode/tool.d.ts.map +1 -0
- package/dist/extensions/codemode/tool.js +268 -0
- package/dist/extensions/codemode/tool.js.map +1 -0
- package/dist/extensions/codemode/worker.d.ts +7 -0
- package/dist/extensions/codemode/worker.d.ts.map +1 -0
- package/dist/extensions/codemode/worker.js +7 -0
- package/dist/extensions/codemode/worker.js.map +1 -0
- package/dist/extensions/index.d.ts +3 -0
- package/dist/extensions/index.d.ts.map +1 -0
- package/dist/extensions/index.js +19 -0
- package/dist/extensions/index.js.map +1 -0
- package/dist/extensions/intake/docx.d.ts +42 -0
- package/dist/extensions/intake/docx.d.ts.map +1 -0
- package/dist/extensions/intake/docx.js +148 -0
- package/dist/extensions/intake/docx.js.map +1 -0
- package/dist/extensions/intake/index.d.ts +17 -0
- package/dist/extensions/intake/index.d.ts.map +1 -0
- package/dist/extensions/intake/index.js +88 -0
- package/dist/extensions/intake/index.js.map +1 -0
- package/dist/extensions/intake/prompt.d.ts +6 -0
- package/dist/extensions/intake/prompt.d.ts.map +1 -0
- package/dist/extensions/intake/prompt.js +41 -0
- package/dist/extensions/intake/prompt.js.map +1 -0
- package/dist/extensions/intake/questionnaire.d.ts +84 -0
- package/dist/extensions/intake/questionnaire.d.ts.map +1 -0
- package/dist/extensions/intake/questionnaire.js +472 -0
- package/dist/extensions/intake/questionnaire.js.map +1 -0
- package/dist/extensions/laya/assessment.d.ts +34 -0
- package/dist/extensions/laya/assessment.d.ts.map +1 -0
- package/dist/extensions/laya/assessment.js +171 -0
- package/dist/extensions/laya/assessment.js.map +1 -0
- package/dist/extensions/laya/index.d.ts +34 -0
- package/dist/extensions/laya/index.d.ts.map +1 -0
- package/dist/extensions/laya/index.js +516 -0
- package/dist/extensions/laya/index.js.map +1 -0
- package/dist/extensions/laya/model-manifest.d.ts +7 -0
- package/dist/extensions/laya/model-manifest.d.ts.map +1 -0
- package/dist/extensions/laya/model-manifest.js +48 -0
- package/dist/extensions/laya/model-manifest.js.map +1 -0
- package/dist/extensions/laya/policy.d.ts +130 -0
- package/dist/extensions/laya/policy.d.ts.map +1 -0
- package/dist/extensions/laya/policy.js +222 -0
- package/dist/extensions/laya/policy.js.map +1 -0
- package/dist/extensions/laya/questions.d.ts +60 -0
- package/dist/extensions/laya/questions.d.ts.map +1 -0
- package/dist/extensions/laya/questions.js +189 -0
- package/dist/extensions/laya/questions.js.map +1 -0
- package/dist/extensions/laya/routers.d.ts +17 -0
- package/dist/extensions/laya/routers.d.ts.map +1 -0
- package/dist/extensions/laya/routers.js +119 -0
- package/dist/extensions/laya/routers.js.map +1 -0
- package/dist/extensions/laya/runtime.d.ts +68 -0
- package/dist/extensions/laya/runtime.d.ts.map +1 -0
- package/dist/extensions/laya/runtime.js +179 -0
- package/dist/extensions/laya/runtime.js.map +1 -0
- package/dist/extensions/laya/seed.d.ts +39 -0
- package/dist/extensions/laya/seed.d.ts.map +1 -0
- package/dist/extensions/laya/seed.js +358 -0
- package/dist/extensions/laya/seed.js.map +1 -0
- package/dist/extensions/laya/server.d.ts +26 -0
- package/dist/extensions/laya/server.d.ts.map +1 -0
- package/dist/extensions/laya/server.js +117 -0
- package/dist/extensions/laya/server.js.map +1 -0
- package/dist/extensions/laya/telemetry.d.ts +94 -0
- package/dist/extensions/laya/telemetry.d.ts.map +1 -0
- package/dist/extensions/laya/telemetry.js +107 -0
- package/dist/extensions/laya/telemetry.js.map +1 -0
- package/dist/extensions/llama/client.d.ts +69 -0
- package/dist/extensions/llama/client.d.ts.map +1 -0
- package/dist/extensions/llama/client.js +313 -0
- package/dist/extensions/llama/client.js.map +1 -0
- package/dist/extensions/llama/huggingface.d.ts +23 -0
- package/dist/extensions/llama/huggingface.d.ts.map +1 -0
- package/dist/extensions/llama/huggingface.js +141 -0
- package/dist/extensions/llama/huggingface.js.map +1 -0
- package/dist/extensions/llama/index.d.ts +3 -0
- package/dist/extensions/llama/index.d.ts.map +1 -0
- package/dist/extensions/llama/index.js +219 -0
- package/dist/extensions/llama/index.js.map +1 -0
- package/dist/extensions/llama/provider.d.ts +12 -0
- package/dist/extensions/llama/provider.d.ts.map +1 -0
- package/dist/extensions/llama/provider.js +213 -0
- package/dist/extensions/llama/provider.js.map +1 -0
- package/dist/extensions/llama/ui.d.ts +42 -0
- package/dist/extensions/llama/ui.d.ts.map +1 -0
- package/dist/extensions/llama/ui.js +416 -0
- package/dist/extensions/llama/ui.js.map +1 -0
- package/dist/extensions/mcp/cli.d.ts +21 -0
- package/dist/extensions/mcp/cli.d.ts.map +1 -0
- package/dist/extensions/mcp/cli.js +503 -0
- package/dist/extensions/mcp/cli.js.map +1 -0
- package/dist/extensions/mcp/cli.lazy.d.ts +3 -0
- package/dist/extensions/mcp/cli.lazy.d.ts.map +1 -0
- package/dist/extensions/mcp/cli.lazy.js +3 -0
- package/dist/extensions/mcp/cli.lazy.js.map +1 -0
- package/dist/extensions/mcp/config.d.ts +84 -0
- package/dist/extensions/mcp/config.d.ts.map +1 -0
- package/dist/extensions/mcp/config.js +194 -0
- package/dist/extensions/mcp/config.js.map +1 -0
- package/dist/extensions/mcp/index.d.ts +79 -0
- package/dist/extensions/mcp/index.d.ts.map +1 -0
- package/dist/extensions/mcp/index.js +1101 -0
- package/dist/extensions/mcp/index.js.map +1 -0
- package/dist/extensions/mcp/log.d.ts +16 -0
- package/dist/extensions/mcp/log.d.ts.map +1 -0
- package/dist/extensions/mcp/log.js +66 -0
- package/dist/extensions/mcp/log.js.map +1 -0
- package/dist/extensions/mcp/oauth.d.ts +98 -0
- package/dist/extensions/mcp/oauth.d.ts.map +1 -0
- package/dist/extensions/mcp/oauth.js +366 -0
- package/dist/extensions/mcp/oauth.js.map +1 -0
- package/dist/extensions/mcp/resources.d.ts +43 -0
- package/dist/extensions/mcp/resources.d.ts.map +1 -0
- package/dist/extensions/mcp/resources.js +262 -0
- package/dist/extensions/mcp/resources.js.map +1 -0
- package/dist/extensions/mcp/runtime.d.ts +98 -0
- package/dist/extensions/mcp/runtime.d.ts.map +1 -0
- package/dist/extensions/mcp/runtime.js +395 -0
- package/dist/extensions/mcp/runtime.js.map +1 -0
- package/dist/extensions/mcp/runtime.lazy.d.ts +3 -0
- package/dist/extensions/mcp/runtime.lazy.d.ts.map +1 -0
- package/dist/extensions/mcp/runtime.lazy.js +3 -0
- package/dist/extensions/mcp/runtime.lazy.js.map +1 -0
- package/dist/extensions/mcp/tools.d.ts +86 -0
- package/dist/extensions/mcp/tools.d.ts.map +1 -0
- package/dist/extensions/mcp/tools.js +252 -0
- package/dist/extensions/mcp/tools.js.map +1 -0
- package/dist/extensions/mcp/ui.d.ts +60 -0
- package/dist/extensions/mcp/ui.d.ts.map +1 -0
- package/dist/extensions/mcp/ui.js +178 -0
- package/dist/extensions/mcp/ui.js.map +1 -0
- package/dist/extensions/tool-search/index.d.ts +12 -0
- package/dist/extensions/tool-search/index.d.ts.map +1 -0
- package/dist/extensions/tool-search/index.js +15 -0
- package/dist/extensions/tool-search/index.js.map +1 -0
- package/dist/extensions/tool-search/tool.d.ts +73 -0
- package/dist/extensions/tool-search/tool.d.ts.map +1 -0
- package/dist/extensions/tool-search/tool.js +189 -0
- package/dist/extensions/tool-search/tool.js.map +1 -0
- package/dist/index.d.ts +44 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +53 -0
- package/dist/index.js.map +1 -0
- package/dist/main.d.ts +16 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +820 -0
- package/dist/main.js.map +1 -0
- package/dist/migrations.d.ts +33 -0
- package/dist/migrations.d.ts.map +1 -0
- package/dist/migrations.js +282 -0
- package/dist/migrations.js.map +1 -0
- package/dist/modes/index.d.ts +10 -0
- package/dist/modes/index.d.ts.map +1 -0
- package/dist/modes/index.js +8 -0
- package/dist/modes/index.js.map +1 -0
- package/dist/modes/interactive/assets/clankolas.png +0 -0
- package/dist/modes/interactive/bug-report.d.ts +16 -0
- package/dist/modes/interactive/bug-report.d.ts.map +1 -0
- package/dist/modes/interactive/bug-report.js +171 -0
- package/dist/modes/interactive/bug-report.js.map +1 -0
- package/dist/modes/interactive/chat-viewport.d.ts +20 -0
- package/dist/modes/interactive/chat-viewport.d.ts.map +1 -0
- package/dist/modes/interactive/chat-viewport.js +28 -0
- package/dist/modes/interactive/chat-viewport.js.map +1 -0
- package/dist/modes/interactive/components/armin.d.ts +37 -0
- package/dist/modes/interactive/components/armin.d.ts.map +1 -0
- package/dist/modes/interactive/components/armin.js +335 -0
- package/dist/modes/interactive/components/armin.js.map +1 -0
- package/dist/modes/interactive/components/assistant-message.d.ts +26 -0
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/assistant-message.js +158 -0
- package/dist/modes/interactive/components/assistant-message.js.map +1 -0
- package/dist/modes/interactive/components/auth-url.d.ts +14 -0
- package/dist/modes/interactive/components/auth-url.d.ts.map +1 -0
- package/dist/modes/interactive/components/auth-url.js +37 -0
- package/dist/modes/interactive/components/auth-url.js.map +1 -0
- package/dist/modes/interactive/components/bash-execution.d.ts +34 -0
- package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -0
- package/dist/modes/interactive/components/bash-execution.js +175 -0
- package/dist/modes/interactive/components/bash-execution.js.map +1 -0
- package/dist/modes/interactive/components/bordered-loader.d.ts +16 -0
- package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -0
- package/dist/modes/interactive/components/bordered-loader.js +54 -0
- package/dist/modes/interactive/components/bordered-loader.js.map +1 -0
- package/dist/modes/interactive/components/branch-summary-message.d.ts +16 -0
- package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/branch-summary-message.js +51 -0
- package/dist/modes/interactive/components/branch-summary-message.js.map +1 -0
- package/dist/modes/interactive/components/compaction-summary-message.d.ts +16 -0
- package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/compaction-summary-message.js +52 -0
- package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -0
- package/dist/modes/interactive/components/config-selector.d.ts +102 -0
- package/dist/modes/interactive/components/config-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/config-selector.js +771 -0
- package/dist/modes/interactive/components/config-selector.js.map +1 -0
- package/dist/modes/interactive/components/countdown-timer.d.ts +14 -0
- package/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -0
- package/dist/modes/interactive/components/countdown-timer.js +33 -0
- package/dist/modes/interactive/components/countdown-timer.js.map +1 -0
- package/dist/modes/interactive/components/custom-editor.d.ts +30 -0
- package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -0
- package/dist/modes/interactive/components/custom-editor.js +115 -0
- package/dist/modes/interactive/components/custom-editor.js.map +1 -0
- package/dist/modes/interactive/components/custom-entry.d.ts +19 -0
- package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -0
- package/dist/modes/interactive/components/custom-entry.js +52 -0
- package/dist/modes/interactive/components/custom-entry.js.map +1 -0
- package/dist/modes/interactive/components/custom-message.d.ts +22 -0
- package/dist/modes/interactive/components/custom-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/custom-message.js +87 -0
- package/dist/modes/interactive/components/custom-message.js.map +1 -0
- package/dist/modes/interactive/components/diff.d.ts +12 -0
- package/dist/modes/interactive/components/diff.d.ts.map +1 -0
- package/dist/modes/interactive/components/diff.js +133 -0
- package/dist/modes/interactive/components/diff.js.map +1 -0
- package/dist/modes/interactive/components/dynamic-border.d.ts +15 -0
- package/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -0
- package/dist/modes/interactive/components/dynamic-border.js +21 -0
- package/dist/modes/interactive/components/dynamic-border.js.map +1 -0
- package/dist/modes/interactive/components/earendil-announcement.d.ts +5 -0
- package/dist/modes/interactive/components/earendil-announcement.d.ts.map +1 -0
- package/dist/modes/interactive/components/earendil-announcement.js +40 -0
- package/dist/modes/interactive/components/earendil-announcement.js.map +1 -0
- package/dist/modes/interactive/components/easter-egg-3d.d.ts +104 -0
- package/dist/modes/interactive/components/easter-egg-3d.d.ts.map +1 -0
- package/dist/modes/interactive/components/easter-egg-3d.js +1141 -0
- package/dist/modes/interactive/components/easter-egg-3d.js.map +1 -0
- package/dist/modes/interactive/components/easter-egg-3d.lazy.d.ts +6 -0
- package/dist/modes/interactive/components/easter-egg-3d.lazy.d.ts.map +1 -0
- package/dist/modes/interactive/components/easter-egg-3d.lazy.js +23 -0
- package/dist/modes/interactive/components/easter-egg-3d.lazy.js.map +1 -0
- package/dist/modes/interactive/components/extension-editor.d.ts +24 -0
- package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -0
- package/dist/modes/interactive/components/extension-editor.js +103 -0
- package/dist/modes/interactive/components/extension-editor.js.map +1 -0
- package/dist/modes/interactive/components/extension-input.d.ts +25 -0
- package/dist/modes/interactive/components/extension-input.d.ts.map +1 -0
- package/dist/modes/interactive/components/extension-input.js +67 -0
- package/dist/modes/interactive/components/extension-input.js.map +1 -0
- package/dist/modes/interactive/components/extension-selector.d.ts +27 -0
- package/dist/modes/interactive/components/extension-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/extension-selector.js +87 -0
- package/dist/modes/interactive/components/extension-selector.js.map +1 -0
- package/dist/modes/interactive/components/first-time-setup.d.ts +25 -0
- package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -0
- package/dist/modes/interactive/components/first-time-setup.js +109 -0
- package/dist/modes/interactive/components/first-time-setup.js.map +1 -0
- package/dist/modes/interactive/components/footer.d.ts +39 -0
- package/dist/modes/interactive/components/footer.d.ts.map +1 -0
- package/dist/modes/interactive/components/footer.js +265 -0
- package/dist/modes/interactive/components/footer.js.map +1 -0
- package/dist/modes/interactive/components/index.d.ts +33 -0
- package/dist/modes/interactive/components/index.d.ts.map +1 -0
- package/dist/modes/interactive/components/index.js +34 -0
- package/dist/modes/interactive/components/index.js.map +1 -0
- package/dist/modes/interactive/components/keybinding-hints.d.ts +13 -0
- package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -0
- package/dist/modes/interactive/components/keybinding-hints.js +36 -0
- package/dist/modes/interactive/components/keybinding-hints.js.map +1 -0
- package/dist/modes/interactive/components/login-dialog.d.ts +54 -0
- package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -0
- package/dist/modes/interactive/components/login-dialog.js +194 -0
- package/dist/modes/interactive/components/login-dialog.js.map +1 -0
- package/dist/modes/interactive/components/markdown-transform.d.ts +3 -0
- package/dist/modes/interactive/components/markdown-transform.d.ts.map +1 -0
- package/dist/modes/interactive/components/markdown-transform.js +19 -0
- package/dist/modes/interactive/components/markdown-transform.js.map +1 -0
- package/dist/modes/interactive/components/mermaid.d.ts +11 -0
- package/dist/modes/interactive/components/mermaid.d.ts.map +1 -0
- package/dist/modes/interactive/components/mermaid.js +75 -0
- package/dist/modes/interactive/components/mermaid.js.map +1 -0
- package/dist/modes/interactive/components/model-selector.d.ts +60 -0
- package/dist/modes/interactive/components/model-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/model-selector.js +361 -0
- package/dist/modes/interactive/components/model-selector.js.map +1 -0
- package/dist/modes/interactive/components/oauth-selector.d.ts +39 -0
- package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/oauth-selector.js +166 -0
- package/dist/modes/interactive/components/oauth-selector.js.map +1 -0
- package/dist/modes/interactive/components/relay-logo.d.ts +22 -0
- package/dist/modes/interactive/components/relay-logo.d.ts.map +1 -0
- package/dist/modes/interactive/components/relay-logo.js +63 -0
- package/dist/modes/interactive/components/relay-logo.js.map +1 -0
- package/dist/modes/interactive/components/scoped-models-selector.d.ts +46 -0
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/scoped-models-selector.js +326 -0
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -0
- package/dist/modes/interactive/components/session-selector-search.d.ts +23 -0
- package/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -0
- package/dist/modes/interactive/components/session-selector-search.js +155 -0
- package/dist/modes/interactive/components/session-selector-search.js.map +1 -0
- package/dist/modes/interactive/components/session-selector.d.ts +95 -0
- package/dist/modes/interactive/components/session-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/session-selector.js +893 -0
- package/dist/modes/interactive/components/session-selector.js.map +1 -0
- package/dist/modes/interactive/components/settings-selector.d.ts +96 -0
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/settings-selector.js +742 -0
- package/dist/modes/interactive/components/settings-selector.js.map +1 -0
- package/dist/modes/interactive/components/settings-submenu.d.ts +72 -0
- package/dist/modes/interactive/components/settings-submenu.d.ts.map +1 -0
- package/dist/modes/interactive/components/settings-submenu.js +165 -0
- package/dist/modes/interactive/components/settings-submenu.js.map +1 -0
- package/dist/modes/interactive/components/show-images-selector.d.ts +10 -0
- package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/show-images-selector.js +39 -0
- package/dist/modes/interactive/components/show-images-selector.js.map +1 -0
- package/dist/modes/interactive/components/skill-invocation-message.d.ts +17 -0
- package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/skill-invocation-message.js +54 -0
- package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -0
- package/dist/modes/interactive/components/status-indicator.d.ts +30 -0
- package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -0
- package/dist/modes/interactive/components/status-indicator.js +67 -0
- package/dist/modes/interactive/components/status-indicator.js.map +1 -0
- package/dist/modes/interactive/components/theme-selector.d.ts +11 -0
- package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/theme-selector.js +50 -0
- package/dist/modes/interactive/components/theme-selector.js.map +1 -0
- package/dist/modes/interactive/components/themed-text.d.ts +17 -0
- package/dist/modes/interactive/components/themed-text.d.ts.map +1 -0
- package/dist/modes/interactive/components/themed-text.js +29 -0
- package/dist/modes/interactive/components/themed-text.js.map +1 -0
- package/dist/modes/interactive/components/thinking-selector.d.ts +23 -0
- package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/thinking-selector.js +109 -0
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -0
- package/dist/modes/interactive/components/tool-execution.d.ts +68 -0
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -0
- package/dist/modes/interactive/components/tool-execution.js +314 -0
- package/dist/modes/interactive/components/tool-execution.js.map +1 -0
- package/dist/modes/interactive/components/tree-selector.d.ts +94 -0
- package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/tree-selector.js +1254 -0
- package/dist/modes/interactive/components/tree-selector.js.map +1 -0
- package/dist/modes/interactive/components/trust-selector.d.ts +23 -0
- package/dist/modes/interactive/components/trust-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/trust-selector.js +91 -0
- package/dist/modes/interactive/components/trust-selector.js.map +1 -0
- package/dist/modes/interactive/components/user-message-selector.d.ts +30 -0
- package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/user-message-selector.js +114 -0
- package/dist/modes/interactive/components/user-message-selector.js.map +1 -0
- package/dist/modes/interactive/components/user-message.d.ts +16 -0
- package/dist/modes/interactive/components/user-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/user-message.js +50 -0
- package/dist/modes/interactive/components/user-message.js.map +1 -0
- package/dist/modes/interactive/components/visual-truncate.d.ts +48 -0
- package/dist/modes/interactive/components/visual-truncate.d.ts.map +1 -0
- package/dist/modes/interactive/components/visual-truncate.js +66 -0
- package/dist/modes/interactive/components/visual-truncate.js.map +1 -0
- package/dist/modes/interactive/external-editor.d.ts +12 -0
- package/dist/modes/interactive/external-editor.d.ts.map +1 -0
- package/dist/modes/interactive/external-editor.js +38 -0
- package/dist/modes/interactive/external-editor.js.map +1 -0
- package/dist/modes/interactive/interactive-mode.d.ts +482 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -0
- package/dist/modes/interactive/interactive-mode.js +5861 -0
- package/dist/modes/interactive/interactive-mode.js.map +1 -0
- package/dist/modes/interactive/model-catalog-refresh.d.ts +7 -0
- package/dist/modes/interactive/model-catalog-refresh.d.ts.map +1 -0
- package/dist/modes/interactive/model-catalog-refresh.js +34 -0
- package/dist/modes/interactive/model-catalog-refresh.js.map +1 -0
- package/dist/modes/interactive/model-search.d.ts +12 -0
- package/dist/modes/interactive/model-search.d.ts.map +1 -0
- package/dist/modes/interactive/model-search.js +15 -0
- package/dist/modes/interactive/model-search.js.map +1 -0
- package/dist/modes/interactive/session-share.d.ts +16 -0
- package/dist/modes/interactive/session-share.d.ts.map +1 -0
- package/dist/modes/interactive/session-share.js +119 -0
- package/dist/modes/interactive/session-share.js.map +1 -0
- package/dist/modes/interactive/theme/dark.json +78 -0
- package/dist/modes/interactive/theme/light.json +78 -0
- package/dist/modes/interactive/theme/system-theme.d.ts +55 -0
- package/dist/modes/interactive/theme/system-theme.d.ts.map +1 -0
- package/dist/modes/interactive/theme/system-theme.js +546 -0
- package/dist/modes/interactive/theme/system-theme.js.map +1 -0
- package/dist/modes/interactive/theme/theme-controller.d.ts +81 -0
- package/dist/modes/interactive/theme/theme-controller.d.ts.map +1 -0
- package/dist/modes/interactive/theme/theme-controller.js +210 -0
- package/dist/modes/interactive/theme/theme-controller.js.map +1 -0
- package/dist/modes/interactive/theme/theme-json.d.ts +85 -0
- package/dist/modes/interactive/theme/theme-json.d.ts.map +1 -0
- package/dist/modes/interactive/theme/theme-json.js +132 -0
- package/dist/modes/interactive/theme/theme-json.js.map +1 -0
- package/dist/modes/interactive/theme/theme-schema.json +361 -0
- package/dist/modes/interactive/theme/theme.d.ts +158 -0
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -0
- package/dist/modes/interactive/theme/theme.js +912 -0
- package/dist/modes/interactive/theme/theme.js.map +1 -0
- package/dist/modes/interactive/tui-renderer.d.ts +22 -0
- package/dist/modes/interactive/tui-renderer.d.ts.map +1 -0
- package/dist/modes/interactive/tui-renderer.js +67 -0
- package/dist/modes/interactive/tui-renderer.js.map +1 -0
- package/dist/modes/json-event.d.ts +34 -0
- package/dist/modes/json-event.d.ts.map +1 -0
- package/dist/modes/json-event.js +29 -0
- package/dist/modes/json-event.js.map +1 -0
- package/dist/modes/print-mode.d.ts +28 -0
- package/dist/modes/print-mode.d.ts.map +1 -0
- package/dist/modes/print-mode.js +142 -0
- package/dist/modes/print-mode.js.map +1 -0
- package/dist/modes/rpc/jsonl.d.ts +17 -0
- package/dist/modes/rpc/jsonl.d.ts.map +1 -0
- package/dist/modes/rpc/jsonl.js +49 -0
- package/dist/modes/rpc/jsonl.js.map +1 -0
- package/dist/modes/rpc/rpc-client.d.ts +254 -0
- package/dist/modes/rpc/rpc-client.d.ts.map +1 -0
- package/dist/modes/rpc/rpc-client.js +499 -0
- package/dist/modes/rpc/rpc-client.js.map +1 -0
- package/dist/modes/rpc/rpc-mode.d.ts +20 -0
- package/dist/modes/rpc/rpc-mode.d.ts.map +1 -0
- package/dist/modes/rpc/rpc-mode.js +655 -0
- package/dist/modes/rpc/rpc-mode.js.map +1 -0
- package/dist/modes/rpc/rpc-types.d.ts +478 -0
- package/dist/modes/rpc/rpc-types.d.ts.map +1 -0
- package/dist/modes/rpc/rpc-types.js +8 -0
- package/dist/modes/rpc/rpc-types.js.map +1 -0
- package/dist/package-manager-cli.d.ts +8 -0
- package/dist/package-manager-cli.d.ts.map +1 -0
- package/dist/package-manager-cli.js +524 -0
- package/dist/package-manager-cli.js.map +1 -0
- package/dist/rpc-entry.d.ts +3 -0
- package/dist/rpc-entry.d.ts.map +1 -0
- package/dist/rpc-entry.js +11 -0
- package/dist/rpc-entry.js.map +1 -0
- package/dist/utils/abort.d.ts +5 -0
- package/dist/utils/abort.d.ts.map +1 -0
- package/dist/utils/abort.js +48 -0
- package/dist/utils/abort.js.map +1 -0
- package/dist/utils/ansi.d.ts +2 -0
- package/dist/utils/ansi.d.ts.map +1 -0
- package/dist/utils/ansi.js +52 -0
- package/dist/utils/ansi.js.map +1 -0
- package/dist/utils/changelog.d.ts +22 -0
- package/dist/utils/changelog.d.ts.map +1 -0
- package/dist/utils/changelog.js +176 -0
- package/dist/utils/changelog.js.map +1 -0
- package/dist/utils/child-process.d.ts +18 -0
- package/dist/utils/child-process.d.ts.map +1 -0
- package/dist/utils/child-process.js +106 -0
- package/dist/utils/child-process.js.map +1 -0
- package/dist/utils/clipboard-command.d.ts +7 -0
- package/dist/utils/clipboard-command.d.ts.map +1 -0
- package/dist/utils/clipboard-command.js +45 -0
- package/dist/utils/clipboard-command.js.map +1 -0
- package/dist/utils/clipboard-image.d.ts +11 -0
- package/dist/utils/clipboard-image.d.ts.map +1 -0
- package/dist/utils/clipboard-image.js +214 -0
- package/dist/utils/clipboard-image.js.map +1 -0
- package/dist/utils/clipboard.d.ts +6 -0
- package/dist/utils/clipboard.d.ts.map +1 -0
- package/dist/utils/clipboard.js +156 -0
- package/dist/utils/clipboard.js.map +1 -0
- package/dist/utils/deprecation.d.ts +4 -0
- package/dist/utils/deprecation.d.ts.map +1 -0
- package/dist/utils/deprecation.js +13 -0
- package/dist/utils/deprecation.js.map +1 -0
- package/dist/utils/exif-orientation.d.ts +5 -0
- package/dist/utils/exif-orientation.d.ts.map +1 -0
- package/dist/utils/exif-orientation.js +157 -0
- package/dist/utils/exif-orientation.js.map +1 -0
- package/dist/utils/frontmatter.d.ts +8 -0
- package/dist/utils/frontmatter.d.ts.map +1 -0
- package/dist/utils/frontmatter.js +27 -0
- package/dist/utils/frontmatter.js.map +1 -0
- package/dist/utils/fs-watch.d.ts +5 -0
- package/dist/utils/fs-watch.d.ts.map +1 -0
- package/dist/utils/fs-watch.js +25 -0
- package/dist/utils/fs-watch.js.map +1 -0
- package/dist/utils/git.d.ts +26 -0
- package/dist/utils/git.d.ts.map +1 -0
- package/dist/utils/git.js +195 -0
- package/dist/utils/git.js.map +1 -0
- package/dist/utils/html.d.ts +7 -0
- package/dist/utils/html.d.ts.map +1 -0
- package/dist/utils/html.js +40 -0
- package/dist/utils/html.js.map +1 -0
- package/dist/utils/image-convert.d.ts +22 -0
- package/dist/utils/image-convert.d.ts.map +1 -0
- package/dist/utils/image-convert.js +84 -0
- package/dist/utils/image-convert.js.map +1 -0
- package/dist/utils/image-process.d.ts +18 -0
- package/dist/utils/image-process.d.ts.map +1 -0
- package/dist/utils/image-process.js +83 -0
- package/dist/utils/image-process.js.map +1 -0
- package/dist/utils/image-resize-core.d.ts +30 -0
- package/dist/utils/image-resize-core.d.ts.map +1 -0
- package/dist/utils/image-resize-core.js +124 -0
- package/dist/utils/image-resize-core.js.map +1 -0
- package/dist/utils/image-resize-worker.d.ts +2 -0
- package/dist/utils/image-resize-worker.d.ts.map +1 -0
- package/dist/utils/image-resize-worker.js +31 -0
- package/dist/utils/image-resize-worker.js.map +1 -0
- package/dist/utils/image-resize.d.ts +16 -0
- package/dist/utils/image-resize.d.ts.map +1 -0
- package/dist/utils/image-resize.js +97 -0
- package/dist/utils/image-resize.js.map +1 -0
- package/dist/utils/json.d.ts +3 -0
- package/dist/utils/json.d.ts.map +1 -0
- package/dist/utils/json.js +7 -0
- package/dist/utils/json.js.map +1 -0
- package/dist/utils/management-http.d.ts +25 -0
- package/dist/utils/management-http.d.ts.map +1 -0
- package/dist/utils/management-http.js +54 -0
- package/dist/utils/management-http.js.map +1 -0
- package/dist/utils/mime.d.ts +3 -0
- package/dist/utils/mime.d.ts.map +1 -0
- package/dist/utils/mime.js +110 -0
- package/dist/utils/mime.js.map +1 -0
- package/dist/utils/open-browser.d.ts +9 -0
- package/dist/utils/open-browser.d.ts.map +1 -0
- package/dist/utils/open-browser.js +22 -0
- package/dist/utils/open-browser.js.map +1 -0
- package/dist/utils/output-files.d.ts +15 -0
- package/dist/utils/output-files.d.ts.map +1 -0
- package/dist/utils/output-files.js +30 -0
- package/dist/utils/output-files.js.map +1 -0
- package/dist/utils/paths.d.ts +34 -0
- package/dist/utils/paths.d.ts.map +1 -0
- package/dist/utils/paths.js +115 -0
- package/dist/utils/paths.js.map +1 -0
- package/dist/utils/photon.d.ts +21 -0
- package/dist/utils/photon.d.ts.map +1 -0
- package/dist/utils/photon.js +121 -0
- package/dist/utils/photon.js.map +1 -0
- package/dist/utils/relay-user-agent.d.ts +2 -0
- package/dist/utils/relay-user-agent.d.ts.map +1 -0
- package/dist/utils/relay-user-agent.js +5 -0
- package/dist/utils/relay-user-agent.js.map +1 -0
- package/dist/utils/shell.d.ts +32 -0
- package/dist/utils/shell.d.ts.map +1 -0
- package/dist/utils/shell.js +189 -0
- package/dist/utils/shell.js.map +1 -0
- package/dist/utils/sleep.d.ts +5 -0
- package/dist/utils/sleep.d.ts.map +1 -0
- package/dist/utils/sleep.js +17 -0
- package/dist/utils/sleep.js.map +1 -0
- package/dist/utils/syntax-highlight.d.ts +13 -0
- package/dist/utils/syntax-highlight.d.ts.map +1 -0
- package/dist/utils/syntax-highlight.js +179 -0
- package/dist/utils/syntax-highlight.js.map +1 -0
- package/dist/utils/text.d.ts +8 -0
- package/dist/utils/text.d.ts.map +1 -0
- package/dist/utils/text.js +9 -0
- package/dist/utils/text.js.map +1 -0
- package/dist/utils/tool-result-images.d.ts +21 -0
- package/dist/utils/tool-result-images.d.ts.map +1 -0
- package/dist/utils/tool-result-images.js +48 -0
- package/dist/utils/tool-result-images.js.map +1 -0
- package/dist/utils/tools-manager.d.ts +13 -0
- package/dist/utils/tools-manager.d.ts.map +1 -0
- package/dist/utils/tools-manager.js +343 -0
- package/dist/utils/tools-manager.js.map +1 -0
- package/dist/utils/version-check.d.ts +17 -0
- package/dist/utils/version-check.d.ts.map +1 -0
- package/dist/utils/version-check.js +74 -0
- package/dist/utils/version-check.js.map +1 -0
- package/dist/utils/wsl.d.ts +3 -0
- package/dist/utils/wsl.d.ts.map +1 -0
- package/dist/utils/wsl.js +15 -0
- package/dist/utils/wsl.js.map +1 -0
- package/dist/utils/zip.d.ts +7 -0
- package/dist/utils/zip.d.ts.map +1 -0
- package/dist/utils/zip.js +60 -0
- package/dist/utils/zip.js.map +1 -0
- package/docs/cli-integration.md +106 -0
- package/docs/cli.md +316 -0
- package/docs/codemode.md +207 -0
- package/docs/compaction.md +463 -0
- package/docs/configuration.md +47 -0
- package/docs/containerization.md +154 -0
- package/docs/custom-provider.md +173 -0
- package/docs/docs.json +224 -0
- package/docs/environment-variables.md +97 -0
- package/docs/extensions.md +274 -0
- package/docs/harness-core.md +99 -0
- package/docs/how-relay-works.md +49 -0
- package/docs/images/doom-extension.png +0 -0
- package/docs/images/exy.png +0 -0
- package/docs/images/interactive-mode.png +0 -0
- package/docs/images/tree-view.png +0 -0
- package/docs/index.md +39 -0
- package/docs/intake.md +40 -0
- package/docs/json.md +226 -0
- package/docs/keybindings.md +194 -0
- package/docs/laya.md +112 -0
- package/docs/llama-cpp.md +114 -0
- package/docs/mcp.md +258 -0
- package/docs/message-types.md +261 -0
- package/docs/models.md +205 -0
- package/docs/packages.md +129 -0
- package/docs/prompt-templates.md +59 -0
- package/docs/providers.md +187 -0
- package/docs/quickstart.md +126 -0
- package/docs/rpc-commands.md +860 -0
- package/docs/rpc-extension-ui.md +200 -0
- package/docs/rpc.md +193 -0
- package/docs/sdk.md +147 -0
- package/docs/security.md +99 -0
- package/docs/session-format.md +293 -0
- package/docs/sessions.md +66 -0
- package/docs/settings.md +205 -0
- package/docs/shell-aliases.md +93 -0
- package/docs/skills.md +93 -0
- package/docs/slash-commands.md +61 -0
- package/docs/terminal-setup.md +219 -0
- package/docs/termux.md +121 -0
- package/docs/themes.md +136 -0
- package/docs/tmux.md +55 -0
- package/docs/tui.md +125 -0
- package/docs/usage.md +94 -0
- package/docs/virtual-models.md +114 -0
- package/docs/windows.md +67 -0
- package/examples/README.md +39 -0
- package/examples/extensions/README.md +213 -0
- package/examples/extensions/auto-commit-on-exit.ts +49 -0
- package/examples/extensions/bash-spawn-hook.ts +30 -0
- package/examples/extensions/bookmark.ts +50 -0
- package/examples/extensions/border-status-editor.ts +150 -0
- package/examples/extensions/built-in-tool-renderer.ts +225 -0
- package/examples/extensions/claude-rules.ts +86 -0
- package/examples/extensions/commands.ts +72 -0
- package/examples/extensions/confirm-destructive.ts +59 -0
- package/examples/extensions/custom-compaction.ts +117 -0
- package/examples/extensions/custom-footer.ts +64 -0
- package/examples/extensions/custom-header.ts +73 -0
- package/examples/extensions/custom-provider-anthropic/index.ts +617 -0
- package/examples/extensions/custom-provider-anthropic/package-lock.json +24 -0
- package/examples/extensions/custom-provider-anthropic/package.json +19 -0
- package/examples/extensions/custom-provider-gitlab-duo/index.ts +405 -0
- package/examples/extensions/custom-provider-gitlab-duo/package.json +16 -0
- package/examples/extensions/custom-provider-gitlab-duo/test.ts +82 -0
- package/examples/extensions/debug-provider.ts +90 -0
- package/examples/extensions/dirty-repo-guard.ts +56 -0
- package/examples/extensions/doom-overlay/README.md +46 -0
- package/examples/extensions/doom-overlay/doom/build/doom.js +21 -0
- package/examples/extensions/doom-overlay/doom/build/doom.wasm +0 -0
- package/examples/extensions/doom-overlay/doom/build.sh +152 -0
- package/examples/extensions/doom-overlay/doom/doomgeneric_relay.c +72 -0
- package/examples/extensions/doom-overlay/doom-component.ts +132 -0
- package/examples/extensions/doom-overlay/doom-engine.ts +173 -0
- package/examples/extensions/doom-overlay/doom-keys.ts +104 -0
- package/examples/extensions/doom-overlay/index.ts +74 -0
- package/examples/extensions/doom-overlay/wad-finder.ts +55 -0
- package/examples/extensions/dynamic-resources/SKILL.md +8 -0
- package/examples/extensions/dynamic-resources/dynamic.json +81 -0
- package/examples/extensions/dynamic-resources/dynamic.md +5 -0
- package/examples/extensions/dynamic-resources/index.ts +15 -0
- package/examples/extensions/dynamic-tools.ts +74 -0
- package/examples/extensions/entry-renderer.ts +41 -0
- package/examples/extensions/event-bus.ts +43 -0
- package/examples/extensions/file-trigger.ts +41 -0
- package/examples/extensions/git-checkpoint.ts +53 -0
- package/examples/extensions/git-merge-and-resolve.ts +115 -0
- package/examples/extensions/github-issue-autocomplete.ts +185 -0
- package/examples/extensions/handoff.ts +190 -0
- package/examples/extensions/hello.ts +26 -0
- package/examples/extensions/hidden-thinking-label.ts +53 -0
- package/examples/extensions/inline-bash.ts +94 -0
- package/examples/extensions/input-transform-streaming.ts +39 -0
- package/examples/extensions/input-transform.ts +43 -0
- package/examples/extensions/interactive-shell.ts +196 -0
- package/examples/extensions/jev-router.ts +113 -0
- package/examples/extensions/mac-system-theme.ts +47 -0
- package/examples/extensions/message-renderer.ts +59 -0
- package/examples/extensions/minimal-mode.ts +354 -0
- package/examples/extensions/modal-editor.ts +85 -0
- package/examples/extensions/model-status.ts +31 -0
- package/examples/extensions/notify.ts +57 -0
- package/examples/extensions/overlay-qa-tests.ts +1450 -0
- package/examples/extensions/overlay-test.ts +153 -0
- package/examples/extensions/permission-gate.ts +34 -0
- package/examples/extensions/pirate.ts +47 -0
- package/examples/extensions/plan-mode/README.md +66 -0
- package/examples/extensions/plan-mode/index.ts +390 -0
- package/examples/extensions/plan-mode/utils.ts +168 -0
- package/examples/extensions/preset.ts +436 -0
- package/examples/extensions/project-trust.ts +64 -0
- package/examples/extensions/prompt-customizer.ts +49 -0
- package/examples/extensions/protected-paths.ts +30 -0
- package/examples/extensions/provider-payload.ts +18 -0
- package/examples/extensions/qna.ts +118 -0
- package/examples/extensions/question.ts +278 -0
- package/examples/extensions/questionnaire.ts +440 -0
- package/examples/extensions/rainbow-editor.ts +88 -0
- package/examples/extensions/reload-runtime.ts +37 -0
- package/examples/extensions/rpc-demo.ts +118 -0
- package/examples/extensions/sandbox/index.ts +321 -0
- package/examples/extensions/sandbox/package-lock.json +92 -0
- package/examples/extensions/sandbox/package.json +19 -0
- package/examples/extensions/send-user-message.ts +97 -0
- package/examples/extensions/session-name.ts +27 -0
- package/examples/extensions/shutdown-command.ts +63 -0
- package/examples/extensions/snake.ts +343 -0
- package/examples/extensions/space-invaders.ts +560 -0
- package/examples/extensions/ssh.ts +220 -0
- package/examples/extensions/status-line.ts +32 -0
- package/examples/extensions/structured-output.ts +65 -0
- package/examples/extensions/subagent/README.md +196 -0
- package/examples/extensions/subagent/agents/planner.md +37 -0
- package/examples/extensions/subagent/agents/reviewer.md +35 -0
- package/examples/extensions/subagent/agents/scout.md +50 -0
- package/examples/extensions/subagent/agents/security-auditor.md +20 -0
- package/examples/extensions/subagent/agents/verifier.md +31 -0
- package/examples/extensions/subagent/agents/worker.md +24 -0
- package/examples/extensions/subagent/agents.ts +157 -0
- package/examples/extensions/subagent/index.ts +1038 -0
- package/examples/extensions/subagent/prompts/implement-and-review.md +10 -0
- package/examples/extensions/subagent/prompts/implement-and-verify.md +10 -0
- package/examples/extensions/subagent/prompts/implement.md +10 -0
- package/examples/extensions/subagent/prompts/scout-and-plan.md +9 -0
- package/examples/extensions/subagent/skills/delegate/SKILL.md +48 -0
- package/examples/extensions/subagent/skills/security-audit/SKILL.md +108 -0
- package/examples/extensions/subagent/skills/security-audit/references/categories.md +130 -0
- package/examples/extensions/subagent/skills/security-audit/references/report.md +38 -0
- package/examples/extensions/summarize.ts +199 -0
- package/examples/extensions/system-prompt-header.ts +17 -0
- package/examples/extensions/tic-tac-toe.ts +1008 -0
- package/examples/extensions/timed-confirm.ts +70 -0
- package/examples/extensions/titlebar-spinner.ts +58 -0
- package/examples/extensions/todo.ts +297 -0
- package/examples/extensions/tool-override.ts +144 -0
- package/examples/extensions/tools.ts +146 -0
- package/examples/extensions/trigger-compact.ts +50 -0
- package/examples/extensions/truncated-tool.ts +195 -0
- package/examples/extensions/widget-placement.ts +9 -0
- package/examples/extensions/with-deps/index.ts +32 -0
- package/examples/extensions/with-deps/package-lock.json +31 -0
- package/examples/extensions/with-deps/package.json +22 -0
- package/examples/extensions/working-indicator.ts +123 -0
- package/examples/extensions/working-message-test.ts +25 -0
- package/examples/plugins/relay-example-plugin/README.md +38 -0
- package/examples/plugins/relay-example-plugin/package.json +10 -0
- package/examples/plugins/relay-example-plugin/src/contract.ts +13 -0
- package/examples/plugins/relay-example-plugin/src/session.ts +24 -0
- package/examples/plugins/relay-example-plugin/src/tui.ts +31 -0
- package/examples/rpc-client.ts +35 -0
- package/examples/rpc-extension-ui.ts +661 -0
- package/examples/sdk/01-minimal.ts +26 -0
- package/examples/sdk/02-custom-model.ts +49 -0
- package/examples/sdk/03-custom-prompt.ts +70 -0
- package/examples/sdk/04-skills.ts +55 -0
- package/examples/sdk/05-tools.ts +48 -0
- package/examples/sdk/06-extensions.ts +94 -0
- package/examples/sdk/07-context-files.ts +42 -0
- package/examples/sdk/08-prompt-templates.ts +51 -0
- package/examples/sdk/09-api-keys-and-oauth.ts +34 -0
- package/examples/sdk/10-settings.ts +53 -0
- package/examples/sdk/11-sessions.ts +52 -0
- package/examples/sdk/12-full-control.ts +74 -0
- package/examples/sdk/13-session-runtime.ts +67 -0
- package/examples/sdk/14-codemode-mcp.ts +61 -0
- package/examples/sdk/README.md +141 -0
- package/package.json +107 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/extensions/laya/runtime.ts"],"names":[],"mappings":"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","sourcesContent":["import { createHash } from \"node:crypto\";\nimport { createWriteStream, existsSync, mkdirSync, renameSync, rmSync, statSync, writeFileSync } from \"node:fs\";\nimport { dirname, join } from \"node:path\";\nimport { Readable, Transform } from \"node:stream\";\nimport { pipeline } from \"node:stream/promises\";\n\n/**\n * Local Laya runtime: the trained model, a Python environment with the `laya` package, and the\n * script that serves them. The npm package carries none of these (the model is 650 MB, the\n * environment a few GB); `setupLayaRuntime()` fetches them on first use into the agent directory.\n */\n\nexport interface LayaModelFile {\n\t/** Path inside the model directory, with forward slashes. */\n\tpath: string;\n\t/** Flat file name of the release asset. */\n\tasset: string;\n\tsize: number;\n\tsha256: string;\n}\n\nexport interface LayaModelManifest {\n\tversion: string;\n\t/** pip requirement for the Laya runtime. */\n\tlayaPackage: string;\n\t/** Directory URL the assets are downloaded from, ending in a slash. */\n\tbaseUrl: string;\n\tfiles: LayaModelFile[];\n}\n\nexport type ExecFunction = (\n\tcommand: string,\n\targs: string[],\n\toptions?: { signal?: AbortSignal; timeout?: number },\n) => Promise<{ stdout: string; stderr: string; code: number }>;\n\nexport interface LayaPaths {\n\thome: string;\n\tmodel: string;\n\tvenv: string;\n\tvenvPython: string;\n\tserveScript: string;\n\tlog: string;\n}\n\nexport function layaPaths(home: string, manifest: LayaModelManifest): LayaPaths {\n\tconst venv = join(home, \"venv\");\n\treturn {\n\t\thome,\n\t\tmodel: join(home, \"models\", manifest.version),\n\t\tvenv,\n\t\tvenvPython: join(\n\t\t\tvenv,\n\t\t\tprocess.platform === \"win32\" ? \"Scripts\" : \"bin\",\n\t\t\tprocess.platform === \"win32\" ? \"python.exe\" : \"python\",\n\t\t),\n\t\tserveScript: join(home, \"serve.py\"),\n\t\tlog: join(home, \"server.log\"),\n\t};\n}\n\nexport type LayaRuntimeStatus = \"ready\" | \"missing-environment\" | \"missing-model\";\n\n/** Files of the model that are absent or have the wrong size. A full hash check happens at download. */\nexport function missingModelFiles(manifest: LayaModelManifest, paths: LayaPaths): LayaModelFile[] {\n\treturn manifest.files.filter((file) => {\n\t\tconst path = join(paths.model, ...file.path.split(\"/\"));\n\t\ttry {\n\t\t\treturn statSync(path).size !== file.size;\n\t\t} catch {\n\t\t\treturn true;\n\t\t}\n\t});\n}\n\nexport function runtimeStatus(manifest: LayaModelManifest, paths: LayaPaths): LayaRuntimeStatus {\n\tif (!existsSync(paths.venvPython) || !existsSync(paths.serveScript)) return \"missing-environment\";\n\treturn missingModelFiles(manifest, paths).length > 0 ? \"missing-model\" : \"ready\";\n}\n\nexport interface DownloadOptions {\n\tfetch?: typeof fetch;\n\tsignal?: AbortSignal;\n\tonProgress?: (file: LayaModelFile, received: number) => void;\n}\n\n/**\n * Downloads the files that are missing or wrong, verifying each against its manifest hash before it\n * becomes visible: a download is written to a `.part` file and renamed only when the hash matches.\n */\nexport async function downloadModel(\n\tmanifest: LayaModelManifest,\n\tpaths: LayaPaths,\n\toptions: DownloadOptions = {},\n): Promise<void> {\n\tconst request = options.fetch ?? globalThis.fetch;\n\tfor (const file of missingModelFiles(manifest, paths)) {\n\t\tconst target = join(paths.model, ...file.path.split(\"/\"));\n\t\tconst partial = `${target}.part`;\n\t\tmkdirSync(dirname(target), { recursive: true });\n\t\tconst response = await request(new URL(file.asset, manifest.baseUrl), { signal: options.signal });\n\t\tif (!response.ok || !response.body) {\n\t\t\tthrow new Error(`Downloading ${file.asset} failed: HTTP ${response.status}`);\n\t\t}\n\t\tconst hash = createHash(\"sha256\");\n\t\tlet received = 0;\n\t\tconst meter = new Transform({\n\t\t\ttransform(chunk: Buffer, _encoding, callback) {\n\t\t\t\thash.update(chunk);\n\t\t\t\treceived += chunk.length;\n\t\t\t\toptions.onProgress?.(file, received);\n\t\t\t\tcallback(null, chunk);\n\t\t\t},\n\t\t});\n\t\ttry {\n\t\t\tawait pipeline(\n\t\t\t\tReadable.fromWeb(response.body as Parameters<typeof Readable.fromWeb>[0]),\n\t\t\t\tmeter,\n\t\t\t\tcreateWriteStream(partial),\n\t\t\t\t{ signal: options.signal },\n\t\t\t);\n\t\t\tconst digest = hash.digest(\"hex\");\n\t\t\tif (received !== file.size || digest !== file.sha256) {\n\t\t\t\tthrow new Error(`${file.asset} does not match the manifest (size ${received}, sha256 ${digest})`);\n\t\t\t}\n\t\t\trenameSync(partial, target);\n\t\t} catch (error) {\n\t\t\trmSync(partial, { force: true });\n\t\t\tthrow error;\n\t\t}\n\t}\n}\n\nconst PYTHON_CANDIDATES: Array<[string, string[]]> = [\n\t[\"python3\", []],\n\t[\"python\", []],\n\t[\"py\", [\"-3\"]],\n];\n\n/** A Python 3.10 to 3.13 interpreter (the range torch publishes wheels for), as command plus leading args. */\nexport async function findPython(exec: ExecFunction, override?: string): Promise<[string, string[]] | undefined> {\n\tconst candidates: Array<[string, string[]]> = override ? [[override, []]] : PYTHON_CANDIDATES;\n\tfor (const [command, leading] of candidates) {\n\t\ttry {\n\t\t\tconst result = await exec(\n\t\t\t\tcommand,\n\t\t\t\t[...leading, \"-c\", \"import sys; print(sys.version_info[0], sys.version_info[1])\"],\n\t\t\t\t{ timeout: 15_000 },\n\t\t\t);\n\t\t\tconst [major, minor] = result.stdout.trim().split(\" \").map(Number);\n\t\t\tif (result.code === 0 && major === 3 && minor >= 10 && minor <= 13) return [command, leading];\n\t\t} catch {\n\t\t\t// Not installed.\n\t\t}\n\t}\n\treturn undefined;\n}\n\nexport interface SetupOptions {\n\texec: ExecFunction;\n\thome: string;\n\tmanifest: LayaModelManifest;\n\tpython?: string;\n\tfetch?: typeof fetch;\n\tsignal?: AbortSignal;\n\treport: (message: string) => void;\n}\n\nconst PIP_TIMEOUT_MS = 30 * 60_000;\n\nasync function run(\n\texec: ExecFunction,\n\tcommand: string,\n\targs: string[],\n\toptions: { signal?: AbortSignal; timeout?: number },\n\tfailure: string,\n): Promise<void> {\n\tconst result = await exec(command, args, options);\n\tif (result.code !== 0) {\n\t\tthrow new Error(`${failure}: ${(result.stderr || result.stdout).trim().split(\"\\n\").slice(-4).join(\" \")}`);\n\t}\n}\n\n/** Torch wheel index: a CUDA build only where an NVIDIA GPU exists, the small CPU build otherwise. */\nasync function torchArgs(exec: ExecFunction): Promise<string[]> {\n\tif (process.platform === \"darwin\") return [\"torch\"];\n\tlet gpu = false;\n\ttry {\n\t\tgpu = (await exec(\"nvidia-smi\", [\"-L\"], { timeout: 10_000 })).code === 0;\n\t} catch {\n\t\t// No NVIDIA driver.\n\t}\n\treturn [\"torch\", \"--index-url\", `https://download.pytorch.org/whl/${gpu ? \"cu128\" : \"cpu\"}`];\n}\n\n/** Creates the environment, installs torch and Laya, writes the server script and downloads the model. */\nexport async function setupLayaRuntime(options: SetupOptions): Promise<LayaPaths> {\n\tconst { exec, report, signal } = options;\n\tconst paths = layaPaths(options.home, options.manifest);\n\tmkdirSync(paths.home, { recursive: true });\n\n\tconst importable = async () =>\n\t\texistsSync(paths.venvPython) &&\n\t\t(await exec(paths.venvPython, [\"-c\", \"import laya, torch, fastapi, uvicorn\"], { timeout: 120_000 })).code === 0;\n\n\tif (!(await importable())) {\n\t\tconst python = await findPython(exec, options.python);\n\t\tif (!python) {\n\t\t\tthrow new Error(\"Laya needs Python 3.10 to 3.13. Install it, or set laya.python to its path.\");\n\t\t}\n\t\treport(\"Creating the Python environment\");\n\t\tawait run(\n\t\t\texec,\n\t\t\tpython[0],\n\t\t\t[...python[1], \"-m\", \"venv\", paths.venv],\n\t\t\t{ signal, timeout: 120_000 },\n\t\t\t\"Creating the environment failed\",\n\t\t);\n\t\tconst pip = [paths.venvPython, \"-m\", \"pip\", \"install\", \"-q\", \"--disable-pip-version-check\"] as const;\n\t\treport(\"Installing torch (large download)\");\n\t\tawait run(\n\t\t\texec,\n\t\t\tpip[0],\n\t\t\t[...pip.slice(1), ...(await torchArgs(exec))],\n\t\t\t{ signal, timeout: PIP_TIMEOUT_MS },\n\t\t\t\"Installing torch failed\",\n\t\t);\n\t\treport(\"Installing Laya\");\n\t\tawait run(\n\t\t\texec,\n\t\t\tpip[0],\n\t\t\t[...pip.slice(1), options.manifest.layaPackage, \"fastapi\", \"uvicorn\"],\n\t\t\t{ signal, timeout: PIP_TIMEOUT_MS },\n\t\t\t\"Installing Laya failed\",\n\t\t);\n\t}\n\twriteFileSync(paths.serveScript, SERVE_SCRIPT, \"utf8\");\n\n\tlet lastReported = 0;\n\tawait downloadModel(options.manifest, paths, {\n\t\tfetch: options.fetch,\n\t\tsignal,\n\t\tonProgress: (file, received) => {\n\t\t\tif (file.size < 10_000_000 || received - lastReported < 25_000_000) return;\n\t\t\tlastReported = received;\n\t\t\treport(`Downloading the Laya model: ${file.asset} ${Math.round((received / file.size) * 100)}%`);\n\t\t},\n\t});\n\treturn paths;\n}\n\n/** Serves the model with the System One protocol Relay's `typesafe-system-one` classifier speaks. */\nexport const SERVE_SCRIPT = `import argparse\n\nimport laya\nimport torch\nimport uvicorn\nfrom fastapi import FastAPI, HTTPException\n\nparser = argparse.ArgumentParser()\nparser.add_argument(\"--model\", required=True)\nparser.add_argument(\"--host\", default=\"127.0.0.1\")\nparser.add_argument(\"--port\", type=int, default=8000)\nargs = parser.parse_args()\n\nagent = laya.load(args.model, device=\"cuda\" if torch.cuda.is_available() else \"cpu\")\napp = FastAPI(title=\"relay-laya\")\n\n\n@app.get(\"/health\")\ndef health():\n return {\"ok\": True, \"model\": args.model}\n\n\n@app.post(\"/v1/systemone\")\ndef system_one(body: dict):\n if \"state\" not in body or not body.get(\"questions\"):\n raise HTTPException(422, \"send 'state' and 'questions'\")\n return agent.predict(body[\"state\"], body[\"questions\"])\n\n\nuvicorn.run(app, host=args.host, port=args.port, log_level=\"warning\")\n`;\n"]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { type AgentId, type CapabilityTier, type TaskScope, type TaskType, type ValidationLevel } from "./questions.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Synthetic bootstrap exercises for training Laya before the harness has telemetry.
|
|
4
|
+
*
|
|
5
|
+
* Each template fixes the task profile; the tier and effort follow from it by the same rule for
|
|
6
|
+
* every template, so the labels are consistent. These are opinion-based labels. Replace them over
|
|
7
|
+
* time with evidence-based labels exported from telemetry (`/laya export`).
|
|
8
|
+
*/
|
|
9
|
+
interface Template {
|
|
10
|
+
type: TaskType;
|
|
11
|
+
/** Indexes into the score levels of `questions.ts`. */
|
|
12
|
+
complexity: 0 | 1 | 2 | 3 | 4;
|
|
13
|
+
scope: TaskScope;
|
|
14
|
+
risk: 0 | 1 | 2 | 3;
|
|
15
|
+
ambiguity: 0 | 1 | 2;
|
|
16
|
+
reasoning: 0 | 1 | 2 | 3 | 4;
|
|
17
|
+
agent: AgentId;
|
|
18
|
+
validation: ValidationLevel;
|
|
19
|
+
/** w=write s=shell t=tests W=web b=browser d=database g=git */
|
|
20
|
+
tools: string;
|
|
21
|
+
security?: boolean;
|
|
22
|
+
texts: string[];
|
|
23
|
+
}
|
|
24
|
+
/** Tier from the task profile: the cheapest tier for its difficulty, raised for risk and security. */
|
|
25
|
+
export declare function seedTier(template: Pick<Template, "complexity" | "reasoning" | "risk" | "security">): CapabilityTier;
|
|
26
|
+
export interface SeedRow {
|
|
27
|
+
state: {
|
|
28
|
+
request: string;
|
|
29
|
+
};
|
|
30
|
+
expected: Record<string, string | number | boolean>;
|
|
31
|
+
source: "synthetic";
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Generates up to `count` distinct exercises in laya-trainer's dataset format, the same number per
|
|
35
|
+
* template, so templates with many slot combinations do not crowd out the others.
|
|
36
|
+
*/
|
|
37
|
+
export declare function generateSeed(count: number, seed?: number): SeedRow[];
|
|
38
|
+
export {};
|
|
39
|
+
//# sourceMappingURL=seed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seed.d.ts","sourceRoot":"","sources":["../../../src/extensions/laya/seed.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,OAAO,EAEZ,KAAK,cAAc,EAEnB,KAAK,SAAS,EACd,KAAK,QAAQ,EAEb,KAAK,eAAe,EACpB,MAAM,gBAAgB,CAAC;AAExB;;;;;;GAMG;AAEH,UAAU,QAAQ;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,uDAAuD;IACvD,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,eAAe,CAAC;IAC5B,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;CAChB;AA8VD,sGAAsG;AACtG,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,YAAY,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC,GAAG,cAAc,CAKnH;AAaD,MAAM,WAAW,OAAO;IACvB,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IACpD,MAAM,EAAE,WAAW,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,SAAO,GAAG,OAAO,EAAE,CA+ClE"}
|
|
@@ -0,0 +1,358 @@
|
|
|
1
|
+
import { CAPABILITY_TIERS, REASONING_EFFORTS, } from "./questions.js";
|
|
2
|
+
const TOOL_FLAGS = {
|
|
3
|
+
w: "requires_write",
|
|
4
|
+
s: "requires_shell",
|
|
5
|
+
t: "requires_tests",
|
|
6
|
+
W: "requires_web",
|
|
7
|
+
b: "requires_browser",
|
|
8
|
+
d: "requires_database",
|
|
9
|
+
g: "requires_git",
|
|
10
|
+
};
|
|
11
|
+
const t = (type, complexity, scope, risk, ambiguity, reasoning, agent, validation, tools, texts, security = false) => ({ type, complexity, scope, risk, ambiguity, reasoning, agent, validation, tools, texts, security });
|
|
12
|
+
const TEMPLATES = [
|
|
13
|
+
t("question", 0, "single_file", 0, 0, 0, "researcher", "none", "", [
|
|
14
|
+
"What does the function {fn} in {file} return?",
|
|
15
|
+
"O que a função {fn} em {file} retorna?",
|
|
16
|
+
"Where is {fn} defined?",
|
|
17
|
+
"Onde fica definida a função {fn}?",
|
|
18
|
+
]),
|
|
19
|
+
t("question", 1, "module", 0, 0, 1, "researcher", "none", "", [
|
|
20
|
+
"How does the {module} module load its configuration?",
|
|
21
|
+
"Como o módulo {module} carrega a configuração?",
|
|
22
|
+
"Explain how {module} handles errors.",
|
|
23
|
+
"Explique como o {module} trata erros.",
|
|
24
|
+
]),
|
|
25
|
+
t("question", 2, "repository", 0, 1, 2, "software-architect", "none", "", [
|
|
26
|
+
"Why does the {module} package depend on {module2}? Is that coupling necessary?",
|
|
27
|
+
"Por que o pacote {module} depende do {module2}? Esse acoplamento é necessário?",
|
|
28
|
+
]),
|
|
29
|
+
t("question", 1, "single_file", 0, 2, 1, "researcher", "none", "", [
|
|
30
|
+
"Is this approach ok?",
|
|
31
|
+
"Isso está certo?",
|
|
32
|
+
"Can you take a look at {file}?",
|
|
33
|
+
"Dá uma olhada no {file}?",
|
|
34
|
+
]),
|
|
35
|
+
t("code_edit", 0, "single_line", 0, 0, 0, "frontend-engineer", "syntax", "w", [
|
|
36
|
+
"Change the text of the submit button to 'Save'.",
|
|
37
|
+
"Corrija o texto deste botão para 'Salvar'.",
|
|
38
|
+
"Fix the typo in the error message of {file}.",
|
|
39
|
+
"Corrija o erro de digitação na mensagem de erro de {file}.",
|
|
40
|
+
]),
|
|
41
|
+
t("code_edit", 0, "single_line", 0, 0, 0, "software-engineer", "compile", "wt", [
|
|
42
|
+
"Rename the variable {var} to {var2} in {file}.",
|
|
43
|
+
"Renomeie a variável {var} para {var2} em {file}.",
|
|
44
|
+
"Change the default timeout in {file} from 30 to 60 seconds.",
|
|
45
|
+
"Mude o timeout padrão em {file} de 30 para 60 segundos.",
|
|
46
|
+
]),
|
|
47
|
+
t("code_edit", 1, "single_file", 0, 0, 1, "software-engineer", "compile", "wt", [
|
|
48
|
+
"Remove the unused imports from {file}.",
|
|
49
|
+
"Remova os imports não usados de {file}.",
|
|
50
|
+
"Make {fn} in {file} async.",
|
|
51
|
+
"Transforme {fn} em {file} em uma função assíncrona.",
|
|
52
|
+
]),
|
|
53
|
+
t("code_edit", 0, "single_file", 0, 0, 0, "software-engineer", "none", "g", [
|
|
54
|
+
"Commit the staged changes with a descriptive message.",
|
|
55
|
+
"Faça o commit das mudanças com uma mensagem descritiva.",
|
|
56
|
+
"Create a branch for this fix.",
|
|
57
|
+
"Crie uma branch para essa correção.",
|
|
58
|
+
]),
|
|
59
|
+
t("code_edit", 1, "single_file", 1, 0, 1, "devops-engineer", "compile", "ws", [
|
|
60
|
+
"Bump Node to 22 in the Dockerfile.",
|
|
61
|
+
"Atualize a versão do Node para 22 no Dockerfile.",
|
|
62
|
+
"Add a cache step for npm in the CI workflow.",
|
|
63
|
+
"Adicione cache do npm no workflow do CI.",
|
|
64
|
+
]),
|
|
65
|
+
t("bug_fix", 1, "single_file", 1, 0, 1, "software-engineer", "unit_test", "wt", [
|
|
66
|
+
"{fn} in {file} returns undefined when the list is empty; it should return an empty array.",
|
|
67
|
+
"A função {fn} em {file} retorna undefined quando a lista está vazia; deveria retornar um array vazio.",
|
|
68
|
+
"Off-by-one error in the pagination of {module}: the last page is skipped.",
|
|
69
|
+
"Erro de off-by-one na paginação do {module}: a última página é pulada.",
|
|
70
|
+
]),
|
|
71
|
+
t("bug_fix", 1, "single_file", 0, 0, 1, "frontend-engineer", "syntax", "w", [
|
|
72
|
+
"The header is misaligned on small screens.",
|
|
73
|
+
"O cabeçalho está desalinhado em telas pequenas.",
|
|
74
|
+
"Fix the CSS so the footer sticks to the bottom.",
|
|
75
|
+
"Arrume o CSS para o rodapé ficar no final da página.",
|
|
76
|
+
]),
|
|
77
|
+
t("bug_fix", 2, "module", 1, 1, 2, "backend-engineer", "unit_test", "wt", [
|
|
78
|
+
"The {module} API returns 500 when the request body has no 'email' field. It should return 400.",
|
|
79
|
+
"A API do {module} retorna 500 quando o corpo não tem o campo 'email'. Deveria retornar 400.",
|
|
80
|
+
"Dates are saved in local time instead of UTC in the {module} service.",
|
|
81
|
+
"As datas são salvas no horário local em vez de UTC no serviço {module}.",
|
|
82
|
+
]),
|
|
83
|
+
t("bug_fix", 2, "single_file", 1, 1, 2, "frontend-engineer", "integration_test", "wtb", [
|
|
84
|
+
"The dropdown in the settings page closes immediately on mobile.",
|
|
85
|
+
"O dropdown da página de configurações fecha sozinho no celular.",
|
|
86
|
+
"The modal does not trap focus; keyboard users can tab behind it.",
|
|
87
|
+
"O modal não prende o foco; quem usa teclado consegue navegar por trás dele.",
|
|
88
|
+
]),
|
|
89
|
+
t("bug_fix", 3, "multi_module", 2, 1, 3, "backend-engineer", "integration_test", "wts", [
|
|
90
|
+
"Race condition: two workers in {module} sometimes process the same job twice.",
|
|
91
|
+
"Condição de corrida: dois workers do {module} às vezes processam o mesmo job duas vezes.",
|
|
92
|
+
"Memory leak in the {module} cache under load; memory grows until the process is killed.",
|
|
93
|
+
"Vazamento de memória no cache do {module} sob carga; a memória cresce até o processo cair.",
|
|
94
|
+
]),
|
|
95
|
+
t("bug_fix", 3, "module", 2, 1, 3, "mobile-engineer", "integration_test", "wt", [
|
|
96
|
+
"The Android app crashes on startup on Android 14 only.",
|
|
97
|
+
"O app Android fecha ao abrir apenas no Android 14.",
|
|
98
|
+
]),
|
|
99
|
+
t("debugging", 2, "single_file", 1, 1, 2, "software-engineer", "unit_test", "wts", [
|
|
100
|
+
"I get 'TypeError: cannot read properties of undefined' when running the app. Help.",
|
|
101
|
+
"Estou recebendo 'TypeError: cannot read properties of undefined' ao rodar o app. Ajuda.",
|
|
102
|
+
]),
|
|
103
|
+
t("debugging", 3, "module", 1, 2, 3, "software-engineer", "unit_test", "wts", [
|
|
104
|
+
"The test '{test}' fails only on CI with a timeout and passes locally. Find out why.",
|
|
105
|
+
"O teste '{test}' falha só no CI com timeout e passa localmente. Descubra o motivo.",
|
|
106
|
+
"Something broke after the last merge: {module} hangs on startup. Investigate.",
|
|
107
|
+
"Alguma coisa quebrou depois do último merge: o {module} trava na inicialização. Investigue.",
|
|
108
|
+
]),
|
|
109
|
+
t("debugging", 4, "multi_module", 2, 2, 4, "software-architect", "integration_test", "wts", [
|
|
110
|
+
"Intermittent data corruption between the {module} and {module2} services, no clear reproduction. Find the root cause.",
|
|
111
|
+
"Corrupção de dados intermitente entre os serviços {module} e {module2}, sem reprodução clara. Ache a causa raiz.",
|
|
112
|
+
"Deadlock under high concurrency in the scheduler; it happens about once a day in production.",
|
|
113
|
+
"Deadlock com alta concorrência no scheduler; acontece mais ou menos uma vez por dia em produção.",
|
|
114
|
+
]),
|
|
115
|
+
t("refactor", 1, "single_file", 0, 0, 1, "software-engineer", "compile", "wt", [
|
|
116
|
+
"Convert {file} from JavaScript to TypeScript.",
|
|
117
|
+
"Converta {file} de JavaScript para TypeScript.",
|
|
118
|
+
"Replace var with const and let in {file}.",
|
|
119
|
+
"Troque var por const e let em {file}.",
|
|
120
|
+
]),
|
|
121
|
+
t("refactor", 2, "single_file", 1, 0, 2, "software-engineer", "unit_test", "wt", [
|
|
122
|
+
"Extract the validation logic of {file} into its own function.",
|
|
123
|
+
"Extraia a lógica de validação de {file} para uma função separada.",
|
|
124
|
+
"Split {file}; it has 1500 lines.",
|
|
125
|
+
"Divida {file}, que tem 1500 linhas.",
|
|
126
|
+
]),
|
|
127
|
+
t("refactor", 3, "multi_module", 2, 1, 3, "software-architect", "unit_test", "wt", [
|
|
128
|
+
"Replace the global singleton config in {module} with dependency injection across the packages.",
|
|
129
|
+
"Substitua o singleton global de configuração do {module} por injeção de dependência em todos os pacotes.",
|
|
130
|
+
"Migrate all callbacks in {module} to async/await.",
|
|
131
|
+
"Migre todos os callbacks do {module} para async/await.",
|
|
132
|
+
]),
|
|
133
|
+
t("refactor", 4, "repository", 2, 2, 4, "software-architect", "integration_test", "wtg", [
|
|
134
|
+
"Restructure the monorepo so {module} becomes an independent package without breaking consumers.",
|
|
135
|
+
"Reestruture o monorepo para o {module} virar um pacote independente sem quebrar quem usa.",
|
|
136
|
+
]),
|
|
137
|
+
t("feature", 1, "single_file", 0, 0, 1, "software-engineer", "unit_test", "wt", [
|
|
138
|
+
"Add a --verbose flag to the CLI that prints debug logs.",
|
|
139
|
+
"Adicione uma flag --verbose na CLI que imprima logs de debug.",
|
|
140
|
+
"Add a helper in {file} that formats bytes as KB or MB.",
|
|
141
|
+
"Crie em {file} uma função que formata bytes como KB ou MB.",
|
|
142
|
+
]),
|
|
143
|
+
t("feature", 2, "module", 1, 1, 2, "backend-engineer", "unit_test", "wt", [
|
|
144
|
+
"Add a GET /users/:id/orders endpoint with pagination.",
|
|
145
|
+
"Crie um endpoint GET /users/:id/orders com paginação.",
|
|
146
|
+
"Add retry with exponential backoff to the HTTP client in {module}.",
|
|
147
|
+
"Adicione retry com backoff exponencial no cliente HTTP do {module}.",
|
|
148
|
+
]),
|
|
149
|
+
t("feature", 2, "module", 1, 1, 2, "frontend-engineer", "integration_test", "wtb", [
|
|
150
|
+
"Add a dark mode toggle to the settings page.",
|
|
151
|
+
"Adicione um botão de modo escuro na página de configurações.",
|
|
152
|
+
"Create a reusable date picker component.",
|
|
153
|
+
"Crie um componente reutilizável de seleção de data.",
|
|
154
|
+
]),
|
|
155
|
+
t("feature", 2, "module", 1, 1, 2, "mobile-engineer", "integration_test", "wt", [
|
|
156
|
+
"Add push notifications to the Android app.",
|
|
157
|
+
"Adicione notificações push no app Android.",
|
|
158
|
+
"The iOS app needs offline caching of the feed.",
|
|
159
|
+
"O app iOS precisa de cache offline do feed.",
|
|
160
|
+
]),
|
|
161
|
+
t("feature", 2, "module", 1, 1, 2, "software-engineer", "unit_test", "wtW", [
|
|
162
|
+
"Integrate the {tech} SDK following its official docs.",
|
|
163
|
+
"Integre o SDK do {tech} seguindo a documentação oficial.",
|
|
164
|
+
]),
|
|
165
|
+
t("feature", 2, "single_file", 1, 0, 2, "database-engineer", "unit_test", "wtd", [
|
|
166
|
+
"Add an index to speed up the orders-by-customer query.",
|
|
167
|
+
"Adicione um índice para acelerar a consulta de pedidos por cliente.",
|
|
168
|
+
"Write a SQL query that returns monthly revenue per product.",
|
|
169
|
+
"Escreva uma consulta SQL que retorne o faturamento mensal por produto.",
|
|
170
|
+
]),
|
|
171
|
+
t("feature", 2, "module", 3, 1, 3, "database-engineer", "review", "wd", [
|
|
172
|
+
"Write a migration that drops the legacy column from the production orders table.",
|
|
173
|
+
"Escreva uma migration que remove a coluna legada da tabela de pedidos de produção.",
|
|
174
|
+
"Run a data migration on the production database to backfill user emails.",
|
|
175
|
+
"Rode uma migração de dados no banco de produção para preencher os e-mails dos usuários.",
|
|
176
|
+
], true),
|
|
177
|
+
t("feature", 3, "multi_module", 2, 1, 3, "backend-engineer", "integration_test", "wtsd", [
|
|
178
|
+
"Implement multi-tenant support in {module}: every query must be scoped by tenant.",
|
|
179
|
+
"Implemente suporte multi-tenant no {module}: toda consulta tem que filtrar pelo tenant.",
|
|
180
|
+
]),
|
|
181
|
+
t("feature", 3, "repository", 2, 1, 3, "devops-engineer", "integration_test", "wsg", [
|
|
182
|
+
"Set up a release pipeline that builds, tests and publishes the packages on tag.",
|
|
183
|
+
"Monte um pipeline de release que compila, testa e publica os pacotes quando criar uma tag.",
|
|
184
|
+
"Deploy the {module} service to Kubernetes with zero downtime.",
|
|
185
|
+
"Faça o deploy do serviço {module} no Kubernetes sem downtime.",
|
|
186
|
+
]),
|
|
187
|
+
t("feature", 4, "multi_module", 2, 2, 4, "software-architect", "integration_test", "wts", [
|
|
188
|
+
"Build a plugin system so third parties can add commands at runtime.",
|
|
189
|
+
"Crie um sistema de plugins para terceiros adicionarem comandos em tempo de execução.",
|
|
190
|
+
"Implement a CRDT-based collaborative editing engine.",
|
|
191
|
+
"Implemente um motor de edição colaborativa baseado em CRDT.",
|
|
192
|
+
]),
|
|
193
|
+
t("test", 0, "single_file", 0, 0, 0, "qa-engineer", "unit_test", "t", [
|
|
194
|
+
"Run the tests and tell me what fails.",
|
|
195
|
+
"Rode os testes e me diga o que falha.",
|
|
196
|
+
"Run the type checker.",
|
|
197
|
+
"Rode a checagem de tipos.",
|
|
198
|
+
]),
|
|
199
|
+
t("test", 1, "single_file", 0, 0, 1, "qa-engineer", "unit_test", "wt", [
|
|
200
|
+
"Write unit tests for {fn} in {file}.",
|
|
201
|
+
"Escreva testes unitários para {fn} em {file}.",
|
|
202
|
+
"Add a regression test for the empty input case of {fn}.",
|
|
203
|
+
"Adicione um teste de regressão para a entrada vazia de {fn}.",
|
|
204
|
+
]),
|
|
205
|
+
t("test", 2, "module", 1, 1, 2, "qa-engineer", "integration_test", "wts", [
|
|
206
|
+
"The test suite of {module} is flaky; stabilize the flaky tests.",
|
|
207
|
+
"A suíte de testes do {module} está instável; estabilize os testes flaky.",
|
|
208
|
+
"Add integration tests for the checkout flow.",
|
|
209
|
+
"Adicione testes de integração para o fluxo de checkout.",
|
|
210
|
+
]),
|
|
211
|
+
t("architecture", 3, "multi_module", 1, 2, 3, "software-architect", "review", "", [
|
|
212
|
+
"Propose an event-driven architecture for the notification system of our services.",
|
|
213
|
+
"Proponha uma arquitetura orientada a eventos para o sistema de notificações dos nossos serviços.",
|
|
214
|
+
"Evaluate whether we should split {module} into microservices.",
|
|
215
|
+
"Avalie se devemos dividir o {module} em microsserviços.",
|
|
216
|
+
]),
|
|
217
|
+
t("architecture", 4, "multi_repository", 2, 2, 4, "software-architect", "review", "W", [
|
|
218
|
+
"Design a distributed cache invalidation strategy across our three regions with strong consistency.",
|
|
219
|
+
"Desenhe uma estratégia de invalidação de cache distribuído entre nossas três regiões com consistência forte.",
|
|
220
|
+
"Analyze the concurrency model of the system and propose how to remove the global lock.",
|
|
221
|
+
"Analise o modelo de concorrência do sistema e proponha como remover o lock global.",
|
|
222
|
+
]),
|
|
223
|
+
t("security", 3, "module", 3, 1, 3, "security-engineer", "review", "wt", [
|
|
224
|
+
"Fix the SQL injection in the search endpoint of {module}.",
|
|
225
|
+
"Corrija o SQL injection no endpoint de busca do {module}.",
|
|
226
|
+
"The password reset token never expires; fix it.",
|
|
227
|
+
"O token de redefinição de senha nunca expira; corrija.",
|
|
228
|
+
], true),
|
|
229
|
+
t("security", 3, "module", 3, 1, 3, "security-engineer", "review", "", [
|
|
230
|
+
"Review the authentication middleware for vulnerabilities.",
|
|
231
|
+
"Revise o middleware de autenticação procurando vulnerabilidades.",
|
|
232
|
+
"Audit how API keys are stored in {module}.",
|
|
233
|
+
"Audite como as chaves de API são guardadas no {module}.",
|
|
234
|
+
], true),
|
|
235
|
+
t("security", 4, "multi_module", 3, 1, 4, "security-engineer", "review", "wtd", [
|
|
236
|
+
"Implement OAuth2 login with refresh token rotation.",
|
|
237
|
+
"Implemente login OAuth2 com rotação de refresh token.",
|
|
238
|
+
"Add payment processing with Stripe webhooks and idempotency.",
|
|
239
|
+
"Adicione processamento de pagamentos com webhooks do Stripe e idempotência.",
|
|
240
|
+
], true),
|
|
241
|
+
t("documentation", 1, "single_file", 0, 0, 1, "software-engineer", "syntax", "w", [
|
|
242
|
+
"Update the README with the new installation steps.",
|
|
243
|
+
"Atualize o README com os novos passos de instalação.",
|
|
244
|
+
"Add doc comments to the public functions of {file}.",
|
|
245
|
+
"Escreva a documentação da função {fn}.",
|
|
246
|
+
]),
|
|
247
|
+
t("documentation", 2, "module", 0, 1, 2, "software-architect", "syntax", "w", [
|
|
248
|
+
"Write an ADR documenting why we chose {tech} for the job queue.",
|
|
249
|
+
"Escreva um ADR documentando por que escolhemos {tech} para a fila de jobs.",
|
|
250
|
+
]),
|
|
251
|
+
t("research", 1, "single_file", 0, 1, 2, "researcher", "none", "W", [
|
|
252
|
+
"Compare {tech} and {tech2} for our use case.",
|
|
253
|
+
"Compare {tech} e {tech2} para o nosso caso.",
|
|
254
|
+
"What changed in the latest version of {tech}?",
|
|
255
|
+
"Pesquise as novidades da última versão do {tech}.",
|
|
256
|
+
]),
|
|
257
|
+
t("research", 2, "repository", 0, 1, 2, "researcher", "none", "", [
|
|
258
|
+
"Map every place where {module} writes to disk.",
|
|
259
|
+
"Mapeie todos os lugares onde o {module} grava em disco.",
|
|
260
|
+
"List the modules that would be affected by changing the signature of {fn}.",
|
|
261
|
+
"Liste os módulos afetados se mudarmos a assinatura de {fn}.",
|
|
262
|
+
]),
|
|
263
|
+
];
|
|
264
|
+
const SLOTS = {
|
|
265
|
+
file: [
|
|
266
|
+
"src/utils/date.ts",
|
|
267
|
+
"app/models/user.py",
|
|
268
|
+
"src/main/java/OrderService.java",
|
|
269
|
+
"lib/cache.go",
|
|
270
|
+
"src/components/Header.tsx",
|
|
271
|
+
"internal/auth/token.go",
|
|
272
|
+
"src/api/routes.ts",
|
|
273
|
+
"services/billing.rb",
|
|
274
|
+
],
|
|
275
|
+
fn: ["parseDate", "calculateTotal", "getUser", "formatPrice", "loadConfig", "mergeOptions", "validateInput"],
|
|
276
|
+
module: ["billing", "auth", "orders", "notifications", "search", "sync", "scheduler", "gateway"],
|
|
277
|
+
var: ["data", "tmp", "res", "cfg"],
|
|
278
|
+
var2: ["payload", "buffer", "response", "config"],
|
|
279
|
+
test: ["should refresh token", "renders header", "handles retries"],
|
|
280
|
+
tech: ["Redis", "Kafka", "RabbitMQ", "PostgreSQL", "Stripe", "Sentry"],
|
|
281
|
+
};
|
|
282
|
+
/** Optional stack mention appended to a request; it varies the text without changing the labels. */
|
|
283
|
+
const STACKS = ["TypeScript", "Python", "Go", "Java", "Kotlin", "Swift", "Ruby", "Rust"];
|
|
284
|
+
const STACK_FORMATS = ["", " ({stack})", " [{stack}]", " - {stack}"];
|
|
285
|
+
/** Tier from the task profile: the cheapest tier for its difficulty, raised for risk and security. */
|
|
286
|
+
export function seedTier(template) {
|
|
287
|
+
const difficulty = Math.max(template.complexity, template.reasoning);
|
|
288
|
+
let index = difficulty <= 1 ? 0 : difficulty - 1;
|
|
289
|
+
if (template.risk >= 2 || template.security)
|
|
290
|
+
index = Math.max(index, 2);
|
|
291
|
+
return CAPABILITY_TIERS[Math.min(index, CAPABILITY_TIERS.length - 1)];
|
|
292
|
+
}
|
|
293
|
+
/** Deterministic PRNG (mulberry32), so the same count yields the same exercises. */
|
|
294
|
+
function random(seed) {
|
|
295
|
+
let state = seed;
|
|
296
|
+
return () => {
|
|
297
|
+
state = (state + 0x6d2b79f5) | 0;
|
|
298
|
+
let value = Math.imul(state ^ (state >>> 15), 1 | state);
|
|
299
|
+
value = (value + Math.imul(value ^ (value >>> 7), 61 | value)) ^ value;
|
|
300
|
+
return ((value ^ (value >>> 14)) >>> 0) / 4294967296;
|
|
301
|
+
};
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Generates up to `count` distinct exercises in laya-trainer's dataset format, the same number per
|
|
305
|
+
* template, so templates with many slot combinations do not crowd out the others.
|
|
306
|
+
*/
|
|
307
|
+
export function generateSeed(count, seed = 2026) {
|
|
308
|
+
const next = random(seed);
|
|
309
|
+
const pick = (values) => values[Math.floor(next() * values.length)];
|
|
310
|
+
const rows = [];
|
|
311
|
+
const seen = new Set();
|
|
312
|
+
const quota = Math.ceil(count / TEMPLATES.length);
|
|
313
|
+
const produced = new Map();
|
|
314
|
+
for (let attempt = 0; rows.length < count && attempt < count * 50; attempt++) {
|
|
315
|
+
const template = TEMPLATES[attempt % TEMPLATES.length];
|
|
316
|
+
if ((produced.get(template) ?? 0) >= quota)
|
|
317
|
+
continue;
|
|
318
|
+
const module = pick(SLOTS.module);
|
|
319
|
+
const tech = pick(SLOTS.tech);
|
|
320
|
+
const stack = pick(STACK_FORMATS).replace("{stack}", pick(STACKS));
|
|
321
|
+
const request = pick(template.texts).replace(/\{(\w+)\}/g, (_, slot) => {
|
|
322
|
+
if (slot === "module")
|
|
323
|
+
return module;
|
|
324
|
+
if (slot === "module2")
|
|
325
|
+
return pick(SLOTS.module.filter((value) => value !== module));
|
|
326
|
+
if (slot === "tech")
|
|
327
|
+
return tech;
|
|
328
|
+
if (slot === "tech2")
|
|
329
|
+
return pick(SLOTS.tech.filter((value) => value !== tech));
|
|
330
|
+
return pick(SLOTS[slot]);
|
|
331
|
+
}) + stack;
|
|
332
|
+
if (seen.has(request))
|
|
333
|
+
continue;
|
|
334
|
+
seen.add(request);
|
|
335
|
+
produced.set(template, (produced.get(template) ?? 0) + 1);
|
|
336
|
+
const tools = Object.fromEntries(Object.entries(TOOL_FLAGS).map(([flag, id]) => [id, template.tools.includes(flag)]));
|
|
337
|
+
rows.push({
|
|
338
|
+
state: { request },
|
|
339
|
+
expected: {
|
|
340
|
+
task_type: template.type,
|
|
341
|
+
complexity: template.complexity,
|
|
342
|
+
scope: template.scope,
|
|
343
|
+
risk: template.risk,
|
|
344
|
+
ambiguity: template.ambiguity,
|
|
345
|
+
reasoning_requirement: template.reasoning,
|
|
346
|
+
capability_tier: seedTier(template),
|
|
347
|
+
reasoning_effort: REASONING_EFFORTS[template.reasoning],
|
|
348
|
+
agent: template.agent,
|
|
349
|
+
validation_level: template.validation,
|
|
350
|
+
...tools,
|
|
351
|
+
security_sensitive: template.security ?? false,
|
|
352
|
+
},
|
|
353
|
+
source: "synthetic",
|
|
354
|
+
});
|
|
355
|
+
}
|
|
356
|
+
return rows;
|
|
357
|
+
}
|
|
358
|
+
//# sourceMappingURL=seed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seed.js","sourceRoot":"","sources":["../../../src/extensions/laya/seed.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\ttype AgentId,\n\tCAPABILITY_TIERS,\n\ttype CapabilityTier,\n\tREASONING_EFFORTS,\n\ttype TaskScope,\n\ttype TaskType,\n\ttype ToolRequirement,\n\ttype ValidationLevel,\n} from \"./questions.ts\";\n\n/**\n * Synthetic bootstrap exercises for training Laya before the harness has telemetry.\n *\n * Each template fixes the task profile; the tier and effort follow from it by the same rule for\n * every template, so the labels are consistent. These are opinion-based labels. Replace them over\n * time with evidence-based labels exported from telemetry (`/laya export`).\n */\n\ninterface Template {\n\ttype: TaskType;\n\t/** Indexes into the score levels of `questions.ts`. */\n\tcomplexity: 0 | 1 | 2 | 3 | 4;\n\tscope: TaskScope;\n\trisk: 0 | 1 | 2 | 3;\n\tambiguity: 0 | 1 | 2;\n\treasoning: 0 | 1 | 2 | 3 | 4;\n\tagent: AgentId;\n\tvalidation: ValidationLevel;\n\t/** w=write s=shell t=tests W=web b=browser d=database g=git */\n\ttools: string;\n\tsecurity?: boolean;\n\ttexts: string[];\n}\n\nconst TOOL_FLAGS: Record<string, ToolRequirement> = {\n\tw: \"requires_write\",\n\ts: \"requires_shell\",\n\tt: \"requires_tests\",\n\tW: \"requires_web\",\n\tb: \"requires_browser\",\n\td: \"requires_database\",\n\tg: \"requires_git\",\n};\n\nconst t = (\n\ttype: TaskType,\n\tcomplexity: Template[\"complexity\"],\n\tscope: TaskScope,\n\trisk: Template[\"risk\"],\n\tambiguity: Template[\"ambiguity\"],\n\treasoning: Template[\"reasoning\"],\n\tagent: AgentId,\n\tvalidation: ValidationLevel,\n\ttools: string,\n\ttexts: string[],\n\tsecurity = false,\n): Template => ({ type, complexity, scope, risk, ambiguity, reasoning, agent, validation, tools, texts, security });\n\nconst TEMPLATES: Template[] = [\n\tt(\"question\", 0, \"single_file\", 0, 0, 0, \"researcher\", \"none\", \"\", [\n\t\t\"What does the function {fn} in {file} return?\",\n\t\t\"O que a função {fn} em {file} retorna?\",\n\t\t\"Where is {fn} defined?\",\n\t\t\"Onde fica definida a função {fn}?\",\n\t]),\n\tt(\"question\", 1, \"module\", 0, 0, 1, \"researcher\", \"none\", \"\", [\n\t\t\"How does the {module} module load its configuration?\",\n\t\t\"Como o módulo {module} carrega a configuração?\",\n\t\t\"Explain how {module} handles errors.\",\n\t\t\"Explique como o {module} trata erros.\",\n\t]),\n\tt(\"question\", 2, \"repository\", 0, 1, 2, \"software-architect\", \"none\", \"\", [\n\t\t\"Why does the {module} package depend on {module2}? Is that coupling necessary?\",\n\t\t\"Por que o pacote {module} depende do {module2}? Esse acoplamento é necessário?\",\n\t]),\n\tt(\"question\", 1, \"single_file\", 0, 2, 1, \"researcher\", \"none\", \"\", [\n\t\t\"Is this approach ok?\",\n\t\t\"Isso está certo?\",\n\t\t\"Can you take a look at {file}?\",\n\t\t\"Dá uma olhada no {file}?\",\n\t]),\n\tt(\"code_edit\", 0, \"single_line\", 0, 0, 0, \"frontend-engineer\", \"syntax\", \"w\", [\n\t\t\"Change the text of the submit button to 'Save'.\",\n\t\t\"Corrija o texto deste botão para 'Salvar'.\",\n\t\t\"Fix the typo in the error message of {file}.\",\n\t\t\"Corrija o erro de digitação na mensagem de erro de {file}.\",\n\t]),\n\tt(\"code_edit\", 0, \"single_line\", 0, 0, 0, \"software-engineer\", \"compile\", \"wt\", [\n\t\t\"Rename the variable {var} to {var2} in {file}.\",\n\t\t\"Renomeie a variável {var} para {var2} em {file}.\",\n\t\t\"Change the default timeout in {file} from 30 to 60 seconds.\",\n\t\t\"Mude o timeout padrão em {file} de 30 para 60 segundos.\",\n\t]),\n\tt(\"code_edit\", 1, \"single_file\", 0, 0, 1, \"software-engineer\", \"compile\", \"wt\", [\n\t\t\"Remove the unused imports from {file}.\",\n\t\t\"Remova os imports não usados de {file}.\",\n\t\t\"Make {fn} in {file} async.\",\n\t\t\"Transforme {fn} em {file} em uma função assíncrona.\",\n\t]),\n\tt(\"code_edit\", 0, \"single_file\", 0, 0, 0, \"software-engineer\", \"none\", \"g\", [\n\t\t\"Commit the staged changes with a descriptive message.\",\n\t\t\"Faça o commit das mudanças com uma mensagem descritiva.\",\n\t\t\"Create a branch for this fix.\",\n\t\t\"Crie uma branch para essa correção.\",\n\t]),\n\tt(\"code_edit\", 1, \"single_file\", 1, 0, 1, \"devops-engineer\", \"compile\", \"ws\", [\n\t\t\"Bump Node to 22 in the Dockerfile.\",\n\t\t\"Atualize a versão do Node para 22 no Dockerfile.\",\n\t\t\"Add a cache step for npm in the CI workflow.\",\n\t\t\"Adicione cache do npm no workflow do CI.\",\n\t]),\n\tt(\"bug_fix\", 1, \"single_file\", 1, 0, 1, \"software-engineer\", \"unit_test\", \"wt\", [\n\t\t\"{fn} in {file} returns undefined when the list is empty; it should return an empty array.\",\n\t\t\"A função {fn} em {file} retorna undefined quando a lista está vazia; deveria retornar um array vazio.\",\n\t\t\"Off-by-one error in the pagination of {module}: the last page is skipped.\",\n\t\t\"Erro de off-by-one na paginação do {module}: a última página é pulada.\",\n\t]),\n\tt(\"bug_fix\", 1, \"single_file\", 0, 0, 1, \"frontend-engineer\", \"syntax\", \"w\", [\n\t\t\"The header is misaligned on small screens.\",\n\t\t\"O cabeçalho está desalinhado em telas pequenas.\",\n\t\t\"Fix the CSS so the footer sticks to the bottom.\",\n\t\t\"Arrume o CSS para o rodapé ficar no final da página.\",\n\t]),\n\tt(\"bug_fix\", 2, \"module\", 1, 1, 2, \"backend-engineer\", \"unit_test\", \"wt\", [\n\t\t\"The {module} API returns 500 when the request body has no 'email' field. It should return 400.\",\n\t\t\"A API do {module} retorna 500 quando o corpo não tem o campo 'email'. Deveria retornar 400.\",\n\t\t\"Dates are saved in local time instead of UTC in the {module} service.\",\n\t\t\"As datas são salvas no horário local em vez de UTC no serviço {module}.\",\n\t]),\n\tt(\"bug_fix\", 2, \"single_file\", 1, 1, 2, \"frontend-engineer\", \"integration_test\", \"wtb\", [\n\t\t\"The dropdown in the settings page closes immediately on mobile.\",\n\t\t\"O dropdown da página de configurações fecha sozinho no celular.\",\n\t\t\"The modal does not trap focus; keyboard users can tab behind it.\",\n\t\t\"O modal não prende o foco; quem usa teclado consegue navegar por trás dele.\",\n\t]),\n\tt(\"bug_fix\", 3, \"multi_module\", 2, 1, 3, \"backend-engineer\", \"integration_test\", \"wts\", [\n\t\t\"Race condition: two workers in {module} sometimes process the same job twice.\",\n\t\t\"Condição de corrida: dois workers do {module} às vezes processam o mesmo job duas vezes.\",\n\t\t\"Memory leak in the {module} cache under load; memory grows until the process is killed.\",\n\t\t\"Vazamento de memória no cache do {module} sob carga; a memória cresce até o processo cair.\",\n\t]),\n\tt(\"bug_fix\", 3, \"module\", 2, 1, 3, \"mobile-engineer\", \"integration_test\", \"wt\", [\n\t\t\"The Android app crashes on startup on Android 14 only.\",\n\t\t\"O app Android fecha ao abrir apenas no Android 14.\",\n\t]),\n\tt(\"debugging\", 2, \"single_file\", 1, 1, 2, \"software-engineer\", \"unit_test\", \"wts\", [\n\t\t\"I get 'TypeError: cannot read properties of undefined' when running the app. Help.\",\n\t\t\"Estou recebendo 'TypeError: cannot read properties of undefined' ao rodar o app. Ajuda.\",\n\t]),\n\tt(\"debugging\", 3, \"module\", 1, 2, 3, \"software-engineer\", \"unit_test\", \"wts\", [\n\t\t\"The test '{test}' fails only on CI with a timeout and passes locally. Find out why.\",\n\t\t\"O teste '{test}' falha só no CI com timeout e passa localmente. Descubra o motivo.\",\n\t\t\"Something broke after the last merge: {module} hangs on startup. Investigate.\",\n\t\t\"Alguma coisa quebrou depois do último merge: o {module} trava na inicialização. Investigue.\",\n\t]),\n\tt(\"debugging\", 4, \"multi_module\", 2, 2, 4, \"software-architect\", \"integration_test\", \"wts\", [\n\t\t\"Intermittent data corruption between the {module} and {module2} services, no clear reproduction. Find the root cause.\",\n\t\t\"Corrupção de dados intermitente entre os serviços {module} e {module2}, sem reprodução clara. Ache a causa raiz.\",\n\t\t\"Deadlock under high concurrency in the scheduler; it happens about once a day in production.\",\n\t\t\"Deadlock com alta concorrência no scheduler; acontece mais ou menos uma vez por dia em produção.\",\n\t]),\n\tt(\"refactor\", 1, \"single_file\", 0, 0, 1, \"software-engineer\", \"compile\", \"wt\", [\n\t\t\"Convert {file} from JavaScript to TypeScript.\",\n\t\t\"Converta {file} de JavaScript para TypeScript.\",\n\t\t\"Replace var with const and let in {file}.\",\n\t\t\"Troque var por const e let em {file}.\",\n\t]),\n\tt(\"refactor\", 2, \"single_file\", 1, 0, 2, \"software-engineer\", \"unit_test\", \"wt\", [\n\t\t\"Extract the validation logic of {file} into its own function.\",\n\t\t\"Extraia a lógica de validação de {file} para uma função separada.\",\n\t\t\"Split {file}; it has 1500 lines.\",\n\t\t\"Divida {file}, que tem 1500 linhas.\",\n\t]),\n\tt(\"refactor\", 3, \"multi_module\", 2, 1, 3, \"software-architect\", \"unit_test\", \"wt\", [\n\t\t\"Replace the global singleton config in {module} with dependency injection across the packages.\",\n\t\t\"Substitua o singleton global de configuração do {module} por injeção de dependência em todos os pacotes.\",\n\t\t\"Migrate all callbacks in {module} to async/await.\",\n\t\t\"Migre todos os callbacks do {module} para async/await.\",\n\t]),\n\tt(\"refactor\", 4, \"repository\", 2, 2, 4, \"software-architect\", \"integration_test\", \"wtg\", [\n\t\t\"Restructure the monorepo so {module} becomes an independent package without breaking consumers.\",\n\t\t\"Reestruture o monorepo para o {module} virar um pacote independente sem quebrar quem usa.\",\n\t]),\n\tt(\"feature\", 1, \"single_file\", 0, 0, 1, \"software-engineer\", \"unit_test\", \"wt\", [\n\t\t\"Add a --verbose flag to the CLI that prints debug logs.\",\n\t\t\"Adicione uma flag --verbose na CLI que imprima logs de debug.\",\n\t\t\"Add a helper in {file} that formats bytes as KB or MB.\",\n\t\t\"Crie em {file} uma função que formata bytes como KB ou MB.\",\n\t]),\n\tt(\"feature\", 2, \"module\", 1, 1, 2, \"backend-engineer\", \"unit_test\", \"wt\", [\n\t\t\"Add a GET /users/:id/orders endpoint with pagination.\",\n\t\t\"Crie um endpoint GET /users/:id/orders com paginação.\",\n\t\t\"Add retry with exponential backoff to the HTTP client in {module}.\",\n\t\t\"Adicione retry com backoff exponencial no cliente HTTP do {module}.\",\n\t]),\n\tt(\"feature\", 2, \"module\", 1, 1, 2, \"frontend-engineer\", \"integration_test\", \"wtb\", [\n\t\t\"Add a dark mode toggle to the settings page.\",\n\t\t\"Adicione um botão de modo escuro na página de configurações.\",\n\t\t\"Create a reusable date picker component.\",\n\t\t\"Crie um componente reutilizável de seleção de data.\",\n\t]),\n\tt(\"feature\", 2, \"module\", 1, 1, 2, \"mobile-engineer\", \"integration_test\", \"wt\", [\n\t\t\"Add push notifications to the Android app.\",\n\t\t\"Adicione notificações push no app Android.\",\n\t\t\"The iOS app needs offline caching of the feed.\",\n\t\t\"O app iOS precisa de cache offline do feed.\",\n\t]),\n\tt(\"feature\", 2, \"module\", 1, 1, 2, \"software-engineer\", \"unit_test\", \"wtW\", [\n\t\t\"Integrate the {tech} SDK following its official docs.\",\n\t\t\"Integre o SDK do {tech} seguindo a documentação oficial.\",\n\t]),\n\tt(\"feature\", 2, \"single_file\", 1, 0, 2, \"database-engineer\", \"unit_test\", \"wtd\", [\n\t\t\"Add an index to speed up the orders-by-customer query.\",\n\t\t\"Adicione um índice para acelerar a consulta de pedidos por cliente.\",\n\t\t\"Write a SQL query that returns monthly revenue per product.\",\n\t\t\"Escreva uma consulta SQL que retorne o faturamento mensal por produto.\",\n\t]),\n\tt(\n\t\t\"feature\",\n\t\t2,\n\t\t\"module\",\n\t\t3,\n\t\t1,\n\t\t3,\n\t\t\"database-engineer\",\n\t\t\"review\",\n\t\t\"wd\",\n\t\t[\n\t\t\t\"Write a migration that drops the legacy column from the production orders table.\",\n\t\t\t\"Escreva uma migration que remove a coluna legada da tabela de pedidos de produção.\",\n\t\t\t\"Run a data migration on the production database to backfill user emails.\",\n\t\t\t\"Rode uma migração de dados no banco de produção para preencher os e-mails dos usuários.\",\n\t\t],\n\t\ttrue,\n\t),\n\tt(\"feature\", 3, \"multi_module\", 2, 1, 3, \"backend-engineer\", \"integration_test\", \"wtsd\", [\n\t\t\"Implement multi-tenant support in {module}: every query must be scoped by tenant.\",\n\t\t\"Implemente suporte multi-tenant no {module}: toda consulta tem que filtrar pelo tenant.\",\n\t]),\n\tt(\"feature\", 3, \"repository\", 2, 1, 3, \"devops-engineer\", \"integration_test\", \"wsg\", [\n\t\t\"Set up a release pipeline that builds, tests and publishes the packages on tag.\",\n\t\t\"Monte um pipeline de release que compila, testa e publica os pacotes quando criar uma tag.\",\n\t\t\"Deploy the {module} service to Kubernetes with zero downtime.\",\n\t\t\"Faça o deploy do serviço {module} no Kubernetes sem downtime.\",\n\t]),\n\tt(\"feature\", 4, \"multi_module\", 2, 2, 4, \"software-architect\", \"integration_test\", \"wts\", [\n\t\t\"Build a plugin system so third parties can add commands at runtime.\",\n\t\t\"Crie um sistema de plugins para terceiros adicionarem comandos em tempo de execução.\",\n\t\t\"Implement a CRDT-based collaborative editing engine.\",\n\t\t\"Implemente um motor de edição colaborativa baseado em CRDT.\",\n\t]),\n\tt(\"test\", 0, \"single_file\", 0, 0, 0, \"qa-engineer\", \"unit_test\", \"t\", [\n\t\t\"Run the tests and tell me what fails.\",\n\t\t\"Rode os testes e me diga o que falha.\",\n\t\t\"Run the type checker.\",\n\t\t\"Rode a checagem de tipos.\",\n\t]),\n\tt(\"test\", 1, \"single_file\", 0, 0, 1, \"qa-engineer\", \"unit_test\", \"wt\", [\n\t\t\"Write unit tests for {fn} in {file}.\",\n\t\t\"Escreva testes unitários para {fn} em {file}.\",\n\t\t\"Add a regression test for the empty input case of {fn}.\",\n\t\t\"Adicione um teste de regressão para a entrada vazia de {fn}.\",\n\t]),\n\tt(\"test\", 2, \"module\", 1, 1, 2, \"qa-engineer\", \"integration_test\", \"wts\", [\n\t\t\"The test suite of {module} is flaky; stabilize the flaky tests.\",\n\t\t\"A suíte de testes do {module} está instável; estabilize os testes flaky.\",\n\t\t\"Add integration tests for the checkout flow.\",\n\t\t\"Adicione testes de integração para o fluxo de checkout.\",\n\t]),\n\tt(\"architecture\", 3, \"multi_module\", 1, 2, 3, \"software-architect\", \"review\", \"\", [\n\t\t\"Propose an event-driven architecture for the notification system of our services.\",\n\t\t\"Proponha uma arquitetura orientada a eventos para o sistema de notificações dos nossos serviços.\",\n\t\t\"Evaluate whether we should split {module} into microservices.\",\n\t\t\"Avalie se devemos dividir o {module} em microsserviços.\",\n\t]),\n\tt(\"architecture\", 4, \"multi_repository\", 2, 2, 4, \"software-architect\", \"review\", \"W\", [\n\t\t\"Design a distributed cache invalidation strategy across our three regions with strong consistency.\",\n\t\t\"Desenhe uma estratégia de invalidação de cache distribuído entre nossas três regiões com consistência forte.\",\n\t\t\"Analyze the concurrency model of the system and propose how to remove the global lock.\",\n\t\t\"Analise o modelo de concorrência do sistema e proponha como remover o lock global.\",\n\t]),\n\tt(\n\t\t\"security\",\n\t\t3,\n\t\t\"module\",\n\t\t3,\n\t\t1,\n\t\t3,\n\t\t\"security-engineer\",\n\t\t\"review\",\n\t\t\"wt\",\n\t\t[\n\t\t\t\"Fix the SQL injection in the search endpoint of {module}.\",\n\t\t\t\"Corrija o SQL injection no endpoint de busca do {module}.\",\n\t\t\t\"The password reset token never expires; fix it.\",\n\t\t\t\"O token de redefinição de senha nunca expira; corrija.\",\n\t\t],\n\t\ttrue,\n\t),\n\tt(\n\t\t\"security\",\n\t\t3,\n\t\t\"module\",\n\t\t3,\n\t\t1,\n\t\t3,\n\t\t\"security-engineer\",\n\t\t\"review\",\n\t\t\"\",\n\t\t[\n\t\t\t\"Review the authentication middleware for vulnerabilities.\",\n\t\t\t\"Revise o middleware de autenticação procurando vulnerabilidades.\",\n\t\t\t\"Audit how API keys are stored in {module}.\",\n\t\t\t\"Audite como as chaves de API são guardadas no {module}.\",\n\t\t],\n\t\ttrue,\n\t),\n\tt(\n\t\t\"security\",\n\t\t4,\n\t\t\"multi_module\",\n\t\t3,\n\t\t1,\n\t\t4,\n\t\t\"security-engineer\",\n\t\t\"review\",\n\t\t\"wtd\",\n\t\t[\n\t\t\t\"Implement OAuth2 login with refresh token rotation.\",\n\t\t\t\"Implemente login OAuth2 com rotação de refresh token.\",\n\t\t\t\"Add payment processing with Stripe webhooks and idempotency.\",\n\t\t\t\"Adicione processamento de pagamentos com webhooks do Stripe e idempotência.\",\n\t\t],\n\t\ttrue,\n\t),\n\tt(\"documentation\", 1, \"single_file\", 0, 0, 1, \"software-engineer\", \"syntax\", \"w\", [\n\t\t\"Update the README with the new installation steps.\",\n\t\t\"Atualize o README com os novos passos de instalação.\",\n\t\t\"Add doc comments to the public functions of {file}.\",\n\t\t\"Escreva a documentação da função {fn}.\",\n\t]),\n\tt(\"documentation\", 2, \"module\", 0, 1, 2, \"software-architect\", \"syntax\", \"w\", [\n\t\t\"Write an ADR documenting why we chose {tech} for the job queue.\",\n\t\t\"Escreva um ADR documentando por que escolhemos {tech} para a fila de jobs.\",\n\t]),\n\tt(\"research\", 1, \"single_file\", 0, 1, 2, \"researcher\", \"none\", \"W\", [\n\t\t\"Compare {tech} and {tech2} for our use case.\",\n\t\t\"Compare {tech} e {tech2} para o nosso caso.\",\n\t\t\"What changed in the latest version of {tech}?\",\n\t\t\"Pesquise as novidades da última versão do {tech}.\",\n\t]),\n\tt(\"research\", 2, \"repository\", 0, 1, 2, \"researcher\", \"none\", \"\", [\n\t\t\"Map every place where {module} writes to disk.\",\n\t\t\"Mapeie todos os lugares onde o {module} grava em disco.\",\n\t\t\"List the modules that would be affected by changing the signature of {fn}.\",\n\t\t\"Liste os módulos afetados se mudarmos a assinatura de {fn}.\",\n\t]),\n];\n\nconst SLOTS: Record<string, string[]> = {\n\tfile: [\n\t\t\"src/utils/date.ts\",\n\t\t\"app/models/user.py\",\n\t\t\"src/main/java/OrderService.java\",\n\t\t\"lib/cache.go\",\n\t\t\"src/components/Header.tsx\",\n\t\t\"internal/auth/token.go\",\n\t\t\"src/api/routes.ts\",\n\t\t\"services/billing.rb\",\n\t],\n\tfn: [\"parseDate\", \"calculateTotal\", \"getUser\", \"formatPrice\", \"loadConfig\", \"mergeOptions\", \"validateInput\"],\n\tmodule: [\"billing\", \"auth\", \"orders\", \"notifications\", \"search\", \"sync\", \"scheduler\", \"gateway\"],\n\tvar: [\"data\", \"tmp\", \"res\", \"cfg\"],\n\tvar2: [\"payload\", \"buffer\", \"response\", \"config\"],\n\ttest: [\"should refresh token\", \"renders header\", \"handles retries\"],\n\ttech: [\"Redis\", \"Kafka\", \"RabbitMQ\", \"PostgreSQL\", \"Stripe\", \"Sentry\"],\n};\n\n/** Optional stack mention appended to a request; it varies the text without changing the labels. */\nconst STACKS = [\"TypeScript\", \"Python\", \"Go\", \"Java\", \"Kotlin\", \"Swift\", \"Ruby\", \"Rust\"];\nconst STACK_FORMATS = [\"\", \" ({stack})\", \" [{stack}]\", \" - {stack}\"];\n\n/** Tier from the task profile: the cheapest tier for its difficulty, raised for risk and security. */\nexport function seedTier(template: Pick<Template, \"complexity\" | \"reasoning\" | \"risk\" | \"security\">): CapabilityTier {\n\tconst difficulty = Math.max(template.complexity, template.reasoning);\n\tlet index = difficulty <= 1 ? 0 : difficulty - 1;\n\tif (template.risk >= 2 || template.security) index = Math.max(index, 2);\n\treturn CAPABILITY_TIERS[Math.min(index, CAPABILITY_TIERS.length - 1)];\n}\n\n/** Deterministic PRNG (mulberry32), so the same count yields the same exercises. */\nfunction random(seed: number): () => number {\n\tlet state = seed;\n\treturn () => {\n\t\tstate = (state + 0x6d2b79f5) | 0;\n\t\tlet value = Math.imul(state ^ (state >>> 15), 1 | state);\n\t\tvalue = (value + Math.imul(value ^ (value >>> 7), 61 | value)) ^ value;\n\t\treturn ((value ^ (value >>> 14)) >>> 0) / 4294967296;\n\t};\n}\n\nexport interface SeedRow {\n\tstate: { request: string };\n\texpected: Record<string, string | number | boolean>;\n\tsource: \"synthetic\";\n}\n\n/**\n * Generates up to `count` distinct exercises in laya-trainer's dataset format, the same number per\n * template, so templates with many slot combinations do not crowd out the others.\n */\nexport function generateSeed(count: number, seed = 2026): SeedRow[] {\n\tconst next = random(seed);\n\tconst pick = <T>(values: readonly T[]): T => values[Math.floor(next() * values.length)];\n\tconst rows: SeedRow[] = [];\n\tconst seen = new Set<string>();\n\tconst quota = Math.ceil(count / TEMPLATES.length);\n\tconst produced = new Map<Template, number>();\n\tfor (let attempt = 0; rows.length < count && attempt < count * 50; attempt++) {\n\t\tconst template = TEMPLATES[attempt % TEMPLATES.length];\n\t\tif ((produced.get(template) ?? 0) >= quota) continue;\n\t\tconst module = pick(SLOTS.module);\n\t\tconst tech = pick(SLOTS.tech);\n\t\tconst stack = pick(STACK_FORMATS).replace(\"{stack}\", pick(STACKS));\n\t\tconst request =\n\t\t\tpick(template.texts).replace(/\\{(\\w+)\\}/g, (_, slot: string) => {\n\t\t\t\tif (slot === \"module\") return module;\n\t\t\t\tif (slot === \"module2\") return pick(SLOTS.module.filter((value) => value !== module));\n\t\t\t\tif (slot === \"tech\") return tech;\n\t\t\t\tif (slot === \"tech2\") return pick(SLOTS.tech.filter((value) => value !== tech));\n\t\t\t\treturn pick(SLOTS[slot]);\n\t\t\t}) + stack;\n\t\tif (seen.has(request)) continue;\n\t\tseen.add(request);\n\t\tproduced.set(template, (produced.get(template) ?? 0) + 1);\n\t\tconst tools = Object.fromEntries(\n\t\t\tObject.entries(TOOL_FLAGS).map(([flag, id]) => [id, template.tools.includes(flag)]),\n\t\t);\n\t\trows.push({\n\t\t\tstate: { request },\n\t\t\texpected: {\n\t\t\t\ttask_type: template.type,\n\t\t\t\tcomplexity: template.complexity,\n\t\t\t\tscope: template.scope,\n\t\t\t\trisk: template.risk,\n\t\t\t\tambiguity: template.ambiguity,\n\t\t\t\treasoning_requirement: template.reasoning,\n\t\t\t\tcapability_tier: seedTier(template),\n\t\t\t\treasoning_effort: REASONING_EFFORTS[template.reasoning],\n\t\t\t\tagent: template.agent,\n\t\t\t\tvalidation_level: template.validation,\n\t\t\t\t...tools,\n\t\t\t\tsecurity_sensitive: template.security ?? false,\n\t\t\t},\n\t\t\tsource: \"synthetic\",\n\t\t});\n\t}\n\treturn rows;\n}\n"]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { type LayaModelManifest, type LayaPaths } from "./runtime.ts";
|
|
2
|
+
export interface LayaServerOptions {
|
|
3
|
+
paths: LayaPaths;
|
|
4
|
+
manifest: LayaModelManifest;
|
|
5
|
+
/** The configured System One URL, e.g. `http://127.0.0.1:8000/v1`. */
|
|
6
|
+
baseUrl: () => string;
|
|
7
|
+
fetch?: typeof fetch;
|
|
8
|
+
}
|
|
9
|
+
/** Whether a URL points at this machine, the only place Relay starts a server. */
|
|
10
|
+
export declare function isLocalUrl(url: string): boolean;
|
|
11
|
+
/** Starts and stops the local Laya server. A server that is already listening is used, never replaced. */
|
|
12
|
+
export declare class LayaServer {
|
|
13
|
+
private readonly options;
|
|
14
|
+
private child;
|
|
15
|
+
private starting;
|
|
16
|
+
constructor(options: LayaServerOptions);
|
|
17
|
+
status(): import("./runtime.ts").LayaRuntimeStatus;
|
|
18
|
+
isUp(): Promise<boolean>;
|
|
19
|
+
/** True when a server answers, starting ours first if the runtime is installed. Concurrent calls share one start. */
|
|
20
|
+
ensureRunning(signal?: AbortSignal): Promise<boolean>;
|
|
21
|
+
private startIfNeeded;
|
|
22
|
+
/** Stops the server this process started. */
|
|
23
|
+
stop(): void;
|
|
24
|
+
get running(): boolean;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/extensions/laya/server.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAiB,MAAM,cAAc,CAAC;AAMrF,MAAM,WAAW,iBAAiB;IACjC,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,sEAAsE;IACtE,OAAO,EAAE,MAAM,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACrB;AAED,kFAAkF;AAClF,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAM/C;AAED,0GAA0G;AAC1G,qBAAa,UAAU;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,QAAQ,CAA+B;IAE/C,YAAY,OAAO,EAAE,iBAAiB,EAErC;IAED,MAAM,6CAEL;IAEK,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAU7B;IAED,qHAAqH;IACrH,aAAa,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAKpD;YAEa,aAAa;IAoD3B,6CAA6C;IAC7C,IAAI,IAAI,IAAI,CAUX;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;CACD"}
|