@aibyzero/byz 0.0.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/LICENSE +21 -0
- package/README.md +148 -5
- package/dist/cli.js +55 -0
- package/dist/runtime/bun/cli.d.ts +3 -0
- package/dist/runtime/bun/cli.d.ts.map +1 -0
- package/dist/runtime/bun/cli.js +11 -0
- package/dist/runtime/bun/cli.js.map +1 -0
- package/dist/runtime/bun/register-bedrock.d.ts +2 -0
- package/dist/runtime/bun/register-bedrock.d.ts.map +1 -0
- package/dist/runtime/bun/register-bedrock.js +4 -0
- package/dist/runtime/bun/register-bedrock.js.map +1 -0
- package/dist/runtime/bun/restore-sandbox-env.d.ts +17 -0
- package/dist/runtime/bun/restore-sandbox-env.d.ts.map +1 -0
- package/dist/runtime/bun/restore-sandbox-env.js +36 -0
- package/dist/runtime/bun/restore-sandbox-env.js.map +1 -0
- package/dist/runtime/bundle/chunks/anthropic-messages-JWX2WP65.js +45 -0
- package/dist/runtime/bundle/chunks/anthropic.js +75 -0
- package/dist/runtime/bundle/chunks/azure-openai-responses-5ENVCQ7U.js +2 -0
- package/dist/runtime/bundle/chunks/bedrock-converse-stream.js +74 -0
- package/dist/runtime/bundle/chunks/chunk-4L3WN2XY.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-6CYCI3EJ.js +12 -0
- package/dist/runtime/bundle/chunks/chunk-6R7UI4IY.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-AXIIZGTV.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-CCRJHU72.js +1547 -0
- package/dist/runtime/bundle/chunks/chunk-DRQDKNXA.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-GMWCTUPB.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-GPPBJGBU.js +50 -0
- package/dist/runtime/bundle/chunks/chunk-JUUC5AZY.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-L2ZPNLYD.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-MNAIPA3J.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-NBBFIJUL.js +11 -0
- package/dist/runtime/bundle/chunks/chunk-NUHFSC37.js +25 -0
- package/dist/runtime/bundle/chunks/chunk-PGXDEOVV.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-PJACZCIR.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-PRRNXB7S.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-TEPMHNKQ.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-TRDNDS6A.js +4 -0
- package/dist/runtime/bundle/chunks/chunk-UAQELI3K.js +2 -0
- package/dist/runtime/bundle/chunks/chunk-XDUWOHPL.js +6 -0
- package/dist/runtime/bundle/chunks/chunk-XNGRGP62.js +2 -0
- package/dist/runtime/bundle/chunks/dist-RDWOYWHR.js +13 -0
- package/dist/runtime/bundle/chunks/github-copilot.js +2 -0
- package/dist/runtime/bundle/chunks/google-generative-ai-XDKMGBCJ.js +2 -0
- package/dist/runtime/bundle/chunks/google-vertex-D5FGEO3Y.js +2 -0
- package/dist/runtime/bundle/chunks/image-resize-worker.js +2 -0
- package/dist/runtime/bundle/chunks/kimi-coding.js +2 -0
- package/dist/runtime/bundle/chunks/lib-HGQMNYVT.js +9 -0
- package/dist/runtime/bundle/chunks/mistral-conversations-YK73UAOZ.js +5 -0
- package/dist/runtime/bundle/chunks/multipart-parser-SQ6GDJL7.js +3 -0
- package/dist/runtime/bundle/chunks/openai-codex-responses-GJVBJXLB.js +8 -0
- package/dist/runtime/bundle/chunks/openai-codex.js +75 -0
- package/dist/runtime/bundle/chunks/openai-completions-XGHMB3UO.js +7 -0
- package/dist/runtime/bundle/chunks/openai-responses-BSOJMSEV.js +2 -0
- package/dist/runtime/bundle/chunks/openrouter-images-N4XVVFSD.js +2 -0
- package/dist/runtime/bundle/chunks/openrouter.js +75 -0
- package/dist/runtime/bundle/chunks/pi-messages-TPFH44NP.js +8 -0
- package/dist/runtime/bundle/chunks/radius.js +75 -0
- package/dist/runtime/bundle/chunks/src-UK77SYZE.js +4 -0
- package/dist/runtime/bundle/chunks/xai.js +2 -0
- package/dist/runtime/bundle/cli.js +3 -0
- package/dist/runtime/bundle/client.js +2 -0
- package/dist/runtime/bundle/index.js +2 -0
- package/dist/runtime/bundle/rpc-entry.js +3 -0
- package/dist/runtime/cli/args.d.ts +61 -0
- package/dist/runtime/cli/args.d.ts.map +1 -0
- package/dist/runtime/cli/args.js +439 -0
- package/dist/runtime/cli/args.js.map +1 -0
- package/dist/runtime/cli/auth-check.d.ts +19 -0
- package/dist/runtime/cli/auth-check.d.ts.map +1 -0
- package/dist/runtime/cli/auth-check.js +50 -0
- package/dist/runtime/cli/auth-check.js.map +1 -0
- package/dist/runtime/cli/auth-command.d.ts +24 -0
- package/dist/runtime/cli/auth-command.d.ts.map +1 -0
- package/dist/runtime/cli/auth-command.js +103 -0
- package/dist/runtime/cli/auth-command.js.map +1 -0
- package/dist/runtime/cli/config-selector.d.ts +16 -0
- package/dist/runtime/cli/config-selector.d.ts.map +1 -0
- package/dist/runtime/cli/config-selector.js +31 -0
- package/dist/runtime/cli/config-selector.js.map +1 -0
- package/dist/runtime/cli/credential-print.d.ts +13 -0
- package/dist/runtime/cli/credential-print.d.ts.map +1 -0
- package/dist/runtime/cli/credential-print.js +76 -0
- package/dist/runtime/cli/credential-print.js.map +1 -0
- package/dist/runtime/cli/experimental/auth.d.ts +16 -0
- package/dist/runtime/cli/experimental/auth.d.ts.map +1 -0
- package/dist/runtime/cli/experimental/auth.js +13 -0
- package/dist/runtime/cli/experimental/auth.js.map +1 -0
- package/dist/runtime/cli/experimental/cli.d.ts +6 -0
- package/dist/runtime/cli/experimental/cli.d.ts.map +1 -0
- package/dist/runtime/cli/experimental/cli.js +5 -0
- package/dist/runtime/cli/experimental/cli.js.map +1 -0
- package/dist/runtime/cli/experimental/command-options.d.ts +17 -0
- package/dist/runtime/cli/experimental/command-options.d.ts.map +1 -0
- package/dist/runtime/cli/experimental/command-options.js +35 -0
- package/dist/runtime/cli/experimental/command-options.js.map +1 -0
- package/dist/runtime/cli/experimental/command.d.ts +63 -0
- package/dist/runtime/cli/experimental/command.d.ts.map +1 -0
- package/dist/runtime/cli/experimental/command.js +130 -0
- package/dist/runtime/cli/experimental/command.js.map +1 -0
- package/dist/runtime/cli/experimental/commands/client.d.ts +13 -0
- package/dist/runtime/cli/experimental/commands/client.d.ts.map +1 -0
- package/dist/runtime/cli/experimental/commands/client.js +25 -0
- package/dist/runtime/cli/experimental/commands/client.js.map +1 -0
- package/dist/runtime/cli/experimental/commands/pi.d.ts +15 -0
- package/dist/runtime/cli/experimental/commands/pi.d.ts.map +1 -0
- package/dist/runtime/cli/experimental/commands/pi.js +28 -0
- package/dist/runtime/cli/experimental/commands/pi.js.map +1 -0
- package/dist/runtime/cli/experimental/commands/server.d.ts +13 -0
- package/dist/runtime/cli/experimental/commands/server.d.ts.map +1 -0
- package/dist/runtime/cli/experimental/commands/server.js +25 -0
- package/dist/runtime/cli/experimental/commands/server.js.map +1 -0
- package/dist/runtime/cli/experimental/transport-address.d.ts +10 -0
- package/dist/runtime/cli/experimental/transport-address.d.ts.map +1 -0
- package/dist/runtime/cli/experimental/transport-address.js +38 -0
- package/dist/runtime/cli/experimental/transport-address.js.map +1 -0
- package/dist/runtime/cli/file-processor.d.ts +15 -0
- package/dist/runtime/cli/file-processor.d.ts.map +1 -0
- package/dist/runtime/cli/file-processor.js +71 -0
- package/dist/runtime/cli/file-processor.js.map +1 -0
- package/dist/runtime/cli/initial-message.d.ts +18 -0
- package/dist/runtime/cli/initial-message.d.ts.map +1 -0
- package/dist/runtime/cli/initial-message.js +22 -0
- package/dist/runtime/cli/initial-message.js.map +1 -0
- package/dist/runtime/cli/list-models.d.ts +9 -0
- package/dist/runtime/cli/list-models.d.ts.map +1 -0
- package/dist/runtime/cli/list-models.js +98 -0
- package/dist/runtime/cli/list-models.js.map +1 -0
- package/dist/runtime/cli/project-trust.d.ts +10 -0
- package/dist/runtime/cli/project-trust.d.ts.map +1 -0
- package/dist/runtime/cli/project-trust.js +48 -0
- package/dist/runtime/cli/project-trust.js.map +1 -0
- package/dist/runtime/cli/session-picker.d.ts +10 -0
- package/dist/runtime/cli/session-picker.d.ts.map +1 -0
- package/dist/runtime/cli/session-picker.js +36 -0
- package/dist/runtime/cli/session-picker.js.map +1 -0
- package/dist/runtime/cli/startup-ui.d.ts +20 -0
- package/dist/runtime/cli/startup-ui.d.ts.map +1 -0
- package/dist/runtime/cli/startup-ui.js +184 -0
- package/dist/runtime/cli/startup-ui.js.map +1 -0
- package/dist/runtime/cli.d.ts +3 -0
- package/dist/runtime/cli.d.ts.map +1 -0
- package/dist/runtime/cli.js +19 -0
- package/dist/runtime/cli.js.map +1 -0
- package/dist/runtime/client/index.d.ts +3 -0
- package/dist/runtime/client/index.d.ts.map +1 -0
- package/dist/runtime/client/index.js +3 -0
- package/dist/runtime/client/index.js.map +1 -0
- package/dist/runtime/client/remote-session.d.ts +53 -0
- package/dist/runtime/client/remote-session.d.ts.map +1 -0
- package/dist/runtime/client/remote-session.js +340 -0
- package/dist/runtime/client/remote-session.js.map +1 -0
- package/dist/runtime/client/transcript.d.ts +12 -0
- package/dist/runtime/client/transcript.d.ts.map +1 -0
- package/dist/runtime/client/transcript.js +98 -0
- package/dist/runtime/client/transcript.js.map +1 -0
- package/dist/runtime/config.d.ts +98 -0
- package/dist/runtime/config.d.ts.map +1 -0
- package/dist/runtime/config.js +469 -0
- package/dist/runtime/config.js.map +1 -0
- package/dist/runtime/core/agent-session-runtime.d.ts +119 -0
- package/dist/runtime/core/agent-session-runtime.d.ts.map +1 -0
- package/dist/runtime/core/agent-session-runtime.js +309 -0
- package/dist/runtime/core/agent-session-runtime.js.map +1 -0
- package/dist/runtime/core/agent-session-services.d.ts +86 -0
- package/dist/runtime/core/agent-session-services.d.ts.map +1 -0
- package/dist/runtime/core/agent-session-services.js +134 -0
- package/dist/runtime/core/agent-session-services.js.map +1 -0
- package/dist/runtime/core/agent-session.d.ts +678 -0
- package/dist/runtime/core/agent-session.d.ts.map +1 -0
- package/dist/runtime/core/agent-session.js +2808 -0
- package/dist/runtime/core/agent-session.js.map +1 -0
- package/dist/runtime/core/auth-guidance.d.ts +5 -0
- package/dist/runtime/core/auth-guidance.d.ts.map +1 -0
- package/dist/runtime/core/auth-guidance.js +21 -0
- package/dist/runtime/core/auth-guidance.js.map +1 -0
- package/dist/runtime/core/auth-storage.d.ts +72 -0
- package/dist/runtime/core/auth-storage.d.ts.map +1 -0
- package/dist/runtime/core/auth-storage.js +426 -0
- package/dist/runtime/core/auth-storage.js.map +1 -0
- package/dist/runtime/core/bash-executor.d.ts +32 -0
- package/dist/runtime/core/bash-executor.d.ts.map +1 -0
- package/dist/runtime/core/bash-executor.js +111 -0
- package/dist/runtime/core/bash-executor.js.map +1 -0
- package/dist/runtime/core/cache-stats.d.ts +49 -0
- package/dist/runtime/core/cache-stats.d.ts.map +1 -0
- package/dist/runtime/core/cache-stats.js +101 -0
- package/dist/runtime/core/cache-stats.js.map +1 -0
- package/dist/runtime/core/compaction/branch-summarization.d.ts +98 -0
- package/dist/runtime/core/compaction/branch-summarization.d.ts.map +1 -0
- package/dist/runtime/core/compaction/branch-summarization.js +250 -0
- package/dist/runtime/core/compaction/branch-summarization.js.map +1 -0
- package/dist/runtime/core/compaction/compaction.d.ts +143 -0
- package/dist/runtime/core/compaction/compaction.d.ts.map +1 -0
- package/dist/runtime/core/compaction/compaction.js +669 -0
- package/dist/runtime/core/compaction/compaction.js.map +1 -0
- package/dist/runtime/core/compaction/index.d.ts +7 -0
- package/dist/runtime/core/compaction/index.d.ts.map +1 -0
- package/dist/runtime/core/compaction/index.js +7 -0
- package/dist/runtime/core/compaction/index.js.map +1 -0
- package/dist/runtime/core/compaction/utils.d.ts +38 -0
- package/dist/runtime/core/compaction/utils.d.ts.map +1 -0
- package/dist/runtime/core/compaction/utils.js +142 -0
- package/dist/runtime/core/compaction/utils.js.map +1 -0
- package/dist/runtime/core/defaults.d.ts +4 -0
- package/dist/runtime/core/defaults.d.ts.map +1 -0
- package/dist/runtime/core/defaults.js +11 -0
- package/dist/runtime/core/defaults.js.map +1 -0
- package/dist/runtime/core/diagnostics.d.ts +15 -0
- package/dist/runtime/core/diagnostics.d.ts.map +1 -0
- package/dist/runtime/core/diagnostics.js +2 -0
- package/dist/runtime/core/diagnostics.js.map +1 -0
- package/dist/runtime/core/event-bus.d.ts +9 -0
- package/dist/runtime/core/event-bus.d.ts.map +1 -0
- package/dist/runtime/core/event-bus.js +25 -0
- package/dist/runtime/core/event-bus.js.map +1 -0
- package/dist/runtime/core/exec.d.ts +29 -0
- package/dist/runtime/core/exec.d.ts.map +1 -0
- package/dist/runtime/core/exec.js +75 -0
- package/dist/runtime/core/exec.js.map +1 -0
- package/dist/runtime/core/experimental.d.ts +6 -0
- package/dist/runtime/core/experimental.d.ts.map +1 -0
- package/dist/runtime/core/experimental.js +8 -0
- package/dist/runtime/core/experimental.js.map +1 -0
- package/dist/runtime/core/export-html/ansi-to-html.d.ts +22 -0
- package/dist/runtime/core/export-html/ansi-to-html.d.ts.map +1 -0
- package/dist/runtime/core/export-html/ansi-to-html.js +249 -0
- package/dist/runtime/core/export-html/ansi-to-html.js.map +1 -0
- package/dist/runtime/core/export-html/index.d.ts +37 -0
- package/dist/runtime/core/export-html/index.d.ts.map +1 -0
- package/dist/runtime/core/export-html/index.js +226 -0
- package/dist/runtime/core/export-html/index.js.map +1 -0
- package/dist/runtime/core/export-html/template.css +1066 -0
- package/dist/runtime/core/export-html/template.html +55 -0
- package/dist/runtime/core/export-html/template.js +1864 -0
- package/dist/runtime/core/export-html/tool-renderer.d.ts +34 -0
- package/dist/runtime/core/export-html/tool-renderer.d.ts.map +1 -0
- package/dist/runtime/core/export-html/tool-renderer.js +108 -0
- package/dist/runtime/core/export-html/tool-renderer.js.map +1 -0
- package/dist/runtime/core/export-html/vendor/highlight.min.js +1213 -0
- package/dist/runtime/core/export-html/vendor/marked.min.js +78 -0
- package/dist/runtime/core/extensions/index.d.ts +12 -0
- package/dist/runtime/core/extensions/index.d.ts.map +1 -0
- package/dist/runtime/core/extensions/index.js +9 -0
- package/dist/runtime/core/extensions/index.js.map +1 -0
- package/dist/runtime/core/extensions/loader.d.ts +23 -0
- package/dist/runtime/core/extensions/loader.d.ts.map +1 -0
- package/dist/runtime/core/extensions/loader.js +648 -0
- package/dist/runtime/core/extensions/loader.js.map +1 -0
- package/dist/runtime/core/extensions/runner.d.ts +173 -0
- package/dist/runtime/core/extensions/runner.d.ts.map +1 -0
- package/dist/runtime/core/extensions/runner.js +967 -0
- package/dist/runtime/core/extensions/runner.js.map +1 -0
- package/dist/runtime/core/extensions/types.d.ts +1328 -0
- package/dist/runtime/core/extensions/types.d.ts.map +1 -0
- package/dist/runtime/core/extensions/types.js +48 -0
- package/dist/runtime/core/extensions/types.js.map +1 -0
- package/dist/runtime/core/extensions/wrapper.d.ts +20 -0
- package/dist/runtime/core/extensions/wrapper.d.ts.map +1 -0
- package/dist/runtime/core/extensions/wrapper.js +41 -0
- package/dist/runtime/core/extensions/wrapper.js.map +1 -0
- package/dist/runtime/core/footer-data-provider.d.ts +64 -0
- package/dist/runtime/core/footer-data-provider.d.ts.map +1 -0
- package/dist/runtime/core/footer-data-provider.js +338 -0
- package/dist/runtime/core/footer-data-provider.js.map +1 -0
- package/dist/runtime/core/http-dispatcher.d.ts +22 -0
- package/dist/runtime/core/http-dispatcher.d.ts.map +1 -0
- package/dist/runtime/core/http-dispatcher.js +96 -0
- package/dist/runtime/core/http-dispatcher.js.map +1 -0
- package/dist/runtime/core/index.d.ts +13 -0
- package/dist/runtime/core/index.d.ts.map +1 -0
- package/dist/runtime/core/index.js +13 -0
- package/dist/runtime/core/index.js.map +1 -0
- package/dist/runtime/core/keybindings.d.ts +423 -0
- package/dist/runtime/core/keybindings.d.ts.map +1 -0
- package/dist/runtime/core/keybindings.js +317 -0
- package/dist/runtime/core/keybindings.js.map +1 -0
- package/dist/runtime/core/messages.d.ts +77 -0
- package/dist/runtime/core/messages.d.ts.map +1 -0
- package/dist/runtime/core/messages.js +123 -0
- package/dist/runtime/core/messages.js.map +1 -0
- package/dist/runtime/core/model-config.d.ts +576 -0
- package/dist/runtime/core/model-config.d.ts.map +1 -0
- package/dist/runtime/core/model-config.js +256 -0
- package/dist/runtime/core/model-config.js.map +1 -0
- package/dist/runtime/core/model-registry.d.ts +45 -0
- package/dist/runtime/core/model-registry.d.ts.map +1 -0
- package/dist/runtime/core/model-registry.js +107 -0
- package/dist/runtime/core/model-registry.js.map +1 -0
- package/dist/runtime/core/model-resolver.d.ts +124 -0
- package/dist/runtime/core/model-resolver.d.ts.map +1 -0
- package/dist/runtime/core/model-resolver.js +589 -0
- package/dist/runtime/core/model-resolver.js.map +1 -0
- package/dist/runtime/core/model-runtime.d.ts +100 -0
- package/dist/runtime/core/model-runtime.d.ts.map +1 -0
- package/dist/runtime/core/model-runtime.js +599 -0
- package/dist/runtime/core/model-runtime.js.map +1 -0
- package/dist/runtime/core/models-store.d.ts +22 -0
- package/dist/runtime/core/models-store.d.ts.map +1 -0
- package/dist/runtime/core/models-store.js +115 -0
- package/dist/runtime/core/models-store.js.map +1 -0
- package/dist/runtime/core/output-guard.d.ts +7 -0
- package/dist/runtime/core/output-guard.d.ts.map +1 -0
- package/dist/runtime/core/output-guard.js +89 -0
- package/dist/runtime/core/output-guard.js.map +1 -0
- package/dist/runtime/core/package-manager.d.ts +213 -0
- package/dist/runtime/core/package-manager.d.ts.map +1 -0
- package/dist/runtime/core/package-manager.js +2177 -0
- package/dist/runtime/core/package-manager.js.map +1 -0
- package/dist/runtime/core/pi-manifest.d.ts +8 -0
- package/dist/runtime/core/pi-manifest.d.ts.map +1 -0
- package/dist/runtime/core/pi-manifest.js +26 -0
- package/dist/runtime/core/pi-manifest.js.map +1 -0
- package/dist/runtime/core/project-trust.d.ts +15 -0
- package/dist/runtime/core/project-trust.d.ts.map +1 -0
- package/dist/runtime/core/project-trust.js +59 -0
- package/dist/runtime/core/project-trust.js.map +1 -0
- package/dist/runtime/core/prompt-templates.d.ts +54 -0
- package/dist/runtime/core/prompt-templates.d.ts.map +1 -0
- package/dist/runtime/core/prompt-templates.js +236 -0
- package/dist/runtime/core/prompt-templates.js.map +1 -0
- package/dist/runtime/core/provider-attribution.d.ts +4 -0
- package/dist/runtime/core/provider-attribution.d.ts.map +1 -0
- package/dist/runtime/core/provider-attribution.js +72 -0
- package/dist/runtime/core/provider-attribution.js.map +1 -0
- package/dist/runtime/core/provider-composer.d.ts +58 -0
- package/dist/runtime/core/provider-composer.d.ts.map +1 -0
- package/dist/runtime/core/provider-composer.js +396 -0
- package/dist/runtime/core/provider-composer.js.map +1 -0
- package/dist/runtime/core/radius.d.ts +2 -0
- package/dist/runtime/core/radius.d.ts.map +1 -0
- package/dist/runtime/core/radius.js +2 -0
- package/dist/runtime/core/radius.js.map +1 -0
- package/dist/runtime/core/remote-catalog-provider.d.ts +5 -0
- package/dist/runtime/core/remote-catalog-provider.d.ts.map +1 -0
- package/dist/runtime/core/remote-catalog-provider.js +122 -0
- package/dist/runtime/core/remote-catalog-provider.js.map +1 -0
- package/dist/runtime/core/resolve-config-value.d.ts +30 -0
- package/dist/runtime/core/resolve-config-value.d.ts.map +1 -0
- package/dist/runtime/core/resolve-config-value.js +247 -0
- package/dist/runtime/core/resolve-config-value.js.map +1 -0
- package/dist/runtime/core/resource-loader.d.ts +221 -0
- package/dist/runtime/core/resource-loader.d.ts.map +1 -0
- package/dist/runtime/core/resource-loader.js +875 -0
- package/dist/runtime/core/resource-loader.js.map +1 -0
- package/dist/runtime/core/runtime-credentials.d.ts +15 -0
- package/dist/runtime/core/runtime-credentials.d.ts.map +1 -0
- package/dist/runtime/core/runtime-credentials.js +39 -0
- package/dist/runtime/core/runtime-credentials.js.map +1 -0
- package/dist/runtime/core/sdk.d.ts +108 -0
- package/dist/runtime/core/sdk.d.ts.map +1 -0
- package/dist/runtime/core/sdk.js +275 -0
- package/dist/runtime/core/sdk.js.map +1 -0
- package/dist/runtime/core/session-cwd.d.ts +19 -0
- package/dist/runtime/core/session-cwd.d.ts.map +1 -0
- package/dist/runtime/core/session-cwd.js +38 -0
- package/dist/runtime/core/session-cwd.js.map +1 -0
- package/dist/runtime/core/session-export.d.ts +4 -0
- package/dist/runtime/core/session-export.d.ts.map +1 -0
- package/dist/runtime/core/session-export.js +32 -0
- package/dist/runtime/core/session-export.js.map +1 -0
- package/dist/runtime/core/session-manager.d.ts +356 -0
- package/dist/runtime/core/session-manager.d.ts.map +1 -0
- package/dist/runtime/core/session-manager.js +1341 -0
- package/dist/runtime/core/session-manager.js.map +1 -0
- package/dist/runtime/core/settings-diagnostics.d.ts +9 -0
- package/dist/runtime/core/settings-diagnostics.d.ts.map +1 -0
- package/dist/runtime/core/settings-diagnostics.js +21 -0
- package/dist/runtime/core/settings-diagnostics.js.map +1 -0
- package/dist/runtime/core/settings-manager.d.ts +324 -0
- package/dist/runtime/core/settings-manager.d.ts.map +1 -0
- package/dist/runtime/core/settings-manager.js +980 -0
- package/dist/runtime/core/settings-manager.js.map +1 -0
- package/dist/runtime/core/skills.d.ts +60 -0
- package/dist/runtime/core/skills.d.ts.map +1 -0
- package/dist/runtime/core/skills.js +405 -0
- package/dist/runtime/core/skills.js.map +1 -0
- package/dist/runtime/core/slash-commands.d.ts +15 -0
- package/dist/runtime/core/slash-commands.d.ts.map +1 -0
- package/dist/runtime/core/slash-commands.js +27 -0
- package/dist/runtime/core/slash-commands.js.map +1 -0
- package/dist/runtime/core/source-info.d.ts +18 -0
- package/dist/runtime/core/source-info.d.ts.map +1 -0
- package/dist/runtime/core/source-info.js +19 -0
- package/dist/runtime/core/source-info.js.map +1 -0
- package/dist/runtime/core/system-prompt.d.ts +28 -0
- package/dist/runtime/core/system-prompt.d.ts.map +1 -0
- package/dist/runtime/core/system-prompt.js +119 -0
- package/dist/runtime/core/system-prompt.js.map +1 -0
- package/dist/runtime/core/telemetry.d.ts +3 -0
- package/dist/runtime/core/telemetry.d.ts.map +1 -0
- package/dist/runtime/core/telemetry.js +9 -0
- package/dist/runtime/core/telemetry.js.map +1 -0
- package/dist/runtime/core/timings.d.ts +10 -0
- package/dist/runtime/core/timings.d.ts.map +1 -0
- package/dist/runtime/core/timings.js +41 -0
- package/dist/runtime/core/timings.js.map +1 -0
- package/dist/runtime/core/tools/bash.d.ts +87 -0
- package/dist/runtime/core/tools/bash.d.ts.map +1 -0
- package/dist/runtime/core/tools/bash.js +410 -0
- package/dist/runtime/core/tools/bash.js.map +1 -0
- package/dist/runtime/core/tools/edit-diff.d.ts +101 -0
- package/dist/runtime/core/tools/edit-diff.d.ts.map +1 -0
- package/dist/runtime/core/tools/edit-diff.js +421 -0
- package/dist/runtime/core/tools/edit-diff.js.map +1 -0
- package/dist/runtime/core/tools/edit.d.ts +55 -0
- package/dist/runtime/core/tools/edit.d.ts.map +1 -0
- package/dist/runtime/core/tools/edit.js +306 -0
- package/dist/runtime/core/tools/edit.js.map +1 -0
- package/dist/runtime/core/tools/file-mutation-queue.d.ts +6 -0
- package/dist/runtime/core/tools/file-mutation-queue.d.ts.map +1 -0
- package/dist/runtime/core/tools/file-mutation-queue.js +52 -0
- package/dist/runtime/core/tools/file-mutation-queue.js.map +1 -0
- package/dist/runtime/core/tools/find.d.ts +42 -0
- package/dist/runtime/core/tools/find.d.ts.map +1 -0
- package/dist/runtime/core/tools/find.js +302 -0
- package/dist/runtime/core/tools/find.js.map +1 -0
- package/dist/runtime/core/tools/grep.d.ts +41 -0
- package/dist/runtime/core/tools/grep.d.ts.map +1 -0
- package/dist/runtime/core/tools/grep.js +308 -0
- package/dist/runtime/core/tools/grep.js.map +1 -0
- package/dist/runtime/core/tools/index.d.ts +43 -0
- package/dist/runtime/core/tools/index.d.ts.map +1 -0
- package/dist/runtime/core/tools/index.js +129 -0
- package/dist/runtime/core/tools/index.js.map +1 -0
- package/dist/runtime/core/tools/ls.d.ts +41 -0
- package/dist/runtime/core/tools/ls.d.ts.map +1 -0
- package/dist/runtime/core/tools/ls.js +171 -0
- package/dist/runtime/core/tools/ls.js.map +1 -0
- package/dist/runtime/core/tools/output-accumulator.d.ts +52 -0
- package/dist/runtime/core/tools/output-accumulator.d.ts.map +1 -0
- package/dist/runtime/core/tools/output-accumulator.js +184 -0
- package/dist/runtime/core/tools/output-accumulator.js.map +1 -0
- package/dist/runtime/core/tools/path-utils.d.ts +10 -0
- package/dist/runtime/core/tools/path-utils.d.ts.map +1 -0
- package/dist/runtime/core/tools/path-utils.js +99 -0
- package/dist/runtime/core/tools/path-utils.js.map +1 -0
- package/dist/runtime/core/tools/powershell.d.ts +16 -0
- package/dist/runtime/core/tools/powershell.d.ts.map +1 -0
- package/dist/runtime/core/tools/powershell.js +39 -0
- package/dist/runtime/core/tools/powershell.js.map +1 -0
- package/dist/runtime/core/tools/read.d.ts +39 -0
- package/dist/runtime/core/tools/read.d.ts.map +1 -0
- package/dist/runtime/core/tools/read.js +282 -0
- package/dist/runtime/core/tools/read.js.map +1 -0
- package/dist/runtime/core/tools/render-utils.d.ts +24 -0
- package/dist/runtime/core/tools/render-utils.d.ts.map +1 -0
- package/dist/runtime/core/tools/render-utils.js +65 -0
- package/dist/runtime/core/tools/render-utils.js.map +1 -0
- package/dist/runtime/core/tools/tool-definition-wrapper.d.ts +14 -0
- package/dist/runtime/core/tools/tool-definition-wrapper.d.ts.map +1 -0
- package/dist/runtime/core/tools/tool-definition-wrapper.js +36 -0
- package/dist/runtime/core/tools/tool-definition-wrapper.js.map +1 -0
- package/dist/runtime/core/tools/truncate.d.ts +70 -0
- package/dist/runtime/core/tools/truncate.d.ts.map +1 -0
- package/dist/runtime/core/tools/truncate.js +215 -0
- package/dist/runtime/core/tools/truncate.js.map +1 -0
- package/dist/runtime/core/tools/write.d.ts +30 -0
- package/dist/runtime/core/tools/write.d.ts.map +1 -0
- package/dist/runtime/core/tools/write.js +203 -0
- package/dist/runtime/core/tools/write.js.map +1 -0
- package/dist/runtime/core/trust-manager.d.ts +36 -0
- package/dist/runtime/core/trust-manager.d.ts.map +1 -0
- package/dist/runtime/core/trust-manager.js +203 -0
- package/dist/runtime/core/trust-manager.js.map +1 -0
- package/dist/runtime/core/usage-totals.d.ts +19 -0
- package/dist/runtime/core/usage-totals.d.ts.map +1 -0
- package/dist/runtime/core/usage-totals.js +52 -0
- package/dist/runtime/core/usage-totals.js.map +1 -0
- package/dist/runtime/extensions/index.d.ts +3 -0
- package/dist/runtime/extensions/index.d.ts.map +1 -0
- package/dist/runtime/extensions/index.js +3 -0
- package/dist/runtime/extensions/index.js.map +1 -0
- package/dist/runtime/extensions/llama/client.d.ts +67 -0
- package/dist/runtime/extensions/llama/client.d.ts.map +1 -0
- package/dist/runtime/extensions/llama/client.js +309 -0
- package/dist/runtime/extensions/llama/client.js.map +1 -0
- package/dist/runtime/extensions/llama/huggingface.d.ts +23 -0
- package/dist/runtime/extensions/llama/huggingface.d.ts.map +1 -0
- package/dist/runtime/extensions/llama/huggingface.js +141 -0
- package/dist/runtime/extensions/llama/huggingface.js.map +1 -0
- package/dist/runtime/extensions/llama/index.d.ts +3 -0
- package/dist/runtime/extensions/llama/index.d.ts.map +1 -0
- package/dist/runtime/extensions/llama/index.js +219 -0
- package/dist/runtime/extensions/llama/index.js.map +1 -0
- package/dist/runtime/extensions/llama/provider.d.ts +12 -0
- package/dist/runtime/extensions/llama/provider.d.ts.map +1 -0
- package/dist/runtime/extensions/llama/provider.js +146 -0
- package/dist/runtime/extensions/llama/provider.js.map +1 -0
- package/dist/runtime/extensions/llama/ui.d.ts +42 -0
- package/dist/runtime/extensions/llama/ui.d.ts.map +1 -0
- package/dist/runtime/extensions/llama/ui.js +416 -0
- package/dist/runtime/extensions/llama/ui.js.map +1 -0
- package/dist/runtime/index.d.ts +37 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +49 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/main.d.ts +16 -0
- package/dist/runtime/main.d.ts.map +1 -0
- package/dist/runtime/main.js +799 -0
- package/dist/runtime/main.js.map +1 -0
- package/dist/runtime/migrations.d.ts +33 -0
- package/dist/runtime/migrations.d.ts.map +1 -0
- package/dist/runtime/migrations.js +282 -0
- package/dist/runtime/migrations.js.map +1 -0
- package/dist/runtime/modes/index.d.ts +10 -0
- package/dist/runtime/modes/index.d.ts.map +1 -0
- package/dist/runtime/modes/index.js +8 -0
- package/dist/runtime/modes/index.js.map +1 -0
- package/dist/runtime/modes/interactive/assets/clankolas.png +0 -0
- package/dist/runtime/modes/interactive/components/armin.d.ts +34 -0
- package/dist/runtime/modes/interactive/components/armin.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/armin.js +333 -0
- package/dist/runtime/modes/interactive/components/armin.js.map +1 -0
- package/dist/runtime/modes/interactive/components/assistant-message.d.ts +25 -0
- package/dist/runtime/modes/interactive/components/assistant-message.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/assistant-message.js +150 -0
- package/dist/runtime/modes/interactive/components/assistant-message.js.map +1 -0
- package/dist/runtime/modes/interactive/components/bash-execution.d.ts +34 -0
- package/dist/runtime/modes/interactive/components/bash-execution.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/bash-execution.js +175 -0
- package/dist/runtime/modes/interactive/components/bash-execution.js.map +1 -0
- package/dist/runtime/modes/interactive/components/bordered-loader.d.ts +16 -0
- package/dist/runtime/modes/interactive/components/bordered-loader.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/bordered-loader.js +54 -0
- package/dist/runtime/modes/interactive/components/bordered-loader.js.map +1 -0
- package/dist/runtime/modes/interactive/components/branch-summary-message.d.ts +16 -0
- package/dist/runtime/modes/interactive/components/branch-summary-message.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/branch-summary-message.js +44 -0
- package/dist/runtime/modes/interactive/components/branch-summary-message.js.map +1 -0
- package/dist/runtime/modes/interactive/components/compaction-summary-message.d.ts +16 -0
- package/dist/runtime/modes/interactive/components/compaction-summary-message.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/compaction-summary-message.js +45 -0
- package/dist/runtime/modes/interactive/components/compaction-summary-message.js.map +1 -0
- package/dist/runtime/modes/interactive/components/config-selector.d.ts +102 -0
- package/dist/runtime/modes/interactive/components/config-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/config-selector.js +761 -0
- package/dist/runtime/modes/interactive/components/config-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/countdown-timer.d.ts +14 -0
- package/dist/runtime/modes/interactive/components/countdown-timer.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/countdown-timer.js +33 -0
- package/dist/runtime/modes/interactive/components/countdown-timer.js.map +1 -0
- package/dist/runtime/modes/interactive/components/custom-editor.d.ts +21 -0
- package/dist/runtime/modes/interactive/components/custom-editor.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/custom-editor.js +77 -0
- package/dist/runtime/modes/interactive/components/custom-editor.js.map +1 -0
- package/dist/runtime/modes/interactive/components/custom-entry.d.ts +19 -0
- package/dist/runtime/modes/interactive/components/custom-entry.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/custom-entry.js +52 -0
- package/dist/runtime/modes/interactive/components/custom-entry.js.map +1 -0
- package/dist/runtime/modes/interactive/components/custom-message.d.ts +22 -0
- package/dist/runtime/modes/interactive/components/custom-message.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/custom-message.js +87 -0
- package/dist/runtime/modes/interactive/components/custom-message.js.map +1 -0
- package/dist/runtime/modes/interactive/components/daxnuts.d.ts +23 -0
- package/dist/runtime/modes/interactive/components/daxnuts.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/daxnuts.js +140 -0
- package/dist/runtime/modes/interactive/components/daxnuts.js.map +1 -0
- package/dist/runtime/modes/interactive/components/diff.d.ts +12 -0
- package/dist/runtime/modes/interactive/components/diff.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/diff.js +133 -0
- package/dist/runtime/modes/interactive/components/diff.js.map +1 -0
- package/dist/runtime/modes/interactive/components/dynamic-border.d.ts +15 -0
- package/dist/runtime/modes/interactive/components/dynamic-border.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/dynamic-border.js +21 -0
- package/dist/runtime/modes/interactive/components/dynamic-border.js.map +1 -0
- package/dist/runtime/modes/interactive/components/earendil-announcement.d.ts +5 -0
- package/dist/runtime/modes/interactive/components/earendil-announcement.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/earendil-announcement.js +40 -0
- package/dist/runtime/modes/interactive/components/earendil-announcement.js.map +1 -0
- package/dist/runtime/modes/interactive/components/extension-editor.d.ts +21 -0
- package/dist/runtime/modes/interactive/components/extension-editor.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/extension-editor.js +98 -0
- package/dist/runtime/modes/interactive/components/extension-editor.js.map +1 -0
- package/dist/runtime/modes/interactive/components/extension-input.d.ts +23 -0
- package/dist/runtime/modes/interactive/components/extension-input.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/extension-input.js +61 -0
- package/dist/runtime/modes/interactive/components/extension-input.js.map +1 -0
- package/dist/runtime/modes/interactive/components/extension-selector.d.ts +26 -0
- package/dist/runtime/modes/interactive/components/extension-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/extension-selector.js +83 -0
- package/dist/runtime/modes/interactive/components/extension-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/first-time-setup.d.ts +25 -0
- package/dist/runtime/modes/interactive/components/first-time-setup.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/first-time-setup.js +103 -0
- package/dist/runtime/modes/interactive/components/first-time-setup.js.map +1 -0
- package/dist/runtime/modes/interactive/components/footer.d.ts +32 -0
- package/dist/runtime/modes/interactive/components/footer.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/footer.js +222 -0
- package/dist/runtime/modes/interactive/components/footer.js.map +1 -0
- package/dist/runtime/modes/interactive/components/index.d.ts +34 -0
- package/dist/runtime/modes/interactive/components/index.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/index.js +35 -0
- package/dist/runtime/modes/interactive/components/index.js.map +1 -0
- package/dist/runtime/modes/interactive/components/keybinding-hints.d.ts +13 -0
- package/dist/runtime/modes/interactive/components/keybinding-hints.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/keybinding-hints.js +36 -0
- package/dist/runtime/modes/interactive/components/keybinding-hints.js.map +1 -0
- package/dist/runtime/modes/interactive/components/login-dialog.d.ts +52 -0
- package/dist/runtime/modes/interactive/components/login-dialog.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/login-dialog.js +188 -0
- package/dist/runtime/modes/interactive/components/login-dialog.js.map +1 -0
- package/dist/runtime/modes/interactive/components/markdown-transform.d.ts +3 -0
- package/dist/runtime/modes/interactive/components/markdown-transform.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/markdown-transform.js +19 -0
- package/dist/runtime/modes/interactive/components/markdown-transform.js.map +1 -0
- package/dist/runtime/modes/interactive/components/mermaid.d.ts +11 -0
- package/dist/runtime/modes/interactive/components/mermaid.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/mermaid.js +75 -0
- package/dist/runtime/modes/interactive/components/mermaid.js.map +1 -0
- package/dist/runtime/modes/interactive/components/model-selector.d.ts +60 -0
- package/dist/runtime/modes/interactive/components/model-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/model-selector.js +370 -0
- package/dist/runtime/modes/interactive/components/model-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/oauth-selector.d.ts +33 -0
- package/dist/runtime/modes/interactive/components/oauth-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/oauth-selector.js +163 -0
- package/dist/runtime/modes/interactive/components/oauth-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/scoped-models-selector.d.ts +46 -0
- package/dist/runtime/modes/interactive/components/scoped-models-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/scoped-models-selector.js +328 -0
- package/dist/runtime/modes/interactive/components/scoped-models-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/session-selector-search.d.ts +23 -0
- package/dist/runtime/modes/interactive/components/session-selector-search.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/session-selector-search.js +155 -0
- package/dist/runtime/modes/interactive/components/session-selector-search.js.map +1 -0
- package/dist/runtime/modes/interactive/components/session-selector.d.ts +95 -0
- package/dist/runtime/modes/interactive/components/session-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/session-selector.js +867 -0
- package/dist/runtime/modes/interactive/components/session-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/settings-selector.d.ts +90 -0
- package/dist/runtime/modes/interactive/components/settings-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/settings-selector.js +695 -0
- package/dist/runtime/modes/interactive/components/settings-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/settings-submenu.d.ts +72 -0
- package/dist/runtime/modes/interactive/components/settings-submenu.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/settings-submenu.js +165 -0
- package/dist/runtime/modes/interactive/components/settings-submenu.js.map +1 -0
- package/dist/runtime/modes/interactive/components/show-images-selector.d.ts +10 -0
- package/dist/runtime/modes/interactive/components/show-images-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/show-images-selector.js +39 -0
- package/dist/runtime/modes/interactive/components/show-images-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/skill-invocation-message.d.ts +17 -0
- package/dist/runtime/modes/interactive/components/skill-invocation-message.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/skill-invocation-message.js +47 -0
- package/dist/runtime/modes/interactive/components/skill-invocation-message.js.map +1 -0
- package/dist/runtime/modes/interactive/components/status-indicator.d.ts +28 -0
- package/dist/runtime/modes/interactive/components/status-indicator.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/status-indicator.js +60 -0
- package/dist/runtime/modes/interactive/components/status-indicator.js.map +1 -0
- package/dist/runtime/modes/interactive/components/theme-selector.d.ts +11 -0
- package/dist/runtime/modes/interactive/components/theme-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/theme-selector.js +50 -0
- package/dist/runtime/modes/interactive/components/theme-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/thinking-selector.d.ts +23 -0
- package/dist/runtime/modes/interactive/components/thinking-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/thinking-selector.js +109 -0
- package/dist/runtime/modes/interactive/components/thinking-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/tool-execution.d.ts +63 -0
- package/dist/runtime/modes/interactive/components/tool-execution.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/tool-execution.js +326 -0
- package/dist/runtime/modes/interactive/components/tool-execution.js.map +1 -0
- package/dist/runtime/modes/interactive/components/tree-selector.d.ts +94 -0
- package/dist/runtime/modes/interactive/components/tree-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/tree-selector.js +1245 -0
- package/dist/runtime/modes/interactive/components/tree-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/trust-selector.d.ts +23 -0
- package/dist/runtime/modes/interactive/components/trust-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/trust-selector.js +91 -0
- package/dist/runtime/modes/interactive/components/trust-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/user-message-selector.d.ts +30 -0
- package/dist/runtime/modes/interactive/components/user-message-selector.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/user-message-selector.js +114 -0
- package/dist/runtime/modes/interactive/components/user-message-selector.js.map +1 -0
- package/dist/runtime/modes/interactive/components/user-message.d.ts +16 -0
- package/dist/runtime/modes/interactive/components/user-message.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/user-message.js +49 -0
- package/dist/runtime/modes/interactive/components/user-message.js.map +1 -0
- package/dist/runtime/modes/interactive/components/visual-truncate.d.ts +24 -0
- package/dist/runtime/modes/interactive/components/visual-truncate.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/components/visual-truncate.js +33 -0
- package/dist/runtime/modes/interactive/components/visual-truncate.js.map +1 -0
- package/dist/runtime/modes/interactive/external-editor.d.ts +12 -0
- package/dist/runtime/modes/interactive/external-editor.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/external-editor.js +38 -0
- package/dist/runtime/modes/interactive/external-editor.js.map +1 -0
- package/dist/runtime/modes/interactive/interactive-mode.d.ts +446 -0
- package/dist/runtime/modes/interactive/interactive-mode.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/interactive-mode.js +5509 -0
- package/dist/runtime/modes/interactive/interactive-mode.js.map +1 -0
- package/dist/runtime/modes/interactive/model-catalog-refresh.d.ts +7 -0
- package/dist/runtime/modes/interactive/model-catalog-refresh.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/model-catalog-refresh.js +34 -0
- package/dist/runtime/modes/interactive/model-catalog-refresh.js.map +1 -0
- package/dist/runtime/modes/interactive/model-search.d.ts +12 -0
- package/dist/runtime/modes/interactive/model-search.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/model-search.js +15 -0
- package/dist/runtime/modes/interactive/model-search.js.map +1 -0
- package/dist/runtime/modes/interactive/session-share.d.ts +16 -0
- package/dist/runtime/modes/interactive/session-share.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/session-share.js +188 -0
- package/dist/runtime/modes/interactive/session-share.js.map +1 -0
- package/dist/runtime/modes/interactive/theme/dark.json +90 -0
- package/dist/runtime/modes/interactive/theme/light.json +89 -0
- package/dist/runtime/modes/interactive/theme/theme-controller.d.ts +40 -0
- package/dist/runtime/modes/interactive/theme/theme-controller.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/theme/theme-controller.js +125 -0
- package/dist/runtime/modes/interactive/theme/theme-controller.js.map +1 -0
- package/dist/runtime/modes/interactive/theme/theme-schema.json +352 -0
- package/dist/runtime/modes/interactive/theme/theme.d.ts +122 -0
- package/dist/runtime/modes/interactive/theme/theme.d.ts.map +1 -0
- package/dist/runtime/modes/interactive/theme/theme.js +1092 -0
- package/dist/runtime/modes/interactive/theme/theme.js.map +1 -0
- package/dist/runtime/modes/json-event.d.ts +34 -0
- package/dist/runtime/modes/json-event.d.ts.map +1 -0
- package/dist/runtime/modes/json-event.js +29 -0
- package/dist/runtime/modes/json-event.js.map +1 -0
- package/dist/runtime/modes/print-mode.d.ts +28 -0
- package/dist/runtime/modes/print-mode.d.ts.map +1 -0
- package/dist/runtime/modes/print-mode.js +142 -0
- package/dist/runtime/modes/print-mode.js.map +1 -0
- package/dist/runtime/modes/rpc/jsonl.d.ts +17 -0
- package/dist/runtime/modes/rpc/jsonl.d.ts.map +1 -0
- package/dist/runtime/modes/rpc/jsonl.js +49 -0
- package/dist/runtime/modes/rpc/jsonl.js.map +1 -0
- package/dist/runtime/modes/rpc/rpc-client.d.ts +254 -0
- package/dist/runtime/modes/rpc/rpc-client.d.ts.map +1 -0
- package/dist/runtime/modes/rpc/rpc-client.js +495 -0
- package/dist/runtime/modes/rpc/rpc-client.js.map +1 -0
- package/dist/runtime/modes/rpc/rpc-mode.d.ts +20 -0
- package/dist/runtime/modes/rpc/rpc-mode.d.ts.map +1 -0
- package/dist/runtime/modes/rpc/rpc-mode.js +657 -0
- package/dist/runtime/modes/rpc/rpc-mode.js.map +1 -0
- package/dist/runtime/modes/rpc/rpc-types.d.ts +469 -0
- package/dist/runtime/modes/rpc/rpc-types.d.ts.map +1 -0
- package/dist/runtime/modes/rpc/rpc-types.js +8 -0
- package/dist/runtime/modes/rpc/rpc-types.js.map +1 -0
- package/dist/runtime/package-manager-cli.d.ts +9 -0
- package/dist/runtime/package-manager-cli.d.ts.map +1 -0
- package/dist/runtime/package-manager-cli.js +961 -0
- package/dist/runtime/package-manager-cli.js.map +1 -0
- package/dist/runtime/rpc-entry.d.ts +3 -0
- package/dist/runtime/rpc-entry.d.ts.map +1 -0
- package/dist/runtime/rpc-entry.js +11 -0
- package/dist/runtime/rpc-entry.js.map +1 -0
- package/dist/runtime/server/create-harness.d.ts +26 -0
- package/dist/runtime/server/create-harness.d.ts.map +1 -0
- package/dist/runtime/server/create-harness.js +106 -0
- package/dist/runtime/server/create-harness.js.map +1 -0
- package/dist/runtime/utils/abort.d.ts +5 -0
- package/dist/runtime/utils/abort.d.ts.map +1 -0
- package/dist/runtime/utils/abort.js +48 -0
- package/dist/runtime/utils/abort.js.map +1 -0
- package/dist/runtime/utils/ansi.d.ts +2 -0
- package/dist/runtime/utils/ansi.d.ts.map +1 -0
- package/dist/runtime/utils/ansi.js +52 -0
- package/dist/runtime/utils/ansi.js.map +1 -0
- package/dist/runtime/utils/changelog.d.ts +22 -0
- package/dist/runtime/utils/changelog.d.ts.map +1 -0
- package/dist/runtime/utils/changelog.js +165 -0
- package/dist/runtime/utils/changelog.js.map +1 -0
- package/dist/runtime/utils/child-process.d.ts +18 -0
- package/dist/runtime/utils/child-process.d.ts.map +1 -0
- package/dist/runtime/utils/child-process.js +106 -0
- package/dist/runtime/utils/child-process.js.map +1 -0
- package/dist/runtime/utils/clipboard-image.d.ts +11 -0
- package/dist/runtime/utils/clipboard-image.d.ts.map +1 -0
- package/dist/runtime/utils/clipboard-image.js +245 -0
- package/dist/runtime/utils/clipboard-image.js.map +1 -0
- package/dist/runtime/utils/clipboard-native.d.ts +11 -0
- package/dist/runtime/utils/clipboard-native.d.ts.map +1 -0
- package/dist/runtime/utils/clipboard-native.js +20 -0
- package/dist/runtime/utils/clipboard-native.js.map +1 -0
- package/dist/runtime/utils/clipboard.d.ts +4 -0
- package/dist/runtime/utils/clipboard.d.ts.map +1 -0
- package/dist/runtime/utils/clipboard.js +161 -0
- package/dist/runtime/utils/clipboard.js.map +1 -0
- package/dist/runtime/utils/deprecation.d.ts +4 -0
- package/dist/runtime/utils/deprecation.d.ts.map +1 -0
- package/dist/runtime/utils/deprecation.js +13 -0
- package/dist/runtime/utils/deprecation.js.map +1 -0
- package/dist/runtime/utils/exif-orientation.d.ts +5 -0
- package/dist/runtime/utils/exif-orientation.d.ts.map +1 -0
- package/dist/runtime/utils/exif-orientation.js +158 -0
- package/dist/runtime/utils/exif-orientation.js.map +1 -0
- package/dist/runtime/utils/frontmatter.d.ts +8 -0
- package/dist/runtime/utils/frontmatter.d.ts.map +1 -0
- package/dist/runtime/utils/frontmatter.js +27 -0
- package/dist/runtime/utils/frontmatter.js.map +1 -0
- package/dist/runtime/utils/fs-watch.d.ts +5 -0
- package/dist/runtime/utils/fs-watch.d.ts.map +1 -0
- package/dist/runtime/utils/fs-watch.js +25 -0
- package/dist/runtime/utils/fs-watch.js.map +1 -0
- package/dist/runtime/utils/git.d.ts +26 -0
- package/dist/runtime/utils/git.d.ts.map +1 -0
- package/dist/runtime/utils/git.js +195 -0
- package/dist/runtime/utils/git.js.map +1 -0
- package/dist/runtime/utils/html.d.ts +7 -0
- package/dist/runtime/utils/html.d.ts.map +1 -0
- package/dist/runtime/utils/html.js +40 -0
- package/dist/runtime/utils/html.js.map +1 -0
- package/dist/runtime/utils/image-convert.d.ts +10 -0
- package/dist/runtime/utils/image-convert.d.ts.map +1 -0
- package/dist/runtime/utils/image-convert.js +45 -0
- package/dist/runtime/utils/image-convert.js.map +1 -0
- package/dist/runtime/utils/image-process.d.ts +18 -0
- package/dist/runtime/utils/image-process.d.ts.map +1 -0
- package/dist/runtime/utils/image-process.js +83 -0
- package/dist/runtime/utils/image-process.js.map +1 -0
- package/dist/runtime/utils/image-resize-core.d.ts +30 -0
- package/dist/runtime/utils/image-resize-core.d.ts.map +1 -0
- package/dist/runtime/utils/image-resize-core.js +124 -0
- package/dist/runtime/utils/image-resize-core.js.map +1 -0
- package/dist/runtime/utils/image-resize-worker.d.ts +2 -0
- package/dist/runtime/utils/image-resize-worker.d.ts.map +1 -0
- package/dist/runtime/utils/image-resize-worker.js +31 -0
- package/dist/runtime/utils/image-resize-worker.js.map +1 -0
- package/dist/runtime/utils/image-resize.d.ts +16 -0
- package/dist/runtime/utils/image-resize.d.ts.map +1 -0
- package/dist/runtime/utils/image-resize.js +97 -0
- package/dist/runtime/utils/image-resize.js.map +1 -0
- package/dist/runtime/utils/json.d.ts +3 -0
- package/dist/runtime/utils/json.d.ts.map +1 -0
- package/dist/runtime/utils/json.js +7 -0
- package/dist/runtime/utils/json.js.map +1 -0
- package/dist/runtime/utils/management-http.d.ts +25 -0
- package/dist/runtime/utils/management-http.d.ts.map +1 -0
- package/dist/runtime/utils/management-http.js +54 -0
- package/dist/runtime/utils/management-http.js.map +1 -0
- package/dist/runtime/utils/mime.d.ts +3 -0
- package/dist/runtime/utils/mime.d.ts.map +1 -0
- package/dist/runtime/utils/mime.js +110 -0
- package/dist/runtime/utils/mime.js.map +1 -0
- package/dist/runtime/utils/open-browser.d.ts +9 -0
- package/dist/runtime/utils/open-browser.d.ts.map +1 -0
- package/dist/runtime/utils/open-browser.js +22 -0
- package/dist/runtime/utils/open-browser.js.map +1 -0
- package/dist/runtime/utils/paths.d.ts +34 -0
- package/dist/runtime/utils/paths.d.ts.map +1 -0
- package/dist/runtime/utils/paths.js +114 -0
- package/dist/runtime/utils/paths.js.map +1 -0
- package/dist/runtime/utils/photon.d.ts +21 -0
- package/dist/runtime/utils/photon.d.ts.map +1 -0
- package/dist/runtime/utils/photon.js +121 -0
- package/dist/runtime/utils/photon.js.map +1 -0
- package/dist/runtime/utils/pi-user-agent.d.ts +2 -0
- package/dist/runtime/utils/pi-user-agent.d.ts.map +1 -0
- package/dist/runtime/utils/pi-user-agent.js +5 -0
- package/dist/runtime/utils/pi-user-agent.js.map +1 -0
- package/dist/runtime/utils/shell.d.ts +34 -0
- package/dist/runtime/utils/shell.d.ts.map +1 -0
- package/dist/runtime/utils/shell.js +214 -0
- package/dist/runtime/utils/shell.js.map +1 -0
- package/dist/runtime/utils/sleep.d.ts +5 -0
- package/dist/runtime/utils/sleep.d.ts.map +1 -0
- package/dist/runtime/utils/sleep.js +17 -0
- package/dist/runtime/utils/sleep.js.map +1 -0
- package/dist/runtime/utils/syntax-highlight.d.ts +13 -0
- package/dist/runtime/utils/syntax-highlight.d.ts.map +1 -0
- package/dist/runtime/utils/syntax-highlight.js +177 -0
- package/dist/runtime/utils/syntax-highlight.js.map +1 -0
- package/dist/runtime/utils/text.d.ts +8 -0
- package/dist/runtime/utils/text.d.ts.map +1 -0
- package/dist/runtime/utils/text.js +9 -0
- package/dist/runtime/utils/text.js.map +1 -0
- package/dist/runtime/utils/tool-result-images.d.ts +19 -0
- package/dist/runtime/utils/tool-result-images.d.ts.map +1 -0
- package/dist/runtime/utils/tool-result-images.js +45 -0
- package/dist/runtime/utils/tool-result-images.js.map +1 -0
- package/dist/runtime/utils/tools-manager.d.ts +12 -0
- package/dist/runtime/utils/tools-manager.d.ts.map +1 -0
- package/dist/runtime/utils/tools-manager.js +321 -0
- package/dist/runtime/utils/tools-manager.js.map +1 -0
- package/dist/runtime/utils/version-check.d.ts +19 -0
- package/dist/runtime/utils/version-check.d.ts.map +1 -0
- package/dist/runtime/utils/version-check.js +79 -0
- package/dist/runtime/utils/version-check.js.map +1 -0
- package/dist/runtime/utils/windows-self-update.d.ts +3 -0
- package/dist/runtime/utils/windows-self-update.d.ts.map +1 -0
- package/dist/runtime/utils/windows-self-update.js +77 -0
- package/dist/runtime/utils/windows-self-update.js.map +1 -0
- package/dist/update.js +134 -0
- package/dist/workflows.js +391 -0
- package/docs/compaction.md +416 -0
- package/docs/containerization.md +111 -0
- package/docs/custom-provider.md +777 -0
- package/docs/development.md +71 -0
- package/docs/docs.json +156 -0
- package/docs/environment-variables.md +94 -0
- package/docs/extensions.md +3002 -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 +84 -0
- package/docs/json.md +98 -0
- package/docs/keybindings.md +236 -0
- package/docs/llama-cpp.md +101 -0
- package/docs/models.md +571 -0
- package/docs/packages.md +228 -0
- package/docs/prompt-templates.md +96 -0
- package/docs/providers.md +317 -0
- package/docs/quickstart.md +167 -0
- package/docs/rpc.md +1618 -0
- package/docs/sdk.md +1219 -0
- package/docs/security.md +59 -0
- package/docs/session-format.md +438 -0
- package/docs/sessions.md +145 -0
- package/docs/settings.md +361 -0
- package/docs/shell-aliases.md +13 -0
- package/docs/skills.md +232 -0
- package/docs/terminal-setup.md +165 -0
- package/docs/termux.md +127 -0
- package/docs/themes.md +320 -0
- package/docs/tmux.md +63 -0
- package/docs/tui.md +942 -0
- package/docs/usage.md +310 -0
- package/docs/windows.md +39 -0
- package/examples/README.md +25 -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 +249 -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 +611 -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/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_pi.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 +79 -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/gondolin/index.ts +531 -0
- package/examples/extensions/gondolin/package-lock.json +185 -0
- package/examples/extensions/gondolin/package.json +19 -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/kimi-deferred-tools.ts +61 -0
- package/examples/extensions/mac-system-theme.ts +47 -0
- package/examples/extensions/message-renderer.ts +59 -0
- package/examples/extensions/minimal-mode.ts +426 -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 +97 -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 +286 -0
- package/examples/extensions/questionnaire.ts +448 -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 +177 -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/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.md +10 -0
- package/examples/extensions/subagent/prompts/scout-and-plan.md +9 -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/rpc-extension-ui.ts +641 -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 +75 -0
- package/examples/sdk/04-skills.ts +55 -0
- package/examples/sdk/05-tools.ts +48 -0
- package/examples/sdk/06-extensions.ts +99 -0
- package/examples/sdk/07-context-files.ts +47 -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/README.md +140 -0
- package/package.json +65 -12
- package/upstream.json +6 -0
- package/workflows/cm/LICENSE +21 -0
- package/workflows/cm/README.md +333 -0
- package/workflows/cm/THIRD_PARTY_NOTICES.md +29 -0
- package/workflows/cm/VERSION +1 -0
- package/workflows/cm/agents/cm-backend-agent.md +34 -0
- package/workflows/cm/agents/cm-contract-agent.md +34 -0
- package/workflows/cm/agents/cm-database-agent.md +34 -0
- package/workflows/cm/agents/cm-frontend-agent.md +33 -0
- package/workflows/cm/agents/cm-miniprogram-agent.md +33 -0
- package/workflows/cm/agents/cm-ui-agent.md +34 -0
- package/workflows/cm/assets/docs/command-picker-mobile.svg +56 -0
- package/workflows/cm/assets/docs/command-picker.svg +56 -0
- package/workflows/cm/assets/docs/user-guide-hero-mobile.svg +35 -0
- package/workflows/cm/assets/docs/user-guide-hero.svg +36 -0
- package/workflows/cm/assets/readme/delivery-flow.svg +86 -0
- package/workflows/cm/assets/readme/hero.svg +77 -0
- package/workflows/cm/assets/readme/recovery-record.svg +73 -0
- package/workflows/cm/assets/readme/test-evidence.svg +64 -0
- package/workflows/cm/compat/claude-commands/cm-ai.md +3 -0
- package/workflows/cm/compat/claude-commands/cm-check.md +3 -0
- package/workflows/cm/compat/claude-commands/cm-fix.md +3 -0
- package/workflows/cm/compat/claude-commands/cm-idea.md +3 -0
- package/workflows/cm/compat/claude-commands/cm-init.md +3 -0
- package/workflows/cm/compat/claude-commands/cm-prd.md +3 -0
- package/workflows/cm/compat/claude-commands/cm-refactor.md +3 -0
- package/workflows/cm/compat/claude-commands/cm-test.md +3 -0
- package/workflows/cm/docs/architecture.md +130 -0
- package/workflows/cm/docs/fixes/.reviews/fix-manifest-runtime-checkbox-drift-r1.md +33 -0
- package/workflows/cm/docs/fixes/.reviews/fix-manifest-runtime-checkbox-drift-r2.md +31 -0
- package/workflows/cm/docs/fixes/.reviews/fix-model-call-boundary-identity-T-FIX-model-call-boundary-identity-a1-handoff.json +56 -0
- package/workflows/cm/docs/fixes/.reviews/fix-model-call-boundary-identity-T-FIX-model-call-boundary-identity-a2-handoff.json +85 -0
- package/workflows/cm/docs/fixes/.reviews/fix-model-call-boundary-identity-T-FIX-model-call-boundary-identity-r1.md +53 -0
- package/workflows/cm/docs/fixes/.reviews/fix-model-call-boundary-identity-T-FIX-model-call-boundary-identity-r2.md +80 -0
- package/workflows/cm/docs/fixes/.reviews/fix-review-evidence-scope-honesty-T-FIX-review-evidence-scope-honesty-a1-handoff.json +35 -0
- package/workflows/cm/docs/fixes/.reviews/fix-review-evidence-scope-honesty-T-FIX-review-evidence-scope-honesty-r1.md +33 -0
- package/workflows/cm/docs/fixes/.reviews/fix-windows-cp1252-log-output-r1.md +30 -0
- package/workflows/cm/docs/fixes/.reviews/fix-windows-cp1252-log-output-r2.md +16 -0
- package/workflows/cm/docs/fixes/.reviews/openai-compatible-depth-fixture-T-FIX-openai-compatible-depth-fixture-a1-handoff.json +40 -0
- package/workflows/cm/docs/fixes/.reviews/openai-compatible-depth-fixture-T-FIX-openai-compatible-depth-fixture-r1.md +30 -0
- package/workflows/cm/docs/fixes/20260729-windows-cp1252-log-output.md +65 -0
- package/workflows/cm/docs/fixes/20260804-manifest-runtime-checkbox-drift.md +67 -0
- package/workflows/cm/docs/fixes/20260806-model-call-boundary-identity.md +80 -0
- package/workflows/cm/docs/fixes/20260807-prelanding-integrity.md +58 -0
- package/workflows/cm/docs/fixes/20260826-openai-compatible-depth-fixture.md +39 -0
- package/workflows/cm/docs/installation.md +149 -0
- package/workflows/cm/docs/sample-prd/prd-funding-rate-alert.md +42 -0
- package/workflows/cm/docs/sample-specs/docs//351/234/200/346/261/202/347/244/272/344/276/213.md +24 -0
- package/workflows/cm/docs/user-guide.md +521 -0
- package/workflows/cm/docs//351/207/215/346/236/204/346/265/201/347/250/213/350/256/276/350/256/241/README.md +19 -0
- package/workflows/cm/docs//351/207/215/346/236/204/346/265/201/347/250/213/350/256/276/350/256/241/refactor-flow.excalidraw +3650 -0
- package/workflows/cm/docs//351/207/215/346/236/204/346/265/201/347/250/213/350/256/276/350/256/241/refactor-flow.mp4 +0 -0
- package/workflows/cm/docs//351/207/215/346/236/204/346/265/201/347/250/213/350/256/276/350/256/241/refactor-flow.png +0 -0
- package/workflows/cm/docs//351/207/215/346/236/204/346/265/201/347/250/213/350/256/276/350/256/241/refactor-flow.spec.json +223 -0
- package/workflows/cm/package.json +45 -0
- package/workflows/cm/runtime/external-expert.md +302 -0
- package/workflows/cm/runtime/logging.md +206 -0
- package/workflows/cm/runtime/model-efficiency.md +201 -0
- package/workflows/cm/runtime/orchestration.md +113 -0
- package/workflows/cm/runtime/project-context.md +37 -0
- package/workflows/cm/runtime/review.md +114 -0
- package/workflows/cm/runtime/task-gates.md +114 -0
- package/workflows/cm/runtime/task-handoff.schema.json +103 -0
- package/workflows/cm/runtime/test-contract.md +212 -0
- package/workflows/cm/runtime/workflow-config.md +115 -0
- package/workflows/cm/runtime/workflow-routing.md +82 -0
- package/workflows/cm/scripts/cm-check-runtime.ps1 +69 -0
- package/workflows/cm/scripts/cm-check-runtime.sh +866 -0
- package/workflows/cm/scripts/cm-log-event.py +1270 -0
- package/workflows/cm/scripts/cm-openai-compatible-call.py +661 -0
- package/workflows/cm/scripts/cm-prd-review-gate.py +319 -0
- package/workflows/cm/scripts/cm-prd-timing.py +272 -0
- package/workflows/cm/scripts/cm-spec-manifest.py +171 -0
- package/workflows/cm/scripts/cm-task-gate.py +760 -0
- package/workflows/cm/scripts/cm-usage-report.py +516 -0
- package/workflows/cm/scripts/cm_workflow_config.py +612 -0
- package/workflows/cm/scripts/scan-public-safety.py +89 -0
- package/workflows/cm/scripts/test-cm-log-event.py +1213 -0
- package/workflows/cm/scripts/test-cm-openai-compatible-call.py +1185 -0
- package/workflows/cm/scripts/test-cm-prd-review-gate.py +243 -0
- package/workflows/cm/scripts/test-cm-prd-timing.py +168 -0
- package/workflows/cm/scripts/test-cm-usage-report.py +584 -0
- package/workflows/cm/scripts/test-shell-compat.sh +338 -0
- package/workflows/cm/scripts/test-spec-manifest.py +220 -0
- package/workflows/cm/scripts/test-task-gate.py +540 -0
- package/workflows/cm/scripts/test-workflow-config.py +394 -0
- package/workflows/cm/scripts/validate-public-repo.py +200 -0
- package/workflows/cm/scripts/validate-test-cases.py +127 -0
- package/workflows/cm/skills/cm-ai/SKILL.md +120 -0
- package/workflows/cm/skills/cm-ai/references/N1-init.md +92 -0
- package/workflows/cm/skills/cm-ai/references/N2-enter-feature.md +38 -0
- package/workflows/cm/skills/cm-ai/references/N3-execute-task.md +99 -0
- package/workflows/cm/skills/cm-ai/references/N4-review.md +96 -0
- package/workflows/cm/skills/cm-ai/references/N5-mark-done.md +107 -0
- package/workflows/cm/skills/cm-ai/references/N6-qa-eval.md +102 -0
- package/workflows/cm/skills/cm-ai/references/N7-context.md +23 -0
- package/workflows/cm/skills/cm-ai/references/N8-finish.md +97 -0
- package/workflows/cm/skills/cm-backend-engineer/SKILL.md +100 -0
- package/workflows/cm/skills/cm-check/SKILL.md +60 -0
- package/workflows/cm/skills/cm-contract-engineer/SKILL.md +136 -0
- package/workflows/cm/skills/cm-database-engineer/SKILL.md +89 -0
- package/workflows/cm/skills/cm-devops-engineer/SKILL.md +137 -0
- package/workflows/cm/skills/cm-doc-syncer/SKILL.md +150 -0
- package/workflows/cm/skills/cm-finance-expert/SKILL.md +85 -0
- package/workflows/cm/skills/cm-fix/SKILL.md +159 -0
- package/workflows/cm/skills/cm-frontend-engineer/SKILL.md +127 -0
- package/workflows/cm/skills/cm-idea/SKILL.md +42 -0
- package/workflows/cm/skills/cm-idea/references/domains/trading.md +97 -0
- package/workflows/cm/skills/cm-idea/references/example-prd.md +92 -0
- package/workflows/cm/skills/cm-idea/references/idea-to-prd.md +282 -0
- package/workflows/cm/skills/cm-init/SKILL.md +158 -0
- package/workflows/cm/skills/cm-miniprogram-engineer/SKILL.md +141 -0
- package/workflows/cm/skills/cm-miniprogram-engineer/references/platform-readiness.md +58 -0
- package/workflows/cm/skills/cm-miniprogram-engineer/references/release-checklist.md +59 -0
- package/workflows/cm/skills/cm-prd/SKILL.md +521 -0
- package/workflows/cm/skills/cm-prd/references/brownfield.md +13 -0
- package/workflows/cm/skills/cm-prd/references/change-mode.md +145 -0
- package/workflows/cm/skills/cm-prd/references/context-scope.md +62 -0
- package/workflows/cm/skills/cm-prd/references/greenfield.md +80 -0
- package/workflows/cm/skills/cm-prd/references/phase-timing.md +60 -0
- package/workflows/cm/skills/cm-prd/references/spec-self-check.md +22 -0
- package/workflows/cm/skills/cm-product-manager/SKILL.md +83 -0
- package/workflows/cm/skills/cm-qa-engineer/SKILL.md +142 -0
- package/workflows/cm/skills/cm-refactor/SKILL.md +209 -0
- package/workflows/cm/skills/cm-test/SKILL.md +259 -0
- package/workflows/cm/skills/cm-ui-engineer/SKILL.md +105 -0
- package/workflows/cm/skills/codebase-context/SKILL.md +489 -0
- package/workflows/cm/skills/darwin-skill/NOTICE.md +26 -0
- package/workflows/cm/skills/darwin-skill/README.md +272 -0
- package/workflows/cm/skills/darwin-skill/SKILL.md +492 -0
- package/workflows/cm/skills/darwin-skill/references/runtime-neutrality.md +68 -0
- package/workflows/cm/skills/darwin-skill/references/skilllens-evidence.md +142 -0
- package/workflows/cm/skills/darwin-skill/scripts/screenshot.mjs +71 -0
- package/workflows/cm/skills/darwin-skill/templates/result-card-dark.html +698 -0
- package/workflows/cm/skills/darwin-skill/templates/result-card-white.html +444 -0
- package/workflows/cm/skills/darwin-skill/templates/result-card.html +616 -0
- package/workflows/cm/skills/external-expert/SKILL.md +250 -0
- package/workflows/cm/templates/arch-reference.md +68 -0
- package/workflows/cm/templates/auto-update/cm-announce.sh +19 -0
- package/workflows/cm/templates/auto-update/cm-update.sh +274 -0
- package/workflows/cm/templates/cm-workflow.yml +52 -0
- package/workflows/cm/templates/dashboard/dashboard.html +153 -0
- package/workflows/cm/templates/dashboard/serve.sh +10 -0
- package/workflows/cm/templates/hooks/pre-commit-cm-task-check +67 -0
- package/workflows/cm/templates/pixel/cm-pixel.html +388 -0
- package/workflows/cm/templates/pixel/cm-pixel.sh +212 -0
- package/workflows/cm/templates/pixel/dev/README.md +20 -0
- package/workflows/cm/templates/pixel/dev/atlas-preview.png +0 -0
- package/workflows/cm/templates/pixel/dev/build.py +55 -0
- package/workflows/cm/templates/pixel/dev/sheets/roguelikeChar_transparent.png +0 -0
- package/workflows/cm/templates/pixel/dev/sheets/roguelikeCity_tilemap.png +0 -0
- package/workflows/cm/templates/pixel/dev/sheets/roguelikeIndoor_transparent.png +0 -0
- package/workflows/cm/templates/pixel/dev/template.html +388 -0
- package/workflows/cm/templates/pixel/serve.sh +12 -0
- package/workflows/cm/templates/refactor/cm-refactor-denies.json +14 -0
- package/workflows/cm/templates/rules/backend-api.md +36 -0
- package/workflows/cm/templates/rules/coding-style.md +44 -0
- package/workflows/cm/templates/rules/database.md +27 -0
- package/workflows/cm/templates/rules/finance.md +32 -0
- package/workflows/cm/templates/rules/frontend.md +32 -0
- package/workflows/cm/templates/rules/git-workflow.md +25 -0
- package/workflows/cm/templates/rules/miniprogram.md +31 -0
- package/workflows/cm/templates/rules/security.md +31 -0
- package/workflows/cm/templates/rules/smart-contract.md +28 -0
- package/workflows/cm/templates/rules/testing.md +36 -0
- package/workflows/cm/templates/statusline/cm-statusline.sh +73 -0
- package/workflows/cm/templates/ui-lens/cm-ui-lens-extract.mjs +55 -0
- package/workflows.lock.json +39 -0
|
@@ -0,0 +1,388 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="zh">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
6
|
+
<title>cm 工作流 · 像素办公室</title>
|
|
7
|
+
<style>
|
|
8
|
+
* { margin:0; padding:0; box-sizing:border-box; }
|
|
9
|
+
body { background:#131120; color:#e8e2d0; font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
|
|
10
|
+
min-height:100vh; display:flex; flex-direction:column; align-items:center; padding:18px 12px; }
|
|
11
|
+
#wrap { width:min(980px, 100%); }
|
|
12
|
+
#hud { display:flex; align-items:center; gap:12px; padding:8px 2px; font-size:14px; }
|
|
13
|
+
#logo { background:#f0b03c; color:#1c1a14; font-weight:800; padding:3px 9px; border-radius:3px;
|
|
14
|
+
letter-spacing:2px; box-shadow:0 3px 0 #8a6210; }
|
|
15
|
+
#phase { background:#232033; padding:4px 12px; border-radius:3px; letter-spacing:1px; font-weight:700; }
|
|
16
|
+
#phase.paused { background:#f5d95c; color:#1c1a14; }
|
|
17
|
+
#phase.stale { background:#d25050; color:#fff; }
|
|
18
|
+
#task { color:#9a93b8; font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex:1; }
|
|
19
|
+
#coins { color:#f0b03c; font-weight:700; }
|
|
20
|
+
#stage { position:relative; border:4px solid #2a2438; border-radius:8px; overflow:hidden;
|
|
21
|
+
box-shadow:0 18px 50px rgba(0,0,0,.55), inset 0 0 0 2px #0d0b16; background:#0d0b16; }
|
|
22
|
+
canvas { display:block; width:100%; image-rendering:pixelated; image-rendering:crisp-edges; }
|
|
23
|
+
#bubble { position:absolute; transform:translate(-50%,-115%); max-width:380px; padding:8px 12px;
|
|
24
|
+
background:#faf6ec; color:#1c1a14; border:2px solid #1c1a14; border-radius:6px;
|
|
25
|
+
font-size:13px; line-height:1.5; display:none; box-shadow:3px 4px 0 rgba(0,0,0,.4); z-index:2; }
|
|
26
|
+
#bubble.paused { background:#f5d95c; transform:translate(-12%,-115%); }
|
|
27
|
+
#bubble.paused:after { left:12%; }
|
|
28
|
+
#bubble:after { content:""; position:absolute; left:50%; bottom:-10px; margin-left:-5px;
|
|
29
|
+
border:5px solid transparent; border-top-color:#1c1a14; }
|
|
30
|
+
#note { position:absolute; right:14px; bottom:16px; width:250px; display:none;
|
|
31
|
+
background:#f7ecc0; color:#4a3c14; border:2px solid #c8b478; padding:9px 11px;
|
|
32
|
+
font-size:12px; line-height:1.65; white-space:pre-wrap; transform:rotate(-1.6deg);
|
|
33
|
+
box-shadow:4px 5px 0 rgba(0,0,0,.35); border-radius:2px; }
|
|
34
|
+
#note b { color:#8a6210; }
|
|
35
|
+
#barrow { display:flex; align-items:center; gap:10px; margin-top:10px; }
|
|
36
|
+
#bar { flex:1; height:16px; background:#232033; border:2px solid #2a2438; border-radius:4px; overflow:hidden; }
|
|
37
|
+
#fill { height:100%; width:0; transition:width .6s;
|
|
38
|
+
background:repeating-linear-gradient(45deg,#f0b03c 0 10px,#d99a28 10px 20px); }
|
|
39
|
+
#count { font-size:13px; color:#f0b03c; min-width:44px; text-align:right; font-weight:700; }
|
|
40
|
+
#hint { margin-top:8px; font-size:12px; color:#6f6890; }
|
|
41
|
+
</style>
|
|
42
|
+
</head>
|
|
43
|
+
<body>
|
|
44
|
+
<div id="wrap">
|
|
45
|
+
<div id="hud">
|
|
46
|
+
<span id="logo">CM</span><span id="phase">连接中…</span>
|
|
47
|
+
<span id="task"></span><span id="coins"></span>
|
|
48
|
+
</div>
|
|
49
|
+
<div id="stage">
|
|
50
|
+
<canvas id="cv" width="744" height="420"></canvas>
|
|
51
|
+
<div id="bubble"></div>
|
|
52
|
+
<div id="note"></div>
|
|
53
|
+
</div>
|
|
54
|
+
<div id="barrow"><div id="bar"><div id="fill"></div></div><span id="count"></span></div>
|
|
55
|
+
<div id="hint"></div>
|
|
56
|
+
</div>
|
|
57
|
+
<script>
|
|
58
|
+
const ATLAS = "data:image/png;base64,@B64@";
|
|
59
|
+
const T = @TMAP@;
|
|
60
|
+
const IMG = new Image(); let loaded = false;
|
|
61
|
+
IMG.onload = () => loaded = true; IMG.src = ATLAS;
|
|
62
|
+
|
|
63
|
+
const SKY = {
|
|
64
|
+
dawn:["#c98d78","#dba98a","#e8c49a"], day:["#7fa8c8","#93b9d4","#a9cbdd"],
|
|
65
|
+
dusk:["#8a5f7a","#b07a6a","#d0996a"], night:["#242138","#2e2a48","#3a3560"],
|
|
66
|
+
};
|
|
67
|
+
const TINT = { dawn:"rgba(230,150,100,.09)", day:"rgba(255,180,90,.05)",
|
|
68
|
+
dusk:"rgba(210,120,70,.12)", night:"rgba(30,34,90,.17)" };
|
|
69
|
+
const NODES = ["N1","N2","N3","N4","N5","N6","N7","N8"];
|
|
70
|
+
const PHASE = { N1:"启动准备", N2:"规划任务", N3:"开发中", N4:"检查代码",
|
|
71
|
+
N5:"保存进度", N6:"质量检测", N7:"整理现场", N8:"收尾总结" };
|
|
72
|
+
const ZONE = i => i<2 ? "dawn" : i<5 ? "day" : i<7 ? "dusk" : "night";
|
|
73
|
+
const PROPS = { 0:"plant2", 1:"crate", 2:"bin", 4:"dresser", 5:"fridge", 6:"shelfB", 7:"plant" };
|
|
74
|
+
|
|
75
|
+
const cv = document.getElementById("cv"), cx = cv.getContext("2d");
|
|
76
|
+
cx.imageSmoothingEnabled = false;
|
|
77
|
+
const W = cv.width, H = cv.height, TOPW = 48; // 顶墙高度
|
|
78
|
+
// 工位:两排四列,像真办公室
|
|
79
|
+
const POD = []; for (let i=0;i<8;i++)
|
|
80
|
+
POD.push({ x: 128 + (i%4)*162, y: 168 + ((i/4)|0)*150 });
|
|
81
|
+
const BENCH = { x:20, y:252, cx:44 }; // 等候长椅(左墙)
|
|
82
|
+
const LOUNGE = { x:W/2, y:252 }; // 中央过道=休息区
|
|
83
|
+
const seed = n => { let x = Math.sin(n*127.1)*43758.5; return x - Math.floor(x); };
|
|
84
|
+
|
|
85
|
+
function rect(x,y,w,h,c){ cx.fillStyle = c; cx.fillRect(x|0, y|0, w, h); }
|
|
86
|
+
function tile(n,dx,dy,z=3){ const [c,r] = T[n];
|
|
87
|
+
cx.drawImage(IMG, c*16, r*16, 16, 16, dx|0, dy|0, 16*z, 16*z); }
|
|
88
|
+
function shadow(x,y,rx,ry,a=.26){ cx.fillStyle = "rgba(12,8,20,"+a+")";
|
|
89
|
+
cx.beginPath(); cx.ellipse(x,y,rx,ry,0,0,7); cx.fill(); }
|
|
90
|
+
|
|
91
|
+
let cur = { node:"N1", state:"running", detail:"", feature:"", task:"" };
|
|
92
|
+
let mode = "wait", staleRun = false, firstSnap = true;
|
|
93
|
+
let wk = { x:POD[0].x-58, y:POD[0].y+18 }; // 小人(2D 自由走动)
|
|
94
|
+
let frame = 0, confetti = [];
|
|
95
|
+
|
|
96
|
+
// ---------- 房间(俯视) ----------
|
|
97
|
+
function room(zone) {
|
|
98
|
+
for (let r=0; r<Math.ceil((H-TOPW)/48); r++) // 暖木地板
|
|
99
|
+
for (let c=0; c<Math.ceil(W/48); c++)
|
|
100
|
+
tile(seed(c*3+r*11)>.62 ? "wood2" : (seed(c*5+r)>.85 ? "wood3" : "wood"), c*48, TOPW + r*48);
|
|
101
|
+
for (let c=0; c<Math.ceil(W/48); c++) tile("brick", c*48, 0); // 红砖顶墙
|
|
102
|
+
rect(0,0,W,6,"#171310");
|
|
103
|
+
rect(0,TOPW-7,W,7,"#4a3626"); rect(0,TOPW-7,W,2,"#5f4630"); // 木梁压边
|
|
104
|
+
rect(0,TOPW,W,5,"rgba(12,8,20,.35)"); // 墙脚阴影
|
|
105
|
+
rect(0,TOPW,4,H-TOPW,"rgba(12,8,20,.30)"); // 左右墙沿
|
|
106
|
+
rect(W-4,TOPW,4,H-TOPW,"rgba(12,8,20,.30)");
|
|
107
|
+
const p = SKY[zone]; // 4 扇窗,窗外=当前进度时辰
|
|
108
|
+
for (let i=0;i<4;i++) {
|
|
109
|
+
const x = 96 + i*168, y = 7, w = 52, h = 32;
|
|
110
|
+
rect(x-3,y-3,w+6,h+6,"#241f1a");
|
|
111
|
+
for (let b=0;b<3;b++) rect(x, y+b*h/3, w, h/3+1, p[b]);
|
|
112
|
+
if (zone==="day" && i===1) { rect(x+34,y+5,9,9,"#f5e8b0"); }
|
|
113
|
+
if (zone==="dawn" && i===0) { rect(x+8,y+h-12,10,5,"#f0c890"); }
|
|
114
|
+
if (zone==="dusk" && i===2) { rect(x+30,y+h-14,11,6,"#e8a060"); }
|
|
115
|
+
if (zone==="night") { if (i===1) { rect(x+34,y+5,8,8,"#e8e2d0");
|
|
116
|
+
rect(x+35,y+6,2,2,"#c8c2b0"); rect(x+38,y+9,2,2,"#c8c2b0"); }
|
|
117
|
+
for (let s2=0;s2<3;s2++) if ((frame>>4)%3 !== s2)
|
|
118
|
+
rect(x+4+seed(s2+i)*44, y+3+seed(s2+9)*24, 2,2,"#e8e2d0"); }
|
|
119
|
+
if (zone==="day" || zone==="dawn") {
|
|
120
|
+
cx.save(); cx.beginPath(); cx.rect(x,y,w,h); cx.clip();
|
|
121
|
+
const cxp = x + ((frame*0.22 + i*53) % (w+30)) - 15;
|
|
122
|
+
rect(cxp, y+6+(i%2)*8, 14, 4, "rgba(250,246,236,.85)"); cx.restore(); }
|
|
123
|
+
rect(x-3, y+h/2-1, w+6, 2, "#241f1a");
|
|
124
|
+
if (i%2===0) tile("plant2", x+w-6, y+h-8, 1); // 窗台盆栽
|
|
125
|
+
else tile("plant", x-12, y+h-8, 1);
|
|
126
|
+
}
|
|
127
|
+
tile("art1", 40, 10, 2); tile("gold", 660, 8, 2); // 顶墙挂画
|
|
128
|
+
const ckx = 24, cky = 12; // 挂钟
|
|
129
|
+
rect(ckx-2,cky-2,16,16,"#241f1a"); rect(ckx,cky,12,12,"#e8e2d0");
|
|
130
|
+
rect(ckx+5,cky+2,2,5,"#241f1a"); rect(ckx+6,cky+6,4,2,"#241f1a");
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
// ---------- 深度排序渲染(y 小在后,y 大在前=离观众近) ----------
|
|
134
|
+
function drawSorted(ents) {
|
|
135
|
+
ents.sort((a,b) => a.by - b.by);
|
|
136
|
+
for (const e of ents) e.f();
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
function podEnts(ents, idx, done) {
|
|
140
|
+
for (let i=0;i<8;i++) {
|
|
141
|
+
const P = POD[i], x = P.x, y = P.y,
|
|
142
|
+
active = i===idx && !done && mode==="run", passed = done || i<idx;
|
|
143
|
+
ents.push({ by: y+30, f: () => {
|
|
144
|
+
tile("rgA", x-32, y-14, 2); tile("rgB", x, y-14, 2); // 奶油地垫
|
|
145
|
+
tile("rgC", x-32, y+18, 2); tile("rgD", x, y+18, 2);
|
|
146
|
+
shadow(x, y+30, 30, 6);
|
|
147
|
+
tile("desk", x-24, y-18);
|
|
148
|
+
tile("lamp2", x+13, y-30, 1.1); // 桌灯
|
|
149
|
+
tile(active ? "mon" : "mon2", x-14, y-38, 1.75);
|
|
150
|
+
if (passed) { rect(x-11, y-35, 22, 17, "rgba(80,170,90,.85)");
|
|
151
|
+
cx.fillStyle="#eaf6ea"; cx.font="bold 11px monospace"; cx.textAlign="center";
|
|
152
|
+
cx.fillText("✓", x, y-22); }
|
|
153
|
+
else if (!active) rect(x-11, y-35, 22, 17, "rgba(24,20,34,.88)");
|
|
154
|
+
else if ((frame>>4)%4===0) rect(x-11, y-35, 22, 17, "rgba(159,216,240,.25)");
|
|
155
|
+
tile("chairF", x-14, y+16, 1.75); // 桌前椅(背对观众)
|
|
156
|
+
}});
|
|
157
|
+
if (i===3) ents.push({ by: P.y+26, f: () => { // Codex 审查员常驻 N4
|
|
158
|
+
shadow(P.x+44, P.y+26, 13, 4); tile("codex", P.x+22, P.y-22); }});
|
|
159
|
+
else if (i===5) ents.push({ by: P.y+28, f: () => { // 服务器机架(CI/测试机)
|
|
160
|
+
shadow(P.x+46, P.y+28, 13, 4);
|
|
161
|
+
tile("mon2", P.x+30, P.y-36, 2); tile("mon2", P.x+30, P.y-4, 2);
|
|
162
|
+
for (let k=0;k<4;k++) if ((frame>>3)%4!==k)
|
|
163
|
+
rect(P.x+36+k*6, P.y-30+((k%2)*32), 3, 3, k%2?"#7fdc6a":"#63b8b0"); }});
|
|
164
|
+
else if (PROPS[i]) ents.push({ by: P.y+28, f: () => {
|
|
165
|
+
shadow(P.x+46, P.y+28, 13, 4); tile(PROPS[i], P.x+30, P.y-4, 2); }});
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
function furnitureEnts(ents) {
|
|
170
|
+
ents.push({ by: 96, f: () => { // 咖啡台(靠顶墙)
|
|
171
|
+
shadow(608, 98, 52, 6);
|
|
172
|
+
tile("cntL", 560, 64, 2); tile("cntM", 592, 64, 2); tile("cntR", 624, 64, 2); }});
|
|
173
|
+
ents.push({ by: 98, f: () => { shadow(40, 98, 20, 5); tile("shelfA", 16, 56, 2.5); }}); // 书架
|
|
174
|
+
ents.push({ by: BENCH.y+34, f: () => { // 等候区:售货机+长椅
|
|
175
|
+
shadow(36, BENCH.y-14, 18, 5); tile("vend", 16, BENCH.y-62, 2);
|
|
176
|
+
shadow(BENCH.cx+22, BENCH.y+32, 26, 5);
|
|
177
|
+
tile("sofaM", BENCH.x, BENCH.y, 2); tile("sofaR", BENCH.x+32, BENCH.y, 2); }});
|
|
178
|
+
ents.push({ by: H-8, f: () => { // 角落绿植
|
|
179
|
+
tile("plant", 12, H-56, 2); tile("plant2", W-46, H-58, 2); }});
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
function person(n, x, y, bob) { // x,y = 脚底中心
|
|
183
|
+
return { by: y, f: () => { shadow(x, y+2, 14, 4, .32);
|
|
184
|
+
tile(n, x-24, y-46 + (bob ? ((frame>>3)%2) : 0)); } };
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
function lighting(idx, paused, done, zone) {
|
|
188
|
+
const lit = [];
|
|
189
|
+
if (mode==="run" && !done && !paused)
|
|
190
|
+
lit.push({x:POD[idx].x, y:POD[idx].y-10, c: staleRun ? "255,95,80" : "255,205,120", a:.26});
|
|
191
|
+
if (paused) lit.push({x:BENCH.cx+16, y:BENCH.y-10, c:"255,205,120", a:.24});
|
|
192
|
+
if (done || mode==="wait") lit.push({x:LOUNGE.x, y:LOUNGE.y, c:"255,205,120", a:.10});
|
|
193
|
+
cx.globalCompositeOperation = "lighter";
|
|
194
|
+
for (const L of lit) {
|
|
195
|
+
const g = cx.createRadialGradient(L.x,L.y,10, L.x,L.y,130);
|
|
196
|
+
g.addColorStop(0,"rgba("+L.c+","+L.a+")"); g.addColorStop(1,"rgba("+L.c+",0)");
|
|
197
|
+
cx.fillStyle = g; cx.fillRect(L.x-130, L.y-130, 260, 260);
|
|
198
|
+
}
|
|
199
|
+
cx.globalCompositeOperation = "source-over";
|
|
200
|
+
rect(0,0,W,H, TINT[zone]); // 时辰环境色
|
|
201
|
+
const v = cx.createRadialGradient(W/2, H*.44, H*.42, W/2, H*.52, W*.62);
|
|
202
|
+
v.addColorStop(0,"rgba(8,6,18,0)"); v.addColorStop(1,"rgba(8,6,18,.48)");
|
|
203
|
+
cx.fillStyle = v; cx.fillRect(0,0,W,H);
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
function labels(idx, done) {
|
|
207
|
+
cx.font = "bold 11px ui-monospace,monospace"; cx.textAlign = "center";
|
|
208
|
+
for (let i=0;i<8;i++) {
|
|
209
|
+
const P = POD[i], active = i===idx && !done && mode==="run", passed = done || i<idx;
|
|
210
|
+
const t = NODES[i]+" "+PHASE[NODES[i]].slice(0,2);
|
|
211
|
+
cx.fillStyle = "rgba(20,14,8,.75)"; cx.fillText(t, P.x+1, P.y+53);
|
|
212
|
+
cx.fillStyle = active ? "#faf6ec" : passed ? "#8fdc78" : "#b8a888";
|
|
213
|
+
cx.fillText(t, P.x, P.y+52);
|
|
214
|
+
}
|
|
215
|
+
const name = (cur.feature ? cur.feature.replace(/^\d+\./,"") : "cm 工作流") + " 的办公室";
|
|
216
|
+
cx.font = "bold 12px ui-monospace,monospace";
|
|
217
|
+
const tw = cx.measureText("★ "+name+" ★").width + 24;
|
|
218
|
+
rect(W/2-tw/2, H-24, tw, 19, "#241f1a"); rect(W/2-tw/2+2, H-22, tw-4, 15, "#3a2c1e");
|
|
219
|
+
cx.fillStyle = "#f0c05a"; cx.fillText("★ "+name+" ★", W/2, H-10);
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
function emote(ch, x, y, col) {
|
|
223
|
+
if ((frame>>4)%2) return;
|
|
224
|
+
cx.fillStyle = col; cx.font = "bold 17px monospace"; cx.textAlign = "center";
|
|
225
|
+
cx.fillText(ch, x, y);
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
function drawIdle() {
|
|
229
|
+
room("night");
|
|
230
|
+
const ents = []; podEnts(ents, 0, false); furnitureEnts(ents);
|
|
231
|
+
ents.push({ by: LOUNGE.y+34, f: () => { // 中央沙发打盹
|
|
232
|
+
shadow(LOUNGE.x, LOUNGE.y+34, 66, 7);
|
|
233
|
+
tile("sofaL", LOUNGE.x-72, LOUNGE.y-6); tile("sofaM", LOUNGE.x-24, LOUNGE.y-6);
|
|
234
|
+
tile("sofaR", LOUNGE.x+24, LOUNGE.y-6); }});
|
|
235
|
+
ents.push(person("sleep", LOUNGE.x, LOUNGE.y+2, false));
|
|
236
|
+
drawSorted(ents); labels(0, false);
|
|
237
|
+
const zi = (frame>>4)%3;
|
|
238
|
+
cx.fillStyle="#cfc8e8"; cx.font="bold 13px monospace"; cx.textAlign="left";
|
|
239
|
+
cx.fillText("z".repeat(zi+1), LOUNGE.x+26, LOUNGE.y-40-zi*4);
|
|
240
|
+
lighting(0,false,false,"night");
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
function draw() {
|
|
244
|
+
frame++;
|
|
245
|
+
if (!loaded) { rect(0,0,W,H,"#0d0b16"); requestAnimationFrame(draw); return; }
|
|
246
|
+
if (mode==="wait") { drawIdle(); requestAnimationFrame(draw); return; }
|
|
247
|
+
const idx = Math.max(0, NODES.indexOf(cur.node)),
|
|
248
|
+
paused = cur.state==="paused_for_human", done = mode==="done",
|
|
249
|
+
zone = done ? "night" : ZONE(idx);
|
|
250
|
+
room(zone);
|
|
251
|
+
const ents = []; podEnts(ents, idx, done); furnitureEnts(ents);
|
|
252
|
+
let sat = false;
|
|
253
|
+
if (!done) {
|
|
254
|
+
const t = paused ? {x:BENCH.cx+16, y:BENCH.y+26} : {x:POD[idx].x-52, y:POD[idx].y+20};
|
|
255
|
+
const dx = t.x-wk.x, dy = t.y-wk.y, d = Math.hypot(dx,dy);
|
|
256
|
+
const spd = isDemo ? 8 : 2.6;
|
|
257
|
+
if (d>3) { wk.x += dx/d*Math.min(spd,d); wk.y += dy/d*Math.min(spd,d); }
|
|
258
|
+
const walking = d>3;
|
|
259
|
+
sat = paused && !walking;
|
|
260
|
+
ents.push(person("worker", wk.x, wk.y, walking));
|
|
261
|
+
if (sat) ents.push({ by: wk.y+1, f: () => { // 补画椅面盖腿=坐下
|
|
262
|
+
tile("sofaM", BENCH.x, BENCH.y, 2); tile("sofaR", BENCH.x+32, BENCH.y, 2); }});
|
|
263
|
+
} else {
|
|
264
|
+
ents.push({ by: LOUNGE.y+18, f: () => { shadow(LOUNGE.x, LOUNGE.y+18, 34, 7);
|
|
265
|
+
tile("tblO1", LOUNGE.x-24, LOUNGE.y-54); tile("tblO2", LOUNGE.x-24, LOUNGE.y-8); }});
|
|
266
|
+
ents.push(person("worker", LOUNGE.x-64, LOUNGE.y+6, true));
|
|
267
|
+
ents.push(person("celA", LOUNGE.x+64, LOUNGE.y+6, true));
|
|
268
|
+
ents.push(person("celB", LOUNGE.x-40, LOUNGE.y+52, true));
|
|
269
|
+
ents.push(person("celC", LOUNGE.x+40, LOUNGE.y+52, true));
|
|
270
|
+
}
|
|
271
|
+
if (paused) { drawSorted(ents.filter(e=>true)); rect(0,0,W,H,"rgba(10,8,22,.32)");
|
|
272
|
+
const again = []; again.push(person("worker", wk.x, wk.y, false));
|
|
273
|
+
if (sat) again.push({ by: wk.y+1, f: () => {
|
|
274
|
+
tile("sofaM", BENCH.x, BENCH.y, 2); tile("sofaR", BENCH.x+32, BENCH.y, 2); }});
|
|
275
|
+
drawSorted(again);
|
|
276
|
+
if (sat) emote("!", wk.x, wk.y-56, "#f5d95c");
|
|
277
|
+
} else {
|
|
278
|
+
drawSorted(ents);
|
|
279
|
+
if (staleRun && !done) emote("?", wk.x, wk.y-56, "#f08a80");
|
|
280
|
+
}
|
|
281
|
+
labels(idx, done);
|
|
282
|
+
if (done) {
|
|
283
|
+
if (frame%3===0) confetti.push({ x:Math.random()*W, y:-6, v:1+Math.random()*1.6,
|
|
284
|
+
w:Math.random()>.5?4:3, c:["#f0b03c","#f06a3c","#63b8b0","#95c86a","#8c78c8","#faf6ec"][Math.random()*6|0] });
|
|
285
|
+
confetti = confetti.filter(p => p.y < H-8);
|
|
286
|
+
for (const p of confetti) { p.y += p.v; rect(p.x + Math.sin((p.y+p.x)/14)*5, p.y, p.w, p.w+2, p.c); }
|
|
287
|
+
rect(W/2-104, 66, 208, 34, "#faf6ec"); rect(W/2-104, 66, 208, 4, "#241f1a");
|
|
288
|
+
rect(W/2-104, 96, 208, 4, "#241f1a"); rect(W/2-104, 66, 4, 34, "#241f1a"); rect(W/2+100, 66, 4, 34, "#241f1a");
|
|
289
|
+
cx.fillStyle="#1c1a14"; cx.font="bold 19px ui-monospace,monospace"; cx.textAlign="center";
|
|
290
|
+
cx.fillText("STAGE CLEAR!", W/2, 90);
|
|
291
|
+
}
|
|
292
|
+
lighting(idx, paused, done, zone);
|
|
293
|
+
requestAnimationFrame(draw);
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
function hud() {
|
|
297
|
+
const paused = cur.state==="paused_for_human", done = mode==="done";
|
|
298
|
+
const ph = document.getElementById("phase");
|
|
299
|
+
if (mode==="wait") { ph.textContent = "😴 休息中(等 /cm-ai 启动)"; ph.className=""; }
|
|
300
|
+
else if (staleRun) { ph.textContent = "⚠ 可能已中断(去会话确认)"; ph.className="stale"; }
|
|
301
|
+
else { ph.textContent = done ? "STAGE CLEAR — 全部完成" :
|
|
302
|
+
(paused ? "🖐 等你确认" : "STAGE "+cur.node+" · "+(PHASE[cur.node]||"运行中"));
|
|
303
|
+
ph.className = paused ? "paused" : ""; }
|
|
304
|
+
document.getElementById("task").textContent =
|
|
305
|
+
mode==="wait" ? "" : [cur.feature.replace(/^\d+\./,""), cur.task].filter(Boolean).join(" · ");
|
|
306
|
+
const b = document.getElementById("bubble");
|
|
307
|
+
if (mode==="run" && cur.detail) {
|
|
308
|
+
b.style.display="block"; b.className = paused ? "paused" : "";
|
|
309
|
+
b.textContent = (paused ? "🖐 " : "") + cur.detail;
|
|
310
|
+
const idx = Math.max(0, NODES.indexOf(cur.node));
|
|
311
|
+
b.style.left = paused ? (BENCH.cx/W*100+"%")
|
|
312
|
+
: (Math.min(86, Math.max(14, POD[idx].x/W*100)) + "%");
|
|
313
|
+
b.style.top = paused ? ((BENCH.y-58)/H*100+"%") : ((POD[idx].y-34)/H*100 + "%");
|
|
314
|
+
} else b.style.display = "none";
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
// 上次收工小记:读度量汇总.md 最后一节
|
|
318
|
+
async function loadNote() {
|
|
319
|
+
try {
|
|
320
|
+
const md = await (await fetch("度量汇总.md?ts="+Date.now())).text();
|
|
321
|
+
if (md.startsWith("<")) return;
|
|
322
|
+
const secs = md.trim().split(/\n(?=#)/), last = secs[secs.length-1];
|
|
323
|
+
const lines = last.split("\n").filter(l=>l.trim().startsWith("-")).slice(0,4);
|
|
324
|
+
if (!lines.length) return;
|
|
325
|
+
const n = document.getElementById("note");
|
|
326
|
+
n.innerHTML = "<b>📋 上次收工小记</b>\n" + lines.join("\n").replace(/</g,"<");
|
|
327
|
+
n.style.display = "block";
|
|
328
|
+
} catch {}
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
const DEMO = [
|
|
332
|
+
["N1","running","正在检查项目环境和版本控制","",""],
|
|
333
|
+
["N2","running","正在读需求、排任务","1.market-board",""],
|
|
334
|
+
["N3","running","正在开发行情数据接口","1.market-board","T-005"],
|
|
335
|
+
["N4","running","第1轮代码审查进行中","1.market-board","T-005"],
|
|
336
|
+
["N4","paused_for_human","确认一下:原型里有3个按钮点了没反应,要做吗?","1.market-board","T-006"],
|
|
337
|
+
["N5","running","保存进度:行情页面完成","1.market-board","T-006"],
|
|
338
|
+
["N6","running","质量检测和业务走查","1.market-board",""],
|
|
339
|
+
["N7","running","整理现场,准备下一个任务","1.market-board",""],
|
|
340
|
+
["N8","running","收尾:整理文档和发布清单","",""],
|
|
341
|
+
["N8","done","全部完成","",""]];
|
|
342
|
+
const q = new URLSearchParams(location.search);
|
|
343
|
+
const isDemo = q.has("demo"), isIdleDemo = q.has("idle");
|
|
344
|
+
|
|
345
|
+
async function poll() {
|
|
346
|
+
if (isIdleDemo) { mode="wait"; hud(); loadNote(); return; }
|
|
347
|
+
if (isDemo) {
|
|
348
|
+
const [node,state,detail,feature,task] = DEMO[(Math.floor(Date.now()/2600))%DEMO.length];
|
|
349
|
+
cur = {node,state,detail,feature,task};
|
|
350
|
+
mode = state==="done" ? "done" : "run"; staleRun = false; setBar(4,6);
|
|
351
|
+
} else {
|
|
352
|
+
try {
|
|
353
|
+
const res = await fetch(".cm-status.json?ts="+Date.now());
|
|
354
|
+
if (!res.ok) throw 0;
|
|
355
|
+
const s = await res.json();
|
|
356
|
+
cur = { node:s.node||"N1", state:s.state||"running", detail:s.detail||"",
|
|
357
|
+
feature:s.feature||"", task:s.task||"" };
|
|
358
|
+
mode = cur.state==="done" ? "done" : "run";
|
|
359
|
+
if (firstSnap && mode==="run") { firstSnap = false;
|
|
360
|
+
if (cur.state==="paused_for_human") { wk.x = BENCH.cx+16; wk.y = BENCH.y+26; }
|
|
361
|
+
else { const P = POD[Math.max(0,NODES.indexOf(cur.node))];
|
|
362
|
+
wk.x = P.x-52; wk.y = P.y+20; } }
|
|
363
|
+
const lm = res.headers.get("last-modified"); // 中断检测(阈值 10 分钟)
|
|
364
|
+
staleRun = !!(lm && mode==="run" && cur.state!=="paused_for_human"
|
|
365
|
+
&& (Date.now()-new Date(lm).getTime()) > 600_000);
|
|
366
|
+
if (cur.feature && mode!=="wait") {
|
|
367
|
+
const md = await (await fetch(cur.feature+"/tasks.md?ts="+Date.now())).text();
|
|
368
|
+
const items = md.match(/^- \[( |x)\] T-\d+/gm)||[];
|
|
369
|
+
setBar(items.filter(l=>l.includes("[x]")).length, items.length);
|
|
370
|
+
} else setBar(0,0);
|
|
371
|
+
document.getElementById("hint").textContent = "";
|
|
372
|
+
document.getElementById("note").style.display = mode==="done" ? "" : "none";
|
|
373
|
+
if (mode==="done") loadNote();
|
|
374
|
+
} catch { mode = "wait"; setBar(0,0); loadNote();
|
|
375
|
+
document.getElementById("hint").textContent = "😴 值班中"; }
|
|
376
|
+
}
|
|
377
|
+
hud(); setTimeout(poll, isDemo?400:2000);
|
|
378
|
+
}
|
|
379
|
+
function setBar(d,t){
|
|
380
|
+
document.getElementById("fill").style.width = t ? (100*d/t)+"%" : "0";
|
|
381
|
+
document.getElementById("count").textContent = t ? d+"/"+t : "";
|
|
382
|
+
document.getElementById("coins").textContent = d ? "⛁ "+d : "";
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
draw(); poll();
|
|
386
|
+
</script>
|
|
387
|
+
</body>
|
|
388
|
+
</html>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# cm 像素流水线(浏览器版) · 纯只读,零侵入(只消费 specs 落盘文件)
|
|
3
|
+
# 用法: ./serve.sh /path/to/specs [端口,默认 8799]
|
|
4
|
+
# 演示模式(不需要 specs 在跑): 打开 http://localhost:8799/.cm-pixel.html?demo
|
|
5
|
+
set -euo pipefail
|
|
6
|
+
SPECS="${1:?用法: ./serve.sh /path/to/specs [端口]}"
|
|
7
|
+
PORT="${2:-8799}"
|
|
8
|
+
[ -d "$SPECS" ] || { echo "specs 目录不存在: $SPECS"; exit 1; }
|
|
9
|
+
cp "$(cd "$(dirname "$0")" && pwd)/cm-pixel.html" "$SPECS/.cm-pixel.html"
|
|
10
|
+
echo "✓ 像素流水线已启动: http://localhost:$PORT/.cm-pixel.html (Ctrl+C 停止)"
|
|
11
|
+
echo " 演示模式: http://localhost:$PORT/.cm-pixel.html?demo"
|
|
12
|
+
cd "$SPECS" && exec python3 -m http.server "$PORT" --bind 127.0.0.1
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_comment": "cm:refactor 批量道循环内禁令模板。用法:把 permissions.deny 合并进代码项目 .claude/settings.json(人工安装,命令只验证);测试命令按项目实际替换;收口后撤销。这是防误触护栏,不是安全边界。",
|
|
3
|
+
"permissions": {
|
|
4
|
+
"deny": [
|
|
5
|
+
"Bash(git reset:*)",
|
|
6
|
+
"Bash(git checkout:*)",
|
|
7
|
+
"Bash(git clean:*)",
|
|
8
|
+
"Bash(git commit:*)",
|
|
9
|
+
"Bash(git rebase:*)",
|
|
10
|
+
"Bash(npm test:*)",
|
|
11
|
+
"Bash(npm run test:*)"
|
|
12
|
+
]
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: {一句话:后端 API 层开发约定}
|
|
3
|
+
globs: {如 "src/api/**",按实际目录}
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<!-- 模板骨架 · 生成时遵守四原则,{占位符} 结合项目填充。
|
|
7
|
+
cm-backend-engineer 的默认值(超时/分页等)以本文件为准 -->
|
|
8
|
+
|
|
9
|
+
# 后端 API 规范
|
|
10
|
+
|
|
11
|
+
## 分层与路由
|
|
12
|
+
|
|
13
|
+
- 分层:{controller/service/repository 或项目实际分层,附目录}
|
|
14
|
+
- 路由组织:{按资源分组的实际方式};新路由必须显式挂鉴权中间件或声明公开
|
|
15
|
+
|
|
16
|
+
## 错误处理
|
|
17
|
+
|
|
18
|
+
- 统一错误体结构:`{ code, message, ... }`({附项目实际结构})
|
|
19
|
+
- 全局错误处理器统一出口,禁止 handler 内裸造错误体
|
|
20
|
+
- 错误码清单位置:{路径}
|
|
21
|
+
|
|
22
|
+
## 输入与幂等
|
|
23
|
+
|
|
24
|
+
- 边界层校验:{校验库};内层信任已校验数据
|
|
25
|
+
- 写操作幂等:{幂等键方案};支付类接口强制
|
|
26
|
+
|
|
27
|
+
## 性能与可靠性默认值
|
|
28
|
+
|
|
29
|
+
- 外部调用超时:{5}s;重试上限:{N} 次
|
|
30
|
+
- 列表接口必须分页,默认页大小 {20},上限 {100}
|
|
31
|
+
- 缓存策略:{Redis/内存缓存的使用边界}
|
|
32
|
+
|
|
33
|
+
## 可观测
|
|
34
|
+
|
|
35
|
+
- 日志格式与脱敏:{约定,敏感字段清单}
|
|
36
|
+
- {链路追踪/健康检查端点约定}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: {一句话:本项目的编码风格约定}
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
<!-- 模板骨架 · 由 /cm-init 或 bootstrap 以此为骨架生成,生成时必须遵守四原则:
|
|
6
|
+
① 可执行——具体指令,禁止"使用恰当的 XX"类模糊话
|
|
7
|
+
② 关键规则带 Bad/Good 对比示例
|
|
8
|
+
③ 量化——用数字不用形容词
|
|
9
|
+
④ 现代实践——锚定项目当前版本的惯用法
|
|
10
|
+
所有 {占位符} 结合项目实际填充;不适用章节删除;禁止保留空洞通用话术 -->
|
|
11
|
+
|
|
12
|
+
# 编码风格
|
|
13
|
+
|
|
14
|
+
## 量化标准(默认值,按团队口味调整)
|
|
15
|
+
|
|
16
|
+
| 项 | 上限 |
|
|
17
|
+
| ---- | ---- |
|
|
18
|
+
| 函数长度 | {30} 行 |
|
|
19
|
+
| 文件长度 | {300} 行 |
|
|
20
|
+
| 嵌套深度 | {3} 层 |
|
|
21
|
+
| 函数参数 | {4} 个 |
|
|
22
|
+
|
|
23
|
+
## 命名
|
|
24
|
+
|
|
25
|
+
- 文件命名:{从项目现有文件推断,如 kebab-case / PascalCase 组件}
|
|
26
|
+
- 变量/函数:{camelCase 等,附一个项目内真实示例}
|
|
27
|
+
- 常量与枚举:{约定}
|
|
28
|
+
|
|
29
|
+
## Import 与文件组织
|
|
30
|
+
|
|
31
|
+
- Import 顺序:{如 内置 → 第三方 → 别名 → 相对路径,从 lint 配置推断}
|
|
32
|
+
- 路径别名:{tsconfig/构建配置中的实际别名清单}
|
|
33
|
+
|
|
34
|
+
## 注释
|
|
35
|
+
|
|
36
|
+
- 只解释"为什么",不复述"做了什么"
|
|
37
|
+
- {公共 API 的文档注释要求,如 JSDoc / docstring}
|
|
38
|
+
|
|
39
|
+
## Bad / Good 示例
|
|
40
|
+
|
|
41
|
+
```{lang}
|
|
42
|
+
// Bad: {从项目痛点提炼}
|
|
43
|
+
// Good: {对应正确写法}
|
|
44
|
+
```
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: {一句话:数据库与 migration 约定}
|
|
3
|
+
globs: {如 "src/db/**, migrations/**",按实际目录}
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<!-- 模板骨架 · 生成时遵守四原则,{占位符} 结合项目填充 -->
|
|
7
|
+
|
|
8
|
+
# 数据库规范
|
|
9
|
+
|
|
10
|
+
## Migration
|
|
11
|
+
|
|
12
|
+
- 工具与命名:{Prisma/Knex/Alembic…,时间戳或序号规则}
|
|
13
|
+
- 必须可回滚(up + down);**破坏性变更(删表/删列/改类型)必须人工确认**
|
|
14
|
+
- 大表加列/加索引:{PostgreSQL 用 CONCURRENTLY 等锁表规避方案}
|
|
15
|
+
- 兼容序:加列随本次发布,删列随下次发布
|
|
16
|
+
|
|
17
|
+
## Schema
|
|
18
|
+
|
|
19
|
+
- 新表必含审计字段:{created_at / updated_at / 软删标记约定}
|
|
20
|
+
- 字段类型精确:金额用 decimal、枚举用 enum,禁止 string/float 凑合
|
|
21
|
+
- 外键级联:默认 RESTRICT,CASCADE 需注明理由
|
|
22
|
+
|
|
23
|
+
## 查询
|
|
24
|
+
|
|
25
|
+
- 复杂查询封装位置:{repository/独立函数目录}
|
|
26
|
+
- 防 N+1:{eager loading / dataloader 约定}
|
|
27
|
+
- 大数据量必须分页/游标;慢查询阈值 {N}ms 需 EXPLAIN
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 金融项目开发铁律
|
|
3
|
+
法域: 待确认 # 人工确认后填写(如 "SG,US")——本字段是一切合规判断的前提,
|
|
4
|
+
# cm-finance-expert 判断前必读;多仓库以任一已确认值为准,冲突上报
|
|
5
|
+
适用合规框架: {待确认,按业务勾选:证券监管 / 支付牌照 / GDPR / PCI-DSS / SOC 2 / 其他}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
<!-- 模板骨架 · 生成时遵守四原则,{占位符} 结合项目填充。
|
|
9
|
+
本模板由 cm-finance-expert skill 定义维度,/cm-init 或 bootstrap 生成 -->
|
|
10
|
+
|
|
11
|
+
# 金融开发铁律
|
|
12
|
+
|
|
13
|
+
## 金额与精度
|
|
14
|
+
|
|
15
|
+
- 金额一律 decimal / 整数最小单位({分 / wei / lamports}),**禁止 float**
|
|
16
|
+
- 精度与舍入规则全局统一并显式声明:{如 "银行家舍入,保留 N 位"}
|
|
17
|
+
- 用户可见的资产数字必须标注计算口径和更新时间
|
|
18
|
+
|
|
19
|
+
## 资金操作
|
|
20
|
+
|
|
21
|
+
- 所有资金相关写操作必须幂等(幂等键方案:{方案})
|
|
22
|
+
- 必须留审计日志:谁 / 何时 / 何值 / 前值;日志不可被应用层删除
|
|
23
|
+
- 资金流向可追溯:任何余额变动能回溯到触发事件
|
|
24
|
+
|
|
25
|
+
## 数据时点
|
|
26
|
+
|
|
27
|
+
- 费率/汇率/价格有明确取值时点和来源({预言机/行情源}),禁止隐式取"当前值"
|
|
28
|
+
|
|
29
|
+
## 营销内容红线(开发实现侧)
|
|
30
|
+
|
|
31
|
+
- 收益展示必须伴随风险提示组件;风险提示不得默认折叠
|
|
32
|
+
- {面向用户的收益率展示口径:七日年化 / 历史业绩声明等法定表述要求,法域确认后填}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: {一句话:Web 前端开发约定}
|
|
3
|
+
globs: {如 "src/web/**",按实际目录}
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<!-- 模板骨架 · 生成时遵守四原则,{占位符} 结合项目填充 -->
|
|
7
|
+
|
|
8
|
+
# 前端规范
|
|
9
|
+
|
|
10
|
+
## 组件
|
|
11
|
+
|
|
12
|
+
- 公共 UI 组件目录:{components/ui/ 等实际路径}——新通用组件必须入此目录
|
|
13
|
+
- 组件模式:{函数组件 + hooks / 组合式 API——从现有代码推断}
|
|
14
|
+
- UI 组件纯 props 驱动不含业务逻辑;业务组件组合 UI 组件
|
|
15
|
+
- 第三方组件库:{shadcn/Antd/Element…}——库内有的不自造轮子
|
|
16
|
+
|
|
17
|
+
## 样式与 Design Token
|
|
18
|
+
|
|
19
|
+
- 方案:{Tailwind vN / CSS Modules…}
|
|
20
|
+
- 颜色/间距/字号/圆角一律引用 token({tailwind.config / CSS 变量位置}),**禁止裸写 hex/px 魔法值**
|
|
21
|
+
- 修改既有 token 值 = 契约变更,走上报流程(波及已验收页面)
|
|
22
|
+
|
|
23
|
+
## 状态与数据
|
|
24
|
+
|
|
25
|
+
- 状态管理:{Zustand/Pinia…};简单局部状态用框架原生
|
|
26
|
+
- 请求层:{统一封装位置},错误处理与 loading 状态必须处理
|
|
27
|
+
- 接口未就绪:mock + `// TODO: replace mock when API ready`
|
|
28
|
+
|
|
29
|
+
## 路由与性能
|
|
30
|
+
|
|
31
|
+
- 路由约定:{file-based / config-based,附目录}
|
|
32
|
+
- {懒加载/分包要求、图片处理约定}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: {一句话:本项目的分支与提交约定}
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
<!-- 模板骨架 · 生成时从 git 历史推断实际风格,{占位符} 结合项目填充。
|
|
6
|
+
按 CLAUDE.md 版本控制字段裁剪:none → 不生成本文件;local → 删除 PR/合入 与 保护分支 相关内容,只留 commit 规范 -->
|
|
7
|
+
|
|
8
|
+
# Git 工作流
|
|
9
|
+
|
|
10
|
+
## 分支
|
|
11
|
+
|
|
12
|
+
- 命名:{feature/xxx、fix/xxx——从现有分支推断}
|
|
13
|
+
- 保护分支:{main/master},禁止直接 push
|
|
14
|
+
- 合并方式:{squash / merge commit / rebase——从历史推断}
|
|
15
|
+
|
|
16
|
+
## Commit
|
|
17
|
+
|
|
18
|
+
- 风格:{conventional commits(feat/fix/chore…)或项目实际风格,附 3 个历史真实示例}
|
|
19
|
+
- 一次 commit 一个逻辑变更;禁止 "wip"、"fix" 这类无信息量消息
|
|
20
|
+
- {是否要求关联 issue/任务编号,如 "feat: xxx (T-003)"}
|
|
21
|
+
|
|
22
|
+
## PR / 合入
|
|
23
|
+
|
|
24
|
+
- PR 描述:{模板位置或最低要求}
|
|
25
|
+
- 合入前置:{CI 通过 / review 通过 / 覆盖率不降}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: {一句话:微信小程序开发约定}
|
|
3
|
+
globs: {如 "miniprogram/**",按实际目录}
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<!-- 模板骨架 · 生成时遵守四原则,{占位符} 结合项目填充 -->
|
|
7
|
+
|
|
8
|
+
# 小程序规范
|
|
9
|
+
|
|
10
|
+
## 页面与组件
|
|
11
|
+
|
|
12
|
+
- 四件套(.wxml/.wxss/.js/.json)命名与目录:{从现有页面推断}
|
|
13
|
+
- 自定义组件用 Component 构造器,入 {components/ 实际路径},usingComponents 按需引入
|
|
14
|
+
- 第三方库:{Vant Weapp / TDesign…}——库内有的不自造轮子
|
|
15
|
+
|
|
16
|
+
## 样式
|
|
17
|
+
|
|
18
|
+
- 尺寸一律 rpx(750rpx = 屏宽),禁止写死 px
|
|
19
|
+
- 颜色/间距走公共样式变量({位置}),禁止硬编码
|
|
20
|
+
- 组件样式隔离:{styleIsolation 约定}
|
|
21
|
+
|
|
22
|
+
## 数据与性能
|
|
23
|
+
|
|
24
|
+
- setData 只更新变化字段,禁止循环/滚动中高频调用;长列表用虚拟列表
|
|
25
|
+
- 请求统一走 {封装位置}(baseURL/token/loading/错误 toast)
|
|
26
|
+
- 包体积按项目配置与微信官方当前限制核对:{分包配置约定},图片走 {CDN/压缩策略}
|
|
27
|
+
|
|
28
|
+
## 登录与授权
|
|
29
|
+
|
|
30
|
+
- 登录链路:wx.login → {后端换取 session 的接口}
|
|
31
|
+
- getUserProfile 必须由用户点击触发;敏感授权拒绝时的兜底:{约定}
|