cscec-super-code 0.0.53
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +130 -0
- package/bin/cscec-super-code.js +142 -0
- package/bin/platform.d.ts +14 -0
- package/bin/platform.js +82 -0
- package/bin/platform.test.ts +203 -0
- package/dist/agents/agent-builder.d.ts +7 -0
- package/dist/agents/builtin-agents/agent-overrides.d.ts +12 -0
- package/dist/agents/builtin-agents/available-skills.d.ts +4 -0
- package/dist/agents/builtin-agents/buzhoushan-agent.d.ts +17 -0
- package/dist/agents/builtin-agents/environment-context.d.ts +6 -0
- package/dist/agents/builtin-agents/general-agents.d.ts +24 -0
- package/dist/agents/builtin-agents/luban-agent.d.ts +18 -0
- package/dist/agents/builtin-agents/model-resolution.d.ts +24 -0
- package/dist/agents/builtin-agents/resolve-file-uri.d.ts +1 -0
- package/dist/agents/builtin-agents/yugong-agent.d.ts +20 -0
- package/dist/agents/builtin-agents.d.ts +6 -0
- package/dist/agents/buzhoushan/agent.d.ts +36 -0
- package/dist/agents/buzhoushan/default.d.ts +11 -0
- package/dist/agents/buzhoushan/gemini.d.ts +11 -0
- package/dist/agents/buzhoushan/gpt.d.ts +19 -0
- package/dist/agents/buzhoushan/index.d.ts +2 -0
- package/dist/agents/buzhoushan/prompt-section-builder.d.ts +13 -0
- package/dist/agents/custom-agent-summaries.d.ts +8 -0
- package/dist/agents/dynamic-agent-prompt-builder.d.ts +33 -0
- package/dist/agents/env-context.d.ts +7 -0
- package/dist/agents/index.d.ts +4 -0
- package/dist/agents/jiangshang.d.ts +7 -0
- package/dist/agents/laozi.d.ts +7 -0
- package/dist/agents/luban.d.ts +6 -0
- package/dist/agents/multimodal-looker.d.ts +7 -0
- package/dist/agents/nuwa.d.ts +8 -0
- package/dist/agents/suirenshi/behavioral-summary.d.ts +6 -0
- package/dist/agents/suirenshi/gemini.d.ts +12 -0
- package/dist/agents/suirenshi/gpt.d.ts +24 -0
- package/dist/agents/suirenshi/high-accuracy-mode.d.ts +6 -0
- package/dist/agents/suirenshi/identity-constraints.d.ts +6 -0
- package/dist/agents/suirenshi/index.d.ts +2 -0
- package/dist/agents/suirenshi/interview-mode.d.ts +7 -0
- package/dist/agents/suirenshi/plan-generation.d.ts +6 -0
- package/dist/agents/suirenshi/plan-template.d.ts +7 -0
- package/dist/agents/suirenshi/system-prompt.d.ts +31 -0
- package/dist/agents/types.d.ts +120 -0
- package/dist/agents/weizheng.d.ts +8 -0
- package/dist/agents/xuxiake.d.ts +7 -0
- package/dist/agents/yugong-gemini-overlays.d.ts +20 -0
- package/dist/agents/yugong-junior/agent.d.ts +30 -0
- package/dist/agents/yugong-junior/default.d.ts +9 -0
- package/dist/agents/yugong-junior/gemini.d.ts +10 -0
- package/dist/agents/yugong-junior/gpt.d.ts +8 -0
- package/dist/agents/yugong-junior/index.d.ts +5 -0
- package/dist/agents/yugong.d.ts +36 -0
- package/dist/cli/cli-installer.d.ts +2 -0
- package/dist/cli/cli-program.d.ts +1 -0
- package/dist/cli/config-manager/add-plugin-to-opencode-config.d.ts +2 -0
- package/dist/cli/config-manager/add-provider-config.d.ts +2 -0
- package/dist/cli/config-manager/antigravity-provider-configuration.d.ts +122 -0
- package/dist/cli/config-manager/auth-plugins.d.ts +3 -0
- package/dist/cli/config-manager/bun-install.d.ts +7 -0
- package/dist/cli/config-manager/config-context.d.ts +13 -0
- package/dist/cli/config-manager/deep-merge-record.d.ts +1 -0
- package/dist/cli/config-manager/detect-current-config.d.ts +2 -0
- package/dist/cli/config-manager/ensure-config-directory-exists.d.ts +1 -0
- package/dist/cli/config-manager/format-error-with-suggestion.d.ts +1 -0
- package/dist/cli/config-manager/generate-omo-config.d.ts +2 -0
- package/dist/cli/config-manager/jsonc-provider-editor.d.ts +1 -0
- package/dist/cli/config-manager/npm-dist-tags.d.ts +7 -0
- package/dist/cli/config-manager/opencode-binary.d.ts +2 -0
- package/dist/cli/config-manager/opencode-config-format.d.ts +5 -0
- package/dist/cli/config-manager/parse-opencode-config-file.d.ts +10 -0
- package/dist/cli/config-manager/plugin-name-with-version.d.ts +1 -0
- package/dist/cli/config-manager/write-omo-config.d.ts +2 -0
- package/dist/cli/config-manager.d.ts +14 -0
- package/dist/cli/doctor/checks/config.d.ts +2 -0
- package/dist/cli/doctor/checks/dependencies.d.ts +4 -0
- package/dist/cli/doctor/checks/index.d.ts +7 -0
- package/dist/cli/doctor/checks/model-resolution-cache.d.ts +2 -0
- package/dist/cli/doctor/checks/model-resolution-config.d.ts +2 -0
- package/dist/cli/doctor/checks/model-resolution-details.d.ts +6 -0
- package/dist/cli/doctor/checks/model-resolution-effective-model.d.ts +3 -0
- package/dist/cli/doctor/checks/model-resolution-types.d.ts +37 -0
- package/dist/cli/doctor/checks/model-resolution-variant.d.ts +5 -0
- package/dist/cli/doctor/checks/model-resolution.d.ts +6 -0
- package/dist/cli/doctor/checks/system-binary.d.ts +13 -0
- package/dist/cli/doctor/checks/system-loaded-version.d.ts +10 -0
- package/dist/cli/doctor/checks/system-plugin.d.ts +15 -0
- package/dist/cli/doctor/checks/system.d.ts +3 -0
- package/dist/cli/doctor/checks/tools-gh.d.ts +10 -0
- package/dist/cli/doctor/checks/tools-lsp.d.ts +6 -0
- package/dist/cli/doctor/checks/tools-mcp.d.ts +3 -0
- package/dist/cli/doctor/checks/tools.d.ts +3 -0
- package/dist/cli/doctor/constants.d.ts +29 -0
- package/dist/cli/doctor/format-default.d.ts +2 -0
- package/dist/cli/doctor/format-shared.d.ts +6 -0
- package/dist/cli/doctor/format-status.d.ts +2 -0
- package/dist/cli/doctor/format-verbose.d.ts +2 -0
- package/dist/cli/doctor/formatter.d.ts +3 -0
- package/dist/cli/doctor/index.d.ts +5 -0
- package/dist/cli/doctor/runner.d.ts +5 -0
- package/dist/cli/doctor/types.d.ts +124 -0
- package/dist/cli/fallback-chain-resolution.d.ts +10 -0
- package/dist/cli/get-local-version/formatter.d.ts +3 -0
- package/dist/cli/get-local-version/get-local-version.d.ts +2 -0
- package/dist/cli/get-local-version/index.d.ts +2 -0
- package/dist/cli/get-local-version/types.d.ts +13 -0
- package/dist/cli/index.d.ts +2 -0
- package/dist/cli/index.js +30095 -0
- package/dist/cli/install-validators.d.ts +32 -0
- package/dist/cli/install.d.ts +2 -0
- package/dist/cli/mcp-oauth/index.d.ts +6 -0
- package/dist/cli/mcp-oauth/login.d.ts +6 -0
- package/dist/cli/mcp-oauth/logout.d.ts +4 -0
- package/dist/cli/mcp-oauth/status.d.ts +1 -0
- package/dist/cli/model-fallback-requirements.d.ts +3 -0
- package/dist/cli/model-fallback-types.d.ts +26 -0
- package/dist/cli/model-fallback.d.ts +5 -0
- package/dist/cli/provider-availability.d.ts +4 -0
- package/dist/cli/provider-model-id-transform.d.ts +1 -0
- package/dist/cli/run/agent-profile-colors.d.ts +2 -0
- package/dist/cli/run/agent-resolver.d.ts +5 -0
- package/dist/cli/run/completion.d.ts +2 -0
- package/dist/cli/run/continuation-state.d.ts +9 -0
- package/dist/cli/run/display-chars.d.ts +5 -0
- package/dist/cli/run/event-formatting.d.ts +3 -0
- package/dist/cli/run/event-handlers.d.ts +11 -0
- package/dist/cli/run/event-state.d.ts +49 -0
- package/dist/cli/run/event-stream-processor.d.ts +3 -0
- package/dist/cli/run/events.d.ts +4 -0
- package/dist/cli/run/index.d.ts +9 -0
- package/dist/cli/run/json-output.d.ts +12 -0
- package/dist/cli/run/on-complete-hook.d.ts +7 -0
- package/dist/cli/run/opencode-binary-resolver.d.ts +5 -0
- package/dist/cli/run/output-renderer.d.ts +7 -0
- package/dist/cli/run/poll-for-completion.d.ts +10 -0
- package/dist/cli/run/runner.d.ts +5 -0
- package/dist/cli/run/server-connection.d.ts +6 -0
- package/dist/cli/run/session-resolver.d.ts +6 -0
- package/dist/cli/run/stdin-suppression.d.ts +12 -0
- package/dist/cli/run/timestamp-output.d.ts +5 -0
- package/dist/cli/run/tool-input-preview.d.ts +6 -0
- package/dist/cli/run/types.d.ts +131 -0
- package/dist/cli/tui-install-prompts.d.ts +2 -0
- package/dist/cli/tui-installer.d.ts +2 -0
- package/dist/cli/types.d.ts +39 -0
- package/dist/config/index.d.ts +2 -0
- package/dist/config/schema/agent-names.d.ts +50 -0
- package/dist/config/schema/agent-overrides.d.ts +1279 -0
- package/dist/config/schema/babysitting.d.ts +5 -0
- package/dist/config/schema/background-task.d.ts +10 -0
- package/dist/config/schema/browser-automation.d.ts +17 -0
- package/dist/config/schema/categories.d.ts +106 -0
- package/dist/config/schema/claude-code.d.ts +11 -0
- package/dist/config/schema/commands.d.ts +11 -0
- package/dist/config/schema/comment-checker.d.ts +5 -0
- package/dist/config/schema/cscec-super-code-config.d.ts +1406 -0
- package/dist/config/schema/dynamic-context-pruning.d.ts +28 -0
- package/dist/config/schema/experimental.d.ts +40 -0
- package/dist/config/schema/fallback-models.d.ts +3 -0
- package/dist/config/schema/git-master.d.ts +6 -0
- package/dist/config/schema/hooks.d.ts +70 -0
- package/dist/config/schema/internal/permission.d.ts +44 -0
- package/dist/config/schema/notification.d.ts +5 -0
- package/dist/config/schema/ralph-loop.d.ts +11 -0
- package/dist/config/schema/runtime-fallback.d.ts +10 -0
- package/dist/config/schema/skills.d.ts +58 -0
- package/dist/config/schema/start-work.d.ts +5 -0
- package/dist/config/schema/tmux.d.ts +23 -0
- package/dist/config/schema/websearch.d.ts +13 -0
- package/dist/config/schema/yugong-agent.d.ts +8 -0
- package/dist/config/schema/yugong.d.ts +15 -0
- package/dist/config/schema.d.ts +24 -0
- package/dist/create-hooks.d.ts +66 -0
- package/dist/create-managers.d.ts +20 -0
- package/dist/create-tools.d.ts +59 -0
- package/dist/cscec-super-code.schema.json +3865 -0
- package/dist/features/background-agent/background-task-notification-template.d.ts +10 -0
- package/dist/features/background-agent/compaction-aware-message-resolver.d.ts +3 -0
- package/dist/features/background-agent/concurrency.d.ts +27 -0
- package/dist/features/background-agent/constants.d.ts +45 -0
- package/dist/features/background-agent/duration-formatter.d.ts +1 -0
- package/dist/features/background-agent/error-classifier.d.ts +10 -0
- package/dist/features/background-agent/fallback-retry-handler.d.ts +16 -0
- package/dist/features/background-agent/index.d.ts +2 -0
- package/dist/features/background-agent/manager.d.ts +140 -0
- package/dist/features/background-agent/opencode-client.d.ts +2 -0
- package/dist/features/background-agent/process-cleanup.d.ts +8 -0
- package/dist/features/background-agent/session-idle-event-handler.d.ts +10 -0
- package/dist/features/background-agent/spawner/parent-directory-resolver.d.ts +6 -0
- package/dist/features/background-agent/spawner.d.ts +14 -0
- package/dist/features/background-agent/state.d.ts +35 -0
- package/dist/features/background-agent/task-history.d.ts +18 -0
- package/dist/features/background-agent/task-poller.d.ts +20 -0
- package/dist/features/background-agent/types.d.ts +90 -0
- package/dist/features/boulder-state/constants.d.ts +10 -0
- package/dist/features/boulder-state/index.d.ts +3 -0
- package/dist/features/boulder-state/storage.d.ts +28 -0
- package/dist/features/boulder-state/types.d.ts +28 -0
- package/dist/features/builtin-commands/commands.d.ts +2 -0
- package/dist/features/builtin-commands/index.d.ts +2 -0
- package/dist/features/builtin-commands/templates/handoff.d.ts +1 -0
- package/dist/features/builtin-commands/templates/init-deep.d.ts +1 -0
- package/dist/features/builtin-commands/templates/ralph-loop.d.ts +2 -0
- package/dist/features/builtin-commands/templates/refactor.d.ts +1 -0
- package/dist/features/builtin-commands/templates/start-work.d.ts +1 -0
- package/dist/features/builtin-commands/templates/stop-continuation.d.ts +1 -0
- package/dist/features/builtin-commands/types.d.ts +6 -0
- package/dist/features/builtin-skills/index.d.ts +2 -0
- package/dist/features/builtin-skills/skills/dev-browser.d.ts +2 -0
- package/dist/features/builtin-skills/skills/frontend-ui-ux.d.ts +2 -0
- package/dist/features/builtin-skills/skills/git-master-skill-metadata.d.ts +2 -0
- package/dist/features/builtin-skills/skills/git-master.d.ts +2 -0
- package/dist/features/builtin-skills/skills/index.d.ts +5 -0
- package/dist/features/builtin-skills/skills/playwright-cli.d.ts +10 -0
- package/dist/features/builtin-skills/skills/playwright.d.ts +3 -0
- package/dist/features/builtin-skills/skills.d.ts +20 -0
- package/dist/features/builtin-skills/types.d.ts +31 -0
- package/dist/features/claude-code-agent-loader/index.d.ts +2 -0
- package/dist/features/claude-code-agent-loader/loader.d.ts +3 -0
- package/dist/features/claude-code-agent-loader/types.d.ts +14 -0
- package/dist/features/claude-code-command-loader/index.d.ts +2 -0
- package/dist/features/claude-code-command-loader/loader.d.ts +6 -0
- package/dist/features/claude-code-command-loader/types.d.ts +42 -0
- package/dist/features/claude-code-mcp-loader/env-expander.d.ts +2 -0
- package/dist/features/claude-code-mcp-loader/index.d.ts +10 -0
- package/dist/features/claude-code-mcp-loader/loader.d.ts +4 -0
- package/dist/features/claude-code-mcp-loader/transformer.d.ts +2 -0
- package/dist/features/claude-code-mcp-loader/types.d.ts +39 -0
- package/dist/features/claude-code-plugin-loader/agent-loader.d.ts +3 -0
- package/dist/features/claude-code-plugin-loader/command-loader.d.ts +3 -0
- package/dist/features/claude-code-plugin-loader/discovery.d.ts +2 -0
- package/dist/features/claude-code-plugin-loader/hook-loader.d.ts +2 -0
- package/dist/features/claude-code-plugin-loader/index.d.ts +10 -0
- package/dist/features/claude-code-plugin-loader/loader.d.ts +20 -0
- package/dist/features/claude-code-plugin-loader/mcp-server-loader.d.ts +3 -0
- package/dist/features/claude-code-plugin-loader/plugin-path-resolver.d.ts +2 -0
- package/dist/features/claude-code-plugin-loader/skill-loader.d.ts +3 -0
- package/dist/features/claude-code-plugin-loader/types.d.ts +196 -0
- package/dist/features/claude-code-session-state/index.d.ts +1 -0
- package/dist/features/claude-code-session-state/state.d.ts +10 -0
- package/dist/features/claude-tasks/session-storage.d.ts +9 -0
- package/dist/features/claude-tasks/storage.d.ts +14 -0
- package/dist/features/claude-tasks/types.d.ts +25 -0
- package/dist/features/context-injector/collector.d.ts +11 -0
- package/dist/features/context-injector/index.d.ts +3 -0
- package/dist/features/context-injector/injector.d.ts +39 -0
- package/dist/features/context-injector/types.d.ts +83 -0
- package/dist/features/hook-message-injector/constants.d.ts +1 -0
- package/dist/features/hook-message-injector/index.d.ts +4 -0
- package/dist/features/hook-message-injector/injector.d.ts +69 -0
- package/dist/features/hook-message-injector/types.d.ts +46 -0
- package/dist/features/mcp-oauth/callback-server.d.ts +11 -0
- package/dist/features/mcp-oauth/dcr.d.ts +34 -0
- package/dist/features/mcp-oauth/discovery.d.ts +8 -0
- package/dist/features/mcp-oauth/oauth-authorization-flow.d.ts +26 -0
- package/dist/features/mcp-oauth/provider.d.ts +29 -0
- package/dist/features/mcp-oauth/resource-indicator.d.ts +2 -0
- package/dist/features/mcp-oauth/schema.d.ts +6 -0
- package/dist/features/mcp-oauth/step-up.d.ts +8 -0
- package/dist/features/mcp-oauth/storage.d.ts +17 -0
- package/dist/features/opencode-skill-loader/allowed-tools-parser.d.ts +1 -0
- package/dist/features/opencode-skill-loader/async-loader.d.ts +6 -0
- package/dist/features/opencode-skill-loader/blocking.d.ts +2 -0
- package/dist/features/opencode-skill-loader/config-source-discovery.d.ts +7 -0
- package/dist/features/opencode-skill-loader/discover-worker.d.ts +1 -0
- package/dist/features/opencode-skill-loader/git-master-template-injection.d.ts +2 -0
- package/dist/features/opencode-skill-loader/index.d.ts +15 -0
- package/dist/features/opencode-skill-loader/loaded-skill-from-path.d.ts +9 -0
- package/dist/features/opencode-skill-loader/loaded-skill-template-extractor.d.ts +2 -0
- package/dist/features/opencode-skill-loader/loader.d.ts +19 -0
- package/dist/features/opencode-skill-loader/merger/builtin-skill-converter.d.ts +3 -0
- package/dist/features/opencode-skill-loader/merger/config-skill-entry-loader.d.ts +3 -0
- package/dist/features/opencode-skill-loader/merger/scope-priority.d.ts +2 -0
- package/dist/features/opencode-skill-loader/merger/skill-definition-merger.d.ts +3 -0
- package/dist/features/opencode-skill-loader/merger/skills-config-normalizer.d.ts +11 -0
- package/dist/features/opencode-skill-loader/merger.d.ts +7 -0
- package/dist/features/opencode-skill-loader/skill-content.d.ts +5 -0
- package/dist/features/opencode-skill-loader/skill-deduplication.d.ts +2 -0
- package/dist/features/opencode-skill-loader/skill-definition-record.d.ts +3 -0
- package/dist/features/opencode-skill-loader/skill-directory-loader.d.ts +8 -0
- package/dist/features/opencode-skill-loader/skill-discovery.d.ts +4 -0
- package/dist/features/opencode-skill-loader/skill-mcp-config.d.ts +3 -0
- package/dist/features/opencode-skill-loader/skill-resolution-options.d.ts +8 -0
- package/dist/features/opencode-skill-loader/skill-template-resolver.d.ts +11 -0
- package/dist/features/opencode-skill-loader/types.d.ts +34 -0
- package/dist/features/run-continuation-state/constants.d.ts +1 -0
- package/dist/features/run-continuation-state/index.d.ts +3 -0
- package/dist/features/run-continuation-state/storage.d.ts +6 -0
- package/dist/features/run-continuation-state/types.d.ts +12 -0
- package/dist/features/skill-mcp-manager/cleanup.d.ts +8 -0
- package/dist/features/skill-mcp-manager/connection-type.d.ts +7 -0
- package/dist/features/skill-mcp-manager/connection.d.ts +15 -0
- package/dist/features/skill-mcp-manager/env-cleaner.d.ts +2 -0
- package/dist/features/skill-mcp-manager/http-client.d.ts +3 -0
- package/dist/features/skill-mcp-manager/index.d.ts +2 -0
- package/dist/features/skill-mcp-manager/manager.d.ts +21 -0
- package/dist/features/skill-mcp-manager/oauth-handler.d.ts +9 -0
- package/dist/features/skill-mcp-manager/stdio-client.d.ts +3 -0
- package/dist/features/skill-mcp-manager/types.d.ts +55 -0
- package/dist/features/task-toast-manager/index.d.ts +2 -0
- package/dist/features/task-toast-manager/manager.d.ts +64 -0
- package/dist/features/task-toast-manager/types.d.ts +25 -0
- package/dist/features/tmux-subagent/action-executor-core.d.ts +21 -0
- package/dist/features/tmux-subagent/action-executor.d.ts +20 -0
- package/dist/features/tmux-subagent/cleanup.d.ts +9 -0
- package/dist/features/tmux-subagent/decision-engine.d.ts +7 -0
- package/dist/features/tmux-subagent/event-handlers.d.ts +6 -0
- package/dist/features/tmux-subagent/grid-planning.d.ts +21 -0
- package/dist/features/tmux-subagent/index.d.ts +15 -0
- package/dist/features/tmux-subagent/manager.d.ts +68 -0
- package/dist/features/tmux-subagent/oldest-agent-pane.d.ts +7 -0
- package/dist/features/tmux-subagent/pane-split-availability.d.ts +8 -0
- package/dist/features/tmux-subagent/pane-state-querier.d.ts +2 -0
- package/dist/features/tmux-subagent/polling-constants.d.ts +3 -0
- package/dist/features/tmux-subagent/polling-manager.d.ts +13 -0
- package/dist/features/tmux-subagent/polling.d.ts +19 -0
- package/dist/features/tmux-subagent/session-created-event.d.ts +14 -0
- package/dist/features/tmux-subagent/session-created-handler.d.ts +22 -0
- package/dist/features/tmux-subagent/session-deleted-handler.d.ts +15 -0
- package/dist/features/tmux-subagent/session-message-count.d.ts +1 -0
- package/dist/features/tmux-subagent/session-ready-waiter.d.ts +7 -0
- package/dist/features/tmux-subagent/session-status-parser.d.ts +5 -0
- package/dist/features/tmux-subagent/spawn-action-decider.d.ts +4 -0
- package/dist/features/tmux-subagent/spawn-target-finder.d.ts +6 -0
- package/dist/features/tmux-subagent/tmux-grid-constants.d.ts +11 -0
- package/dist/features/tmux-subagent/types.d.ts +55 -0
- package/dist/features/tool-metadata-store/index.d.ts +2 -0
- package/dist/features/tool-metadata-store/store.d.ts +39 -0
- package/dist/hooks/agent-usage-reminder/constants.d.ts +4 -0
- package/dist/hooks/agent-usage-reminder/hook.d.ts +22 -0
- package/dist/hooks/agent-usage-reminder/index.d.ts +1 -0
- package/dist/hooks/agent-usage-reminder/storage.d.ts +4 -0
- package/dist/hooks/agent-usage-reminder/types.d.ts +6 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/aggressive-truncation-strategy.d.ts +14 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/client.d.ts +29 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/deduplication-recovery.d.ts +6 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/empty-content-recovery-sdk.d.ts +11 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/empty-content-recovery.d.ts +8 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/executor.d.ts +6 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/index.d.ts +8 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/message-builder.d.ts +7 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/message-storage-directory.d.ts +6 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/parser.d.ts +2 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/pruning-deduplication.d.ts +10 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/pruning-tool-output-truncation.d.ts +6 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/pruning-types.d.ts +36 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/recovery-hook.d.ts +14 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/recovery-strategy.d.ts +2 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/state.d.ts +6 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/storage-paths.d.ts +3 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/storage.d.ts +4 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/summarize-retry-strategy.d.ts +13 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/target-token-truncation.d.ts +5 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/tool-part-types.d.ts +39 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/tool-result-storage-sdk.d.ts +29 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/tool-result-storage.d.ts +10 -0
- package/dist/hooks/anthropic-context-window-limit-recovery/types.d.ts +38 -0
- package/dist/hooks/anthropic-effort/hook.d.ts +26 -0
- package/dist/hooks/anthropic-effort/index.d.ts +1 -0
- package/dist/hooks/auto-slash-command/constants.d.ts +5 -0
- package/dist/hooks/auto-slash-command/detector.d.ts +13 -0
- package/dist/hooks/auto-slash-command/executor.d.ts +13 -0
- package/dist/hooks/auto-slash-command/hook.d.ts +11 -0
- package/dist/hooks/auto-slash-command/index.d.ts +6 -0
- package/dist/hooks/auto-slash-command/types.d.ts +39 -0
- package/dist/hooks/auto-update-checker/cache.d.ts +3 -0
- package/dist/hooks/auto-update-checker/checker/cached-version.d.ts +1 -0
- package/dist/hooks/auto-update-checker/checker/check-for-update.d.ts +2 -0
- package/dist/hooks/auto-update-checker/checker/config-paths.d.ts +1 -0
- package/dist/hooks/auto-update-checker/checker/jsonc-strip.d.ts +1 -0
- package/dist/hooks/auto-update-checker/checker/latest-version.d.ts +1 -0
- package/dist/hooks/auto-update-checker/checker/local-dev-path.d.ts +2 -0
- package/dist/hooks/auto-update-checker/checker/local-dev-version.d.ts +1 -0
- package/dist/hooks/auto-update-checker/checker/package-json-locator.d.ts +1 -0
- package/dist/hooks/auto-update-checker/checker/pinned-version-updater.d.ts +2 -0
- package/dist/hooks/auto-update-checker/checker/plugin-entry.d.ts +7 -0
- package/dist/hooks/auto-update-checker/checker.d.ts +8 -0
- package/dist/hooks/auto-update-checker/constants.d.ts +10 -0
- package/dist/hooks/auto-update-checker/hook/background-update-check.d.ts +2 -0
- package/dist/hooks/auto-update-checker/hook/config-errors-toast.d.ts +2 -0
- package/dist/hooks/auto-update-checker/hook/connected-providers-status.d.ts +2 -0
- package/dist/hooks/auto-update-checker/hook/model-cache-warning.d.ts +2 -0
- package/dist/hooks/auto-update-checker/hook/spinner-toast.d.ts +2 -0
- package/dist/hooks/auto-update-checker/hook/startup-toasts.d.ts +3 -0
- package/dist/hooks/auto-update-checker/hook/update-toasts.d.ts +3 -0
- package/dist/hooks/auto-update-checker/hook.d.ts +10 -0
- package/dist/hooks/auto-update-checker/index.d.ts +5 -0
- package/dist/hooks/auto-update-checker/types.d.ts +25 -0
- package/dist/hooks/auto-update-checker/version-channel.d.ts +4 -0
- package/dist/hooks/background-notification/hook.d.ts +29 -0
- package/dist/hooks/background-notification/index.d.ts +2 -0
- package/dist/hooks/background-notification/types.d.ts +4 -0
- package/dist/hooks/buzhoushan/boulder-continuation-injector.d.ts +14 -0
- package/dist/hooks/buzhoushan/buzhoushan-hook.d.ts +19 -0
- package/dist/hooks/buzhoushan/event-handler.d.ts +13 -0
- package/dist/hooks/buzhoushan/hook-name.d.ts +1 -0
- package/dist/hooks/buzhoushan/index.d.ts +3 -0
- package/dist/hooks/buzhoushan/is-abort-error.d.ts +1 -0
- package/dist/hooks/buzhoushan/recent-model-resolver.d.ts +9 -0
- package/dist/hooks/buzhoushan/session-last-agent.d.ts +4 -0
- package/dist/hooks/buzhoushan/subagent-session-id.d.ts +1 -0
- package/dist/hooks/buzhoushan/system-reminder-templates.d.ts +6 -0
- package/dist/hooks/buzhoushan/tool-execute-after.d.ts +7 -0
- package/dist/hooks/buzhoushan/tool-execute-before.d.ts +12 -0
- package/dist/hooks/buzhoushan/types.d.ts +30 -0
- package/dist/hooks/buzhoushan/verification-reminders.d.ts +5 -0
- package/dist/hooks/buzhoushan/write-edit-tool-policy.d.ts +1 -0
- package/dist/hooks/buzhoushan/yugong-path.d.ts +6 -0
- package/dist/hooks/category-skill-reminder/formatter.d.ts +2 -0
- package/dist/hooks/category-skill-reminder/hook.d.ts +23 -0
- package/dist/hooks/category-skill-reminder/index.d.ts +1 -0
- package/dist/hooks/claude-code-hooks/claude-code-hooks-hook.d.ts +48 -0
- package/dist/hooks/claude-code-hooks/config-loader.d.ts +13 -0
- package/dist/hooks/claude-code-hooks/config.d.ts +3 -0
- package/dist/hooks/claude-code-hooks/dispatch-hook.d.ts +4 -0
- package/dist/hooks/claude-code-hooks/execute-http-hook.d.ts +4 -0
- package/dist/hooks/claude-code-hooks/handlers/chat-message-handler.d.ts +19 -0
- package/dist/hooks/claude-code-hooks/handlers/pre-compact-handler.d.ts +7 -0
- package/dist/hooks/claude-code-hooks/handlers/session-event-handler.d.ts +8 -0
- package/dist/hooks/claude-code-hooks/handlers/tool-execute-after-handler.d.ts +11 -0
- package/dist/hooks/claude-code-hooks/handlers/tool-execute-before-handler.d.ts +9 -0
- package/dist/hooks/claude-code-hooks/index.d.ts +1 -0
- package/dist/hooks/claude-code-hooks/plugin-config.d.ts +8 -0
- package/dist/hooks/claude-code-hooks/post-tool-use.d.ts +40 -0
- package/dist/hooks/claude-code-hooks/pre-compact.d.ts +16 -0
- package/dist/hooks/claude-code-hooks/pre-tool-use.d.ts +25 -0
- package/dist/hooks/claude-code-hooks/session-hook-state.d.ts +9 -0
- package/dist/hooks/claude-code-hooks/stop.d.ts +20 -0
- package/dist/hooks/claude-code-hooks/todo.d.ts +12 -0
- package/dist/hooks/claude-code-hooks/tool-input-cache.d.ts +5 -0
- package/dist/hooks/claude-code-hooks/transcript.d.ts +29 -0
- package/dist/hooks/claude-code-hooks/types.d.ts +191 -0
- package/dist/hooks/claude-code-hooks/user-prompt-submit.d.ts +22 -0
- package/dist/hooks/comment-checker/cli-runner.d.ts +19 -0
- package/dist/hooks/comment-checker/cli.d.ts +52 -0
- package/dist/hooks/comment-checker/downloader.d.ts +25 -0
- package/dist/hooks/comment-checker/hook.d.ts +19 -0
- package/dist/hooks/comment-checker/index.d.ts +1 -0
- package/dist/hooks/comment-checker/pending-calls.d.ts +4 -0
- package/dist/hooks/comment-checker/types.d.ts +31 -0
- package/dist/hooks/compaction-context-injector/hook.d.ts +2 -0
- package/dist/hooks/compaction-context-injector/index.d.ts +1 -0
- package/dist/hooks/compaction-todo-preserver/hook.d.ts +11 -0
- package/dist/hooks/compaction-todo-preserver/index.d.ts +2 -0
- package/dist/hooks/context-window-monitor.d.ts +22 -0
- package/dist/hooks/delegate-task-retry/guidance.d.ts +2 -0
- package/dist/hooks/delegate-task-retry/hook.d.ts +12 -0
- package/dist/hooks/delegate-task-retry/index.d.ts +4 -0
- package/dist/hooks/delegate-task-retry/patterns.d.ts +11 -0
- package/dist/hooks/directory-agents-injector/constants.d.ts +2 -0
- package/dist/hooks/directory-agents-injector/finder.d.ts +5 -0
- package/dist/hooks/directory-agents-injector/hook.d.ts +28 -0
- package/dist/hooks/directory-agents-injector/index.d.ts +1 -0
- package/dist/hooks/directory-agents-injector/injector.d.ts +16 -0
- package/dist/hooks/directory-agents-injector/storage.d.ts +1 -0
- package/dist/hooks/directory-readme-injector/constants.d.ts +2 -0
- package/dist/hooks/directory-readme-injector/finder.d.ts +5 -0
- package/dist/hooks/directory-readme-injector/hook.d.ts +28 -0
- package/dist/hooks/directory-readme-injector/index.d.ts +1 -0
- package/dist/hooks/directory-readme-injector/injector.d.ts +16 -0
- package/dist/hooks/directory-readme-injector/storage.d.ts +1 -0
- package/dist/hooks/edit-error-recovery/hook.d.ts +31 -0
- package/dist/hooks/edit-error-recovery/index.d.ts +1 -0
- package/dist/hooks/empty-task-response-detector.d.ts +12 -0
- package/dist/hooks/hashline-edit-diff-enhancer/hook.d.ts +28 -0
- package/dist/hooks/hashline-read-enhancer/hook.d.ts +18 -0
- package/dist/hooks/hashline-read-enhancer/index.d.ts +1 -0
- package/dist/hooks/index.d.ts +50 -0
- package/dist/hooks/interactive-bash-session/constants.d.ts +3 -0
- package/dist/hooks/interactive-bash-session/hook.d.ts +23 -0
- package/dist/hooks/interactive-bash-session/index.d.ts +3 -0
- package/dist/hooks/interactive-bash-session/interactive-bash-session-tracker.d.ts +21 -0
- package/dist/hooks/interactive-bash-session/parser.d.ts +26 -0
- package/dist/hooks/interactive-bash-session/state-manager.d.ts +4 -0
- package/dist/hooks/interactive-bash-session/storage.d.ts +4 -0
- package/dist/hooks/interactive-bash-session/tmux-command-parser.d.ts +4 -0
- package/dist/hooks/interactive-bash-session/types.d.ts +10 -0
- package/dist/hooks/json-error-recovery/hook.d.ts +15 -0
- package/dist/hooks/json-error-recovery/index.d.ts +1 -0
- package/dist/hooks/keyword-detector/analyze/default.d.ts +12 -0
- package/dist/hooks/keyword-detector/analyze/index.d.ts +1 -0
- package/dist/hooks/keyword-detector/constants.d.ts +10 -0
- package/dist/hooks/keyword-detector/detector.d.ts +11 -0
- package/dist/hooks/keyword-detector/hook.d.ts +20 -0
- package/dist/hooks/keyword-detector/index.d.ts +4 -0
- package/dist/hooks/keyword-detector/search/default.d.ts +12 -0
- package/dist/hooks/keyword-detector/search/index.d.ts +1 -0
- package/dist/hooks/keyword-detector/types.d.ts +4 -0
- package/dist/hooks/keyword-detector/ultrawork/default.d.ts +10 -0
- package/dist/hooks/keyword-detector/ultrawork/gemini.d.ts +17 -0
- package/dist/hooks/keyword-detector/ultrawork/gpt5.2.d.ts +15 -0
- package/dist/hooks/keyword-detector/ultrawork/index.d.ts +19 -0
- package/dist/hooks/keyword-detector/ultrawork/planner.d.ts +6 -0
- package/dist/hooks/keyword-detector/ultrawork/source-detector.d.ts +22 -0
- package/dist/hooks/model-fallback/hook.d.ts +60 -0
- package/dist/hooks/no-luban-non-gpt/hook.d.ts +20 -0
- package/dist/hooks/no-luban-non-gpt/index.d.ts +1 -0
- package/dist/hooks/no-yugong-gpt/hook.d.ts +16 -0
- package/dist/hooks/no-yugong-gpt/index.d.ts +1 -0
- package/dist/hooks/non-interactive-env/constants.d.ts +34 -0
- package/dist/hooks/non-interactive-env/detector.d.ts +1 -0
- package/dist/hooks/non-interactive-env/index.d.ts +4 -0
- package/dist/hooks/non-interactive-env/non-interactive-env-hook.d.ts +14 -0
- package/dist/hooks/non-interactive-env/types.d.ts +3 -0
- package/dist/hooks/preemptive-compaction.d.ts +35 -0
- package/dist/hooks/question-label-truncator/hook.d.ts +7 -0
- package/dist/hooks/question-label-truncator/index.d.ts +1 -0
- package/dist/hooks/ralph-loop/command-arguments.d.ts +8 -0
- package/dist/hooks/ralph-loop/completion-promise-detector.d.ts +9 -0
- package/dist/hooks/ralph-loop/constants.d.ts +5 -0
- package/dist/hooks/ralph-loop/continuation-prompt-builder.d.ts +2 -0
- package/dist/hooks/ralph-loop/continuation-prompt-injector.d.ts +8 -0
- package/dist/hooks/ralph-loop/index.d.ts +5 -0
- package/dist/hooks/ralph-loop/iteration-continuation.d.ts +12 -0
- package/dist/hooks/ralph-loop/loop-session-recovery.d.ts +7 -0
- package/dist/hooks/ralph-loop/loop-state-controller.d.ts +20 -0
- package/dist/hooks/ralph-loop/message-storage-directory.d.ts +1 -0
- package/dist/hooks/ralph-loop/ralph-loop-event-handler.d.ts +28 -0
- package/dist/hooks/ralph-loop/ralph-loop-hook.d.ts +20 -0
- package/dist/hooks/ralph-loop/session-reset-strategy.d.ts +3 -0
- package/dist/hooks/ralph-loop/storage.d.ts +6 -0
- package/dist/hooks/ralph-loop/types.d.ts +19 -0
- package/dist/hooks/ralph-loop/with-timeout.d.ts +1 -0
- package/dist/hooks/read-image-resizer/hook.d.ts +12 -0
- package/dist/hooks/read-image-resizer/image-dimensions.d.ts +2 -0
- package/dist/hooks/read-image-resizer/image-resizer.d.ts +3 -0
- package/dist/hooks/read-image-resizer/index.d.ts +1 -0
- package/dist/hooks/read-image-resizer/types.d.ts +14 -0
- package/dist/hooks/rules-injector/cache.d.ts +8 -0
- package/dist/hooks/rules-injector/constants.d.ts +7 -0
- package/dist/hooks/rules-injector/finder.d.ts +3 -0
- package/dist/hooks/rules-injector/hook.d.ts +28 -0
- package/dist/hooks/rules-injector/index.d.ts +2 -0
- package/dist/hooks/rules-injector/injector.d.ts +20 -0
- package/dist/hooks/rules-injector/matcher.d.ts +21 -0
- package/dist/hooks/rules-injector/output-path.d.ts +5 -0
- package/dist/hooks/rules-injector/parser.d.ts +18 -0
- package/dist/hooks/rules-injector/project-root-finder.d.ts +8 -0
- package/dist/hooks/rules-injector/rule-distance.d.ts +10 -0
- package/dist/hooks/rules-injector/rule-file-finder.d.ts +15 -0
- package/dist/hooks/rules-injector/rule-file-scanner.d.ts +14 -0
- package/dist/hooks/rules-injector/storage.d.ts +9 -0
- package/dist/hooks/rules-injector/types.d.ts +54 -0
- package/dist/hooks/runtime-fallback/agent-resolver.d.ts +5 -0
- package/dist/hooks/runtime-fallback/auto-retry.d.ts +10 -0
- package/dist/hooks/runtime-fallback/chat-message-handler.d.ts +20 -0
- package/dist/hooks/runtime-fallback/constants.d.ts +19 -0
- package/dist/hooks/runtime-fallback/error-classifier.d.ts +17 -0
- package/dist/hooks/runtime-fallback/event-handler.d.ts +8 -0
- package/dist/hooks/runtime-fallback/fallback-models.d.ts +2 -0
- package/dist/hooks/runtime-fallback/fallback-state.d.ts +6 -0
- package/dist/hooks/runtime-fallback/hook.d.ts +3 -0
- package/dist/hooks/runtime-fallback/index.d.ts +2 -0
- package/dist/hooks/runtime-fallback/message-update-handler.d.ts +5 -0
- package/dist/hooks/runtime-fallback/types.d.ts +59 -0
- package/dist/hooks/session-notification-formatting.d.ts +3 -0
- package/dist/hooks/session-notification-scheduler.d.ts +24 -0
- package/dist/hooks/session-notification-sender.d.ts +6 -0
- package/dist/hooks/session-notification-utils.d.ts +10 -0
- package/dist/hooks/session-notification.d.ts +23 -0
- package/dist/hooks/session-recovery/constants.d.ts +4 -0
- package/dist/hooks/session-recovery/detect-error-type.d.ts +4 -0
- package/dist/hooks/session-recovery/hook.d.ts +20 -0
- package/dist/hooks/session-recovery/index.d.ts +5 -0
- package/dist/hooks/session-recovery/recover-empty-content-message-sdk.d.ts +13 -0
- package/dist/hooks/session-recovery/recover-thinking-block-order.d.ts +5 -0
- package/dist/hooks/session-recovery/recover-thinking-disabled-violation.d.ts +5 -0
- package/dist/hooks/session-recovery/recover-tool-result-missing.d.ts +5 -0
- package/dist/hooks/session-recovery/recover-unavailable-tool.d.ts +5 -0
- package/dist/hooks/session-recovery/resume.d.ts +7 -0
- package/dist/hooks/session-recovery/storage/empty-messages.d.ts +3 -0
- package/dist/hooks/session-recovery/storage/empty-text.d.ts +7 -0
- package/dist/hooks/session-recovery/storage/message-dir.d.ts +1 -0
- package/dist/hooks/session-recovery/storage/messages-reader.d.ts +6 -0
- package/dist/hooks/session-recovery/storage/orphan-thinking-search.d.ts +2 -0
- package/dist/hooks/session-recovery/storage/part-content.d.ts +3 -0
- package/dist/hooks/session-recovery/storage/part-id.d.ts +1 -0
- package/dist/hooks/session-recovery/storage/parts-reader.d.ts +6 -0
- package/dist/hooks/session-recovery/storage/text-part-injector.d.ts +5 -0
- package/dist/hooks/session-recovery/storage/thinking-block-search.d.ts +2 -0
- package/dist/hooks/session-recovery/storage/thinking-prepend.d.ts +5 -0
- package/dist/hooks/session-recovery/storage/thinking-strip.d.ts +5 -0
- package/dist/hooks/session-recovery/storage.d.ts +20 -0
- package/dist/hooks/session-recovery/types.d.ts +91 -0
- package/dist/hooks/session-todo-status.d.ts +2 -0
- package/dist/hooks/shared/compaction-model-resolver.d.ts +5 -0
- package/dist/hooks/start-work/index.d.ts +4 -0
- package/dist/hooks/start-work/parse-user-request.d.ts +5 -0
- package/dist/hooks/start-work/start-work-hook.d.ts +16 -0
- package/dist/hooks/start-work/worktree-detector.d.ts +1 -0
- package/dist/hooks/stop-continuation-guard/hook.d.ts +21 -0
- package/dist/hooks/stop-continuation-guard/index.d.ts +2 -0
- package/dist/hooks/suirenshi-md-only/agent-matcher.d.ts +1 -0
- package/dist/hooks/suirenshi-md-only/agent-resolution.d.ts +16 -0
- package/dist/hooks/suirenshi-md-only/constants.d.ts +7 -0
- package/dist/hooks/suirenshi-md-only/hook.d.ts +11 -0
- package/dist/hooks/suirenshi-md-only/index.d.ts +2 -0
- package/dist/hooks/suirenshi-md-only/path-policy.d.ts +10 -0
- package/dist/hooks/task-reminder/hook.d.ts +19 -0
- package/dist/hooks/task-reminder/index.d.ts +1 -0
- package/dist/hooks/task-resume-info/hook.d.ts +11 -0
- package/dist/hooks/task-resume-info/index.d.ts +1 -0
- package/dist/hooks/tasks-todowrite-disabler/constants.d.ts +3 -0
- package/dist/hooks/tasks-todowrite-disabler/hook.d.ts +14 -0
- package/dist/hooks/tasks-todowrite-disabler/index.d.ts +2 -0
- package/dist/hooks/think-mode/detector.d.ts +5 -0
- package/dist/hooks/think-mode/hook.d.ts +23 -0
- package/dist/hooks/think-mode/index.d.ts +4 -0
- package/dist/hooks/think-mode/switcher.d.ts +19 -0
- package/dist/hooks/think-mode/types.d.ts +7 -0
- package/dist/hooks/thinking-block-validator/hook.d.ts +29 -0
- package/dist/hooks/thinking-block-validator/index.d.ts +1 -0
- package/dist/hooks/thinking-logger/hook.d.ts +51 -0
- package/dist/hooks/thinking-logger/index.d.ts +2 -0
- package/dist/hooks/thinking-logger/types.d.ts +80 -0
- package/dist/hooks/thinking-logger/writer.d.ts +34 -0
- package/dist/hooks/todo-continuation-enforcer/abort-detection.d.ts +4 -0
- package/dist/hooks/todo-continuation-enforcer/constants.d.ts +10 -0
- package/dist/hooks/todo-continuation-enforcer/continuation-injection.d.ts +13 -0
- package/dist/hooks/todo-continuation-enforcer/countdown.d.ts +15 -0
- package/dist/hooks/todo-continuation-enforcer/handler.d.ts +15 -0
- package/dist/hooks/todo-continuation-enforcer/idle-event.d.ts +11 -0
- package/dist/hooks/todo-continuation-enforcer/index.d.ts +4 -0
- package/dist/hooks/todo-continuation-enforcer/message-directory.d.ts +1 -0
- package/dist/hooks/todo-continuation-enforcer/non-idle-events.d.ts +6 -0
- package/dist/hooks/todo-continuation-enforcer/pending-question-detection.d.ts +14 -0
- package/dist/hooks/todo-continuation-enforcer/session-state.d.ts +10 -0
- package/dist/hooks/todo-continuation-enforcer/todo.d.ts +2 -0
- package/dist/hooks/todo-continuation-enforcer/types.d.ts +58 -0
- package/dist/hooks/tool-output-truncator.d.ts +20 -0
- package/dist/hooks/unstable-agent-babysitter/index.d.ts +2 -0
- package/dist/hooks/unstable-agent-babysitter/task-message-analyzer.d.ts +24 -0
- package/dist/hooks/unstable-agent-babysitter/unstable-agent-babysitter-hook.d.ts +71 -0
- package/dist/hooks/write-existing-file-guard/hook.d.ts +3 -0
- package/dist/hooks/write-existing-file-guard/index.d.ts +1 -0
- package/dist/hooks/yugong-junior-notepad/constants.d.ts +2 -0
- package/dist/hooks/yugong-junior-notepad/hook.d.ts +11 -0
- package/dist/hooks/yugong-junior-notepad/index.d.ts +2 -0
- package/dist/index.d.ts +32 -0
- package/dist/index.js +92487 -0
- package/dist/mcp/context7.d.ts +9 -0
- package/dist/mcp/grep-app.d.ts +6 -0
- package/dist/mcp/index.d.ts +10 -0
- package/dist/mcp/types.d.ts +9 -0
- package/dist/mcp/websearch.d.ts +11 -0
- package/dist/plugin/available-categories.d.ts +3 -0
- package/dist/plugin/chat-headers.d.ts +4 -0
- package/dist/plugin/chat-message.d.ts +31 -0
- package/dist/plugin/chat-params.d.ts +27 -0
- package/dist/plugin/event.d.ts +21 -0
- package/dist/plugin/hooks/create-continuation-hooks.d.ts +27 -0
- package/dist/plugin/hooks/create-core-hooks.d.ts +50 -0
- package/dist/plugin/hooks/create-session-hooks.d.ts +37 -0
- package/dist/plugin/hooks/create-skill-hooks.d.ts +17 -0
- package/dist/plugin/hooks/create-tool-guard-hooks.d.ts +24 -0
- package/dist/plugin/hooks/create-transform-hooks.d.ts +17 -0
- package/dist/plugin/messages-transform.d.ts +13 -0
- package/dist/plugin/recent-synthetic-idles.d.ts +6 -0
- package/dist/plugin/session-agent-resolver.d.ts +19 -0
- package/dist/plugin/session-status-normalizer.d.ts +8 -0
- package/dist/plugin/skill-context.d.ts +14 -0
- package/dist/plugin/system-transform.d.ts +10 -0
- package/dist/plugin/tool-execute-after.d.ts +12 -0
- package/dist/plugin/tool-execute-before.d.ts +12 -0
- package/dist/plugin/tool-registry.d.ts +16 -0
- package/dist/plugin/types.d.ts +18 -0
- package/dist/plugin/ultrawork-db-model-override.d.ts +11 -0
- package/dist/plugin/ultrawork-model-override.d.ts +37 -0
- package/dist/plugin/unstable-agent-babysitter.d.ts +15 -0
- package/dist/plugin-config.d.ts +5 -0
- package/dist/plugin-handlers/agent-config-handler.d.ts +11 -0
- package/dist/plugin-handlers/agent-key-remapper.d.ts +1 -0
- package/dist/plugin-handlers/agent-priority-order.d.ts +1 -0
- package/dist/plugin-handlers/category-config-resolver.d.ts +2 -0
- package/dist/plugin-handlers/command-config-handler.d.ts +10 -0
- package/dist/plugin-handlers/config-handler.d.ts +12 -0
- package/dist/plugin-handlers/index.d.ts +10 -0
- package/dist/plugin-handlers/mcp-config-handler.d.ts +7 -0
- package/dist/plugin-handlers/plan-model-inheritance.d.ts +1 -0
- package/dist/plugin-handlers/plugin-components-loader.d.ts +22 -0
- package/dist/plugin-handlers/provider-config-handler.d.ts +5 -0
- package/dist/plugin-handlers/suirenshi-agent-config-builder.d.ts +23 -0
- package/dist/plugin-handlers/tool-config-handler.d.ts +6 -0
- package/dist/plugin-interface.d.ts +21 -0
- package/dist/plugin-state.d.ts +5 -0
- package/dist/shared/agent-display-names.d.ts +17 -0
- package/dist/shared/agent-tool-restrictions.d.ts +7 -0
- package/dist/shared/agent-variant.d.ts +9 -0
- package/dist/shared/binary-downloader.d.ts +10 -0
- package/dist/shared/claude-config-dir.d.ts +1 -0
- package/dist/shared/command-executor/embedded-commands.d.ts +7 -0
- package/dist/shared/command-executor/execute-command.d.ts +1 -0
- package/dist/shared/command-executor/execute-hook-command.d.ts +12 -0
- package/dist/shared/command-executor/home-directory.d.ts +1 -0
- package/dist/shared/command-executor/resolve-commands-in-text.d.ts +1 -0
- package/dist/shared/command-executor/shell-path.d.ts +2 -0
- package/dist/shared/command-executor.d.ts +4 -0
- package/dist/shared/config-errors.d.ts +7 -0
- package/dist/shared/connected-providers-cache.d.ts +55 -0
- package/dist/shared/data-path.d.ts +47 -0
- package/dist/shared/deep-merge.d.ts +35 -0
- package/dist/shared/disabled-tools.d.ts +2 -0
- package/dist/shared/dynamic-truncator.d.ts +31 -0
- package/dist/shared/external-plugin-detector.d.ts +18 -0
- package/dist/shared/fallback-model-availability.d.ts +12 -0
- package/dist/shared/file-reference-resolver.d.ts +1 -0
- package/dist/shared/file-utils.d.ts +7 -0
- package/dist/shared/first-message-variant.d.ts +11 -0
- package/dist/shared/frontmatter.d.ts +44 -0
- package/dist/shared/git-worktree/collect-git-diff-stats.d.ts +2 -0
- package/dist/shared/git-worktree/format-file-changes.d.ts +2 -0
- package/dist/shared/git-worktree/index.d.ts +7 -0
- package/dist/shared/git-worktree/parse-diff-numstat.d.ts +2 -0
- package/dist/shared/git-worktree/parse-status-porcelain-line.d.ts +6 -0
- package/dist/shared/git-worktree/parse-status-porcelain.d.ts +2 -0
- package/dist/shared/git-worktree/types.d.ts +7 -0
- package/dist/shared/hook-disabled.d.ts +2 -0
- package/dist/shared/index.d.ts +56 -0
- package/dist/shared/internal-initiator-marker.d.ts +5 -0
- package/dist/shared/jsonc-parser.d.ts +15 -0
- package/dist/shared/logger.d.ts +27 -0
- package/dist/shared/merge-categories.d.ts +6 -0
- package/dist/shared/migration/agent-category.d.ts +19 -0
- package/dist/shared/migration/agent-names.d.ts +6 -0
- package/dist/shared/migration/config-migration.d.ts +1 -0
- package/dist/shared/migration/hook-names.d.ts +6 -0
- package/dist/shared/migration/model-versions.d.ts +13 -0
- package/dist/shared/migration.d.ts +21 -0
- package/dist/shared/model-availability.d.ts +15 -0
- package/dist/shared/model-error-classifier.d.ts +31 -0
- package/dist/shared/model-format-normalizer.d.ts +7 -0
- package/dist/shared/model-normalization.d.ts +2 -0
- package/dist/shared/model-requirements.d.ts +14 -0
- package/dist/shared/model-resolution-pipeline.d.ts +26 -0
- package/dist/shared/model-resolution-types.d.ts +23 -0
- package/dist/shared/model-resolver.d.ts +117 -0
- package/dist/shared/model-sanitizer.d.ts +3 -0
- package/dist/shared/model-suggestion-retry.d.ts +36 -0
- package/dist/shared/normalize-sdk-response.d.ts +4 -0
- package/dist/shared/opencode-config-dir-types.d.ts +13 -0
- package/dist/shared/opencode-config-dir.d.ts +8 -0
- package/dist/shared/opencode-http-api.d.ts +3 -0
- package/dist/shared/opencode-message-dir.d.ts +1 -0
- package/dist/shared/opencode-server-auth.d.ts +19 -0
- package/dist/shared/opencode-storage-detection.d.ts +2 -0
- package/dist/shared/opencode-storage-paths.d.ts +4 -0
- package/dist/shared/opencode-version.d.ts +24 -0
- package/dist/shared/pattern-matcher.d.ts +3 -0
- package/dist/shared/permission-compat.d.ts +27 -0
- package/dist/shared/plugin-command-discovery.d.ts +6 -0
- package/dist/shared/port-utils.d.ts +9 -0
- package/dist/shared/prompt-timeout-context.d.ts +12 -0
- package/dist/shared/prompt-tools.d.ts +3 -0
- package/dist/shared/provider-model-id-transform.d.ts +1 -0
- package/dist/shared/record-type-guard.d.ts +1 -0
- package/dist/shared/safe-create-hook.d.ts +5 -0
- package/dist/shared/session-category-registry.d.ts +32 -0
- package/dist/shared/session-cursor.d.ts +13 -0
- package/dist/shared/session-directory-resolver.d.ts +7 -0
- package/dist/shared/session-injected-paths.d.ts +10 -0
- package/dist/shared/session-model-state.d.ts +7 -0
- package/dist/shared/session-tools-store.d.ts +4 -0
- package/dist/shared/session-utils.d.ts +2 -0
- package/dist/shared/shell-env.d.ts +41 -0
- package/dist/shared/skill-path-resolver.d.ts +9 -0
- package/dist/shared/snake-case.d.ts +5 -0
- package/dist/shared/spawn-with-windows-hide.d.ts +15 -0
- package/dist/shared/system-directive.d.ts +45 -0
- package/dist/shared/tmux/constants.d.ts +5 -0
- package/dist/shared/tmux/index.d.ts +3 -0
- package/dist/shared/tmux/tmux-utils/environment.d.ts +3 -0
- package/dist/shared/tmux/tmux-utils/layout.d.ts +18 -0
- package/dist/shared/tmux/tmux-utils/pane-close.d.ts +1 -0
- package/dist/shared/tmux/tmux-utils/pane-dimensions.d.ts +5 -0
- package/dist/shared/tmux/tmux-utils/pane-replace.d.ts +3 -0
- package/dist/shared/tmux/tmux-utils/pane-spawn.d.ts +4 -0
- package/dist/shared/tmux/tmux-utils/server-health.d.ts +2 -0
- package/dist/shared/tmux/tmux-utils.d.ts +9 -0
- package/dist/shared/tmux/types.d.ts +4 -0
- package/dist/shared/tool-name.d.ts +1 -0
- package/dist/shared/truncate-description.d.ts +1 -0
- package/dist/shared/zip-extractor.d.ts +1 -0
- package/dist/tools/ast-grep/cli-binary-path-resolution.d.ts +5 -0
- package/dist/tools/ast-grep/cli.d.ts +12 -0
- package/dist/tools/ast-grep/constants.d.ts +5 -0
- package/dist/tools/ast-grep/downloader.d.ts +5 -0
- package/dist/tools/ast-grep/environment-check.d.ts +20 -0
- package/dist/tools/ast-grep/index.d.ts +5 -0
- package/dist/tools/ast-grep/language-support.d.ts +6 -0
- package/dist/tools/ast-grep/process-output-timeout.d.ts +12 -0
- package/dist/tools/ast-grep/result-formatter.d.ts +5 -0
- package/dist/tools/ast-grep/sg-cli-path.d.ts +3 -0
- package/dist/tools/ast-grep/sg-compact-json-output.d.ts +2 -0
- package/dist/tools/ast-grep/tools.d.ts +11 -0
- package/dist/tools/ast-grep/types.d.ts +58 -0
- package/dist/tools/background-task/clients.d.ts +45 -0
- package/dist/tools/background-task/constants.d.ts +3 -0
- package/dist/tools/background-task/create-background-cancel.d.ts +4 -0
- package/dist/tools/background-task/create-background-output.d.ts +3 -0
- package/dist/tools/background-task/create-background-task.d.ts +3 -0
- package/dist/tools/background-task/delay.d.ts +1 -0
- package/dist/tools/background-task/full-session-format.d.ts +9 -0
- package/dist/tools/background-task/index.d.ts +3 -0
- package/dist/tools/background-task/message-dir.d.ts +1 -0
- package/dist/tools/background-task/session-messages.d.ts +3 -0
- package/dist/tools/background-task/task-result-format.d.ts +3 -0
- package/dist/tools/background-task/task-status-format.d.ts +2 -0
- package/dist/tools/background-task/time-format.d.ts +2 -0
- package/dist/tools/background-task/tools.d.ts +12 -0
- package/dist/tools/background-task/truncate-text.d.ts +1 -0
- package/dist/tools/background-task/types.d.ts +90 -0
- package/dist/tools/call-omo-agent/background-agent-executor.d.ts +5 -0
- package/dist/tools/call-omo-agent/background-executor.d.ts +13 -0
- package/dist/tools/call-omo-agent/completion-poller.d.ts +11 -0
- package/dist/tools/call-omo-agent/constants.d.ts +2 -0
- package/dist/tools/call-omo-agent/index.d.ts +3 -0
- package/dist/tools/call-omo-agent/message-dir.d.ts +1 -0
- package/dist/tools/call-omo-agent/message-processor.d.ts +2 -0
- package/dist/tools/call-omo-agent/message-storage-directory.d.ts +1 -0
- package/dist/tools/call-omo-agent/session-creator.d.ts +15 -0
- package/dist/tools/call-omo-agent/subagent-session-creator.d.ts +10 -0
- package/dist/tools/call-omo-agent/sync-executor.d.ts +21 -0
- package/dist/tools/call-omo-agent/tool-context-with-metadata.d.ts +10 -0
- package/dist/tools/call-omo-agent/tools.d.ts +27 -0
- package/dist/tools/call-omo-agent/types.d.ts +34 -0
- package/dist/tools/delegate-task/available-models.d.ts +2 -0
- package/dist/tools/delegate-task/background-continuation.d.ts +3 -0
- package/dist/tools/delegate-task/background-task.d.ts +8 -0
- package/dist/tools/delegate-task/categories.d.ts +17 -0
- package/dist/tools/delegate-task/category-resolver.d.ts +20 -0
- package/dist/tools/delegate-task/constants.d.ts +42 -0
- package/dist/tools/delegate-task/error-formatting.d.ts +15 -0
- package/dist/tools/delegate-task/executor-types.d.ts +52 -0
- package/dist/tools/delegate-task/executor.d.ts +11 -0
- package/dist/tools/delegate-task/index.d.ts +4 -0
- package/dist/tools/delegate-task/model-selection.d.ts +11 -0
- package/dist/tools/delegate-task/model-string-parser.d.ts +7 -0
- package/dist/tools/delegate-task/parent-context-resolver.d.ts +4 -0
- package/dist/tools/delegate-task/prompt-builder.d.ts +6 -0
- package/dist/tools/delegate-task/skill-resolver.d.ts +11 -0
- package/dist/tools/delegate-task/subagent-resolver.d.ts +13 -0
- package/dist/tools/delegate-task/sync-continuation-deps.d.ts +7 -0
- package/dist/tools/delegate-task/sync-continuation.d.ts +4 -0
- package/dist/tools/delegate-task/sync-prompt-sender.d.ts +22 -0
- package/dist/tools/delegate-task/sync-result-fetcher.d.ts +8 -0
- package/dist/tools/delegate-task/sync-session-creator.d.ts +14 -0
- package/dist/tools/delegate-task/sync-session-poller.d.ts +12 -0
- package/dist/tools/delegate-task/sync-task-deps.d.ts +11 -0
- package/dist/tools/delegate-task/sync-task.d.ts +9 -0
- package/dist/tools/delegate-task/time-formatter.d.ts +4 -0
- package/dist/tools/delegate-task/timing.d.ts +13 -0
- package/dist/tools/delegate-task/token-limiter.d.ts +4 -0
- package/dist/tools/delegate-task/tools.d.ts +42 -0
- package/dist/tools/delegate-task/types.d.ts +83 -0
- package/dist/tools/delegate-task/unstable-agent-task.d.ts +7 -0
- package/dist/tools/delegate-task/yugong-junior-agent.d.ts +1 -0
- package/dist/tools/glob/cli.d.ts +11 -0
- package/dist/tools/glob/constants.d.ts +6 -0
- package/dist/tools/glob/index.d.ts +1 -0
- package/dist/tools/glob/result-formatter.d.ts +2 -0
- package/dist/tools/glob/tools.d.ts +23 -0
- package/dist/tools/glob/types.d.ts +21 -0
- package/dist/tools/grep/cli.d.ts +3 -0
- package/dist/tools/grep/constants.d.ts +18 -0
- package/dist/tools/grep/downloader.d.ts +3 -0
- package/dist/tools/grep/index.d.ts +1 -0
- package/dist/tools/grep/result-formatter.d.ts +3 -0
- package/dist/tools/grep/tools.d.ts +25 -0
- package/dist/tools/grep/types.d.ts +39 -0
- package/dist/tools/hashline-edit/autocorrect-replacement-lines.d.ts +6 -0
- package/dist/tools/hashline-edit/constants.d.ts +4 -0
- package/dist/tools/hashline-edit/diff-utils.d.ts +6 -0
- package/dist/tools/hashline-edit/edit-deduplication.d.ts +5 -0
- package/dist/tools/hashline-edit/edit-operation-primitives.d.ts +10 -0
- package/dist/tools/hashline-edit/edit-operations.d.ts +8 -0
- package/dist/tools/hashline-edit/edit-ordering.d.ts +4 -0
- package/dist/tools/hashline-edit/edit-text-normalization.d.ts +7 -0
- package/dist/tools/hashline-edit/file-text-canonicalization.d.ts +7 -0
- package/dist/tools/hashline-edit/hash-computation.d.ts +10 -0
- package/dist/tools/hashline-edit/hashline-chunk-formatter.d.ts +10 -0
- package/dist/tools/hashline-edit/hashline-edit-diff.d.ts +1 -0
- package/dist/tools/hashline-edit/hashline-edit-executor.d.ts +10 -0
- package/dist/tools/hashline-edit/index.d.ts +7 -0
- package/dist/tools/hashline-edit/normalize-edits.d.ts +10 -0
- package/dist/tools/hashline-edit/tool-description.d.ts +1 -0
- package/dist/tools/hashline-edit/tools.d.ts +21 -0
- package/dist/tools/hashline-edit/types.d.ts +17 -0
- package/dist/tools/hashline-edit/validation.d.ts +20 -0
- package/dist/tools/index.d.ts +21 -0
- package/dist/tools/interactive-bash/constants.d.ts +3 -0
- package/dist/tools/interactive-bash/index.d.ts +3 -0
- package/dist/tools/interactive-bash/tmux-path-resolver.d.ts +3 -0
- package/dist/tools/interactive-bash/tools.d.ts +23 -0
- package/dist/tools/look-at/assistant-message-extractor.d.ts +1 -0
- package/dist/tools/look-at/constants.d.ts +2 -0
- package/dist/tools/look-at/image-converter.d.ts +7 -0
- package/dist/tools/look-at/index.d.ts +3 -0
- package/dist/tools/look-at/look-at-arguments.d.ts +6 -0
- package/dist/tools/look-at/mime-type-inference.d.ts +3 -0
- package/dist/tools/look-at/multimodal-agent-metadata.d.ts +11 -0
- package/dist/tools/look-at/session-poller.d.ts +8 -0
- package/dist/tools/look-at/tools.d.ts +11 -0
- package/dist/tools/look-at/types.d.ts +5 -0
- package/dist/tools/lsp/client.d.ts +3 -0
- package/dist/tools/lsp/config.d.ts +3 -0
- package/dist/tools/lsp/constants.d.ts +5 -0
- package/dist/tools/lsp/diagnostics-tool.d.ts +2 -0
- package/dist/tools/lsp/find-references-tool.d.ts +2 -0
- package/dist/tools/lsp/goto-definition-tool.d.ts +2 -0
- package/dist/tools/lsp/index.d.ts +22 -0
- package/dist/tools/lsp/language-config.d.ts +1 -0
- package/dist/tools/lsp/language-mappings.d.ts +3 -0
- package/dist/tools/lsp/lsp-client-connection.d.ts +4 -0
- package/dist/tools/lsp/lsp-client-transport.d.ts +20 -0
- package/dist/tools/lsp/lsp-client-wrapper.d.ts +8 -0
- package/dist/tools/lsp/lsp-client.d.ts +17 -0
- package/dist/tools/lsp/lsp-formatters.d.ts +13 -0
- package/dist/tools/lsp/lsp-manager-process-cleanup.d.ts +15 -0
- package/dist/tools/lsp/lsp-manager-temp-directory-cleanup.d.ts +8 -0
- package/dist/tools/lsp/lsp-process.d.ts +29 -0
- package/dist/tools/lsp/lsp-server.d.ts +24 -0
- package/dist/tools/lsp/rename-tools.d.ts +3 -0
- package/dist/tools/lsp/server-config-loader.d.ts +25 -0
- package/dist/tools/lsp/server-definitions.d.ts +3 -0
- package/dist/tools/lsp/server-installation.d.ts +1 -0
- package/dist/tools/lsp/server-resolution.d.ts +15 -0
- package/dist/tools/lsp/symbols-tool.d.ts +2 -0
- package/dist/tools/lsp/tools.d.ts +5 -0
- package/dist/tools/lsp/types.d.ts +123 -0
- package/dist/tools/lsp/workspace-edit.d.ts +8 -0
- package/dist/tools/session-manager/constants.d.ts +9 -0
- package/dist/tools/session-manager/index.d.ts +3 -0
- package/dist/tools/session-manager/session-formatter.d.ts +11 -0
- package/dist/tools/session-manager/storage.d.ts +15 -0
- package/dist/tools/session-manager/tools.d.ts +27 -0
- package/dist/tools/session-manager/types.d.ts +89 -0
- package/dist/tools/shared/semaphore.d.ts +14 -0
- package/dist/tools/skill/constants.d.ts +3 -0
- package/dist/tools/skill/index.d.ts +3 -0
- package/dist/tools/skill/tools.d.ts +12 -0
- package/dist/tools/skill/types.d.ts +37 -0
- package/dist/tools/skill-mcp/constants.d.ts +3 -0
- package/dist/tools/skill-mcp/index.d.ts +3 -0
- package/dist/tools/skill-mcp/tools.d.ts +23 -0
- package/dist/tools/skill-mcp/types.d.ts +8 -0
- package/dist/tools/slashcommand/command-discovery.d.ts +6 -0
- package/dist/tools/slashcommand/command-output-formatter.d.ts +3 -0
- package/dist/tools/slashcommand/index.d.ts +10 -0
- package/dist/tools/slashcommand/types.d.ts +18 -0
- package/dist/tools/task/index.d.ts +15 -0
- package/dist/tools/task/task-create.d.ts +4 -0
- package/dist/tools/task/task-get.d.ts +3 -0
- package/dist/tools/task/task-list.d.ts +3 -0
- package/dist/tools/task/task-update.d.ts +4 -0
- package/dist/tools/task/todo-sync.d.ts +16 -0
- package/dist/tools/task/types.d.ts +97 -0
- package/package.json +78 -0
- package/postinstall.mjs +59 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const INIT_DEEP_TEMPLATE = "# /init-deep\n\n\u751F\u6210\u5B8C\u6574\u7684\u9879\u76EE\u6587\u6863\u7ED3\u6784\uFF0C\u5305\u62EC\u9700\u6C42\u6587\u6863\u3001\u6280\u672F\u6587\u6863\u548C\u53D8\u66F4\u5386\u53F2\u3002\n\n## \u4F7F\u7528\u65B9\u6CD5\n\n```\n/init-deep # \u66F4\u65B0\u6A21\u5F0F\uFF1A\u4FEE\u6539\u73B0\u6709\u6587\u4EF6 + \u6709\u5FC5\u8981\u65F6\u521B\u5EFA\u65B0\u6587\u4EF6\n/init-deep --create-new # \u8BFB\u53D6\u73B0\u6709\u6587\u4EF6 \u2192 \u5220\u9664\u6240\u6709 \u2192 \u91CD\u65B0\u751F\u6210\n/init-deep --max-depth=2 # \u9650\u5236\u76EE\u5F55\u6DF1\u5EA6\uFF08\u9ED8\u8BA4\uFF1A3\uFF09\n```\n\n---\n\n## \u5DE5\u4F5C\u6D41\u7A0B\uFF08\u6982\u89C8\uFF09\n\n1. **\u53D1\u73B0 + \u5206\u6790**\uFF08\u5E76\u884C\uFF09\n - \u7ACB\u5373\u542F\u52A8\u540E\u53F0 xuxiake \u667A\u80FD\u4F53\n - \u4E3B\u4F1A\u8BDD\uFF1Abash \u7ED3\u6784\u5206\u6790 + LSP \u4EE3\u7801\u5730\u56FE + \u8BFB\u53D6\u73B0\u6709\u6587\u6863\n2. **\u83DC\u5355\u7ED3\u6784\u8BC6\u522B** - \u5206\u6790\u9879\u76EE\u7ED3\u6784\uFF0C\u8BC6\u522B 3 \u5C42\u83DC\u5355\u7ED3\u6784\n3. **\u751F\u6210** - \u751F\u6210 docs \u76EE\u5F55\u7ED3\u6784\uFF0C\u5305\u62EC\u9700\u6C42\u6587\u6863\u3001\u6280\u672F\u6587\u6863\u548C\u53D8\u66F4\u5386\u53F2\n4. **\u5BA1\u6838** - \u53BB\u91CD\u3001\u88C1\u526A\u3001\u9A8C\u8BC1\n\n<critical>\n**TodoWrite \u6807\u8BB0\u6240\u6709\u9636\u6BB5\u3002\u5B9E\u65F6\u6807\u8BB0 in_progress \u2192 completed\u3002**\n```\nTodoWrite([\n { id: \"discovery\", content: \"\u542F\u52A8 xuxiake \u667A\u80FD\u4F53 + LSP \u4EE3\u7801\u5730\u56FE + \u8BFB\u53D6\u73B0\u6709\u6587\u6863\", status: \"pending\", priority: \"high\" },\n { id: \"menu-analysis\", content: \"\u5206\u6790\u9879\u76EE\u7ED3\u6784\uFF0C\u8BC6\u522B 3 \u5C42\u83DC\u5355\u7ED3\u6784\", status: \"pending\", priority: \"high\" },\n { id: \"generate-docs\", content: \"\u751F\u6210 docs \u76EE\u5F55\u7ED3\u6784\u548C\u6587\u6863\u6587\u4EF6\", status: \"pending\", priority: \"high\" },\n { id: \"review\", content: \"\u53BB\u91CD\u3001\u9A8C\u8BC1\u3001\u88C1\u526A\", status: \"pending\", priority: \"medium\" }\n])\n```\n</critical>\n\n---\n\n## \u7B2C\u4E00\u9636\u6BB5\uFF1A\u53D1\u73B0 + \u5206\u6790\uFF08\u5E76\u884C\uFF09\n\n**\u6807\u8BB0 \"discovery\" \u4E3A in_progress\u3002**\n\n### \u7ACB\u5373\u542F\u52A8\u540E\u53F0 xuxiake \u667A\u80FD\u4F53\n\n\u4E0D\u8981\u7B49\u5F85\u2014\u2014\u8FD9\u4E9B\u667A\u80FD\u4F53\u5F02\u6B65\u8FD0\u884C\uFF0C\u540C\u65F6\u4E3B\u4F1A\u8BDD\u7EE7\u7EED\u5DE5\u4F5C\u3002\n\n```\n// \u540C\u65F6\u542F\u52A8\u6240\u6709\u4EFB\u52A1\uFF0C\u7A0D\u540E\u6536\u96C6\u7ED3\u679C\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"xuxiake \u9879\u76EE\u7ED3\u6784\", run_in_background=true, prompt=\"\u9879\u76EE\u7ED3\u6784\uFF1A\u9884\u6D4B\u68C0\u6D4B\u5230\u7684\u8BED\u8A00\u7684\u6807\u51C6\u6A21\u5F0F \u2192 \u4EC5\u62A5\u544A\u5F02\u5E38\")\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"\u67E5\u627E\u5165\u53E3\u70B9\", run_in_background=true, prompt=\"\u5165\u53E3\u70B9\uFF1A\u67E5\u627E\u4E3B\u6587\u4EF6 \u2192 \u62A5\u544A\u975E\u6807\u51C6\u7EC4\u7EC7\u65B9\u5F0F\")\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"\u67E5\u627E\u89C4\u8303\", run_in_background=true, prompt=\"\u89C4\u8303\uFF1A\u67E5\u627E\u914D\u7F6E\u6587\u4EF6\uFF08.eslintrc\u3001pyproject.toml\u3001.editorconfig\uFF09\u2192 \u62A5\u544A\u9879\u76EE\u7279\u5B9A\u89C4\u5219\")\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"\u67E5\u627E\u53CD\u6A21\u5F0F\", run_in_background=true, prompt=\"\u53CD\u6A21\u5F0F\uFF1A\u67E5\u627E 'DO NOT'\u3001'NEVER'\u3001'ALWAYS'\u3001'DEPRECATED' \u6CE8\u91CA \u2192 \u5217\u51FA\u7981\u6B62\u7684\u6A21\u5F0F\")\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"xuxiake \u6784\u5EFA/CI\", run_in_background=true, prompt=\"\u6784\u5EFA/CI\uFF1A\u67E5\u627E .github/workflows\u3001Makefile \u2192 \u62A5\u544A\u975E\u6807\u51C6\u6A21\u5F0F\")\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"\u67E5\u627E\u6D4B\u8BD5\u6A21\u5F0F\", run_in_background=true, prompt=\"\u6D4B\u8BD5\u6A21\u5F0F\uFF1A\u67E5\u627E\u6D4B\u8BD5\u914D\u7F6E\u3001\u6D4B\u8BD5\u7ED3\u6784 \u2192 \u62A5\u544A\u72EC\u7279\u7684\u7EA6\u5B9A\")\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"\u5206\u6790\u83DC\u5355\u7ED3\u6784\", run_in_background=true, prompt=\"\u83DC\u5355\u7ED3\u6784\uFF1A\u5206\u6790\u9879\u76EE\u4E2D\u7684\u8DEF\u7531\u3001\u7EC4\u4EF6\u3001\u9875\u9762\u5B9A\u4E49 \u2192 \u8BC6\u522B 3 \u5C42\u83DC\u5355\u7ED3\u6784\")\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"\u5206\u6790\u524D\u7AEF\u7EC4\u4EF6\", run_in_background=true, prompt=\"\u524D\u7AEF\u7EC4\u4EF6\uFF1A\u8BC6\u522B\u6240\u6709 UI \u7EC4\u4EF6\u3001\u6309\u94AE\u3001\u5B57\u6BB5\u5B9A\u4E49 \u2192 \u63D0\u53D6\u63A7\u4EF6\u4FE1\u606F\")\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"\u5206\u6790\u540E\u7AEF\u63A5\u53E3\", run_in_background=true, prompt=\"\u540E\u7AEF\u63A5\u53E3\uFF1A\u8BC6\u522B API \u63A5\u53E3\u3001\u6570\u636E\u6A21\u578B\u3001\u4E1A\u52A1\u903B\u8F91 \u2192 \u63D0\u53D6\u529F\u80FD\u9700\u6C42\")\n```\n\n<dynamic-agents>\n**\u52A8\u6001\u667A\u80FD\u4F53\u751F\u6210**\uFF1Abash \u5206\u6790\u540E\uFF0C\u6839\u636E\u9879\u76EE\u89C4\u6A21\u751F\u6210\u989D\u5916\u7684 xuxiake \u667A\u80FD\u4F53\uFF1A\n\n| \u56E0\u7D20 | \u9608\u503C | \u989D\u5916\u667A\u80FD\u4F53 |\n|--------|-----------|-------------------|\n| **\u6587\u4EF6\u603B\u6570** | >100 | \u6BCF 100 \u4E2A\u6587\u4EF6 +1 |\n| **\u4EE3\u7801\u603B\u884C\u6570** | >10k | \u6BCF 10k \u884C +1 |\n| **\u76EE\u5F55\u6DF1\u5EA6** | \u22654 | \u6DF1\u5EA6\u63A2\u7D22 +2 |\n| **\u5927\u6587\u4EF6\uFF08>500 \u884C\uFF09** | >10 \u4E2A\u6587\u4EF6 | \u590D\u6742\u5EA6\u70ED\u70B9 +1 |\n| **Monorepo** | \u68C0\u6D4B\u5230 | \u6BCF\u4E2A\u5305/\u5DE5\u4F5C\u533A +1 |\n| **\u591A\u8BED\u8A00** | >1 | \u6BCF\u79CD\u8BED\u8A00 +1 |\n\n```bash\n# \u9996\u5148\u6D4B\u91CF\u9879\u76EE\u89C4\u6A21\ntotal_files=$(find . -type f -not -path '*/node_modules/*' -not -path '*/.git/*' | wc -l)\ntotal_lines=$(find . -type f \\( -name \"*.ts\" -o -name \"*.py\" -o -name \"*.go\" \\) -not -path '*/node_modules/*' -exec wc -l {} + 2>/dev/null | tail -1 | awk '{print $1}')\nlarge_files=$(find . -type f \\( -name \"*.ts\" -o -name \"*.py\" \\) -not -path '*/node_modules/*' -exec wc -l {} + 2>/dev/null | awk '$1 > 500 {count++} END {print count+0}')\nmax_depth=$(find . -type d -not -path '*/node_modules/*' -not -path '*/.git/*' | awk -F/ '{print NF}' | sort -rn | head -1)\n```\n\n\u751F\u6210\u793A\u4F8B\uFF1A\n```\n// 500 \u4E2A\u6587\u4EF6\uFF0C50k \u884C\uFF0C\u6DF1\u5EA6 6\uFF0C15 \u4E2A\u5927\u6587\u4EF6 \u2192 \u751F\u6210 5+5+2+1 = 13 \u4E2A\u989D\u5916\u667A\u80FD\u4F53\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"\u5206\u6790\u5927\u6587\u4EF6\", run_in_background=true, prompt=\"\u5927\u6587\u4EF6\u5206\u6790\uFF1A\u67E5\u627E >500 \u884C\u7684\u6587\u4EF6\uFF0C\u62A5\u544A\u590D\u6742\u5EA6\u70ED\u70B9\")\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"xuxiake \u6DF1\u5EA6\u6A21\u5757\", run_in_background=true, prompt=\"\u6DF1\u5EA6\u6A21\u5757\uFF084+ \u5C42\uFF09\uFF1A\u67E5\u627E\u9690\u85CF\u6A21\u5F0F\u3001\u5185\u90E8\u7EA6\u5B9A\")\ntask(subagent_type=\"xuxiake\", load_skills=[], description=\"\u67E5\u627E\u5171\u4EAB\u5DE5\u5177\", run_in_background=true, prompt=\"\u6A2A\u5207\u5173\u6CE8\u70B9\uFF1A\u67E5\u627E\u8DE8\u76EE\u5F55\u7684\u5171\u4EAB\u5DE5\u5177\")\n// ... \u6839\u636E\u8BA1\u7B97\u7EE7\u7EED\n```\n</dynamic-agents>\n\n### \u4E3B\u4F1A\u8BDD\uFF1A\u5E76\u884C\u5206\u6790\n\n**\u540E\u53F0\u667A\u80FD\u4F53\u8FD0\u884C\u65F6**\uFF0C\u4E3B\u4F1A\u8BDD\u6267\u884C\u4EE5\u4E0B\u64CD\u4F5C\uFF1A\n\n#### 1. Bash \u7ED3\u6784\u5206\u6790\n```bash\n# \u76EE\u5F55\u6DF1\u5EA6 + \u6587\u4EF6\u6570\u91CF\nfind . -type d -not -path '*/\\.*' -not -path '*/node_modules/*' -not -path '*/venv/*' -not -path '*/dist/*' -not -path '*/build/*' | awk -F/ '{print NF-1}' | sort -n | uniq -c\n\n# \u6BCF\u4E2A\u76EE\u5F55\u7684\u6587\u4EF6\u6570\uFF08\u524D 30\uFF09\nfind . -type f -not -path '*/\\.*' -not -path '*/node_modules/*' | sed 's|/[^/]*$||' | sort | uniq -c | sort -rn | head -30\n\n# \u6309\u6269\u5C55\u540D\u7EDF\u8BA1\u4EE3\u7801\u5206\u5E03\nfind . -type f \\( -name \"*.py\" -o -name \"*.ts\" -o -name \"*.tsx\" -o -name \"*.js\" -o -name \"*.go\" -o -name \"*.rs\" \\) -not -path '*/node_modules/*' | sed 's|/[^/]*$||' | sort | uniq -c | sort -rn | head -20\n\n# \u73B0\u6709\u7684\u6587\u6863\u6587\u4EF6\nfind . -type f \\( -name \"*.md\" \\) -path '*/docs/*' -not -path '*/node_modules/*' 2>/dev/null\n```\n\n#### 2. \u8BFB\u53D6\u73B0\u6709\u6587\u6863\n```\n\u5BF9\u4E8E\u627E\u5230\u7684\u6BCF\u4E2A\u6587\u6863\u6587\u4EF6\uFF1A\n Read(filePath=file)\n \u63D0\u53D6\uFF1A\u5173\u952E\u4FE1\u606F\u3001\u7ED3\u6784\u3001\u5185\u5BB9\n \u5B58\u50A8\u5230 EXISTING_DOCS \u6620\u5C04\n```\n\n\u5982\u679C\u4F7F\u7528 `--create-new`\uFF1A\u9996\u5148\u8BFB\u53D6\u6240\u6709\u73B0\u6709\u6587\u4EF6\uFF08\u4FDD\u7559\u4E0A\u4E0B\u6587\uFF09\u2192 \u7136\u540E\u5220\u9664\u6240\u6709 \u2192 \u91CD\u65B0\u751F\u6210\u3002\n\n#### 3. LSP \u4EE3\u7801\u5730\u56FE\uFF08\u5982\u6709\uFF09\n```\nLspServers() # \u68C0\u67E5\u53EF\u7528\u6027\n\n# \u5165\u53E3\u70B9\uFF08\u5E76\u884C\uFF09\nLspDocumentSymbols(filePath=\"src/index.ts\")\nLspDocumentSymbols(filePath=\"main.py\")\n\n# \u5173\u952E\u7B26\u53F7\uFF08\u5E76\u884C\uFF09\nLspWorkspaceSymbols(filePath=\".\", query=\"class\")\nLspWorkspaceSymbols(filePath=\".\", query=\"interface\")\nLspWorkspaceSymbols(filePath=\".\", query=\"function\")\n\n# \u6838\u5FC3\u5BFC\u51FA\u7684\u5F15\u7528\u4E2D\u5FC3\u6027\nLspFindReferences(filePath=\"...\", line=X, character=Y)\n```\n\n**LSP \u964D\u7EA7\u65B9\u6848**\uFF1A\u5982\u4E0D\u53EF\u7528\uFF0C\u4F7F\u7528 xuxiake \u667A\u80FD\u4F53 + AST-grep\u3002\n\n### \u6536\u96C6\u540E\u53F0\u7ED3\u679C\n\n```\n// \u4E3B\u4F1A\u8BDD\u5206\u6790\u5B8C\u6210\u540E\uFF0C\u6536\u96C6\u6240\u6709\u4EFB\u52A1\u7ED3\u679C\nfor each task_id: background_output(task_id=\"...\")\n```\n\n**\u5408\u5E76\uFF1Abash + LSP + \u73B0\u6709\u6587\u4EF6 + xuxiake \u53D1\u73B0\u7ED3\u679C\u3002\u6807\u8BB0 \"discovery\" \u4E3A\u5DF2\u5B8C\u6210\u3002**\n\n---\n\n## \u7B2C\u4E8C\u9636\u6BB5\uFF1A\u83DC\u5355\u7ED3\u6784\u8BC6\u522B\n\n**\u6807\u8BB0 \"menu-analysis\" \u4E3A in_progress\u3002**\n\n### 3 \u5C42\u83DC\u5355\u7ED3\u6784\u8BC6\u522B\n\n\u57FA\u4E8E\u5206\u6790\u7ED3\u679C\uFF0C\u8BC6\u522B\u9879\u76EE\u7684 3 \u5C42\u83DC\u5355\u7ED3\u6784\uFF1A\n\n```\nMENU_STRUCTURE = [\n {\n \"level1\": \"\u7CFB\u7EDF\u7BA1\u7406\",\n \"level2\": [\n {\n \"name\": \"\u7528\u6237\u7BA1\u7406\",\n \"level3\": [\"\u7528\u6237\u5217\u8868\", \"\u89D2\u8272\u7BA1\u7406\", \"\u6743\u9650\u8BBE\u7F6E\"]\n },\n {\n \"name\": \"\u914D\u7F6E\u7BA1\u7406\",\n \"level3\": [\"\u7CFB\u7EDF\u914D\u7F6E\", \"\u53C2\u6570\u8BBE\u7F6E\"]\n }\n ]\n },\n {\n \"level1\": \"\u4E1A\u52A1\u529F\u80FD\",\n \"level2\": [\n {\n \"name\": \"\u9879\u76EE\u7BA1\u7406\",\n \"level3\": [\"\u9879\u76EE\u5217\u8868\", \"\u9879\u76EE\u8BE6\u60C5\", \"\u9879\u76EE\u8BBE\u7F6E\"]\n }\n ]\n }\n]\n```\n\n### \u6587\u6863\u76EE\u5F55\u7ED3\u6784\u751F\u6210\n\n\u57FA\u4E8E\u83DC\u5355\u7ED3\u6784\uFF0C\u751F\u6210 docs \u76EE\u5F55\u7ED3\u6784\uFF1A\n\n```\ndocs/\n\u251C\u2500\u2500 01_\u9700\u6C42\u6587\u6863/\n\u2502 \u251C\u2500\u2500 \u7CFB\u7EDF\u7BA1\u7406/\n\u2502 \u2502 \u251C\u2500\u2500 \u7528\u6237\u7BA1\u7406/\n\u2502 \u2502 \u2502 \u251C\u2500\u2500 \u7528\u6237\u5217\u8868.md\n\u2502 \u2502 \u2502 \u251C\u2500\u2500 \u89D2\u8272\u7BA1\u7406.md\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 \u6743\u9650\u8BBE\u7F6E.md\n\u2502 \u2502 \u2514\u2500\u2500 \u914D\u7F6E\u7BA1\u7406/\n\u2502 \u2502 \u251C\u2500\u2500 \u7CFB\u7EDF\u914D\u7F6E.md\n\u2502 \u2502 \u2514\u2500\u2500 \u53C2\u6570\u8BBE\u7F6E.md\n\u2502 \u2514\u2500\u2500 \u4E1A\u52A1\u529F\u80FD/\n\u2502 \u2514\u2500\u2500 \u9879\u76EE\u7BA1\u7406/\n\u2502 \u251C\u2500\u2500 \u9879\u76EE\u5217\u8868.md\n\u2502 \u251C\u2500\u2500 \u9879\u76EE\u8BE6\u60C5.md\n\u2502 \u2514\u2500\u2500 \u9879\u76EE\u8BBE\u7F6E.md\n\u251C\u2500\u2500 02_\u6280\u672F\u6587\u6863/\n\u2502 \u251C\u2500\u2500 01_\u67B6\u6784/\n\u2502 \u2502 \u251C\u2500\u2500 01_\u524D\u7AEF\u67B6\u6784.md\n\u2502 \u2502 \u2514\u2500\u2500 02_\u540E\u7AEF\u67B6\u6784.md\n\u2502 \u2514\u2500\u2500 02_\u89C4\u8303/\n\u2502 \u251C\u2500\u2500 01_\u524D\u7AEF\u89C4\u8303.md\n\u2502 \u251C\u2500\u2500 02_\u540E\u7AEF\u89C4\u8303.md\n\u2502 \u2514\u2500\u2500 03_\u6570\u636E\u89C4\u8303.md\n\u2514\u2500\u2500 03_\u53D8\u66F4\u5386\u53F2.md\n```\n\n**\u6807\u8BB0 \"menu-analysis\" \u4E3A\u5DF2\u5B8C\u6210\u3002**\n\n---\n\n## \u7B2C\u4E09\u9636\u6BB5\uFF1A\u751F\u6210\u6587\u6863\n\n**\u6807\u8BB0 \"generate-docs\" \u4E3A in_progress\u3002**\n\n<critical>\n**\u6587\u4EF6\u5199\u5165\u89C4\u5219**\uFF1A\u5982\u679C\u76EE\u6807\u8DEF\u5F84\u5DF2\u5B58\u5728\u6587\u4EF6 \u2192 \u4F7F\u7528 `Edit` \u5DE5\u5177\u3002\u5982\u679C\u4E0D\u5B58\u5728 \u2192 \u4F7F\u7528 `Write` \u5DE5\u5177\u3002\n\u6C38\u8FDC\u4E0D\u8981\u4F7F\u7528 Write \u8986\u76D6\u73B0\u6709\u6587\u4EF6\u3002\u59CB\u7EC8\u5148\u901A\u8FC7 `Read` \u6216\u53D1\u73B0\u7ED3\u679C\u68C0\u67E5\u662F\u5426\u5B58\u5728\u3002\n</critical>\n\n### 1. \u751F\u6210\u9700\u6C42\u6587\u6863\n\n\u4E3A\u6BCF\u4E2A\u83DC\u5355\u9879\u751F\u6210\u6807\u51C6\u9700\u6C42\u6587\u6863\uFF1A\n\n```markdown\n# {\u83DC\u5355\u9879\u540D\u79F0}\n\n## \u9700\u6C42\u63CF\u8FF0\n{\u8BE6\u7EC6\u63CF\u8FF0\u8BE5\u529F\u80FD\u7684\u4E1A\u52A1\u9700\u6C42}\n\n## \u529F\u80FD\u8BF4\u660E\n{\u8BE6\u7EC6\u8BF4\u660E\u529F\u80FD\u7684\u5177\u4F53\u5B9E\u73B0\u548C\u4F7F\u7528\u65B9\u5F0F}\n\n## \u65F6\u5E8F\u56FE\n```mermaid\nsequenceDiagram\n participant \u7528\u6237\n participant \u524D\u7AEF\n participant \u540E\u7AEF\n participant \u6570\u636E\u5E93\n\n \u7528\u6237->>\u524D\u7AEF: \u64CD\u4F5C\u8BF7\u6C42\n \u524D\u7AEF->>\u540E\u7AEF: API\u8C03\u7528\n \u540E\u7AEF->>\u6570\u636E\u5E93: \u6570\u636E\u64CD\u4F5C\n \u6570\u636E\u5E93-->>\u540E\u7AEF: \u8FD4\u56DE\u6570\u636E\n \u540E\u7AEF-->>\u524D\u7AEF: \u8FD4\u56DE\u7ED3\u679C\n \u524D\u7AEF-->>\u7528\u6237: \u5C55\u793A\u7ED3\u679C\n```\n\n## \u63A7\u4EF6\u5B9A\u4E49\n\n### \u6309\u94AE\n| \u6309\u94AE\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u4F4D\u7F6E | \u72B6\u6001 |\n|----------|----------|------|------|\n| \u4FDD\u5B58 | \u4FDD\u5B58\u5F53\u524D\u6570\u636E | \u9875\u9762\u5E95\u90E8 | \u542F\u7528/\u7981\u7528 |\n| \u53D6\u6D88 | \u53D6\u6D88\u64CD\u4F5C | \u9875\u9762\u5E95\u90E8 | \u59CB\u7EC8\u542F\u7528 |\n| \u65B0\u589E | \u65B0\u589E\u8BB0\u5F55 | \u9875\u9762\u9876\u90E8 | \u59CB\u7EC8\u542F\u7528 |\n| \u5220\u9664 | \u5220\u9664\u8BB0\u5F55 | \u64CD\u4F5C\u5217 | \u4EC5\u9009\u4E2D\u65F6\u542F\u7528 |\n\n### \u5B57\u6BB5\n| \u5B57\u6BB5\u540D\u79F0 | \u7C7B\u578B | \u957F\u5EA6 | \u662F\u5426\u5FC5\u586B | \u63CF\u8FF0 |\n|----------|------|------|----------|------|\n| \u540D\u79F0 | \u6587\u672C | 50 | \u662F | \u8BB0\u5F55\u540D\u79F0 |\n| \u72B6\u6001 | \u4E0B\u62C9 | - | \u662F | \u8BB0\u5F55\u72B6\u6001 |\n| \u521B\u5EFA\u65F6\u95F4 | \u65E5\u671F\u65F6\u95F4 | - | \u5426 | \u81EA\u52A8\u751F\u6210 |\n\n## \u89C4\u5219\u8BF4\u660E\n{\u8BE6\u7EC6\u8BF4\u660E\u4E1A\u52A1\u89C4\u5219\u548C\u9A8C\u8BC1\u903B\u8F91}\n\n## \u5904\u7406\u6B65\u9AA4\n1. \u6B65\u9AA4\u4E00\uFF1A{\u8BE6\u7EC6\u63CF\u8FF0}\n2. \u6B65\u9AA4\u4E8C\uFF1A{\u8BE6\u7EC6\u63CF\u8FF0}\n3. \u6B65\u9AA4\u4E09\uFF1A{\u8BE6\u7EC6\u63CF\u8FF0}\n4. \u6B65\u9AA4\u56DB\uFF1A{\u8BE6\u7EC6\u63CF\u8FF0}\n```\n\n### 2. \u751F\u6210\u6280\u672F\u6587\u6863\n\n#### \u524D\u7AEF\u67B6\u6784\u6587\u6863\n```markdown\n# \u524D\u7AEF\u67B6\u6784\n\n## \u6280\u672F\u6808\n- \u6846\u67B6\uFF1A{\u6846\u67B6\u540D\u79F0}\n- \u8BED\u8A00\uFF1A{\u8BED\u8A00\u540D\u79F0}\n- \u72B6\u6001\u7BA1\u7406\uFF1A{\u72B6\u6001\u7BA1\u7406\u5E93}\n- \u8DEF\u7531\uFF1A{\u8DEF\u7531\u5E93}\n- UI \u7EC4\u4EF6\uFF1A{UI\u7EC4\u4EF6\u5E93}\n\n## \u76EE\u5F55\u7ED3\u6784\n```\nsrc/\n\u251C\u2500\u2500 components/ # \u901A\u7528\u7EC4\u4EF6\n\u251C\u2500\u2500 pages/ # \u9875\u9762\u7EC4\u4EF6\n\u251C\u2500\u2500 router/ # \u8DEF\u7531\u914D\u7F6E\n\u251C\u2500\u2500 store/ # \u72B6\u6001\u7BA1\u7406\n\u251C\u2500\u2500 services/ # API \u670D\u52A1\n\u2514\u2500\u2500 utils/ # \u5DE5\u5177\u51FD\u6570\n```\n\n## \u6838\u5FC3\u6A21\u5757\n| \u6A21\u5757\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u4F4D\u7F6E | \u5F15\u7528 |\n|----------|----------|------|------|\n| \u8BA4\u8BC1\u6A21\u5757 | \u7528\u6237\u767B\u5F55\u3001\u6743\u9650\u9A8C\u8BC1 | src/services/auth.ts | {\u5F15\u7528\u6B21\u6570} |\n| \u8DEF\u7531\u6A21\u5757 | \u9875\u9762\u8DEF\u7531\u7BA1\u7406 | src/router/index.ts | {\u5F15\u7528\u6B21\u6570} |\n| \u72B6\u6001\u7BA1\u7406 | \u5168\u5C40\u72B6\u6001\u7BA1\u7406 | src/store/index.ts | {\u5F15\u7528\u6B21\u6570} |\n\n## \u5173\u952E\u6D41\u7A0B\n{\u8BE6\u7EC6\u63CF\u8FF0\u524D\u7AEF\u5173\u952E\u4E1A\u52A1\u6D41\u7A0B}\n\n## \u6027\u80FD\u4F18\u5316\n{\u8BE6\u7EC6\u63CF\u8FF0\u524D\u7AEF\u6027\u80FD\u4F18\u5316\u7B56\u7565}\n```\n\n#### \u540E\u7AEF\u67B6\u6784\u6587\u6863\n```markdown\n# \u540E\u7AEF\u67B6\u6784\n\n## \u6280\u672F\u6808\n- \u8BED\u8A00\uFF1A{\u8BED\u8A00\u540D\u79F0}\n- \u6846\u67B6\uFF1A{\u6846\u67B6\u540D\u79F0}\n- \u6570\u636E\u5E93\uFF1A{\u6570\u636E\u5E93\u540D\u79F0}\n- \u7F13\u5B58\uFF1A{\u7F13\u5B58\u6280\u672F}\n- \u8BA4\u8BC1\uFF1A{\u8BA4\u8BC1\u65B9\u5F0F}\n\n## \u76EE\u5F55\u7ED3\u6784\n```\nbackend/\n\u251C\u2500\u2500 app/ # \u5E94\u7528\u4EE3\u7801\n\u2502 \u251C\u2500\u2500 api/ # API \u63A5\u53E3\n\u2502 \u251C\u2500\u2500 services/ # \u4E1A\u52A1\u903B\u8F91\n\u2502 \u251C\u2500\u2500 models/ # \u6570\u636E\u6A21\u578B\n\u2502 \u2514\u2500\u2500 schemas/ # \u6570\u636E\u9A8C\u8BC1\n\u251C\u2500\u2500 config/ # \u914D\u7F6E\u6587\u4EF6\n\u2514\u2500\u2500 utils/ # \u5DE5\u5177\u51FD\u6570\n```\n\n## \u6838\u5FC3\u6A21\u5757\n| \u6A21\u5757\u540D\u79F0 | \u529F\u80FD\u63CF\u8FF0 | \u4F4D\u7F6E | \u5F15\u7528 |\n|----------|----------|------|------|\n| API \u6A21\u5757 | \u63A5\u53E3\u5B9A\u4E49\u548C\u5904\u7406 | app/api/ | {\u5F15\u7528\u6B21\u6570} |\n| \u670D\u52A1\u6A21\u5757 | \u4E1A\u52A1\u903B\u8F91\u5904\u7406 | app/services/ | {\u5F15\u7528\u6B21\u6570} |\n| \u6A21\u578B\u6A21\u5757 | \u6570\u636E\u6A21\u578B\u5B9A\u4E49 | app/models/ | {\u5F15\u7528\u6B21\u6570} |\n\n## \u5173\u952E\u6D41\u7A0B\n{\u8BE6\u7EC6\u63CF\u8FF0\u540E\u7AEF\u5173\u952E\u4E1A\u52A1\u6D41\u7A0B}\n\n## \u6027\u80FD\u4F18\u5316\n{\u8BE6\u7EC6\u63CF\u8FF0\u540E\u7AEF\u6027\u80FD\u4F18\u5316\u7B56\u7565}\n```\n\n#### \u524D\u7AEF\u89C4\u8303\u6587\u6863\n```markdown\n# \u524D\u7AEF\u89C4\u8303\n\n## \u4EE3\u7801\u98CE\u683C\n- \u7F29\u8FDB\uFF1A{\u7F29\u8FDB\u65B9\u5F0F}\n- \u547D\u540D\uFF1A{\u547D\u540D\u89C4\u8303}\n- \u6CE8\u91CA\uFF1A{\u6CE8\u91CA\u89C4\u8303}\n- \u4EE3\u7801\u7EC4\u7EC7\uFF1A{\u4EE3\u7801\u7EC4\u7EC7\u65B9\u5F0F}\n\n## \u7EC4\u4EF6\u5F00\u53D1\u89C4\u8303\n- \u7EC4\u4EF6\u547D\u540D\uFF1A{\u547D\u540D\u89C4\u8303}\n- \u7EC4\u4EF6\u7ED3\u6784\uFF1A{\u7ED3\u6784\u89C4\u8303}\n- \u7EC4\u4EF6\u901A\u4FE1\uFF1A{\u901A\u4FE1\u65B9\u5F0F}\n- \u7EC4\u4EF6\u6D4B\u8BD5\uFF1A{\u6D4B\u8BD5\u89C4\u8303}\n\n## \u4EE3\u7801\u8D28\u91CF\n- ESLint \u89C4\u5219\uFF1A{\u89C4\u5219\u8BF4\u660E}\n- \u4EE3\u7801\u5BA1\u67E5\uFF1A{\u5BA1\u67E5\u6D41\u7A0B}\n- \u6D4B\u8BD5\u8986\u76D6\u7387\uFF1A{\u8986\u76D6\u7387\u8981\u6C42}\n\n## \u6700\u4F73\u5B9E\u8DF5\n{\u8BE6\u7EC6\u63CF\u8FF0\u524D\u7AEF\u5F00\u53D1\u6700\u4F73\u5B9E\u8DF5}\n```\n\n#### \u540E\u7AEF\u89C4\u8303\u6587\u6863\n```markdown\n# \u540E\u7AEF\u89C4\u8303\n\n## \u4EE3\u7801\u98CE\u683C\n- \u7F29\u8FDB\uFF1A{\u7F29\u8FDB\u65B9\u5F0F}\n- \u547D\u540D\uFF1A{\u547D\u540D\u89C4\u8303}\n- \u6CE8\u91CA\uFF1A{\u6CE8\u91CA\u89C4\u8303}\n- \u4EE3\u7801\u7EC4\u7EC7\uFF1A{\u4EE3\u7801\u7EC4\u7EC7\u65B9\u5F0F}\n\n## API \u89C4\u8303\n- \u63A5\u53E3\u547D\u540D\uFF1A{\u547D\u540D\u89C4\u8303}\n- \u8BF7\u6C42\u65B9\u6CD5\uFF1A{\u65B9\u6CD5\u89C4\u8303}\n- \u54CD\u5E94\u683C\u5F0F\uFF1A{\u683C\u5F0F\u89C4\u8303}\n- \u9519\u8BEF\u5904\u7406\uFF1A{\u5904\u7406\u89C4\u8303}\n\n## \u6570\u636E\u5E93\u89C4\u8303\n- \u8868\u547D\u540D\uFF1A{\u547D\u540D\u89C4\u8303}\n- \u5B57\u6BB5\u547D\u540D\uFF1A{\u547D\u540D\u89C4\u8303}\n- \u7D22\u5F15\u8BBE\u8BA1\uFF1A{\u8BBE\u8BA1\u89C4\u8303}\n- \u4E8B\u52A1\u5904\u7406\uFF1A{\u5904\u7406\u89C4\u8303}\n\n## \u4EE3\u7801\u8D28\u91CF\n- \u4EE3\u7801\u5BA1\u67E5\uFF1A{\u5BA1\u67E5\u6D41\u7A0B}\n- \u6D4B\u8BD5\u8986\u76D6\u7387\uFF1A{\u8986\u76D6\u7387\u8981\u6C42}\n- \u6027\u80FD\u6D4B\u8BD5\uFF1A{\u6D4B\u8BD5\u8981\u6C42}\n\n## \u6700\u4F73\u5B9E\u8DF5\n{\u8BE6\u7EC6\u63CF\u8FF0\u540E\u7AEF\u5F00\u53D1\u6700\u4F73\u5B9E\u8DF5}\n```\n\n#### \u6570\u636E\u89C4\u8303\u6587\u6863\n```markdown\n# \u6570\u636E\u89C4\u8303\n\n## \u6570\u636E\u6A21\u578B\n| \u8868\u540D | \u63CF\u8FF0 | \u5173\u952E\u5B57\u6BB5 |\n|------|------|----------|\n| users | \u7528\u6237\u8868 | id, username, email |\n| roles | \u89D2\u8272\u8868 | id, name, description |\n| permissions | \u6743\u9650\u8868 | id, name, code |\n\n## \u6570\u636E\u5B57\u5178\n| \u5B57\u6BB5\u540D | \u7C7B\u578B | \u957F\u5EA6 | \u63CF\u8FF0 | \u679A\u4E3E\u503C |\n|--------|------|------|------|--------|\n| status | \u6574\u6570 | 1 | \u72B6\u6001 | 0=\u7981\u7528, 1=\u542F\u7528 |\n| type | \u5B57\u7B26\u4E32 | 20 | \u7C7B\u578B | admin, user, guest |\n\n## \u6570\u636E\u4F20\u8F93\u5BF9\u8C61\n{\u8BE6\u7EC6\u63CF\u8FF0 DTO \u7ED3\u6784}\n\n## \u6570\u636E\u9A8C\u8BC1\n{\u8BE6\u7EC6\u63CF\u8FF0\u6570\u636E\u9A8C\u8BC1\u89C4\u5219}\n```\n\n### 3. \u751F\u6210\u53D8\u66F4\u5386\u53F2\n\n```markdown\n# \u53D8\u66F4\u5386\u53F2\n\n## \u7248\u672C 1.0.0\n\n### \u65B0\u589E\u529F\u80FD\n- \u521D\u59CB\u5316\u9879\u76EE\u7ED3\u6784\n- \u5B9E\u73B0\u7528\u6237\u7BA1\u7406\u529F\u80FD\n- \u5B9E\u73B0\u914D\u7F6E\u7BA1\u7406\u529F\u80FD\n\n### \u4FEE\u590D\u95EE\u9898\n- \u4FEE\u590D\u767B\u5F55\u9A8C\u8BC1\u95EE\u9898\n- \u4FEE\u590D\u6570\u636E\u5C55\u793A\u95EE\u9898\n\n### \u4F18\u5316\u6539\u8FDB\n- \u4F18\u5316\u524D\u7AEF\u6027\u80FD\n- \u4F18\u5316\u540E\u7AEF\u54CD\u5E94\u901F\u5EA6\n\n## \u7248\u672C 1.0.1\n\n### \u4FEE\u590D\u95EE\u9898\n- \u4FEE\u590D\u6743\u9650\u9A8C\u8BC1\u95EE\u9898\n- \u4FEE\u590D\u6570\u636E\u540C\u6B65\u95EE\u9898\n```\n\n### 4. \u5E76\u884C\u751F\u6210\u6587\u6863\n\n```\n// \u521B\u5EFA docs \u76EE\u5F55\nRunCommand(command=\"mkdir -p docs/01_\u9700\u6C42\u6587\u6863 docs/02_\u6280\u672F\u6587\u6863/01_\u67B6\u6784 docs/02_\u6280\u672F\u6587\u6863/02_\u89C4\u8303\", blocking=true, requires_approval=false)\n\n// \u751F\u6210\u9700\u6C42\u6587\u6863\nfor each menu in MENU_STRUCTURE:\n level1_path = \"docs/01_\u9700\u6C42\u6587\u6863/\" + menu.level1\n RunCommand(command=\"mkdir -p \" + level1_path, blocking=true, requires_approval=false)\n \n for each level2 in menu.level2:\n level2_path = level1_path + \"/\" + level2.name\n RunCommand(command=\"mkdir -p \" + level2_path, blocking=true, requires_approval=false)\n \n for each level3 in level2.level3:\n file_path = level2_path + \"/\" + level3 + \".md\"\n Write(file_path=file_path, content=generate_requirement_doc(level3))\n\n// \u751F\u6210\u6280\u672F\u6587\u6863\nWrite(file_path=\"docs/02_\u6280\u672F\u6587\u6863/01_\u67B6\u6784/01_\u524D\u7AEF\u67B6\u6784.md\", content=generate_frontend_architecture_doc())\nWrite(file_path=\"docs/02_\u6280\u672F\u6587\u6863/01_\u67B6\u6784/02_\u540E\u7AEF\u67B6\u6784.md\", content=generate_backend_architecture_doc())\nWrite(file_path=\"docs/02_\u6280\u672F\u6587\u6863/02_\u89C4\u8303/01_\u524D\u7AEF\u89C4\u8303.md\", content=generate_frontend_spec_doc())\nWrite(file_path=\"docs/02_\u6280\u672F\u6587\u6863/02_\u89C4\u8303/02_\u540E\u7AEF\u89C4\u8303.md\", content=generate_backend_spec_doc())\nWrite(file_path=\"docs/02_\u6280\u672F\u6587\u6863/02_\u89C4\u8303/03_\u6570\u636E\u89C4\u8303.md\", content=generate_data_spec_doc())\n\n// \u751F\u6210\u53D8\u66F4\u5386\u53F2\nWrite(file_path=\"docs/03_\u53D8\u66F4\u5386\u53F2.md\", content=generate_change_history_doc())\n\n// \u751F\u6210 docs \u76EE\u5F55\u603B\u89C8\u6587\u4EF6\nWrite(file_path=\"docs/README.md\", content=generate_docs_index())\n```\n\n### 5. \u751F\u6210 docs \u76EE\u5F55\u603B\u89C8\u6587\u4EF6\n\n```markdown\n# \u9879\u76EE\u6587\u6863\u76EE\u5F55\n\n> \u672C\u76EE\u5F55\u7531 `/init-deep` \u547D\u4EE4\u81EA\u52A8\u751F\u6210\uFF0C\u5305\u542B\u9879\u76EE\u7684\u5B8C\u6574\u6587\u6863\u7ED3\u6784\u3002\n\n## \u76EE\u5F55\u7ED3\u6784\n\n```\ndocs/\n\u251C\u2500\u2500 01_\u9700\u6C42\u6587\u6863/ # \u529F\u80FD\u9700\u6C42\u6587\u6863\uFF0C\u6309\u83DC\u5355\u7ED3\u6784\u7EC4\u7EC7\n\u2502 \u2514\u2500\u2500 {\u4E00\u7EA7\u83DC\u5355}/\n\u2502 \u2514\u2500\u2500 {\u4E8C\u7EA7\u83DC\u5355}/\n\u2502 \u2514\u2500\u2500 {\u529F\u80FD}.md\n\u251C\u2500\u2500 02_\u6280\u672F\u6587\u6863/ # \u6280\u672F\u67B6\u6784\u4E0E\u89C4\u8303\u6587\u6863\n\u2502 \u251C\u2500\u2500 01_\u67B6\u6784/ # \u7CFB\u7EDF\u67B6\u6784\u8BBE\u8BA1\n\u2502 \u2502 \u251C\u2500\u2500 01_\u524D\u7AEF\u67B6\u6784.md\n\u2502 \u2502 \u2514\u2500\u2500 02_\u540E\u7AEF\u67B6\u6784.md\n\u2502 \u2514\u2500\u2500 02_\u89C4\u8303/ # \u5F00\u53D1\u89C4\u8303\u4E0E\u6807\u51C6\n\u2502 \u251C\u2500\u2500 01_\u524D\u7AEF\u89C4\u8303.md\n\u2502 \u251C\u2500\u2500 02_\u540E\u7AEF\u89C4\u8303.md\n\u2502 \u2514\u2500\u2500 03_\u6570\u636E\u89C4\u8303.md\n\u251C\u2500\u2500 03_\u53D8\u66F4\u5386\u53F2.md # \u7248\u672C\u53D8\u66F4\u8BB0\u5F55\n\u2514\u2500\u2500 README.md # \u672C\u6587\u4EF6\uFF0C\u76EE\u5F55\u8BF4\u660E\n```\n\n## \u6587\u6863\u8BF4\u660E\n\n### 01_\u9700\u6C42\u6587\u6863\n\n\u5B58\u653E\u5404\u529F\u80FD\u6A21\u5757\u7684\u9700\u6C42\u6587\u6863\uFF0C\u91C7\u7528\u4E09\u5C42\u83DC\u5355\u7ED3\u6784\u7EC4\u7EC7\uFF1A\n- **\u4E00\u7EA7\u76EE\u5F55**\uFF1A\u5BF9\u5E94\u7CFB\u7EDF\u4E3B\u8981\u529F\u80FD\u6A21\u5757\uFF08\u5982\uFF1A\u7CFB\u7EDF\u7BA1\u7406\u3001\u4E1A\u52A1\u529F\u80FD\uFF09\n- **\u4E8C\u7EA7\u76EE\u5F55**\uFF1A\u5BF9\u5E94\u529F\u80FD\u5206\u7EC4\uFF08\u5982\uFF1A\u7528\u6237\u7BA1\u7406\u3001\u914D\u7F6E\u7BA1\u7406\uFF09\n- **\u6587\u4EF6**\uFF1A\u5177\u4F53\u529F\u80FD\u9700\u6C42\u6587\u6863\n\n\u6BCF\u4E2A\u9700\u6C42\u6587\u6863\u5305\u542B\uFF1A\n- \u9700\u6C42\u63CF\u8FF0\n- \u529F\u80FD\u8BF4\u660E\n- \u65F6\u5E8F\u56FE\n- \u63A7\u4EF6\u5B9A\u4E49\uFF08\u6309\u94AE\u3001\u5B57\u6BB5\uFF09\n- \u89C4\u5219\u8BF4\u660E\n- \u5904\u7406\u6B65\u9AA4\n\n### 02_\u6280\u672F\u6587\u6863\n\n\u5B58\u653E\u6280\u672F\u67B6\u6784\u548C\u5F00\u53D1\u89C4\u8303\u76F8\u5173\u6587\u6863\uFF1A\n\n| \u76EE\u5F55 | \u5185\u5BB9 |\n|------|------|\n| **01_\u67B6\u6784/** | \u524D\u540E\u7AEF\u67B6\u6784\u8BBE\u8BA1\u3001\u6280\u672F\u9009\u578B\u3001\u6838\u5FC3\u6A21\u5757\u8BF4\u660E |\n| **02_\u89C4\u8303/** | \u4EE3\u7801\u98CE\u683C\u3001API \u89C4\u8303\u3001\u6570\u636E\u5E93\u89C4\u8303\u3001\u6700\u4F73\u5B9E\u8DF5 |\n\n### 03_\u53D8\u66F4\u5386\u53F2\n\n\u8BB0\u5F55\u9879\u76EE\u5404\u7248\u672C\u7684\u53D8\u66F4\u5185\u5BB9\uFF1A\n- \u65B0\u589E\u529F\u80FD\n- \u4FEE\u590D\u95EE\u9898\n- \u4F18\u5316\u6539\u8FDB\n- \u7834\u574F\u6027\u53D8\u66F4\uFF08\u5982\u6709\uFF09\n\n## \u4F7F\u7528\u6307\u5357\n\n1. **\u67E5\u9605\u9700\u6C42**\uFF1A\u8FDB\u5165 `01_\u9700\u6C42\u6587\u6863/` \u6309\u83DC\u5355\u8DEF\u5F84\u67E5\u627E\n2. **\u4E86\u89E3\u67B6\u6784**\uFF1A\u9605\u8BFB `02_\u6280\u672F\u6587\u6863/01_\u67B6\u6784/` \u4E0B\u7684\u6587\u6863\n3. **\u9075\u5FAA\u89C4\u8303**\uFF1A\u5F00\u53D1\u524D\u67E5\u9605 `02_\u6280\u672F\u6587\u6863/02_\u89C4\u8303/` \u4E0B\u7684\u89C4\u8303\u6587\u6863\n4. **\u8FFD\u8E2A\u53D8\u66F4**\uFF1A\u67E5\u770B `03_\u53D8\u66F4\u5386\u53F2.md` \u4E86\u89E3\u9879\u76EE\u6F14\u8FDB\n\n## \u7EF4\u62A4\u8BF4\u660E\n\n- \u672C\u76EE\u5F55\u7531 `/init-deep` \u547D\u4EE4\u81EA\u52A8\u751F\u6210\u548C\u7EF4\u62A4\n- \u4F7F\u7528 `/init-deep` \u66F4\u65B0\u6A21\u5F0F\u53EF\u589E\u91CF\u66F4\u65B0\u73B0\u6709\u6587\u6863\n- \u4F7F\u7528 `/init-deep --create-new` \u53EF\u91CD\u65B0\u751F\u6210\u5168\u90E8\u6587\u6863\n- \u624B\u52A8\u4FEE\u6539\u7684\u6587\u6863\u5728\u66F4\u65B0\u6A21\u5F0F\u4E0B\u4F1A\u88AB\u4FDD\u7559\n\n---\n\n*\u6700\u540E\u66F4\u65B0\uFF1A{\u751F\u6210\u65E5\u671F}*\n```\n\n**\u7B49\u5F85\u5168\u90E8\u5B8C\u6210\u3002\u6807\u8BB0 \"generate-docs\" \u4E3A\u5DF2\u5B8C\u6210\u3002**\n\n---\n\n## \u7B2C\u56DB\u9636\u6BB5\uFF1A\u5BA1\u6838 & \u53BB\u91CD\n\n**\u6807\u8BB0 \"review\" \u4E3A in_progress\u3002**\n\n\u5BF9\u4E8E\u6BCF\u4E2A\u751F\u6210\u7684\u6587\u4EF6\uFF1A\n- \u79FB\u9664\u901A\u7528\u5185\u5BB9\n- \u79FB\u9664\u91CD\u590D\u5185\u5BB9\n- \u88C1\u526A\u81F3\u5408\u9002\u957F\u5EA6\n- \u9A8C\u8BC1\u6587\u6863\u683C\u5F0F\n- \u786E\u4FDD\u5185\u5BB9\u51C6\u786E\u6027\n\n**\u6807\u8BB0 \"review\" \u4E3A\u5DF2\u5B8C\u6210\u3002**\n\n---\n\n## \u6700\u7EC8\u62A5\u544A\n\n```\n=== init-deep \u5B8C\u6210 ===\n\n\u6A21\u5F0F\uFF1A{update | create-new}\n\n\u751F\u6210\u7684\u6587\u6863\u7ED3\u6784\uFF1A\n [OK] docs/01_\u9700\u6C42\u6587\u6863/\n [OK] docs/02_\u6280\u672F\u6587\u6863/\n [OK] docs/03_\u53D8\u66F4\u5386\u53F2.md\n\n\u751F\u6210\u7684\u9700\u6C42\u6587\u6863\u6570\uFF1A{N}\n\u751F\u6210\u7684\u6280\u672F\u6587\u6863\u6570\uFF1A{N}\n\n\u76EE\u5F55\u7ED3\u6784\uFF1A\n docs/\n \u251C\u2500\u2500 01_\u9700\u6C42\u6587\u6863/\n \u2502 \u251C\u2500\u2500 {\u4E00\u7EA7\u83DC\u53551}/\n \u2502 \u2502 \u251C\u2500\u2500 {\u4E8C\u7EA7\u83DC\u53551}/\n \u2502 \u2502 \u2502 \u2514\u2500\u2500 {\u4E09\u7EA7\u83DC\u53551}.md\n \u2502 \u2502 \u2514\u2500\u2500 {\u4E8C\u7EA7\u83DC\u53552}/\n \u2502 \u2502 \u2514\u2500\u2500 {\u4E09\u7EA7\u83DC\u53552}.md\n \u2502 \u2514\u2500\u2500 {\u4E00\u7EA7\u83DC\u53552}/\n \u2502 \u2514\u2500\u2500 {\u4E8C\u7EA7\u83DC\u53553}/\n \u2502 \u2514\u2500\u2500 {\u4E09\u7EA7\u83DC\u53553}.md\n \u251C\u2500\u2500 02_\u6280\u672F\u6587\u6863/\n \u2502 \u251C\u2500\u2500 01_\u67B6\u6784/\n \u2502 \u2502 \u251C\u2500\u2500 01_\u524D\u7AEF\u67B6\u6784.md\n \u2502 \u2502 \u2514\u2500\u2500 02_\u540E\u7AEF\u67B6\u6784.md\n \u2502 \u2514\u2500\u2500 02_\u89C4\u8303/\n \u2502 \u251C\u2500\u2500 01_\u524D\u7AEF\u89C4\u8303.md\n \u2502 \u251C\u2500\u2500 02_\u540E\u7AEF\u89C4\u8303.md\n \u2502 \u2514\u2500\u2500 03_\u6570\u636E\u89C4\u8303.md\n \u2514\u2500\u2500 03_\u53D8\u66F4\u5386\u53F2.md\n```\n\n---\n\n## \u53CD\u6A21\u5F0F\n\n- **\u9759\u6001\u6587\u6863\u7ED3\u6784**\uFF1A\u5FC5\u987B\u6839\u636E\u9879\u76EE\u5B9E\u9645\u83DC\u5355\u7ED3\u6784\u52A8\u6001\u751F\u6210\n- **\u987A\u5E8F\u6267\u884C**\uFF1A\u5FC5\u987B\u5E76\u884C\uFF08xuxiake + LSP \u5E76\u884C\u8FD0\u884C\uFF09\n- **\u5FFD\u7565\u73B0\u6709\u6587\u4EF6**\uFF1A\u59CB\u7EC8\u5148\u8BFB\u53D6\u73B0\u6709\u6587\u4EF6\uFF0C\u5373\u4F7F\u4F7F\u7528 --create-new\n- **\u8FC7\u5EA6\u6587\u6863\u5316**\uFF1A\u4E0D\u662F\u6BCF\u4E2A\u83DC\u5355\u9879\u90FD\u9700\u8981\u8BE6\u7EC6\u6587\u6863\n- **\u5197\u4F59**\uFF1A\u907F\u514D\u91CD\u590D\u5185\u5BB9\uFF0C\u4FDD\u6301\u6587\u6863\u7B80\u6D01\n- **\u901A\u7528\u5185\u5BB9**\uFF1A\u79FB\u9664\u9002\u7528\u4E8E\u6240\u6709\u9879\u76EE\u7684\u901A\u7528\u5185\u5BB9\n- **\u5197\u957F\u98CE\u683C**\uFF1A\u4FDD\u6301\u6587\u6863\u7B80\u6D01\u660E\u4E86\n";
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const RALPH_LOOP_TEMPLATE = "\u4F60\u6B63\u5728\u542F\u52A8\u4E00\u4E2A Ralph Loop - \u4E00\u4E2A\u8FD0\u884C\u76F4\u5230\u4EFB\u52A1\u5B8C\u6210\u7684\u81EA\u5F15\u7528\u5F00\u53D1\u5FAA\u73AF\u3002\n\n## Ralph Loop \u5982\u4F55\u5DE5\u4F5C\n\n1. \u4F60\u5C06\u6301\u7EED\u5904\u7406\u4EFB\u52A1\n2. \u5F53\u4F60\u8BA4\u4E3A\u4EFB\u52A1\u5B8C\u5168\u5B8C\u6210\u65F6\uFF0C\u8F93\u51FA: `<promise>{{COMPLETION_PROMISE}}</promise>`\n3. \u5982\u679C\u4F60\u4E0D\u8F93\u51FA\u627F\u8BFA\uFF0C\u5FAA\u73AF\u5C06\u81EA\u52A8\u6CE8\u5165\u53E6\u4E00\u4E2A\u63D0\u793A\u7EE7\u7EED\n4. \u6700\u5927\u8FED\u4EE3\u6B21\u6570: \u53EF\u914D\u7F6E (\u9ED8\u8BA4 100)\n\n## \u89C4\u5219\n\n- \u4E13\u6CE8\u4E8E\u5B8C\u5168\u5B8C\u6210\u4EFB\u52A1\uFF0C\u800C\u4E0D\u662F\u90E8\u5206\u5B8C\u6210\n- \u5728\u4EFB\u52A1\u771F\u6B63\u5B8C\u6210\u4E4B\u524D\u4E0D\u8981\u8F93\u51FA\u5B8C\u6210\u627F\u8BFA\n- \u6BCF\u6B21\u8FED\u4EE3\u90FD\u5E94\u8BE5\u671D\u7740\u76EE\u6807\u53D6\u5F97\u6709\u610F\u4E49\u7684\u8FDB\u5C55\n- \u5982\u679C\u5361\u4F4F\uFF0C\u5C1D\u8BD5\u4E0D\u540C\u7684\u65B9\u6CD5\n- \u4F7F\u7528\u5F85\u529E\u4E8B\u9879\u8DDF\u8E2A\u4F60\u7684\u8FDB\u5EA6\n\n## \u9000\u51FA\u6761\u4EF6\n\n1. **\u5B8C\u6210**: \u5B8C\u5168\u5B8C\u6210\u65F6\u8F93\u51FA\u4F60\u7684\u5B8C\u6210\u627F\u8BFA\u6807\u7B7E\n2. **\u6700\u5927\u8FED\u4EE3**: \u5FAA\u73AF\u5728\u9650\u5236\u5904\u81EA\u52A8\u505C\u6B62\n3. **\u53D6\u6D88**: \u7528\u6237\u8FD0\u884C `/cancel-ralph` \u547D\u4EE4\n\n## \u4F60\u7684\u4EFB\u52A1\n\n\u89E3\u6790\u4E0B\u9762\u7684\u53C2\u6570\u5E76\u5F00\u59CB\u5904\u7406\u4EFB\u52A1\u3002\u683C\u5F0F\u4E3A:\n`\"\u4EFB\u52A1\u63CF\u8FF0\" [--completion-promise=\u6587\u672C] [--max-iterations=N] [--strategy=reset|continue]`\n\n\u9ED8\u8BA4\u5B8C\u6210\u627F\u8BFA\u662F \"DONE\"\uFF0C\u9ED8\u8BA4\u6700\u5927\u8FED\u4EE3\u6B21\u6570\u662F 100\u3002";
|
|
2
|
+
export declare const CANCEL_RALPH_TEMPLATE = "\u53D6\u6D88\u5F53\u524D\u6D3B\u52A8\u7684 Ralph Loop\u3002\n\n\u8FD9\u5C06:\n1. \u505C\u6B62\u5FAA\u73AF\u7EE7\u7EED\n2. \u6E05\u9664\u5FAA\u73AF\u72B6\u6001\u6587\u4EF6\n3. \u5141\u8BB8\u4F1A\u8BDD\u6B63\u5E38\u7ED3\u675F\n\n\u68C0\u67E5\u662F\u5426\u6709\u6D3B\u52A8\u7684\u5FAA\u73AF\u5E76\u53D6\u6D88\u5B83\u3002\u901A\u77E5\u7528\u6237\u7ED3\u679C\u3002";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const REFACTOR_TEMPLATE = "# \u667A\u80FD\u91CD\u6784\u547D\u4EE4\n\n## \u7528\u6CD5\n```\n/refactor <\u91CD\u6784\u76EE\u6807> [--scope=<file|module|project>] [--strategy=<safe|aggressive>]\n\n\u53C2\u6570:\n \u91CD\u6784\u76EE\u6807: \u8981\u91CD\u6784\u7684\u5185\u5BB9\u3002\u53EF\u4EE5\u662F:\n - \u6587\u4EF6\u8DEF\u5F84: src/auth/handler.ts\n - \u7B26\u53F7\u540D\u79F0: \"AuthService class\"\n - \u6A21\u5F0F: \"\u6240\u6709\u4F7F\u7528\u5DF2\u5F03\u7528 API \u7684\u51FD\u6570\"\n - \u63CF\u8FF0: \"\u5C06\u9A8C\u8BC1\u903B\u8F91\u63D0\u53D6\u5230\u72EC\u7ACB\u6A21\u5757\"\n\n\u9009\u9879:\n --scope: \u91CD\u6784\u8303\u56F4 (\u9ED8\u8BA4: module)\n - file: \u4EC5\u5355\u4E2A\u6587\u4EF6\n - module: \u6A21\u5757/\u76EE\u5F55\u8303\u56F4\n - project: \u6574\u4E2A\u4EE3\u7801\u5E93\n\n --strategy: \u98CE\u9669\u5BB9\u5FCD\u5EA6 (\u9ED8\u8BA4: safe)\n - safe: \u4FDD\u5B88\u7B56\u7565\uFF0C\u8981\u6C42\u6700\u5927\u6D4B\u8BD5\u8986\u76D6\u7387\n - aggressive: \u5141\u8BB8\u66F4\u5E7F\u6CDB\u7684\u66F4\u6539\uFF0C\u4F46\u9700\u6709\u8DB3\u591F\u7684\u8986\u76D6\n```\n\n## \u6B64\u547D\u4EE4\u7684\u4F5C\u7528\n\n\u6267\u884C\u667A\u80FD\u3001\u786E\u5B9A\u6027\u7684\u91CD\u6784\uFF0C\u5177\u6709\u5B8C\u6574\u7684\u4EE3\u7801\u5E93\u611F\u77E5\u80FD\u529B\u3002\u4E0E\u76F2\u76EE\u7684\u641C\u7D22\u66FF\u6362\u4E0D\u540C\uFF0C\u6B64\u547D\u4EE4\u4F1A:\n\n1. **\u7406\u89E3\u4F60\u7684\u610F\u56FE** - \u5206\u6790\u4F60\u5B9E\u9645\u60F3\u8981\u5B9E\u73B0\u7684\u76EE\u6807\n2. **\u6620\u5C04\u4EE3\u7801\u5E93** - \u5728\u89E6\u78B0\u4EFB\u4F55\u5185\u5BB9\u4E4B\u524D\u6784\u5EFA\u786E\u5B9A\u7684\u4EE3\u7801\u5730\u56FE\n3. **\u8BC4\u4F30\u98CE\u9669** - \u8BC4\u4F30\u6D4B\u8BD5\u8986\u76D6\u7387\u5E76\u786E\u5B9A\u9A8C\u8BC1\u7B56\u7565\n4. **\u7CBE\u5FC3\u89C4\u5212** - \u4F7F\u7528 nuwa \u667A\u80FD\u4F53\u521B\u5EFA\u8BE6\u7EC6\u8BA1\u5212\n5. **\u7CBE\u786E\u6267\u884C** - \u4F7F\u7528 LSP \u548C AST-grep \u9010\u6B65\u91CD\u6784\n6. **\u6301\u7EED\u9A8C\u8BC1** - \u6BCF\u6B21\u66F4\u6539\u540E\u8FD0\u884C\u6D4B\u8BD5\uFF0C\u786E\u4FDD\u96F6\u56DE\u5F52\n\n---\n\n# \u9636\u6BB5 0: \u610F\u56FE\u95E8 (\u5FC5\u987B\u9996\u5148\u6267\u884C)\n\n**\u5728\u4EFB\u4F55\u64CD\u4F5C\u4E4B\u524D\uFF0C\u5206\u7C7B\u5E76\u9A8C\u8BC1\u8BF7\u6C42\u3002**\n\n## \u6B65\u9AA4 0.1: \u89E3\u6790\u8BF7\u6C42\u7C7B\u578B\n\n| \u4FE1\u53F7 | \u5206\u7C7B | \u64CD\u4F5C |\n|------|------|------|\n| \u5177\u4F53\u6587\u4EF6/\u7B26\u53F7 | \u660E\u786E | \u8FDB\u5165\u4EE3\u7801\u5E93\u5206\u6790 |\n| \"\u5C06 X \u91CD\u6784\u4E3A Y\" | \u6E05\u6670\u8F6C\u6362 | \u8FDB\u5165\u4EE3\u7801\u5E93\u5206\u6790 |\n| \"\u6539\u8FDB\"\u3001\"\u6E05\u7406\" | \u5F00\u653E\u5F0F | **\u5FC5\u987B\u8BE2\u95EE**: \"\u5177\u4F53\u8981\u6539\u8FDB\u4EC0\u4E48\uFF1F\" |\n| \u8303\u56F4\u6A21\u7CCA | \u4E0D\u786E\u5B9A | **\u5FC5\u987B\u8BE2\u95EE**: \"\u54EA\u4E9B\u6A21\u5757/\u6587\u4EF6\uFF1F\" |\n| \u7F3A\u5C11\u4E0A\u4E0B\u6587 | \u4E0D\u5B8C\u6574 | **\u5FC5\u987B\u8BE2\u95EE**: \"\u671F\u671B\u7684\u7ED3\u679C\u662F\u4EC0\u4E48\uFF1F\" |\n\n## \u6B65\u9AA4 0.2: \u9A8C\u8BC1\u7406\u89E3\n\n\u7EE7\u7EED\u4E4B\u524D\uFF0C\u786E\u8BA4:\n- [ ] \u76EE\u6807\u5DF2\u660E\u786E\u8BC6\u522B\n- [ ] \u671F\u671B\u7ED3\u679C\u5DF2\u7406\u89E3\n- [ ] \u8303\u56F4\u5DF2\u5B9A\u4E49 (file/module/project)\n- [ ] \u6210\u529F\u6807\u51C6\u53EF\u4EE5\u8868\u8FF0\n\n**\u5982\u679C\u4EE5\u4E0A\u4EFB\u4E00\u9879\u4E0D\u6E05\u695A\uFF0C\u63D0\u51FA\u6F84\u6E05\u95EE\u9898:**\n\n```\n\u6211\u60F3\u786E\u4FDD\u6211\u6B63\u786E\u7406\u89E3\u4E86\u91CD\u6784\u76EE\u6807\u3002\n\n**\u6211\u7684\u7406\u89E3**: [\u89E3\u91CA]\n**\u6211\u4E0D\u786E\u5B9A\u7684\u5730\u65B9**: [\u5177\u4F53\u6B67\u4E49]\n\n\u6211\u770B\u5230\u7684\u9009\u9879:\n1. [\u9009\u9879 A] - [\u5F71\u54CD]\n2. [\u9009\u9879 B] - [\u5F71\u54CD]\n\n**\u6211\u7684\u5EFA\u8BAE**: [\u5EFA\u8BAE\u53CA\u7406\u7531]\n\n\u6211\u5E94\u8BE5\u6309 [\u5EFA\u8BAE] \u7EE7\u7EED\uFF0C\u8FD8\u662F\u4F60\u6709\u5176\u4ED6\u60F3\u6CD5\uFF1F\n```\n\n## \u6B65\u9AA4 0.3: \u521B\u5EFA\u521D\u59CB\u5F85\u529E\u4E8B\u9879\n\n**\u7406\u89E3\u8BF7\u6C42\u540E\u7ACB\u5373\u521B\u5EFA\u5F85\u529E\u4E8B\u9879:**\n\n```\nTodoWrite([\n {\"id\": \"phase-1\", \"content\": \"\u9636\u6BB5 1: \u4EE3\u7801\u5E93\u5206\u6790 - \u542F\u52A8\u5E76\u884C xuxiake \u667A\u80FD\u4F53\", \"status\": \"pending\", \"priority\": \"high\"},\n {\"id\": \"phase-2\", \"content\": \"\u9636\u6BB5 2: \u6784\u5EFA\u4EE3\u7801\u5730\u56FE - \u6620\u5C04\u4F9D\u8D56\u5173\u7CFB\u548C\u5F71\u54CD\u533A\u57DF\", \"status\": \"pending\", \"priority\": \"high\"},\n {\"id\": \"phase-3\", \"content\": \"\u9636\u6BB5 3: \u6D4B\u8BD5\u8BC4\u4F30 - \u5206\u6790\u6D4B\u8BD5\u8986\u76D6\u7387\u548C\u9A8C\u8BC1\u7B56\u7565\", \"status\": \"pending\", \"priority\": \"high\"},\n {\"id\": \"phase-4\", \"content\": \"\u9636\u6BB5 4: \u8BA1\u5212\u751F\u6210 - \u8C03\u7528 nuwa \u667A\u80FD\u4F53\u751F\u6210\u8BE6\u7EC6\u91CD\u6784\u8BA1\u5212\", \"status\": \"pending\", \"priority\": \"high\"},\n {\"id\": \"phase-5\", \"content\": \"\u9636\u6BB5 5: \u6267\u884C\u91CD\u6784 - \u9010\u6B65\u6267\u884C\u5E76\u6301\u7EED\u9A8C\u8BC1\", \"status\": \"pending\", \"priority\": \"high\"},\n {\"id\": \"phase-6\", \"content\": \"\u9636\u6BB5 6: \u6700\u7EC8\u9A8C\u8BC1 - \u5B8C\u6574\u6D4B\u8BD5\u5957\u4EF6\u548C\u56DE\u5F52\u68C0\u67E5\", \"status\": \"pending\", \"priority\": \"high\"}\n])\n```\n\n---\n\n# \u9636\u6BB5 1: \u4EE3\u7801\u5E93\u5206\u6790 (\u5E76\u884C\u63A2\u7D22)\n\n**\u5C06 phase-1 \u6807\u8BB0\u4E3A in_progress\u3002**\n\n## 1.1: \u542F\u52A8\u5E76\u884C xuxiake \u667A\u80FD\u4F53 (\u540E\u53F0)\n\n\u4F7F\u7528 `call_omo_agent` \u540C\u65F6\u542F\u52A8\u6240\u6709\u667A\u80FD\u4F53:\n\n```\n// \u667A\u80FD\u4F53 1: \u67E5\u627E\u91CD\u6784\u76EE\u6807\ncall_omo_agent(\n subagent_type=\"xuxiake\",\n run_in_background=true,\n prompt=\"\u67E5\u627E [\u76EE\u6807] \u7684\u6240\u6709\u51FA\u73B0\u548C\u5B9A\u4E49\u3002\n \u62A5\u544A: \u6587\u4EF6\u8DEF\u5F84\u3001\u884C\u53F7\u3001\u4F7F\u7528\u6A21\u5F0F\u3002\"\n)\n\n// \u667A\u80FD\u4F53 2: \u67E5\u627E\u76F8\u5173\u4EE3\u7801\ncall_omo_agent(\n subagent_type=\"xuxiake\", \n run_in_background=true,\n prompt=\"\u67E5\u627E\u6240\u6709\u5BFC\u5165\u3001\u4F7F\u7528\u6216\u4F9D\u8D56\u4E8E [\u76EE\u6807] \u7684\u4EE3\u7801\u3002\n \u62A5\u544A: \u4F9D\u8D56\u94FE\u3001\u5BFC\u5165\u56FE\u3002\"\n)\n\n// \u667A\u80FD\u4F53 3: \u67E5\u627E\u76F8\u4F3C\u6A21\u5F0F\ncall_omo_agent(\n subagent_type=\"xuxiake\",\n run_in_background=true,\n prompt=\"\u5728\u4EE3\u7801\u5E93\u4E2D\u67E5\u627E\u4E0E [\u76EE\u6807] \u76F8\u4F3C\u7684\u4EE3\u7801\u6A21\u5F0F\u3002\n \u62A5\u544A: \u7C7B\u4F3C\u5B9E\u73B0\u3001\u65E2\u6709\u7EA6\u5B9A\u3002\"\n)\n\n// \u667A\u80FD\u4F53 4: \u67E5\u627E\u6D4B\u8BD5\ncall_omo_agent(\n subagent_type=\"xuxiake\",\n run_in_background=true,\n prompt=\"\u67E5\u627E\u4E0E [\u76EE\u6807] \u76F8\u5173\u7684\u6240\u6709\u6D4B\u8BD5\u6587\u4EF6\u3002\n \u62A5\u544A: \u6D4B\u8BD5\u6587\u4EF6\u8DEF\u5F84\u3001\u6D4B\u8BD5\u7528\u4F8B\u540D\u79F0\u3001\u8986\u76D6\u6307\u6807\u3002\"\n)\n\n// \u667A\u80FD\u4F53 5: \u67B6\u6784\u4E0A\u4E0B\u6587\ncall_omo_agent(\n subagent_type=\"xuxiake\",\n run_in_background=true,\n prompt=\"\u67E5\u627E [\u76EE\u6807] \u5468\u56F4\u7684\u67B6\u6784\u6A21\u5F0F\u548C\u6A21\u5757\u7EC4\u7EC7\u3002\n \u62A5\u544A: \u6A21\u5757\u8FB9\u754C\u3001\u5C42\u7EA7\u7ED3\u6784\u3001\u4F7F\u7528\u7684\u8BBE\u8BA1\u6A21\u5F0F\u3002\"\n)\n```\n\n## 1.2: \u76F4\u63A5\u5DE5\u5177\u63A2\u7D22 (\u667A\u80FD\u4F53\u8FD0\u884C\u65F6)\n\n\u540E\u53F0\u667A\u80FD\u4F53\u8FD0\u884C\u65F6\uFF0C\u4F7F\u7528\u76F4\u63A5\u5DE5\u5177:\n\n### LSP \u5DE5\u5177\u7528\u4E8E\u7CBE\u786E\u5206\u6790:\n\n```typescript\n// \u67E5\u627E\u5B9A\u4E49\nLspGotoDefinition(filePath, line, character) // \u5B83\u5B9A\u4E49\u5728\u54EA\u91CC\uFF1F\n\n// \u67E5\u627E\u5DE5\u4F5C\u533A\u5185\u6240\u6709\u7528\u6CD5\nLspFindReferences(filePath, line, character, includeDeclaration=true)\n\n// \u83B7\u53D6\u6587\u4EF6\u7ED3\u6784\nLspDocumentSymbols(filePath) // \u5C42\u7EA7\u5927\u7EB2\nLspWorkspaceSymbols(filePath, query=\"[\u76EE\u6807\u7B26\u53F7]\") // \u6309\u540D\u79F0\u641C\u7D22\n\n// \u83B7\u53D6\u5F53\u524D\u8BCA\u65AD\nlsp_diagnostics(filePath) // \u5F00\u59CB\u524D\u7684\u9519\u8BEF\u3001\u8B66\u544A\n```\n\n### AST-Grep \u7528\u4E8E\u6A21\u5F0F\u5206\u6790:\n\n```typescript\n// \u67E5\u627E\u7ED3\u6784\u6A21\u5F0F\nast_grep_search(\n pattern=\"function $NAME($$$) { $$$ }\", // \u6216\u76F8\u5173\u6A21\u5F0F\n lang=\"typescript\", // \u6216\u76F8\u5173\u8BED\u8A00\n paths=[\"src/\"]\n)\n\n// \u9884\u89C8\u91CD\u6784 (\u8BD5\u8FD0\u884C)\nast_grep_replace(\n pattern=\"[\u65E7\u6A21\u5F0F]\",\n rewrite=\"[\u65B0\u6A21\u5F0F]\",\n lang=\"[\u8BED\u8A00]\",\n dryRun=true // \u59CB\u7EC8\u5148\u9884\u89C8\n)\n```\n\n### Grep \u7528\u4E8E\u6587\u672C\u6A21\u5F0F:\n\n```\ngrep(pattern=\"[\u641C\u7D22\u8BCD]\", path=\"src/\", include=\"*.ts\")\n```\n\n## 1.3: \u6536\u96C6\u540E\u53F0\u7ED3\u679C\n\n```\nbackground_output(task_id=\"[\u667A\u80FD\u4F53_1_id]\")\nbackground_output(task_id=\"[\u667A\u80FD\u4F53_2_id]\")\n...\n```\n\n**\u6536\u96C6\u6240\u6709\u7ED3\u679C\u540E\u5C06 phase-1 \u6807\u8BB0\u4E3A completed\u3002**\n\n---\n\n# \u9636\u6BB5 2: \u6784\u5EFA\u4EE3\u7801\u5730\u56FE (\u4F9D\u8D56\u6620\u5C04)\n\n**\u5C06 phase-2 \u6807\u8BB0\u4E3A in_progress\u3002**\n\n## 2.1: \u6784\u5EFA\u786E\u5B9A\u7684\u4EE3\u7801\u5730\u56FE\n\n\u57FA\u4E8E\u9636\u6BB5 1 \u7ED3\u679C\uFF0C\u6784\u5EFA:\n\n```\n## \u4EE3\u7801\u5730\u56FE: [\u76EE\u6807]\n\n### \u6838\u5FC3\u6587\u4EF6 (\u76F4\u63A5\u5F71\u54CD)\n- `path/to/file.ts:L10-L50` - \u4E3B\u8981\u5B9A\u4E49\n- `path/to/file2.ts:L25` - \u5173\u952E\u4F7F\u7528\n\n### \u4F9D\u8D56\u56FE\n```\n[\u76EE\u6807] \n\u251C\u2500\u2500 \u5BFC\u5165\u81EA: \n\u2502 \u251C\u2500\u2500 module-a (\u7C7B\u578B)\n\u2502 \u2514\u2500\u2500 module-b (\u5DE5\u5177)\n\u251C\u2500\u2500 \u88AB\u5BFC\u5165:\n\u2502 \u251C\u2500\u2500 consumer-1.ts\n\u2502 \u251C\u2500\u2500 consumer-2.ts\n\u2502 \u2514\u2500\u2500 consumer-3.ts\n\u2514\u2500\u2500 \u88AB\u4F7F\u7528:\n \u251C\u2500\u2500 handler.ts (\u76F4\u63A5\u8C03\u7528)\n \u2514\u2500\u2500 service.ts (\u4F9D\u8D56\u6CE8\u5165)\n```\n\n### \u5F71\u54CD\u533A\u57DF\n| \u533A\u57DF | \u98CE\u9669\u7B49\u7EA7 | \u5F71\u54CD\u6587\u4EF6 | \u6D4B\u8BD5\u8986\u76D6 |\n|------|----------|----------|----------|\n| \u6838\u5FC3 | \u9AD8 | 3 \u4E2A\u6587\u4EF6 | 85% \u8986\u76D6 |\n| \u6D88\u8D39\u8005 | \u4E2D | 8 \u4E2A\u6587\u4EF6 | 70% \u8986\u76D6 |\n| \u8FB9\u7F18 | \u4F4E | 2 \u4E2A\u6587\u4EF6 | 50% \u8986\u76D6 |\n\n### \u65E2\u5B9A\u6A21\u5F0F\n- \u6A21\u5F0F A: [\u63CF\u8FF0] - \u5728 N \u5904\u4F7F\u7528\n- \u6A21\u5F0F B: [\u63CF\u8FF0] - \u65E2\u5B9A\u7EA6\u5B9A\n```\n\n## 2.2: \u8BC6\u522B\u91CD\u6784\u7EA6\u675F\n\n\u57FA\u4E8E\u4EE3\u7801\u5730\u56FE:\n- **\u5FC5\u987B\u9075\u5FAA**: [\u8BC6\u522B\u7684\u73B0\u6709\u6A21\u5F0F]\n- **\u7EDD\u4E0D\u80FD\u7834\u574F**: [\u5173\u952E\u4F9D\u8D56]\n- **\u5B89\u5168\u53EF\u6539**: [\u9694\u79BB\u7684\u4EE3\u7801\u533A\u57DF]\n- **\u9700\u8981\u8FC1\u79FB**: [\u7834\u574F\u6027\u66F4\u6539\u5F71\u54CD]\n\n**\u5C06 phase-2 \u6807\u8BB0\u4E3A completed\u3002**\n\n---\n\n# \u9636\u6BB5 3: \u6D4B\u8BD5\u8BC4\u4F30 (\u9A8C\u8BC1\u7B56\u7565)\n\n**\u5C06 phase-3 \u6807\u8BB0\u4E3A in_progress\u3002**\n\n## 3.1: \u68C0\u6D4B\u6D4B\u8BD5\u57FA\u7840\u8BBE\u65BD\n\n```bash\n# \u68C0\u67E5\u6D4B\u8BD5\u547D\u4EE4\ncat package.json | jq '.scripts | keys[] | select(test(\"test\"))'\n\n# \u6216 Python\nls -la pytest.ini pyproject.toml setup.cfg\n\n# \u6216 Go\nls -la *_test.go\n```\n\n## 3.2: \u5206\u6790\u6D4B\u8BD5\u8986\u76D6\n\n```\n// \u67E5\u627E\u4E0E\u76EE\u6807\u76F8\u5173\u7684\u6240\u6709\u6D4B\u8BD5\ncall_omo_agent(\n subagent_type=\"xuxiake\",\n run_in_background=false, // \u9700\u8981\u540C\u6B65\n prompt=\"\u5206\u6790 [\u76EE\u6807] \u7684\u6D4B\u8BD5\u8986\u76D6:\n 1. \u54EA\u4E9B\u6D4B\u8BD5\u6587\u4EF6\u8986\u76D6\u6B64\u4EE3\u7801\uFF1F\n 2. \u5B58\u5728\u54EA\u4E9B\u6D4B\u8BD5\u7528\u4F8B\uFF1F\n 3. \u662F\u5426\u6709\u96C6\u6210\u6D4B\u8BD5\uFF1F\n 4. \u6D4B\u8BD5\u4E86\u54EA\u4E9B\u8FB9\u754C\u60C5\u51B5\uFF1F\n 5. \u4F30\u8BA1\u8986\u76D6\u7387\u767E\u5206\u6BD4\uFF1F\"\n)\n```\n\n## 3.3: \u786E\u5B9A\u9A8C\u8BC1\u7B56\u7565\n\n\u57FA\u4E8E\u6D4B\u8BD5\u5206\u6790:\n\n| \u8986\u76D6\u6C34\u5E73 | \u7B56\u7565 |\n|----------|------|\n| \u9AD8 (>80%) | \u6BCF\u6B65\u540E\u8FD0\u884C\u73B0\u6709\u6D4B\u8BD5 |\n| \u4E2D (50-80%) | \u8FD0\u884C\u6D4B\u8BD5 + \u6DFB\u52A0\u5B89\u5168\u65AD\u8A00 |\n| \u4F4E (<50%) | **\u6682\u505C**: \u5EFA\u8BAE\u5148\u6DFB\u52A0\u6D4B\u8BD5 |\n| \u65E0 | **\u963B\u6B62**: \u62D2\u7EDD\u6FC0\u8FDB\u91CD\u6784 |\n\n**\u5982\u679C\u8986\u76D6\u7387\u4E3A\u4F4E\u6216\u65E0\uFF0C\u8BE2\u95EE\u7528\u6237:**\n\n```\n[\u76EE\u6807] \u7684\u6D4B\u8BD5\u8986\u76D6\u7387\u4E3A [\u6C34\u5E73]\u3002\n\n**\u98CE\u9669\u8BC4\u4F30**: \u6CA1\u6709\u8DB3\u591F\u6D4B\u8BD5\u7684\u91CD\u6784\u662F\u5371\u9669\u7684\u3002\n\n\u9009\u9879:\n1. \u5148\u6DFB\u52A0\u6D4B\u8BD5\uFF0C\u7136\u540E\u91CD\u6784 (\u63A8\u8350)\n2. \u8C28\u614E\u7EE7\u7EED\uFF0C\u9700\u8981\u624B\u52A8\u9A8C\u8BC1\n3. \u4E2D\u6B62\u91CD\u6784\n\n\u4F60\u503E\u5411\u4E8E\u54EA\u79CD\u65B9\u5F0F\uFF1F\n```\n\n## 3.4: \u8BB0\u5F55\u9A8C\u8BC1\u8BA1\u5212\n\n```\n## \u9A8C\u8BC1\u8BA1\u5212\n\n### \u6D4B\u8BD5\u547D\u4EE4\n- \u5355\u5143: `bun test` / `npm test` / `pytest` / \u7B49\n- \u96C6\u6210: [\u5982\u679C\u5B58\u5728\u7684\u547D\u4EE4]\n- \u7C7B\u578B\u68C0\u67E5: `tsc --noEmit` / `pyright` / \u7B49\n\n### \u9A8C\u8BC1\u68C0\u67E5\u70B9\n\u6BCF\u6B21\u91CD\u6784\u6B65\u9AA4\u540E:\n1. lsp_diagnostics \u2192 \u65E0\u65B0\u9519\u8BEF\n2. \u8FD0\u884C\u6D4B\u8BD5\u547D\u4EE4 \u2192 \u5168\u90E8\u901A\u8FC7\n3. \u7C7B\u578B\u68C0\u67E5 \u2192 \u5E72\u51C0\n\n### \u56DE\u5F52\u6307\u6807\n- [\u5FC5\u987B\u901A\u8FC7\u7684\u7279\u5B9A\u6D4B\u8BD5]\n- [\u5FC5\u987B\u4FDD\u7559\u7684\u884C\u4E3A]\n- [\u7EDD\u4E0D\u80FD\u6539\u53D8\u7684 API \u5951\u7EA6]\n```\n\n**\u5C06 phase-3 \u6807\u8BB0\u4E3A completed\u3002**\n\n---\n\n# \u9636\u6BB5 4: \u8BA1\u5212\u751F\u6210 (nuwa \u667A\u80FD\u4F53)\n\n**\u5C06 phase-4 \u6807\u8BB0\u4E3A in_progress\u3002**\n\n## 4.1: \u8C03\u7528 nuwa \u667A\u80FD\u4F53\n\n```\nTask(\n subagent_type=\"nuwa\",\n prompt=\"\u521B\u5EFA\u8BE6\u7EC6\u7684\u91CD\u6784\u8BA1\u5212:\n\n ## \u91CD\u6784\u76EE\u6807\n [\u7528\u6237\u7684\u539F\u59CB\u8BF7\u6C42]\n\n ## \u4EE3\u7801\u5730\u56FE (\u6765\u81EA\u9636\u6BB5 2)\n [\u5728\u6B64\u63D2\u5165\u4EE3\u7801\u5730\u56FE]\n\n ## \u6D4B\u8BD5\u8986\u76D6 (\u6765\u81EA\u9636\u6BB5 3)\n [\u5728\u6B64\u63D2\u5165\u9A8C\u8BC1\u8BA1\u5212]\n\n ## \u7EA6\u675F\n - \u5FC5\u987B\u9075\u5FAA\u73B0\u6709\u6A21\u5F0F: [\u5217\u8868]\n - \u7EDD\u4E0D\u80FD\u7834\u574F: [\u5173\u952E\u8DEF\u5F84]\n - \u6BCF\u6B65\u540E\u5FC5\u987B\u8FD0\u884C\u6D4B\u8BD5\n\n ## \u8981\u6C42\n 1. \u5206\u89E3\u4E3A\u539F\u5B50\u91CD\u6784\u6B65\u9AA4\n 2. \u6BCF\u4E2A\u6B65\u9AA4\u5FC5\u987B\u53EF\u72EC\u7ACB\u9A8C\u8BC1\n 3. \u6309\u4F9D\u8D56\u5173\u7CFB\u6392\u5E8F\u6B65\u9AA4 (\u4EC0\u4E48\u5FC5\u987B\u5148\u53D1\u751F)\n 4. \u4E3A\u6BCF\u4E2A\u6B65\u9AA4\u6307\u5B9A\u786E\u5207\u7684\u6587\u4EF6\u548C\u884C\u8303\u56F4\n 5. \u4E3A\u6BCF\u4E2A\u6B65\u9AA4\u5305\u542B\u56DE\u6EDA\u7B56\u7565\n 6. \u5B9A\u4E49\u63D0\u4EA4\u68C0\u67E5\u70B9\"\n)\n```\n\n## 4.2: \u5BA1\u67E5\u548C\u9A8C\u8BC1\u8BA1\u5212\n\n\u6536\u5230 nuwa \u667A\u80FD\u4F53\u7684\u8BA1\u5212\u540E:\n\n1. **\u9A8C\u8BC1\u5B8C\u6574\u6027**: \u6240\u6709\u8BC6\u522B\u7684\u6587\u4EF6\u90FD\u5DF2\u5904\u7406\uFF1F\n2. **\u9A8C\u8BC1\u5B89\u5168\u6027**: \u6BCF\u4E2A\u6B65\u9AA4\u90FD\u53EF\u9006\uFF1F\n3. **\u9A8C\u8BC1\u987A\u5E8F**: \u4F9D\u8D56\u5173\u7CFB\u5DF2\u5C0A\u91CD\uFF1F\n4. **\u9A8C\u8BC1\u9A8C\u8BC1**: \u6D4B\u8BD5\u547D\u4EE4\u5DF2\u6307\u5B9A\uFF1F\n\n## 4.3: \u6CE8\u518C\u8BE6\u7EC6\u5F85\u529E\u4E8B\u9879\n\n\u5C06 nuwa \u667A\u80FD\u4F53\u8F93\u51FA\u8F6C\u6362\u4E3A\u7EC6\u7C92\u5EA6\u5F85\u529E\u4E8B\u9879:\n\n```\nTodoWrite([\n // \u8BA1\u5212\u4E2D\u7684\u6BCF\u4E2A\u6B65\u9AA4\u90FD\u6210\u4E3A\u4E00\u4E2A\u5F85\u529E\u9879\n {\"id\": \"refactor-1\", \"content\": \"\u6B65\u9AA4 1: [\u63CF\u8FF0]\", \"status\": \"pending\", \"priority\": \"high\"},\n {\"id\": \"verify-1\", \"content\": \"\u9A8C\u8BC1\u6B65\u9AA4 1: \u8FD0\u884C\u6D4B\u8BD5\", \"status\": \"pending\", \"priority\": \"high\"},\n {\"id\": \"refactor-2\", \"content\": \"\u6B65\u9AA4 2: [\u63CF\u8FF0]\", \"status\": \"pending\", \"priority\": \"medium\"},\n {\"id\": \"verify-2\", \"content\": \"\u9A8C\u8BC1\u6B65\u9AA4 2: \u8FD0\u884C\u6D4B\u8BD5\", \"status\": \"pending\", \"priority\": \"medium\"},\n // ... \u7EE7\u7EED\u6240\u6709\u6B65\u9AA4\n])\n```\n\n**\u5C06 phase-4 \u6807\u8BB0\u4E3A completed\u3002**\n\n---\n\n# \u9636\u6BB5 5: \u6267\u884C\u91CD\u6784 (\u786E\u5B9A\u6027\u6267\u884C)\n\n**\u5C06 phase-5 \u6807\u8BB0\u4E3A in_progress\u3002**\n\n## 5.1: \u6267\u884C\u534F\u8BAE\n\n\u5BF9\u4E8E\u6BCF\u4E2A\u91CD\u6784\u6B65\u9AA4:\n\n### \u6B65\u9AA4\u524D\n1. \u5C06\u6B65\u9AA4\u5F85\u529E\u6807\u8BB0\u4E3A `in_progress`\n2. \u8BFB\u53D6\u5F53\u524D\u6587\u4EF6\u72B6\u6001\n3. \u9A8C\u8BC1 lsp_diagnostics \u662F\u57FA\u7EBF\n\n### \u6267\u884C\u6B65\u9AA4\n\u4F7F\u7528\u9002\u5F53\u7684\u5DE5\u5177:\n\n**\u5BF9\u4E8E\u7B26\u53F7\u91CD\u547D\u540D:**\n```typescript\nlsp_prepare_rename(filePath, line, character) // \u9A8C\u8BC1\u91CD\u547D\u540D\u53EF\u884C\nlsp_rename(filePath, line, character, newName) // \u6267\u884C\u91CD\u547D\u540D\n```\n\n**\u5BF9\u4E8E\u6A21\u5F0F\u8F6C\u6362:**\n```typescript\n// \u5148\u9884\u89C8\nast_grep_replace(pattern, rewrite, lang, dryRun=true)\n\n// \u5982\u679C\u9884\u89C8\u770B\u8D77\u6765\u6B63\u786E\uFF0C\u6267\u884C\nast_grep_replace(pattern, rewrite, lang, dryRun=false)\n```\n\n**\u5BF9\u4E8E\u7ED3\u6784\u6027\u66F4\u6539:**\n```typescript\n// \u4F7F\u7528 Edit \u5DE5\u5177\u8FDB\u884C\u7CBE\u786E\u66F4\u6539\nedit(filePath, oldString, newString)\n```\n\n### \u6B65\u9AA4\u540E\u9A8C\u8BC1 (\u5FC5\u987B)\n\n```typescript\n// 1. \u68C0\u67E5\u8BCA\u65AD\nlsp_diagnostics(filePath) // \u5FC5\u987B\u5E72\u51C0\u6216\u4E0E\u57FA\u7EBF\u76F8\u540C\n\n// 2. \u8FD0\u884C\u6D4B\u8BD5\nbash(\"bun test\") // \u6216\u9002\u5F53\u7684\u6D4B\u8BD5\u547D\u4EE4\n\n// 3. \u7C7B\u578B\u68C0\u67E5\nbash(\"tsc --noEmit\") // \u6216\u9002\u5F53\u7684\u7C7B\u578B\u68C0\u67E5\n```\n\n### \u6B65\u9AA4\u5B8C\u6210\n1. \u5982\u679C\u9A8C\u8BC1\u901A\u8FC7 \u2192 \u5C06\u6B65\u9AA4\u5F85\u529E\u6807\u8BB0\u4E3A `completed`\n2. \u5982\u679C\u9A8C\u8BC1\u5931\u8D25 \u2192 **\u505C\u6B62\u5E76\u4FEE\u590D**\n\n## 5.2: \u5931\u8D25\u6062\u590D\u534F\u8BAE\n\n\u5982\u679C\u4EFB\u4F55\u9A8C\u8BC1\u5931\u8D25:\n\n1. **\u7ACB\u5373\u505C\u6B62**\n2. **\u56DE\u6EDA**\u5931\u8D25\u7684\u66F4\u6539\n3. **\u8BCA\u65AD**\u51FA\u4E86\u4EC0\u4E48\u95EE\u9898\n4. **\u9009\u9879**:\n - \u4FEE\u590D\u95EE\u9898\u5E76\u91CD\u8BD5\n - \u8DF3\u8FC7\u6B64\u6B65\u9AA4 (\u5982\u679C\u53EF\u9009)\n - \u54A8\u8BE2 jiangshang \u667A\u80FD\u4F53\u83B7\u53D6\u5E2E\u52A9\n - \u8BE2\u95EE\u7528\u6237\u6307\u5BFC\n\n**\u6C38\u8FDC\u4E0D\u8981\u5728\u6D4B\u8BD5\u5931\u8D25\u7684\u60C5\u51B5\u4E0B\u7EE7\u7EED\u4E0B\u4E00\u6B65\u3002**\n\n## 5.3: \u63D0\u4EA4\u68C0\u67E5\u70B9\n\n\u6BCF\u7EC4\u903B\u8F91\u66F4\u6539\u540E:\n\n```bash\ngit add [\u5DF2\u66F4\u6539\u6587\u4EF6]\ngit commit -m \"refactor(\u8303\u56F4): \u63CF\u8FF0\n\n[\u66F4\u6539\u4E86\u4EC0\u4E48\u4EE5\u53CA\u4E3A\u4EC0\u4E48\u7684\u8BE6\u7EC6\u4FE1\u606F]\"\n```\n\n**\u6240\u6709\u91CD\u6784\u6B65\u9AA4\u5B8C\u6210\u540E\u5C06 phase-5 \u6807\u8BB0\u4E3A completed\u3002**\n\n---\n\n# \u9636\u6BB5 6: \u6700\u7EC8\u9A8C\u8BC1 (\u56DE\u5F52\u68C0\u67E5)\n\n**\u5C06 phase-6 \u6807\u8BB0\u4E3A in_progress\u3002**\n\n## 6.1: \u5B8C\u6574\u6D4B\u8BD5\u5957\u4EF6\n\n```bash\n# \u8FD0\u884C\u5B8C\u6574\u6D4B\u8BD5\u5957\u4EF6\nbun test # \u6216 npm test, pytest, go test, \u7B49\n```\n\n## 6.2: \u7C7B\u578B\u68C0\u67E5\n\n```bash\n# \u5B8C\u6574\u7C7B\u578B\u68C0\u67E5\ntsc --noEmit # \u6216\u7B49\u6548\u547D\u4EE4\n```\n\n## 6.3: Lint \u68C0\u67E5\n\n```bash\n# \u8FD0\u884C linter\neslint . # \u6216\u7B49\u6548\u547D\u4EE4\n```\n\n## 6.4: \u6784\u5EFA\u9A8C\u8BC1 (\u5982\u679C\u9002\u7528)\n\n```bash\n# \u786E\u4FDD\u6784\u5EFA\u4ECD\u7136\u6B63\u5E38\nbun run build # \u6216 npm run build, \u7B49\n```\n\n## 6.5: \u6700\u7EC8\u8BCA\u65AD\n\n```typescript\n// \u68C0\u67E5\u6240\u6709\u5DF2\u66F4\u6539\u6587\u4EF6\nfor (file of changedFiles) {\n lsp_diagnostics(file) // \u5FC5\u987B\u5168\u90E8\u5E72\u51C0\n}\n```\n\n## 6.6: \u751F\u6210\u6458\u8981\n\n```markdown\n## \u91CD\u6784\u5B8C\u6210\n\n### \u66F4\u6539\u5185\u5BB9\n- [\u6240\u505A\u7684\u66F4\u6539\u5217\u8868]\n\n### \u4FEE\u6539\u7684\u6587\u4EF6\n- `path/to/file.ts` - [\u66F4\u6539\u4E86\u4EC0\u4E48]\n- `path/to/file2.ts` - [\u66F4\u6539\u4E86\u4EC0\u4E48]\n\n### \u9A8C\u8BC1\u7ED3\u679C\n- \u6D4B\u8BD5: \u901A\u8FC7 (X/Y \u901A\u8FC7)\n- \u7C7B\u578B\u68C0\u67E5: \u5E72\u51C0\n- Lint: \u5E72\u51C0\n- \u6784\u5EFA: \u6210\u529F\n\n### \u672A\u68C0\u6D4B\u5230\u56DE\u5F52\n\u6240\u6709\u73B0\u6709\u6D4B\u8BD5\u901A\u8FC7\u3002\u672A\u5F15\u5165\u65B0\u9519\u8BEF\u3002\n```\n\n**\u5C06 phase-6 \u6807\u8BB0\u4E3A completed\u3002**\n\n---\n\n# \u5173\u952E\u89C4\u5219\n\n## \u7EDD\u4E0D\u8981\u505A\n- \u66F4\u6539\u540E\u8DF3\u8FC7 lsp_diagnostics \u68C0\u67E5\n- \u5728\u6D4B\u8BD5\u5931\u8D25\u65F6\u7EE7\u7EED\n- \u4E0D\u4E86\u89E3\u5F71\u54CD\u5C31\u8FDB\u884C\u66F4\u6539\n- \u4F7F\u7528 `as any`\u3001`@ts-ignore`\u3001`@ts-expect-error`\n- \u5220\u9664\u6D4B\u8BD5\u4EE5\u4F7F\u5176\u901A\u8FC7\n- \u63D0\u4EA4\u635F\u574F\u7684\u4EE3\u7801\n- \u4E0D\u4E86\u89E3\u73B0\u6709\u6A21\u5F0F\u5C31\u91CD\u6784\n\n## \u59CB\u7EC8\u8981\u505A\n- \u66F4\u6539\u524D\u5148\u7406\u89E3\n- \u5E94\u7528\u524D\u5148\u9884\u89C8 (ast_grep dryRun=true)\n- \u6BCF\u6B21\u66F4\u6539\u540E\u9A8C\u8BC1\n- \u9075\u5FAA\u73B0\u6709\u4EE3\u7801\u5E93\u6A21\u5F0F\n- \u5B9E\u65F6\u66F4\u65B0\u5F85\u529E\u4E8B\u9879\n- \u5728\u903B\u8F91\u68C0\u67E5\u70B9\u63D0\u4EA4\n- \u7ACB\u5373\u62A5\u544A\u95EE\u9898\n\n## \u4E2D\u6B62\u6761\u4EF6\n\u5982\u679C\u53D1\u751F\u4EE5\u4E0B\u60C5\u51B5\uFF0C**\u505C\u6B62\u5E76\u54A8\u8BE2\u7528\u6237**:\n- \u76EE\u6807\u4EE3\u7801\u7684\u6D4B\u8BD5\u8986\u76D6\u7387\u4E3A\u96F6\n- \u66F4\u6539\u4F1A\u7834\u574F\u516C\u5171 API\n- \u91CD\u6784\u8303\u56F4\u4E0D\u660E\u786E\n- \u8FDE\u7EED 3 \u6B21\u9A8C\u8BC1\u5931\u8D25\n- \u8FDD\u53CD\u7528\u6237\u5B9A\u4E49\u7684\u7EA6\u675F\n\n---\n\n# \u5DE5\u5177\u4F7F\u7528\u7406\u5FF5\n\n\u4F60\u5DF2\u7ECF\u77E5\u9053\u8FD9\u4E9B\u5DE5\u5177\u3002\u667A\u80FD\u5730\u4F7F\u7528\u5B83\u4EEC:\n\n## LSP \u5DE5\u5177\n\u5229\u7528 LSP \u5DE5\u5177\u8FDB\u884C\u7CBE\u786E\u5206\u6790\u3002\u5173\u952E\u6A21\u5F0F:\n- **\u66F4\u6539\u524D\u7406\u89E3**: `LspGotoDefinition` \u638C\u63E1\u4E0A\u4E0B\u6587\n- **\u5F71\u54CD\u5206\u6790**: `LspFindReferences` \u5728\u4FEE\u6539\u524D\u6620\u5C04\u6240\u6709\u7528\u6CD5\n- **\u5B89\u5168\u91CD\u6784**: `lsp_prepare_rename` \u2192 `lsp_rename` \u8FDB\u884C\u7B26\u53F7\u91CD\u547D\u540D\n- **\u6301\u7EED\u9A8C\u8BC1**: \u6BCF\u6B21\u66F4\u6539\u540E `lsp_diagnostics`\n\n## AST-Grep\n\u4F7F\u7528 `ast_grep_search` \u548C `ast_grep_replace` \u8FDB\u884C\u7ED3\u6784\u8F6C\u6362\u3002\n**\u5173\u952E**: \u59CB\u7EC8\u5148 `dryRun=true`\uFF0C\u5BA1\u67E5\uFF0C\u7136\u540E\u6267\u884C\u3002\n\n## \u667A\u80FD\u4F53\n- `xuxiake`: \u5E76\u884C\u4EE3\u7801\u5E93\u6A21\u5F0F\u53D1\u73B0\n- `nuwa`: \u8BE6\u7EC6\u91CD\u6784\u8BA1\u5212\u751F\u6210\n- `jiangshang`: \u53EA\u8BFB\u54A8\u8BE2\uFF0C\u7528\u4E8E\u590D\u6742\u67B6\u6784\u51B3\u7B56\u548C\u8C03\u8BD5\n- `laozi`: \u9047\u5230\u5F03\u7528\u65B9\u6CD5\u6216\u5E93\u8FC1\u79FB\u4EFB\u52A1\u65F6**\u4E3B\u52A8\u4F7F\u7528**\u3002\u67E5\u8BE2\u5B98\u65B9\u6587\u6863\u548C OSS \u793A\u4F8B\u4EE5\u83B7\u53D6\u73B0\u4EE3\u66FF\u4EE3\u65B9\u6848\u3002\n\n## \u5F03\u7528\u4EE3\u7801\u4E0E\u5E93\u8FC1\u79FB\n\u5728\u91CD\u6784\u8FC7\u7A0B\u4E2D\u9047\u5230\u5F03\u7528\u65B9\u6CD5/API \u65F6:\n1. \u542F\u52A8 `laozi` \u67E5\u627E\u63A8\u8350\u7684\u73B0\u4EE3\u66FF\u4EE3\u65B9\u6848\n2. **\u9664\u975E\u7528\u6237\u660E\u786E\u8981\u6C42\u8FC1\u79FB\uFF0C\u5426\u5219\u4E0D\u8981\u81EA\u52A8\u5347\u7EA7\u5230\u6700\u65B0\u7248\u672C**\n3. \u5982\u679C\u7528\u6237\u8BF7\u6C42\u5E93\u8FC1\u79FB\uFF0C\u5728\u66F4\u6539\u524D\u4F7F\u7528 `laozi` \u83B7\u53D6\u6700\u65B0 API \u6587\u6863\n\n---\n\n**\u8BB0\u4F4F: \u6CA1\u6709\u6D4B\u8BD5\u7684\u91CD\u6784\u662F\u9C81\u83BD\u7684\u3002\u4E0D\u7406\u89E3\u7684\u91CD\u6784\u662F\u7834\u574F\u6027\u7684\u3002\u6B64\u547D\u4EE4\u786E\u4FDD\u4F60\u4E24\u8005\u90FD\u4E0D\u505A\u3002**\n\n<user-request>\n$ARGUMENTS\n</user-request>\n";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const START_WORK_TEMPLATE = "\u4F60\u6B63\u5728\u542F\u52A8\u4E00\u4E2A Yugong \u5DE5\u4F5C\u4F1A\u8BDD\u3002\n\n## \u53C2\u6570\n\n- `/start-work [\u8BA1\u5212\u540D\u79F0] [--worktree <\u8DEF\u5F84>]`\n - `\u8BA1\u5212\u540D\u79F0` (\u53EF\u9009): \u8981\u5F00\u59CB\u7684\u8BA1\u5212\u540D\u79F0\u6216\u90E8\u5206\u5339\u914D\n - `--worktree <\u8DEF\u5F84>` (\u53EF\u9009): \u8981\u5728\u5176\u4E2D\u5DE5\u4F5C\u7684\u73B0\u6709 git worktree \u7684\u7EDD\u5BF9\u8DEF\u5F84\n - \u5982\u679C\u6307\u5B9A\u4E14\u6709\u6548: \u94A9\u5B50\u9884\u8BBE boulder.json \u4E2D\u7684 worktree_path\n - \u5982\u679C\u6307\u5B9A\u4F46\u65E0\u6548: \u4F60\u5FC5\u987B\u5148\u8FD0\u884C `git worktree add <\u8DEF\u5F84> <\u5206\u652F>`\n - \u5982\u679C\u7701\u7565: \u4F60\u5FC5\u987B\u9009\u62E9\u6216\u521B\u5EFA\u4E00\u4E2A worktree (\u89C1\u4E0B\u65B9 Worktree \u8BBE\u7F6E)\n\n## \u8981\u505A\u4EC0\u4E48\n\n1. **\u67E5\u627E\u53EF\u7528\u8BA1\u5212**: \u5728 `.yugong/plans/` \u641C\u7D22 Suirenshi \u751F\u6210\u7684\u8BA1\u5212\u6587\u4EF6\n\n2. **\u68C0\u67E5\u6D3B\u52A8\u7684 boulder \u72B6\u6001**: \u5982\u679C\u5B58\u5728\u5219\u8BFB\u53D6 `.yugong/boulder.json`\n\n3. **\u51B3\u7B56\u903B\u8F91**:\n - \u5982\u679C `.yugong/boulder.json` \u5B58\u5728\u4E14\u8BA1\u5212\u672A\u5B8C\u6210 (\u6709\u672A\u52FE\u9009\u7684\u6846):\n - **\u8FFD\u52A0**\u5F53\u524D\u4F1A\u8BDD\u5230 session_ids\n - \u7EE7\u7EED\u5904\u7406\u73B0\u6709\u8BA1\u5212\n - \u5982\u679C\u6CA1\u6709\u6D3B\u52A8\u8BA1\u5212\u6216\u8BA1\u5212\u5DF2\u5B8C\u6210:\n - \u5217\u51FA\u53EF\u7528\u7684\u8BA1\u5212\u6587\u4EF6\n - \u5982\u679C\u53EA\u6709\u4E00\u4E2A\u8BA1\u5212: \u81EA\u52A8\u9009\u62E9\n - \u5982\u679C\u6709\u591A\u4E2A\u8BA1\u5212: \u663E\u793A\u5E26\u65F6\u95F4\u6233\u7684\u5217\u8868\uFF0C\u8BA9\u7528\u6237\u9009\u62E9\n\n4. **Worktree \u8BBE\u7F6E** (\u5F53 boulder.json \u4E2D\u5C1A\u672A\u8BBE\u7F6E worktree_path \u65F6):\n 1. `git worktree list --porcelain` \u2014 \u67E5\u770B\u53EF\u7528\u7684 worktree\n 2. \u521B\u5EFA: `git worktree add <\u7EDD\u5BF9\u8DEF\u5F84> <\u5206\u652F\u6216HEAD>`\n 3. \u66F4\u65B0 boulder.json \u6DFB\u52A0 `\"worktree_path\": \"<\u7EDD\u5BF9\u8DEF\u5F84>\"`\n 4. \u6240\u6709\u5DE5\u4F5C\u90FD\u5728\u8BE5 worktree \u76EE\u5F55\u5185\u8FDB\u884C\n\n5. **\u521B\u5EFA/\u66F4\u65B0 boulder.json**:\n ```json\n {\n \"active_plan\": \"/\u7EDD\u5BF9/\u8DEF\u5F84/\u5230/\u8BA1\u5212.md\",\n \"started_at\": \"ISO\u65F6\u95F4\u6233\",\n \"session_ids\": [\"\u4F1A\u8BDDid_1\", \"\u4F1A\u8BDDid_2\"],\n \"plan_name\": \"\u8BA1\u5212\u540D\u79F0\",\n \"worktree_path\": \"/\u7EDD\u5BF9/\u8DEF\u5F84/\u5230/git/worktree\"\n }\n ```\n\n6. **\u8BFB\u53D6\u8BA1\u5212\u6587\u4EF6** \u5E76\u6309\u7167 buzhoushan \u5DE5\u4F5C\u6D41\u7A0B\u5F00\u59CB\u6267\u884C\u4EFB\u52A1\n\n## \u8F93\u51FA\u683C\u5F0F\n\n\u5217\u51FA\u8BA1\u5212\u4F9B\u9009\u62E9\u65F6:\n```\n\u53EF\u7528\u5DE5\u4F5C\u8BA1\u5212\n\n\u5F53\u524D\u65F6\u95F4: {ISO \u65F6\u95F4\u6233}\n\u4F1A\u8BDD ID: {\u5F53\u524D\u4F1A\u8BDD id}\n\n1. [\u8BA1\u5212\u540D\u79F0-1.md] - \u4FEE\u6539\u65F6\u95F4: {\u65E5\u671F} - \u8FDB\u5EA6: 3/10 \u4EFB\u52A1\n2. [\u8BA1\u5212\u540D\u79F0-2.md] - \u4FEE\u6539\u65F6\u95F4: {\u65E5\u671F} - \u8FDB\u5EA6: 0/5 \u4EFB\u52A1\n\n\u4F60\u60F3\u5904\u7406\u54EA\u4E2A\u8BA1\u5212\uFF1F(\u8F93\u5165\u7F16\u53F7\u6216\u8BA1\u5212\u540D\u79F0)\n```\n\n\u6062\u590D\u73B0\u6709\u5DE5\u4F5C\u65F6:\n```\n\u6062\u590D\u5DE5\u4F5C\u4F1A\u8BDD\n\n\u6D3B\u52A8\u8BA1\u5212: {\u8BA1\u5212\u540D\u79F0}\n\u8FDB\u5EA6: {\u5DF2\u5B8C\u6210}/{\u603B\u6570} \u4EFB\u52A1\n\u4F1A\u8BDD\u6570: {\u6570\u91CF} (\u8FFD\u52A0\u5F53\u524D\u4F1A\u8BDD)\nWorktree: {worktree_path}\n\n\u8BFB\u53D6\u8BA1\u5212\u5E76\u4ECE\u6700\u540E\u4E00\u4E2A\u672A\u5B8C\u6210\u4EFB\u52A1\u7EE7\u7EED...\n```\n\n\u81EA\u52A8\u9009\u62E9\u5355\u4E2A\u8BA1\u5212\u65F6:\n```\n\u542F\u52A8\u5DE5\u4F5C\u4F1A\u8BDD\n\n\u8BA1\u5212: {\u8BA1\u5212\u540D\u79F0}\n\u4F1A\u8BDD ID: {session_id}\n\u5F00\u59CB\u65F6\u95F4: {\u65F6\u95F4\u6233}\nWorktree: {worktree_path}\n\n\u8BFB\u53D6\u8BA1\u5212\u5E76\u5F00\u59CB\u6267\u884C...\n```\n\n## \u5173\u952E\u8981\u70B9\n\n- session_id \u7531\u94A9\u5B50\u6CE8\u5165 - \u76F4\u63A5\u4F7F\u7528\n- \u59CB\u7EC8\u5728\u5F00\u59CB\u5DE5\u4F5C\u524D\u66F4\u65B0 boulder.json\n- \u59CB\u7EC8\u5728\u6267\u884C\u4EFB\u4F55\u4EFB\u52A1\u524D\u5728 boulder.json \u4E2D\u8BBE\u7F6E worktree_path\n- \u5728\u59D4\u6D3E\u4EFB\u4F55\u4EFB\u52A1\u524D\u8BFB\u53D6\u5B8C\u6574\u7684\u8BA1\u5212\u6587\u4EF6\n- \u9075\u5FAA buzhoushan \u59D4\u6D3E\u534F\u8BAE (7 \u90E8\u5206\u683C\u5F0F)";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const STOP_CONTINUATION_TEMPLATE = "\u505C\u6B62\u5F53\u524D\u4F1A\u8BDD\u7684\u6240\u6709\u5EF6\u7EED\u673A\u5236\u3002\n\n\u6B64\u547D\u4EE4\u5C06:\n1. \u505C\u6B62 todo-continuation-enforcer \u81EA\u52A8\u7EE7\u7EED\u672A\u5B8C\u6210\u7684\u4EFB\u52A1\n2. \u53D6\u6D88\u4EFB\u4F55\u6D3B\u52A8\u7684 Ralph Loop\n3. \u6E05\u9664\u5F53\u524D\u9879\u76EE\u7684 boulder \u72B6\u6001\n\n\u8FD0\u884C\u6B64\u547D\u4EE4\u540E:\n- \u4F1A\u8BDD\u4E0D\u4F1A\u5728\u7A7A\u95F2\u65F6\u81EA\u52A8\u7EE7\u7EED\n- \u4F60\u53EF\u4EE5\u5728\u51C6\u5907\u597D\u65F6\u624B\u52A8\u7EE7\u7EED\u5DE5\u4F5C\n- \u505C\u6B62\u72B6\u6001\u662F\u6309\u4F1A\u8BDD\u7684\uFF0C\u4F1A\u8BDD\u7ED3\u675F\u65F6\u6E05\u9664\n\n\u5F53\u4F60\u9700\u8981\u6682\u505C\u81EA\u52A8\u5EF6\u7EED\u5E76\u83B7\u53D6\u624B\u52A8\u63A7\u5236\u6743\u65F6\u4F7F\u7528\u6B64\u547D\u4EE4\u3002";
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CommandDefinition } from "../claude-code-command-loader";
|
|
2
|
+
export type BuiltinCommandName = "init-deep" | "ralph-loop" | "cancel-ralph" | "ulw-loop" | "refactor" | "start-work" | "stop-continuation" | "handoff";
|
|
3
|
+
export interface BuiltinCommandConfig {
|
|
4
|
+
disabled_commands?: BuiltinCommandName[];
|
|
5
|
+
}
|
|
6
|
+
export type BuiltinCommands = Record<string, CommandDefinition>;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const GIT_MASTER_SKILL_NAME = "git-master";
|
|
2
|
+
export declare const GIT_MASTER_SKILL_DESCRIPTION = "\u4EFB\u4F55 git \u64CD\u4F5C\u90FD\u5FC5\u987B\u4F7F\u7528\u6B64\u6280\u80FD\u3002\u539F\u5B50\u63D0\u4EA4\u3001rebase/squash\u3001\u5386\u53F2\u641C\u7D22 (blame, bisect, log -S)\u3002\u5F3A\u70C8\u63A8\u8350\uFF1A\u914D\u5408 task(category='quick', load_skills=['git-master'], ...) \u4F7F\u7528\u4EE5\u8282\u7701\u4E0A\u4E0B\u6587\u3002\u89E6\u53D1\u8BCD\uFF1A'commit', 'rebase', 'squash', 'who wrote', 'when was X added', 'find the commit that'\u3002";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { playwrightSkill, agentBrowserSkill } from "./playwright";
|
|
2
|
+
export { playwrightCliSkill } from "./playwright-cli";
|
|
3
|
+
export { frontendUiUxSkill } from "./frontend-ui-ux";
|
|
4
|
+
export { gitMasterSkill } from "./git-master";
|
|
5
|
+
export { devBrowserSkill } from "./dev-browser";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { BuiltinSkill } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* Playwright CLI 技能 — 基于 MCP 的 playwright 技能的 token 高效 CLI 替代方案。
|
|
4
|
+
*
|
|
5
|
+
* 使用名称 "playwright"(而非 "playwright-cli"),因为智能体会硬编码 "playwright" 作为
|
|
6
|
+
* 标准浏览器技能名称。browserProvider 配置在相同名称后切换实现:
|
|
7
|
+
* "playwright" 提供 MCP 版本,"playwright-cli" 提供此 CLI 变体。
|
|
8
|
+
* 二进制文件仍名为 `playwright-cli`(见 allowedTools)。
|
|
9
|
+
*/
|
|
10
|
+
export declare const playwrightCliSkill: BuiltinSkill;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { BuiltinSkill } from "./types";
|
|
2
|
+
import type { BrowserAutomationProvider } from "../../config/schema";
|
|
3
|
+
/**
|
|
4
|
+
* 创建内置技能的选项
|
|
5
|
+
*/
|
|
6
|
+
export interface CreateBuiltinSkillsOptions {
|
|
7
|
+
/** 浏览器自动化提供者 */
|
|
8
|
+
browserProvider?: BrowserAutomationProvider;
|
|
9
|
+
/** 禁用的技能名称集合 */
|
|
10
|
+
disabledSkills?: Set<string>;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* 创建内置技能列表
|
|
14
|
+
*
|
|
15
|
+
* @param options - 创建选项
|
|
16
|
+
* @param options.browserProvider - 浏览器自动化提供者 (默认: "playwright")
|
|
17
|
+
* @param options.disabledSkills - 要禁用的技能名称集合
|
|
18
|
+
* @returns 内置技能数组
|
|
19
|
+
*/
|
|
20
|
+
export declare function createBuiltinSkills(options?: CreateBuiltinSkillsOptions): BuiltinSkill[];
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { SkillMcpConfig } from "../skill-mcp-manager/types";
|
|
2
|
+
/**
|
|
3
|
+
* 内置技能定义
|
|
4
|
+
*
|
|
5
|
+
* @property name - 技能名称
|
|
6
|
+
* @property description - 技能描述
|
|
7
|
+
* @property template - 技能模板内容
|
|
8
|
+
* @property license - 许可证信息
|
|
9
|
+
* @property compatibility - 兼容性说明
|
|
10
|
+
* @property metadata - 元数据
|
|
11
|
+
* @property allowedTools - 允许使用的工具列表
|
|
12
|
+
* @property agent - 指定的智能体
|
|
13
|
+
* @property model - 指定的模型
|
|
14
|
+
* @property subtask - 是否为子任务
|
|
15
|
+
* @property argumentHint - 参数提示
|
|
16
|
+
* @property mcpConfig - MCP 配置
|
|
17
|
+
*/
|
|
18
|
+
export interface BuiltinSkill {
|
|
19
|
+
name: string;
|
|
20
|
+
description: string;
|
|
21
|
+
template: string;
|
|
22
|
+
license?: string;
|
|
23
|
+
compatibility?: string;
|
|
24
|
+
metadata?: Record<string, unknown>;
|
|
25
|
+
allowedTools?: string[];
|
|
26
|
+
agent?: string;
|
|
27
|
+
model?: string;
|
|
28
|
+
subtask?: boolean;
|
|
29
|
+
argumentHint?: string;
|
|
30
|
+
mcpConfig?: SkillMcpConfig;
|
|
31
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { AgentConfig } from "@opencode-ai/sdk";
|
|
2
|
+
export type AgentScope = "user" | "project";
|
|
3
|
+
export interface AgentFrontmatter {
|
|
4
|
+
name?: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
model?: string;
|
|
7
|
+
tools?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface LoadedAgent {
|
|
10
|
+
name: string;
|
|
11
|
+
path: string;
|
|
12
|
+
config: AgentConfig;
|
|
13
|
+
scope: AgentScope;
|
|
14
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CommandDefinition } from "./types";
|
|
2
|
+
export declare function loadUserCommands(): Promise<Record<string, CommandDefinition>>;
|
|
3
|
+
export declare function loadProjectCommands(directory?: string): Promise<Record<string, CommandDefinition>>;
|
|
4
|
+
export declare function loadOpencodeGlobalCommands(): Promise<Record<string, CommandDefinition>>;
|
|
5
|
+
export declare function loadOpencodeProjectCommands(directory?: string): Promise<Record<string, CommandDefinition>>;
|
|
6
|
+
export declare function loadAllCommands(directory?: string): Promise<Record<string, CommandDefinition>>;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export type CommandScope = "user" | "project" | "opencode" | "opencode-project";
|
|
2
|
+
/**
|
|
3
|
+
* Handoff definition for command workflows.
|
|
4
|
+
* Based on speckit's handoff pattern for multi-agent orchestration.
|
|
5
|
+
* @see https://github.com/github/spec-kit
|
|
6
|
+
*/
|
|
7
|
+
export interface HandoffDefinition {
|
|
8
|
+
/** Human-readable label for the handoff action */
|
|
9
|
+
label: string;
|
|
10
|
+
/** Target agent/command identifier (e.g., "speckit.tasks") */
|
|
11
|
+
agent: string;
|
|
12
|
+
/** Pre-filled prompt text for the handoff */
|
|
13
|
+
prompt: string;
|
|
14
|
+
/** If true, automatically executes after command completion; if false, shows as suggestion */
|
|
15
|
+
send?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface CommandDefinition {
|
|
18
|
+
name: string;
|
|
19
|
+
description?: string;
|
|
20
|
+
template: string;
|
|
21
|
+
agent?: string;
|
|
22
|
+
model?: string;
|
|
23
|
+
subtask?: boolean;
|
|
24
|
+
argumentHint?: string;
|
|
25
|
+
/** Handoff definitions for workflow transitions */
|
|
26
|
+
handoffs?: HandoffDefinition[];
|
|
27
|
+
}
|
|
28
|
+
export interface CommandFrontmatter {
|
|
29
|
+
description?: string;
|
|
30
|
+
"argument-hint"?: string;
|
|
31
|
+
agent?: string;
|
|
32
|
+
model?: string;
|
|
33
|
+
subtask?: boolean;
|
|
34
|
+
/** Handoff definitions for workflow transitions */
|
|
35
|
+
handoffs?: HandoffDefinition[];
|
|
36
|
+
}
|
|
37
|
+
export interface LoadedCommand {
|
|
38
|
+
name: string;
|
|
39
|
+
path: string;
|
|
40
|
+
definition: CommandDefinition;
|
|
41
|
+
scope: CommandScope;
|
|
42
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Configuration Loader
|
|
3
|
+
*
|
|
4
|
+
* Loads Claude Code .mcp.json format configurations from multiple scopes
|
|
5
|
+
* and transforms them to OpenCode SDK format
|
|
6
|
+
*/
|
|
7
|
+
export * from "./types";
|
|
8
|
+
export * from "./loader";
|
|
9
|
+
export * from "./transformer";
|
|
10
|
+
export * from "./env-expander";
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { LoadedMcpServer, McpLoadResult } from "./types";
|
|
2
|
+
export declare function getSystemMcpServerNames(): Set<string>;
|
|
3
|
+
export declare function loadMcpConfigs(disabledMcps?: string[]): Promise<McpLoadResult>;
|
|
4
|
+
export declare function formatLoadedServersForToast(loadedServers: LoadedMcpServer[]): string;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export type McpScope = "user" | "project" | "local";
|
|
2
|
+
export interface ClaudeCodeMcpServer {
|
|
3
|
+
type?: "http" | "sse" | "stdio";
|
|
4
|
+
url?: string;
|
|
5
|
+
command?: string;
|
|
6
|
+
args?: string[];
|
|
7
|
+
env?: Record<string, string>;
|
|
8
|
+
headers?: Record<string, string>;
|
|
9
|
+
oauth?: {
|
|
10
|
+
clientId?: string;
|
|
11
|
+
scopes?: string[];
|
|
12
|
+
};
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export interface ClaudeCodeMcpConfig {
|
|
16
|
+
mcpServers?: Record<string, ClaudeCodeMcpServer>;
|
|
17
|
+
}
|
|
18
|
+
export interface McpLocalConfig {
|
|
19
|
+
type: "local";
|
|
20
|
+
command: string[];
|
|
21
|
+
environment?: Record<string, string>;
|
|
22
|
+
enabled?: boolean;
|
|
23
|
+
}
|
|
24
|
+
export interface McpRemoteConfig {
|
|
25
|
+
type: "remote";
|
|
26
|
+
url: string;
|
|
27
|
+
headers?: Record<string, string>;
|
|
28
|
+
enabled?: boolean;
|
|
29
|
+
}
|
|
30
|
+
export type McpServerConfig = McpLocalConfig | McpRemoteConfig;
|
|
31
|
+
export interface LoadedMcpServer {
|
|
32
|
+
name: string;
|
|
33
|
+
scope: McpScope;
|
|
34
|
+
config: McpServerConfig;
|
|
35
|
+
}
|
|
36
|
+
export interface McpLoadResult {
|
|
37
|
+
servers: Record<string, McpServerConfig>;
|
|
38
|
+
loadedServers: LoadedMcpServer[];
|
|
39
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from "./types";
|
|
2
|
+
export * from "./loader";
|
|
3
|
+
export * from "./discovery";
|
|
4
|
+
export * from "./plugin-path-resolver";
|
|
5
|
+
export * from "./command-loader";
|
|
6
|
+
export * from "./skill-loader";
|
|
7
|
+
export * from "./agent-loader";
|
|
8
|
+
export * from "./mcp-server-loader";
|
|
9
|
+
export * from "./hook-loader";
|
|
10
|
+
export type { PluginLoaderOptions, ClaudeSettings } from "./types";
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { AgentConfig } from "@opencode-ai/sdk";
|
|
2
|
+
import type { CommandDefinition } from "../claude-code-command-loader/types";
|
|
3
|
+
import type { McpServerConfig } from "../claude-code-mcp-loader/types";
|
|
4
|
+
import type { HooksConfig, LoadedPlugin, PluginLoadError, PluginLoaderOptions } from "./types";
|
|
5
|
+
export { discoverInstalledPlugins } from "./discovery";
|
|
6
|
+
export { loadPluginCommands } from "./command-loader";
|
|
7
|
+
export { loadPluginSkillsAsCommands } from "./skill-loader";
|
|
8
|
+
export { loadPluginAgents } from "./agent-loader";
|
|
9
|
+
export { loadPluginMcpServers } from "./mcp-server-loader";
|
|
10
|
+
export { loadPluginHooksConfigs } from "./hook-loader";
|
|
11
|
+
export interface PluginComponentsResult {
|
|
12
|
+
commands: Record<string, CommandDefinition>;
|
|
13
|
+
skills: Record<string, CommandDefinition>;
|
|
14
|
+
agents: Record<string, AgentConfig>;
|
|
15
|
+
mcpServers: Record<string, McpServerConfig>;
|
|
16
|
+
hooksConfigs: HooksConfig[];
|
|
17
|
+
plugins: LoadedPlugin[];
|
|
18
|
+
errors: PluginLoadError[];
|
|
19
|
+
}
|
|
20
|
+
export declare function loadAllPluginComponents(options?: PluginLoaderOptions): Promise<PluginComponentsResult>;
|