@heidi-dang/oh-my-opencode 3.10.0
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/LICENSE.md +82 -0
- package/README.ja.md +336 -0
- package/README.ko.md +330 -0
- package/README.md +405 -0
- package/README.ru.md +357 -0
- package/README.zh-cn.md +335 -0
- package/bin/oh-my-opencode.js +142 -0
- package/bin/platform.d.ts +14 -0
- package/bin/platform.js +82 -0
- package/bin/platform.test.ts +205 -0
- package/dist/agents/agent-builder.d.ts +7 -0
- package/dist/agents/atlas/agent.d.ts +35 -0
- package/dist/agents/atlas/default.d.ts +11 -0
- package/dist/agents/atlas/gemini.d.ts +11 -0
- package/dist/agents/atlas/gpt.d.ts +19 -0
- package/dist/agents/atlas/index.d.ts +2 -0
- package/dist/agents/atlas/prompt-section-builder.d.ts +13 -0
- package/dist/agents/builtin-agents/agent-overrides.d.ts +12 -0
- package/dist/agents/builtin-agents/atlas-agent.d.ts +17 -0
- package/dist/agents/builtin-agents/available-skills.d.ts +4 -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/hephaestus-agent.d.ts +18 -0
- package/dist/agents/builtin-agents/junior-inheritance.d.ts +34 -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/sisyphus-agent.d.ts +20 -0
- package/dist/agents/builtin-agents.d.ts +6 -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/explore.d.ts +7 -0
- package/dist/agents/hephaestus.d.ts +6 -0
- package/dist/agents/index.d.ts +4 -0
- package/dist/agents/librarian.d.ts +7 -0
- package/dist/agents/metis.d.ts +21 -0
- package/dist/agents/momus.d.ts +21 -0
- package/dist/agents/multimodal-looker.d.ts +7 -0
- package/dist/agents/oracle.d.ts +7 -0
- package/dist/agents/prometheus/behavioral-summary.d.ts +6 -0
- package/dist/agents/prometheus/gemini.d.ts +12 -0
- package/dist/agents/prometheus/gpt.d.ts +24 -0
- package/dist/agents/prometheus/high-accuracy-mode.d.ts +6 -0
- package/dist/agents/prometheus/identity-constraints.d.ts +7 -0
- package/dist/agents/prometheus/index.d.ts +2 -0
- package/dist/agents/prometheus/interview-mode.d.ts +7 -0
- package/dist/agents/prometheus/plan-generation.d.ts +7 -0
- package/dist/agents/prometheus/plan-template.d.ts +7 -0
- package/dist/agents/prometheus/system-prompt.d.ts +28 -0
- package/dist/agents/sisyphus-gemini-overlays.d.ts +20 -0
- package/dist/agents/sisyphus-junior/agent.d.ts +30 -0
- package/dist/agents/sisyphus-junior/default.d.ts +9 -0
- package/dist/agents/sisyphus-junior/gemini.d.ts +10 -0
- package/dist/agents/sisyphus-junior/gpt.d.ts +8 -0
- package/dist/agents/sisyphus-junior/index.d.ts +5 -0
- package/dist/agents/sisyphus.d.ts +8 -0
- package/dist/agents/types.d.ts +65 -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/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/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 +11 -0
- package/dist/cli/doctor/checks/config.d.ts +2 -0
- package/dist/cli/doctor/checks/default-config.d.ts +10 -0
- package/dist/cli/doctor/checks/dependencies.d.ts +4 -0
- package/dist/cli/doctor/checks/fork.d.ts +14 -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 +32 -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 +29552 -0
- package/dist/cli/init/index.d.ts +19 -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 +1266 -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 +78 -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/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 +51 -0
- package/dist/config/schema/internal/permission.d.ts +44 -0
- package/dist/config/schema/notification.d.ts +5 -0
- package/dist/config/schema/oh-my-opencode-config.d.ts +1392 -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/sisyphus-agent.d.ts +8 -0
- package/dist/config/schema/sisyphus.d.ts +15 -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.d.ts +24 -0
- package/dist/create-hooks.d.ts +65 -0
- package/dist/create-managers.d.ts +20 -0
- package/dist/create-tools.d.ts +20 -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 +7 -0
- package/dist/features/builtin-skills/types.d.ts +15 -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/atlas/atlas-hook.d.ts +19 -0
- package/dist/hooks/atlas/boulder-continuation-injector.d.ts +14 -0
- package/dist/hooks/atlas/event-handler.d.ts +13 -0
- package/dist/hooks/atlas/hook-name.d.ts +1 -0
- package/dist/hooks/atlas/index.d.ts +3 -0
- package/dist/hooks/atlas/is-abort-error.d.ts +1 -0
- package/dist/hooks/atlas/recent-model-resolver.d.ts +9 -0
- package/dist/hooks/atlas/session-last-agent.d.ts +4 -0
- package/dist/hooks/atlas/sisyphus-path.d.ts +6 -0
- package/dist/hooks/atlas/subagent-session-id.d.ts +1 -0
- package/dist/hooks/atlas/system-reminder-templates.d.ts +6 -0
- package/dist/hooks/atlas/tool-execute-after.d.ts +7 -0
- package/dist/hooks/atlas/tool-execute-before.d.ts +12 -0
- package/dist/hooks/atlas/types.d.ts +30 -0
- package/dist/hooks/atlas/verification-reminders.d.ts +5 -0
- package/dist/hooks/atlas/write-edit-tool-policy.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/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 +49 -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-hephaestus-non-gpt/hook.d.ts +20 -0
- package/dist/hooks/no-hephaestus-non-gpt/index.d.ts +1 -0
- package/dist/hooks/no-sisyphus-gpt/hook.d.ts +16 -0
- package/dist/hooks/no-sisyphus-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/prometheus-md-only/agent-matcher.d.ts +1 -0
- package/dist/hooks/prometheus-md-only/agent-resolution.d.ts +16 -0
- package/dist/hooks/prometheus-md-only/constants.d.ts +7 -0
- package/dist/hooks/prometheus-md-only/hook.d.ts +11 -0
- package/dist/hooks/prometheus-md-only/index.d.ts +2 -0
- package/dist/hooks/prometheus-md-only/path-policy.d.ts +10 -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/sisyphus-junior-notepad/constants.d.ts +2 -0
- package/dist/hooks/sisyphus-junior-notepad/hook.d.ts +11 -0
- package/dist/hooks/sisyphus-junior-notepad/index.d.ts +2 -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/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 +30 -0
- package/dist/hooks/thinking-block-validator/index.d.ts +1 -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/index.d.ts +5 -0
- package/dist/index.js +91706 -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/oh-my-opencode.schema.json +3865 -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 +49 -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 +16 -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/prometheus-agent-config-builder.d.ts +23 -0
- package/dist/plugin-handlers/provider-config-handler.d.ts +5 -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 +30 -0
- package/dist/shared/deep-merge.d.ts +13 -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 +7 -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 +2 -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 +5 -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-policy.d.ts +25 -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 +28 -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 +3 -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 +4 -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 +3 -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/sisyphus-junior-agent.d.ts +1 -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 +6 -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/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 +3 -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 +3 -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 +2 -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 +7 -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 +3 -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 +8 -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 +3 -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 +4 -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 +11 -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 +2 -0
- package/dist/tools/slashcommand/types.d.ts +18 -0
- package/dist/tools/task/index.d.ts +7 -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 +99 -0
- package/postinstall.mjs +59 -0
package/README.zh-cn.md
ADDED
|
@@ -0,0 +1,335 @@
|
|
|
1
|
+
> [!NOTE]
|
|
2
|
+
>
|
|
3
|
+
> [](https://sisyphuslabs.ai)
|
|
4
|
+
> > **我们正在构建 Sisyphus 的完全产品化版本,以定义前沿智能体 (Frontier Agents) 的未来。<br />[在此处](https://sisyphuslabs.ai)加入候补名单。**
|
|
5
|
+
|
|
6
|
+
> [!TIP]
|
|
7
|
+
> 加入我们!
|
|
8
|
+
>
|
|
9
|
+
> | [<img alt="Discord link" src="https://img.shields.io/discord/1452487457085063218?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square" width="156px" />](https://discord.gg/PUwSMR9XNk) | 加入我们的 [Discord 社区](https://discord.gg/PUwSMR9XNk),与贡献者及其他 `oh-my-opencode` 用户交流。 |
|
|
10
|
+
> | :-----| :----- |
|
|
11
|
+
> | [<img alt="X link" src="https://img.shields.io/badge/Follow-%40justsisyphus-00CED1?style=flat-square&logo=x&labelColor=black" width="156px" />](https://x.com/justsisyphus) | 关于 `oh-my-opencode` 的新闻和更新过去发布在我的 X 账号上。<br /> 因为账号被意外停用,现在由 [@justsisyphus](https://x.com/justsisyphus) 代为发布更新。 |
|
|
12
|
+
> | [<img alt="GitHub Follow" src="https://img.shields.io/github/followers/code-yeongyu?style=flat-square&logo=github&labelColor=black&color=24292f" width="156px" />](https://github.com/code-yeongyu) | 在 GitHub 上关注 [@code-yeongyu](https://github.com/code-yeongyu) 获取更多项目信息。 |
|
|
13
|
+
|
|
14
|
+
<!-- <CENTERED SECTION FOR GITHUB DISPLAY> -->
|
|
15
|
+
|
|
16
|
+
<div align="center">
|
|
17
|
+
|
|
18
|
+
[](https://github.com/code-yeongyu/oh-my-opencode#oh-my-opencode)
|
|
19
|
+
|
|
20
|
+
[](https://github.com/code-yeongyu/oh-my-opencode#oh-my-opencode)
|
|
21
|
+
|
|
22
|
+
</div>
|
|
23
|
+
|
|
24
|
+
> 这是类固醇式编程。不是一个模型的类固醇——而是整个药库。
|
|
25
|
+
>
|
|
26
|
+
> 用 Claude 做编排,用 GPT 做推理,用 Kimi 提速度,用 Gemini 处理视觉。模型正在变得越来越便宜,越来越聪明。没有一个提供商能够垄断。我们正在为那个开放的市场而构建。Anthropic 的牢笼很漂亮。但我们不住那。
|
|
27
|
+
|
|
28
|
+
<div align="center">
|
|
29
|
+
|
|
30
|
+
[](https://github.com/code-yeongyu/oh-my-opencode/releases)
|
|
31
|
+
[](https://www.npmjs.com/package/oh-my-opencode)
|
|
32
|
+
[](https://github.com/code-yeongyu/oh-my-opencode/graphs/contributors)
|
|
33
|
+
[](https://github.com/code-yeongyu/oh-my-opencode/network/members)
|
|
34
|
+
[](https://github.com/code-yeongyu/oh-my-opencode/stargazers)
|
|
35
|
+
[](https://github.com/code-yeongyu/oh-my-opencode/issues)
|
|
36
|
+
[](https://github.com/code-yeongyu/oh-my-opencode/blob/dev/LICENSE.md)
|
|
37
|
+
[](https://deepwiki.com/code-yeongyu/oh-my-opencode)
|
|
38
|
+
|
|
39
|
+
[English](README.md) | [한국어](README.ko.md) | [日本語](README.ja.md) | [简体中文](README.zh-cn.md)
|
|
40
|
+
|
|
41
|
+
</div>
|
|
42
|
+
|
|
43
|
+
<!-- </CENTERED SECTION FOR GITHUB DISPLAY> -->
|
|
44
|
+
|
|
45
|
+
## 评价
|
|
46
|
+
|
|
47
|
+
> “因为它,我取消了 Cursor 的订阅。开源社区正在发生令人难以置信的事情。” - [Arthur Guiot](https://x.com/arthur_guiot/status/2008736347092382053?s=20)
|
|
48
|
+
|
|
49
|
+
> “如果人类需要 3 个月完成的事情 Claude Code 需要 7 天,那么 Sisyphus 只需要 1 小时。它会一直工作直到任务完成。它是一个极度自律的智能体。” <br/>- B, 量化研究员
|
|
50
|
+
|
|
51
|
+
> “用 Oh My Opencode 一天之内解决了 8000 个 eslint 警告。” <br/>- [Jacob Ferrari](https://x.com/jacobferrari_/status/2003258761952289061)
|
|
52
|
+
|
|
53
|
+
> “我用 Ohmyopencode 和 ralph loop 花了一晚上的时间,把一个 45k 行代码的 tauri 应用转换成了 SaaS Web 应用。从面试模式开始,让它对我提供的提示词进行提问和提出建议。看着它工作很有趣,今早醒来看到网站基本已经跑起来了,太震撼了!” - [James Hargis](https://x.com/hargabyte/status/2007299688261882202)
|
|
54
|
+
|
|
55
|
+
> “用 oh-my-opencode 吧,你绝对回不去了。” <br/>- [d0t3ch](https://x.com/d0t3ch/status/2001685618200580503)
|
|
56
|
+
|
|
57
|
+
> “我很难准确描述它到底哪里牛逼,但开发体验已经达到完全不同的维度了。” - [苔硯:こけすずり](https://x.com/kokesuzuri/status/2008532913961529372?s=20)
|
|
58
|
+
|
|
59
|
+
> “这周末我用 open code、oh my opencode 和 supermemory 瞎折腾一个像我的世界/魂系一样的怪物游戏。吃完午饭去散步前,我让它把下蹲动画加进去。[视频]” - [MagiMetal](https://x.com/MagiMetal/status/2005374704178373023)
|
|
60
|
+
|
|
61
|
+
> “你们真该把这个合并到核心代码里,然后把他招安了。说真的,这东西实在太牛了。” <br/>- Henning Kilset
|
|
62
|
+
|
|
63
|
+
> “如果你们能说服 @yeon_gyu_kim,赶紧招募他。这个人彻底改变了 opencode。” <br/>- [mysticaltech](https://x.com/mysticaltech/status/2001858758608376079)
|
|
64
|
+
|
|
65
|
+
> “Oh My OpenCode 简直疯了。” - [YouTube - Darren Builds AI](https://www.youtube.com/watch?v=G_Snfh2M41M)
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
# Oh My OpenCode
|
|
70
|
+
|
|
71
|
+
我们最初把这叫做“给 Claude Code 打类固醇”。那是低估了它。
|
|
72
|
+
|
|
73
|
+
不是只给一个模型打药。我们在运营一个联合体。Claude、GPT、Kimi、Gemini——各司其职,并行运转,永不停歇。模型每个月都在变便宜,没有任何提供商能够垄断。我们已经活在那个世界里了。
|
|
74
|
+
|
|
75
|
+
脏活累活我们替你干了。我们测试了一切,只留下了真正有用的。
|
|
76
|
+
|
|
77
|
+
安装 OmO。敲下 `ultrawork`。疯狂地写代码吧。
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
## 安装
|
|
82
|
+
|
|
83
|
+
### 给人类看的
|
|
84
|
+
|
|
85
|
+
复制并粘贴以下提示词到你的 LLM Agent (Claude Code, AmpCode, Cursor 等):
|
|
86
|
+
|
|
87
|
+
```
|
|
88
|
+
Install and configure oh-my-opencode by following the instructions here:
|
|
89
|
+
https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/refs/heads/dev/docs/guide/installation.md
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
或者你可以直接去读 [安装指南](docs/guide/installation.md),但说真的,让 Agent 去干吧。人类配环境总是容易敲错字母。
|
|
93
|
+
|
|
94
|
+
### 给 LLM Agent 看的
|
|
95
|
+
|
|
96
|
+
获取安装指南并照做:
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
curl -s https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/refs/heads/dev/docs/guide/installation.md
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## 跳过这个 README 吧
|
|
105
|
+
|
|
106
|
+
读文档的时代已经过去了。直接把下面这行发给你的 Agent:
|
|
107
|
+
|
|
108
|
+
```
|
|
109
|
+
Read this and tell me why it's not just another boilerplate: https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/refs/heads/dev/README.md
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## 核心亮点
|
|
113
|
+
|
|
114
|
+
### 🪄 `ultrawork`
|
|
115
|
+
|
|
116
|
+
你竟然还在往下读?真有耐心。
|
|
117
|
+
|
|
118
|
+
安装。输入 `ultrawork` (或者 `ulw`)。搞定。
|
|
119
|
+
|
|
120
|
+
下面的内容,包括所有特性、所有优化,你全都不需要知道,它自己就能完美运行。
|
|
121
|
+
|
|
122
|
+
只需以下订阅之一,ultrawork 就能顺畅工作(本项目与它们没有任何关联,纯属个人推荐):
|
|
123
|
+
- [ChatGPT 订阅 ($20)](https://chatgpt.com/)
|
|
124
|
+
- [Kimi Code 订阅 ($0.99) (*仅限本月*)](https://www.kimi.com/membership/pricing?track_id=5cdeca93-66f0-4d35-aabb-b6df8fcea328)
|
|
125
|
+
- [GLM Coding 套餐 ($10)](https://z.ai/subscribe)
|
|
126
|
+
- 如果你能使用按 token 计费的方式,用 kimi 和 gemini 模型花不了多少钱。
|
|
127
|
+
|
|
128
|
+
| | 特性 | 功能说明 |
|
|
129
|
+
| :---: | :-------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
130
|
+
| 🤖 | **自律军团 (Discipline Agents)** | Sisyphus 负责调度 Hephaestus、Oracle、Librarian 和 Explore。一支完整的 AI 开发团队并行工作。 |
|
|
131
|
+
| ⚡ | **`ultrawork` / `ulw`** | 一键触发,所有智能体出动。任务完成前绝不罢休。 |
|
|
132
|
+
| 🚪 | **[IntentGate 意图门](https://factory.ai/news/terminal-bench)** | 真正行动前,先分析用户的真实意图。彻底告别被字面意思误导的 AI 废话。 |
|
|
133
|
+
| 🔗 | **基于哈希的编辑工具** | 每次修改都通过 `LINE#ID` 内容哈希验证、0% 错误修改。灵感来自 [oh-my-pi](https://github.com/can1357/oh-my-pi)。[马具问题 →](https://blog.can.ac/2026/02/12/the-harness-problem/) |
|
|
134
|
+
| 🛠️ | **LSP + AST-Grep** | 工作区级别的重命名、构建前诊断、基于 AST 的重写。为 Agent 提供 IDE 级别的精度。 |
|
|
135
|
+
| 🧠 | **后台智能体** | 同时发射 5+ 个专家并行工作。保持上下文干净,随时获取成果。 |
|
|
136
|
+
| 📚 | **内置 MCP** | Exa (网络搜索)、Context7 (官方文档)、Grep.app (GitHub 源码搜索)。默认开启。 |
|
|
137
|
+
| 🔁 | **Ralph Loop / `/ulw-loop`** | 自我引用闭环。达不到 100% 完成度绝不停止。 |
|
|
138
|
+
| ✅ | **Todo 强制执行** | Agent 想要摸鱼?系统直接揪着领子拽回来。你的任务,必须完成。 |
|
|
139
|
+
| 💬 | **注释审查员** | 剔除带有浓烈 AI 味的冗余注释。写出的代码就像老练的高级工程师写的。 |
|
|
140
|
+
| 🖥️ | **Tmux 集成** | 完整的交互式终端支持。跑 REPL、用调试器、用 TUI 工具,全都在实时会话中完成。 |
|
|
141
|
+
| 🔌 | **Claude Code 兼容** | 你现有的 Hooks、命令、技能、MCP 和插件?全都能无缝迁移过来。 |
|
|
142
|
+
| 🎯 | **技能内嵌 MCP** | 技能自带其所需的 MCP 服务器。按需开启,不会撑爆你的上下文窗口。 |
|
|
143
|
+
| 📋 | **Prometheus 规划师** | 动手写代码前,先通过访谈模式做好战略规划。 |
|
|
144
|
+
| 🔍 | **`/init-deep`** | 在整个项目目录层级中自动生成 `AGENTS.md`。不仅省 Token,还能大幅提升 Agent 理解力。 |
|
|
145
|
+
|
|
146
|
+
### 自律军团 (Discipline Agents)
|
|
147
|
+
|
|
148
|
+
<table><tr>
|
|
149
|
+
<td align="center"><img src=".github/assets/sisyphus.png" height="300" /></td>
|
|
150
|
+
<td align="center"><img src=".github/assets/hephaestus.png" height="300" /></td>
|
|
151
|
+
</tr></table>
|
|
152
|
+
|
|
153
|
+
**Sisyphus** (`claude-opus-4-6` / **`kimi-k2.5`** / **`glm-5`**) 是你的主指挥官。他负责制定计划、分配任务给专家团队,并以极其激进的并行策略推动任务直至完成。他从不半途而废。
|
|
154
|
+
|
|
155
|
+
**Hephaestus** (`gpt-5.3-codex`) 是你的自主深度工作者。你只需要给他目标,不要给他具体做法。他会自动探索代码库模式,从头到尾独立执行任务,绝不会中途要你当保姆。*名副其实的正牌工匠。*
|
|
156
|
+
|
|
157
|
+
**Prometheus** (`claude-opus-4-6` / **`kimi-k2.5`** / **`glm-5`**) 是你的战略规划师。他通过访谈模式,在动一行代码之前,先通过提问确定范围并构建详尽的执行计划。
|
|
158
|
+
|
|
159
|
+
每一个 Agent 都针对其底层模型的特点进行了专门调优。你无需手动来回切换模型。[阅读背景设定了解更多 →](docs/guide/overview.md)
|
|
160
|
+
|
|
161
|
+
> Anthropic [因为我们屏蔽了 OpenCode](https://x.com/thdxr/status/2010149530486911014)。这就是为什么我们将 Hephaestus 命名为“正牌工匠 (The Legitimate Craftsman)”。这是一个故意的讽刺。
|
|
162
|
+
>
|
|
163
|
+
> 我们在 Opus 上运行得最好,但仅仅使用 Kimi K2.5 + GPT-5.3 Codex 就足以碾压原版的 Claude Code。完全不需要配置。
|
|
164
|
+
|
|
165
|
+
### 智能体调度机制
|
|
166
|
+
|
|
167
|
+
当 Sisyphus 把任务分配给子智能体时,他选择的不是具体的模型,而是 **类别 (Category)**。系统会自动将类别映射到最合适的模型:
|
|
168
|
+
|
|
169
|
+
| 类别 | 作用领域 |
|
|
170
|
+
| :------------------- | :--------------------- |
|
|
171
|
+
| `visual-engineering` | 前端、UI/UX、设计 |
|
|
172
|
+
| `deep` | 深度自主调研与执行 |
|
|
173
|
+
| `quick` | 单文件修改、修错字 |
|
|
174
|
+
| `ultrabrain` | 复杂硬核逻辑、架构决策 |
|
|
175
|
+
|
|
176
|
+
智能体只需要说明要做什么类型的工作,框架就会挑选出最合适的模型去干。你完全不需要操心。
|
|
177
|
+
|
|
178
|
+
### 完全兼容 Claude Code
|
|
179
|
+
|
|
180
|
+
你已经花了大力气调教好了 Claude Code 的配置?太好了。
|
|
181
|
+
|
|
182
|
+
这里完美兼容所有的 Hook、命令、技能、MCP 以及插件。所有配置直接生效,包括插件系统。
|
|
183
|
+
|
|
184
|
+
### 赋予 Agent 世界级的开发工具
|
|
185
|
+
|
|
186
|
+
LSP、AST-Grep、Tmux、MCP 并不是用胶水勉强糊在一起的,而是真正深度的集成。
|
|
187
|
+
|
|
188
|
+
- **LSP**: 支持 `lsp_rename`、`lsp_goto_definition`、`lsp_find_references` 和 `lsp_diagnostics`。给 Agent 提供 IDE 般的精准操作。
|
|
189
|
+
- **AST-Grep**: 支持 25 种编程语言,能够理解语法树的模式匹配和代码重写。
|
|
190
|
+
- **Tmux**: 真实的交互式终端环境,支持 REPL、调试器以及 TUI 工具。Agent 的进程持久运行。
|
|
191
|
+
- **MCP**: 内置 Web 搜索、官方文档直连以及 GitHub 级代码搜索。
|
|
192
|
+
|
|
193
|
+
### 技能专属的按需 MCP 服务器
|
|
194
|
+
|
|
195
|
+
一堆全局 MCP 服务器极其消耗 Context 额度,我们修好了这个问题。
|
|
196
|
+
|
|
197
|
+
现在每个技能 (Skill) 都带着自己的专属 MCP。只在执行该任务时启动,任务完成即刻销毁。Context 窗口始终清爽。
|
|
198
|
+
|
|
199
|
+
### 拒绝瞎改:基于内容哈希的编辑工具 (Hash-Anchored Edits)
|
|
200
|
+
|
|
201
|
+
Harness 问题是真的。绝大多数所谓的 Agent 故障,其实并不是大模型变笨了,而是他们用的文件编辑工具太烂了。
|
|
202
|
+
|
|
203
|
+
> *“目前所有工具都无法为模型提供一种稳定、可验证的行定位标识……它们全都依赖于模型去强行复写一遍自己刚才看到的原文。当模型一旦写错——而且这很常见——用户就会怪罪于大模型太蠢了。”*
|
|
204
|
+
>
|
|
205
|
+
> <br/>- [Can Bölük, The Harness Problem](https://blog.can.ac/2026/02/12/the-harness-problem/)
|
|
206
|
+
|
|
207
|
+
受 [oh-my-pi](https://github.com/can1357/oh-my-pi) 的启发,我们实现了 **Hashline** 技术。Agent 读到的每一行代码,末尾都会打上一个强绑定的内容哈希值:
|
|
208
|
+
|
|
209
|
+
```
|
|
210
|
+
11#VK| function hello() {
|
|
211
|
+
22#XJ| return "world";
|
|
212
|
+
33#MB| }
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
Agent 发起修改时,必须通过这些标签引用目标行。如果在此期间文件发生过变化,哈希验证就会失败,从而在代码被污染前直接驳回。不再有缩进空格错乱,彻底告别改错行的惨剧。
|
|
216
|
+
|
|
217
|
+
在 Grok Code Fast 1 上,仅仅因为更换了这套编辑工具,修改成功率直接从 **6.7% 飙升至 68.3%**。
|
|
218
|
+
|
|
219
|
+
### 深度上下文初始化:`/init-deep`
|
|
220
|
+
|
|
221
|
+
执行一次 `/init-deep`。它会为你生成一个树状的 `AGENTS.md` 文件系统:
|
|
222
|
+
|
|
223
|
+
```
|
|
224
|
+
project/
|
|
225
|
+
├── AGENTS.md ← 全局级架构与约定
|
|
226
|
+
├── src/
|
|
227
|
+
│ ├── AGENTS.md ← src 级规范
|
|
228
|
+
│ └── components/
|
|
229
|
+
│ └── AGENTS.md ← 组件级详细说明
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
Agent 会自动顺藤摸瓜加载对应的 Context,免去了你所有的手动喂喂喂的麻烦。
|
|
233
|
+
|
|
234
|
+
### 让 Agent 动手前先过脑子:Prometheus
|
|
235
|
+
|
|
236
|
+
碰到了硬骨头?千万不要扔个 Prompt 就双手合十祈祷。
|
|
237
|
+
|
|
238
|
+
输入 `/start-work`,召唤 Prometheus 出场。**他会像一个真实的主管那样去采访你**,主动深挖需求、指出模糊地带,并在改动哪怕一行代码之前产出经过严密论证的计划。你的 Agent 终于知道了自己在干嘛。
|
|
239
|
+
|
|
240
|
+
### 技能系统 (Skills)
|
|
241
|
+
|
|
242
|
+
这里的 Skills 绝不只是一段无脑的 Prompt 模板。它们包含了:
|
|
243
|
+
|
|
244
|
+
- 面向特定领域的极度调优系统指令
|
|
245
|
+
- 按需加载的独立 MCP 服务器
|
|
246
|
+
- 对 Agent 能力边界的强制约束
|
|
247
|
+
|
|
248
|
+
默认内置:`playwright`(极其稳健的浏览器自动化)、`git-master`(全自动的原子级提交及 rebase 手术)、`frontend-ui-ux`(设计感拉满的 UI 实现)。
|
|
249
|
+
|
|
250
|
+
想加你自己的?放进 `.opencode/skills/*/SKILL.md` 或者 `~/.config/opencode/skills/*/SKILL.md` 就行。
|
|
251
|
+
|
|
252
|
+
**想看所有的硬核功能说明吗?** 点击查看 **[详细特性文档 (Features)](docs/reference/features.md)** ,深入了解 Agent 架构、Hook 流水线、核心工具链和所有的内置 MCP 等等。
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
> **第一次用 oh-my-opencode?** 阅读 **[概述](docs/guide/overview.md)** 了解你拥有哪些功能,或查看 **[编排指南](docs/guide/orchestration.md)** 了解 Agent 如何协作。
|
|
257
|
+
|
|
258
|
+
## 如何卸载 (Uninstallation)
|
|
259
|
+
|
|
260
|
+
要移除 oh-my-opencode:
|
|
261
|
+
|
|
262
|
+
1. **从你的 OpenCode 配置文件中去掉插件**
|
|
263
|
+
|
|
264
|
+
编辑 `~/.config/opencode/opencode.json` (或 `opencode.jsonc`) ,并把 `"oh-my-opencode"` 从 `plugin` 数组中删掉:
|
|
265
|
+
|
|
266
|
+
```bash
|
|
267
|
+
# 如果你有 jq 的话
|
|
268
|
+
jq '.plugin = [.plugin[] | select(. != "oh-my-opencode")]' \
|
|
269
|
+
~/.config/opencode/opencode.json > /tmp/oc.json && \
|
|
270
|
+
mv /tmp/oc.json ~/.config/opencode/opencode.json
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
2. **清除配置文件 (可选)**
|
|
274
|
+
|
|
275
|
+
```bash
|
|
276
|
+
# 移除全局用户配置
|
|
277
|
+
rm -f ~/.config/opencode/oh-my-opencode.json ~/.config/opencode/oh-my-opencode.jsonc
|
|
278
|
+
|
|
279
|
+
# 移除当前项目的配置
|
|
280
|
+
rm -f .opencode/oh-my-opencode.json .opencode/oh-my-opencode.jsonc
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
3. **确认卸载成功**
|
|
284
|
+
|
|
285
|
+
```bash
|
|
286
|
+
opencode --version
|
|
287
|
+
# 这个时候就应该没有任何关于插件的输出信息了
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
## 闲聊环节 (Author's Note)
|
|
291
|
+
|
|
292
|
+
**想知道做这个插件的哲学理念吗?** 阅读 [Ultrawork 宣言](docs/manifesto.md)。
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
我为了做个人项目,烧掉了整整 $24,000 的 LLM API Token 费用。我把市面上每个宣称好用的代码 Agent 全试了一遍,配置选项被我翻得底朝天。最后我得出了结论,OpenCode 赢了。
|
|
297
|
+
|
|
298
|
+
我踩过的坑、撞过的南墙,它们的终极解法现在全都被硬编码到了这个插件里。你只需要安装,然后直接用。
|
|
299
|
+
|
|
300
|
+
如果把 OpenCode 喻为底层的 Debian/Arch,那么 OmO 毫无疑问就是开箱即用的 Ubuntu/[Omarchy](https://omarchy.org/)。
|
|
301
|
+
|
|
302
|
+
本项目受到 [AmpCode](https://ampcode.com) 和 [Claude Code](https://code.claude.com/docs/overview) 的深刻启发。我把他们好用的特性全都搬了过来,且在很多地方做了底层强化。它仍在活跃开发中,因为毕竟,这是 **Open**Code。
|
|
303
|
+
|
|
304
|
+
其他调度框架只会给你画饼画一张很酷的 Multi-Agent 大饼。我们把饼烙出来了。不仅能用,而且极其稳定。所有的功能都不是为了炫技,而是真的能把任务干完。
|
|
305
|
+
|
|
306
|
+
因为我自己就是这个项目最偏执、最神经质的极端用户:
|
|
307
|
+
- 哪个模型在处理变态业务逻辑时最不容易晕?
|
|
308
|
+
- 谁是修 Bug 的神?
|
|
309
|
+
- 谁文笔最好、最不 AI 味?
|
|
310
|
+
- 谁能在前端交互上碾压一切?
|
|
311
|
+
- 后端性能谁来抗?
|
|
312
|
+
- 谁又快又便宜适合打杂?
|
|
313
|
+
- 竞争对手们今天又发了啥牛逼的功能,能抄吗?
|
|
314
|
+
|
|
315
|
+
这个插件是以上一切的结晶 (Distillation)。直接拿走去用。如果有更好的点子,PR 大门永远敞开。
|
|
316
|
+
|
|
317
|
+
**别再浪费时间去到处对比选哪个框架好了。**
|
|
318
|
+
**我会去市面上调研,把最强的特性全偷过来,然后在这更新。**
|
|
319
|
+
|
|
320
|
+
听起来很自大吗?如果你有更牛逼的实现思路,那就交 PR,热烈欢迎。
|
|
321
|
+
|
|
322
|
+
郑重声明:本项目与文档中提及的任何框架/大模型供应商**均无利益相关**,这完完全全就是一次走火入魔的个人硬核实验成果。
|
|
323
|
+
|
|
324
|
+
本项目 99% 的代码都是直接由 OpenCode 生成的。我本人其实并不懂 TypeScript。**但我以人格担保,这个 README 是我亲自审核并且大幅度重写过的。**
|
|
325
|
+
|
|
326
|
+
## 以下公司的专业开发人员都在用
|
|
327
|
+
|
|
328
|
+
- [Indent](https://indentcorp.com)
|
|
329
|
+
- 开发了 Spray - 意见领袖营销系统, vovushop - 跨境电商独立站, vreview - AI 赋能的电商买家秀营销解决方案
|
|
330
|
+
- [Google](https://google.com)
|
|
331
|
+
- [Microsoft](https://microsoft.com)
|
|
332
|
+
- [ELESTYLE](https://elestyle.jp)
|
|
333
|
+
- 开发了 elepay - 全渠道移动支付网关, OneQR - 专为无现金社会打造的移动 SaaS 生态系统
|
|
334
|
+
|
|
335
|
+
*特别感谢 [@junhoyeo](https://github.com/junhoyeo) 为我们设计的令人惊艳的首图(Hero Image)。*
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// bin/oh-my-opencode.js
|
|
3
|
+
// Wrapper script that detects platform and spawns the correct binary
|
|
4
|
+
|
|
5
|
+
import { spawnSync } from "node:child_process";
|
|
6
|
+
import { readFileSync } from "node:fs";
|
|
7
|
+
import { createRequire } from "node:module";
|
|
8
|
+
import { getPlatformPackageCandidates, getBinaryPath } from "./platform.js";
|
|
9
|
+
|
|
10
|
+
const require = createRequire(import.meta.url);
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Detect libc family on Linux
|
|
14
|
+
* @returns {string | null} 'glibc', 'musl', or null if detection fails
|
|
15
|
+
*/
|
|
16
|
+
function getLibcFamily() {
|
|
17
|
+
if (process.platform !== "linux") {
|
|
18
|
+
return undefined; // Not needed on non-Linux
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
try {
|
|
22
|
+
const detectLibc = require("detect-libc");
|
|
23
|
+
return detectLibc.familySync();
|
|
24
|
+
} catch {
|
|
25
|
+
// detect-libc not available
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
function supportsAvx2() {
|
|
31
|
+
if (process.arch !== "x64") {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
if (process.env.OH_MY_OPENCODE_FORCE_BASELINE === "1") {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if (process.platform === "linux") {
|
|
40
|
+
try {
|
|
41
|
+
const cpuInfo = readFileSync("/proc/cpuinfo", "utf8").toLowerCase();
|
|
42
|
+
return cpuInfo.includes("avx2");
|
|
43
|
+
} catch {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
if (process.platform === "darwin") {
|
|
49
|
+
const probe = spawnSync("sysctl", ["-n", "machdep.cpu.leaf7_features"], {
|
|
50
|
+
encoding: "utf8",
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
if (probe.error || probe.status !== 0) {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
return probe.stdout.toUpperCase().includes("AVX2");
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
function getSignalExitCode(signal) {
|
|
64
|
+
const signalCodeByName = {
|
|
65
|
+
SIGINT: 2,
|
|
66
|
+
SIGILL: 4,
|
|
67
|
+
SIGKILL: 9,
|
|
68
|
+
SIGTERM: 15,
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
return 128 + (signalCodeByName[signal] ?? 1);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
function main() {
|
|
75
|
+
const { platform, arch } = process;
|
|
76
|
+
const libcFamily = getLibcFamily();
|
|
77
|
+
const avx2Supported = supportsAvx2();
|
|
78
|
+
|
|
79
|
+
let packageCandidates;
|
|
80
|
+
try {
|
|
81
|
+
packageCandidates = getPlatformPackageCandidates({
|
|
82
|
+
platform,
|
|
83
|
+
arch,
|
|
84
|
+
libcFamily,
|
|
85
|
+
preferBaseline: avx2Supported === false,
|
|
86
|
+
});
|
|
87
|
+
} catch (error) {
|
|
88
|
+
console.error(`\noh-my-opencode: ${error.message}\n`);
|
|
89
|
+
process.exit(1);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
const resolvedBinaries = packageCandidates
|
|
93
|
+
.map((pkg) => {
|
|
94
|
+
try {
|
|
95
|
+
return { pkg, binPath: require.resolve(getBinaryPath(pkg, platform)) };
|
|
96
|
+
} catch {
|
|
97
|
+
return null;
|
|
98
|
+
}
|
|
99
|
+
})
|
|
100
|
+
.filter((entry) => entry !== null);
|
|
101
|
+
|
|
102
|
+
if (resolvedBinaries.length === 0) {
|
|
103
|
+
console.error(`\noh-my-opencode: Platform binary not installed.`);
|
|
104
|
+
console.error(`\nYour platform: ${platform}-${arch}${libcFamily === "musl" ? "-musl" : ""}`);
|
|
105
|
+
console.error(`Expected packages (in order): ${packageCandidates.join(", ")}`);
|
|
106
|
+
console.error(`\nTo fix, run:`);
|
|
107
|
+
console.error(` npm install ${packageCandidates[0]}\n`);
|
|
108
|
+
process.exit(1);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
for (let index = 0; index < resolvedBinaries.length; index += 1) {
|
|
112
|
+
const currentBinary = resolvedBinaries[index];
|
|
113
|
+
const hasFallback = index < resolvedBinaries.length - 1;
|
|
114
|
+
const result = spawnSync(currentBinary.binPath, process.argv.slice(2), {
|
|
115
|
+
stdio: "inherit",
|
|
116
|
+
});
|
|
117
|
+
|
|
118
|
+
if (result.error) {
|
|
119
|
+
if (hasFallback) {
|
|
120
|
+
continue;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
console.error(`\noh-my-opencode: Failed to execute binary.`);
|
|
124
|
+
console.error(`Error: ${result.error.message}\n`);
|
|
125
|
+
process.exit(2);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
if (result.signal === "SIGILL" && hasFallback) {
|
|
129
|
+
continue;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
if (result.signal) {
|
|
133
|
+
process.exit(getSignalExitCode(result.signal));
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
process.exit(result.status ?? 1);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
process.exit(1);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
main();
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare function getPlatformPackage(options: {
|
|
2
|
+
platform: string;
|
|
3
|
+
arch: string;
|
|
4
|
+
libcFamily?: string | null;
|
|
5
|
+
}): string;
|
|
6
|
+
|
|
7
|
+
export declare function getPlatformPackageCandidates(options: {
|
|
8
|
+
platform: string;
|
|
9
|
+
arch: string;
|
|
10
|
+
libcFamily?: string | null;
|
|
11
|
+
preferBaseline?: boolean;
|
|
12
|
+
}): string[];
|
|
13
|
+
|
|
14
|
+
export declare function getBinaryPath(pkg: string, platform: string): string;
|
package/bin/platform.js
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
// bin/platform.js
|
|
2
|
+
// Shared platform detection module - used by wrapper and postinstall
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Get the platform-specific package name
|
|
6
|
+
* @param {{ platform: string, arch: string, libcFamily?: string | null }} options
|
|
7
|
+
* @returns {string} Package name like "oh-my-opencode-darwin-arm64"
|
|
8
|
+
* @throws {Error} If libc cannot be detected on Linux
|
|
9
|
+
*/
|
|
10
|
+
export function getPlatformPackage({ platform, arch, libcFamily }) {
|
|
11
|
+
let suffix = "";
|
|
12
|
+
if (platform === "linux") {
|
|
13
|
+
if (libcFamily === null || libcFamily === undefined) {
|
|
14
|
+
throw new Error(
|
|
15
|
+
"Could not detect libc on Linux. " +
|
|
16
|
+
"Please ensure detect-libc is installed or report this issue."
|
|
17
|
+
);
|
|
18
|
+
}
|
|
19
|
+
if (libcFamily === "musl") {
|
|
20
|
+
suffix = "-musl";
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Map platform names: win32 -> windows (for package name)
|
|
25
|
+
const os = platform === "win32" ? "windows" : platform;
|
|
26
|
+
return `@heidi-dang/oh-my-opencode-${os}-${arch}${suffix}`;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/** @param {{ platform: string, arch: string, libcFamily?: string | null, preferBaseline?: boolean }} options */
|
|
30
|
+
export function getPlatformPackageCandidates({ platform, arch, libcFamily, preferBaseline = false }) {
|
|
31
|
+
const primaryPackage = getPlatformPackage({ platform, arch, libcFamily });
|
|
32
|
+
const baselinePackage = getBaselinePlatformPackage({ platform, arch, libcFamily });
|
|
33
|
+
|
|
34
|
+
if (!baselinePackage) {
|
|
35
|
+
return [primaryPackage];
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
return preferBaseline ? [baselinePackage, primaryPackage] : [primaryPackage, baselinePackage];
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/** @param {{ platform: string, arch: string, libcFamily?: string | null }} options */
|
|
42
|
+
function getBaselinePlatformPackage({ platform, arch, libcFamily }) {
|
|
43
|
+
if (arch !== "x64") {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
if (platform === "darwin") {
|
|
48
|
+
return "@heidi-dang/oh-my-opencode-darwin-x64-baseline";
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
if (platform === "win32") {
|
|
52
|
+
return "@heidi-dang/oh-my-opencode-windows-x64-baseline";
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
if (platform === "linux") {
|
|
56
|
+
if (libcFamily === null || libcFamily === undefined) {
|
|
57
|
+
throw new Error(
|
|
58
|
+
"Could not detect libc on Linux. " +
|
|
59
|
+
"Please ensure detect-libc is installed or report this issue."
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (libcFamily === "musl") {
|
|
64
|
+
return "@heidi-dang/oh-my-opencode-linux-x64-musl-baseline";
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
return "@heidi-dang/oh-my-opencode-linux-x64-baseline";
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Get the path to the binary within a platform package
|
|
75
|
+
* @param {string} pkg Package name
|
|
76
|
+
* @param {string} platform Process platform
|
|
77
|
+
* @returns {string} Relative path like "oh-my-opencode-darwin-arm64/bin/oh-my-opencode"
|
|
78
|
+
*/
|
|
79
|
+
export function getBinaryPath(pkg, platform) {
|
|
80
|
+
const ext = platform === "win32" ? ".exe" : "";
|
|
81
|
+
return `${pkg}/bin/oh-my-opencode${ext}`;
|
|
82
|
+
}
|