opencode-orchestrator 1.3.3 → 1.3.5
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 +21 -21
- package/README.md +148 -391
- package/bin/orchestrator-linux-arm64 +0 -0
- package/bin/orchestrator-linux-x64 +0 -0
- package/dist/agents/commander.d.ts +0 -0
- package/dist/agents/definitions.d.ts +0 -0
- package/dist/agents/prompts/01_philosophy/anti_hallucination.d.ts +0 -0
- package/dist/agents/prompts/01_philosophy/core.d.ts +0 -0
- package/dist/agents/prompts/01_philosophy/execution_assurance.d.ts +0 -0
- package/dist/agents/prompts/01_philosophy/index.d.ts +0 -0
- package/dist/agents/prompts/01_philosophy/metadata.d.ts +0 -0
- package/dist/agents/prompts/01_philosophy/modularity.d.ts +0 -0
- package/dist/agents/prompts/02_discovery/agents/discovery_commander.d.ts +0 -0
- package/dist/agents/prompts/02_discovery/agents/discovery_planner.d.ts +0 -0
- package/dist/agents/prompts/02_discovery/agents/index.d.ts +0 -0
- package/dist/agents/prompts/02_discovery/discovery_core.d.ts +0 -0
- package/dist/agents/prompts/02_discovery/discovery_environment.d.ts +0 -0
- package/dist/agents/prompts/02_discovery/discovery_skills.d.ts +0 -0
- package/dist/agents/prompts/02_discovery/discovery_workspace.d.ts +0 -0
- package/dist/agents/prompts/02_discovery/index.d.ts +0 -0
- package/dist/agents/prompts/03_planning/agents/index.d.ts +0 -0
- package/dist/agents/prompts/03_planning/agents/planning_commander.d.ts +0 -0
- package/dist/agents/prompts/03_planning/agents/planning_planner.d.ts +0 -0
- package/dist/agents/prompts/03_planning/agents/planning_reviewer.d.ts +0 -0
- package/dist/agents/prompts/03_planning/index.d.ts +0 -0
- package/dist/agents/prompts/03_planning/planning_core.d.ts +0 -0
- package/dist/agents/prompts/03_planning/planning_decomposition.d.ts +0 -0
- package/dist/agents/prompts/03_planning/planning_file_planning.d.ts +0 -0
- package/dist/agents/prompts/03_planning/planning_parallel.d.ts +0 -0
- package/dist/agents/prompts/03_planning/planning_research.d.ts +0 -0
- package/dist/agents/prompts/03_planning/planning_todo_format.d.ts +0 -0
- package/dist/agents/prompts/03_planning/planning_todo_rules.d.ts +0 -0
- package/dist/agents/prompts/03_planning/planning_todo_sync.d.ts +0 -0
- package/dist/agents/prompts/04_execution/agents/execution_commander.d.ts +0 -0
- package/dist/agents/prompts/04_execution/agents/execution_worker.d.ts +0 -0
- package/dist/agents/prompts/04_execution/agents/index.d.ts +0 -0
- package/dist/agents/prompts/04_execution/execution_core.d.ts +0 -0
- package/dist/agents/prompts/04_execution/execution_delegation.d.ts +0 -0
- package/dist/agents/prompts/04_execution/execution_error_handling.d.ts +0 -0
- package/dist/agents/prompts/04_execution/execution_file_assignment.d.ts +0 -0
- package/dist/agents/prompts/04_execution/execution_hyper_parallel.d.ts +0 -0
- package/dist/agents/prompts/04_execution/execution_isolation.d.ts +0 -0
- package/dist/agents/prompts/04_execution/execution_quality.d.ts +0 -0
- package/dist/agents/prompts/04_execution/execution_strategy.d.ts +0 -0
- package/dist/agents/prompts/04_execution/execution_tdd.d.ts +0 -0
- package/dist/agents/prompts/04_execution/execution_workflow.d.ts +0 -0
- package/dist/agents/prompts/04_execution/index.d.ts +0 -0
- package/dist/agents/prompts/05_verification/agents/index.d.ts +0 -0
- package/dist/agents/prompts/05_verification/agents/verification_commander.d.ts +0 -0
- package/dist/agents/prompts/05_verification/agents/verification_reviewer.d.ts +0 -0
- package/dist/agents/prompts/05_verification/index.d.ts +0 -0
- package/dist/agents/prompts/05_verification/verification_async_monitoring.d.ts +0 -0
- package/dist/agents/prompts/05_verification/verification_build.d.ts +0 -0
- package/dist/agents/prompts/05_verification/verification_core.d.ts +0 -0
- package/dist/agents/prompts/05_verification/verification_evidence.d.ts +0 -0
- package/dist/agents/prompts/05_verification/verification_integration.d.ts +0 -0
- package/dist/agents/prompts/05_verification/verification_strategy.d.ts +0 -0
- package/dist/agents/prompts/05_verification/verification_sync_check.d.ts +0 -0
- package/dist/agents/prompts/05_verification/verification_sync_handling.d.ts +0 -0
- package/dist/agents/prompts/05_verification/verification_test.d.ts +0 -0
- package/dist/agents/prompts/06_mission/agents/index.d.ts +0 -0
- package/dist/agents/prompts/06_mission/agents/mission_commander.d.ts +0 -0
- package/dist/agents/prompts/06_mission/index.d.ts +0 -0
- package/dist/agents/prompts/06_mission/mission_completion_conditions.d.ts +0 -0
- package/dist/agents/prompts/06_mission/mission_core.d.ts +0 -0
- package/dist/agents/prompts/06_mission/mission_lifecycle.d.ts +0 -0
- package/dist/agents/prompts/06_mission/mission_loop_continuation.d.ts +0 -0
- package/dist/agents/prompts/06_mission/mission_recovery.d.ts +0 -0
- package/dist/agents/prompts/06_mission/mission_status_tracking.d.ts +0 -0
- package/dist/agents/prompts/07_agents/commander/commander_forbidden.d.ts +0 -0
- package/dist/agents/prompts/07_agents/commander/commander_identity.d.ts +0 -0
- package/dist/agents/prompts/07_agents/commander/commander_mandate.d.ts +0 -0
- package/dist/agents/prompts/07_agents/commander/commander_required.d.ts +0 -0
- package/dist/agents/prompts/07_agents/commander/commander_role.d.ts +0 -0
- package/dist/agents/prompts/07_agents/commander/index.d.ts +0 -0
- package/dist/agents/prompts/07_agents/planner/index.d.ts +0 -0
- package/dist/agents/prompts/07_agents/planner/planner_forbidden.d.ts +0 -0
- package/dist/agents/prompts/07_agents/planner/planner_identity.d.ts +0 -0
- package/dist/agents/prompts/07_agents/planner/planner_mandate.d.ts +0 -0
- package/dist/agents/prompts/07_agents/planner/planner_required.d.ts +0 -0
- package/dist/agents/prompts/07_agents/reviewer/index.d.ts +0 -0
- package/dist/agents/prompts/07_agents/reviewer/reviewer_forbidden.d.ts +0 -0
- package/dist/agents/prompts/07_agents/reviewer/reviewer_identity.d.ts +0 -0
- package/dist/agents/prompts/07_agents/reviewer/reviewer_mandate.d.ts +0 -0
- package/dist/agents/prompts/07_agents/reviewer/reviewer_required.d.ts +0 -0
- package/dist/agents/prompts/07_agents/worker/index.d.ts +0 -0
- package/dist/agents/prompts/07_agents/worker/worker_forbidden.d.ts +0 -0
- package/dist/agents/prompts/07_agents/worker/worker_identity.d.ts +0 -0
- package/dist/agents/prompts/07_agents/worker/worker_mandate.d.ts +0 -0
- package/dist/agents/prompts/07_agents/worker/worker_required.d.ts +0 -0
- package/dist/agents/prompts/08_tools/agents/index.d.ts +0 -0
- package/dist/agents/prompts/08_tools/agents/tools_reviewer.d.ts +0 -0
- package/dist/agents/prompts/08_tools/agents/tools_worker.d.ts +0 -0
- package/dist/agents/prompts/08_tools/index.d.ts +0 -0
- package/dist/agents/prompts/08_tools/tools_ast.d.ts +0 -0
- package/dist/agents/prompts/08_tools/tools_code_editing.d.ts +0 -0
- package/dist/agents/prompts/08_tools/tools_core.d.ts +0 -0
- package/dist/agents/prompts/08_tools/tools_lsp.d.ts +0 -0
- package/dist/agents/prompts/08_tools/tools_search.d.ts +0 -0
- package/dist/agents/prompts/08_tools/tools_testing.d.ts +0 -0
- package/dist/agents/prompts/index.d.ts +0 -0
- package/dist/agents/subagents/planner.d.ts +0 -0
- package/dist/agents/subagents/reviewer.d.ts +0 -0
- package/dist/agents/subagents/worker.d.ts +0 -0
- package/dist/core/agents/agent-registry.d.ts +0 -0
- package/dist/core/agents/concurrency-config.d.ts +4 -0
- package/dist/core/agents/concurrency-token.d.ts +0 -0
- package/dist/core/agents/concurrency.d.ts +2 -0
- package/dist/core/agents/config.d.ts +0 -0
- package/dist/core/agents/consts/index.d.ts +0 -0
- package/dist/core/agents/consts/task-status.const.d.ts +0 -0
- package/dist/core/agents/format.d.ts +0 -0
- package/dist/core/agents/index.d.ts +0 -0
- package/dist/core/agents/interfaces/index.d.ts +0 -0
- package/dist/core/agents/interfaces/launch-input.interface.d.ts +0 -0
- package/dist/core/agents/interfaces/resume-input.interface.d.ts +0 -0
- package/dist/core/agents/interfaces/session-pool.interface.d.ts +0 -0
- package/dist/core/agents/logger.d.ts +0 -0
- package/dist/core/agents/manager/event-handler.d.ts +0 -0
- package/dist/core/agents/manager/index.d.ts +0 -0
- package/dist/core/agents/manager/task-cleaner.d.ts +0 -0
- package/dist/core/agents/manager/task-launcher.d.ts +0 -0
- package/dist/core/agents/manager/task-poller.d.ts +0 -0
- package/dist/core/agents/manager/task-resumer.d.ts +0 -0
- package/dist/core/agents/manager.d.ts +3 -1
- package/dist/core/agents/persistence/task-wal.d.ts +0 -0
- package/dist/core/agents/session-pool.d.ts +0 -0
- package/dist/core/agents/task-store.d.ts +0 -0
- package/dist/core/agents/types/index.d.ts +0 -0
- package/dist/core/agents/types/parallel-task-status.type.d.ts +0 -0
- package/dist/core/cache/constants.d.ts +0 -0
- package/dist/core/cache/document-cache.d.ts +0 -0
- package/dist/core/cache/index.d.ts +0 -0
- package/dist/core/cache/interfaces/cache-document-entry.d.ts +0 -0
- package/dist/core/cache/interfaces/cache-list-entry.d.ts +0 -0
- package/dist/core/cache/interfaces/cache-metadata.d.ts +0 -0
- package/dist/core/cache/interfaces/cache-stats.d.ts +0 -0
- package/dist/core/cache/interfaces/cached-document.d.ts +0 -0
- package/dist/core/cache/interfaces/index.d.ts +0 -0
- package/dist/core/cache/interfaces.d.ts +0 -0
- package/dist/core/cache/operations.d.ts +0 -0
- package/dist/core/cache/utils.d.ts +0 -0
- package/dist/core/cleanup/cleanup-scheduler.d.ts +0 -0
- package/dist/core/commands/index.d.ts +0 -0
- package/dist/core/commands/interfaces/background-task.d.ts +0 -0
- package/dist/core/commands/interfaces/index.d.ts +0 -0
- package/dist/core/commands/interfaces/run-background-options.d.ts +0 -0
- package/dist/core/commands/manager.d.ts +0 -0
- package/dist/core/commands/types/background-task-status.d.ts +0 -0
- package/dist/core/commands/types/index.d.ts +0 -0
- package/dist/core/config/plugin-options.d.ts +9 -0
- package/dist/core/context/context-window-monitor.d.ts +0 -0
- package/dist/core/context/index.d.ts +0 -0
- package/dist/core/knowledge/context-provider.d.ts +0 -0
- package/dist/core/knowledge/graph-parser.d.ts +0 -0
- package/dist/core/knowledge/hybrid-search.d.ts +0 -0
- package/dist/core/knowledge/index.d.ts +1 -0
- package/dist/core/knowledge/memory-consolidation.d.ts +0 -0
- package/dist/core/knowledge/mission-memory.d.ts +4 -0
- package/dist/core/knowledge/safety-guards.d.ts +0 -0
- package/dist/core/knowledge/scratchpad.d.ts +0 -0
- package/dist/core/knowledge/tag-indexer.d.ts +0 -0
- package/dist/core/loop/circuit-breaker.d.ts +0 -0
- package/dist/core/loop/compaction-guard.d.ts +0 -0
- package/dist/core/loop/formatters.d.ts +0 -0
- package/dist/core/loop/interfaces/index.d.ts +0 -0
- package/dist/core/loop/interfaces/todo-stats.d.ts +0 -0
- package/dist/core/loop/interfaces/todo.d.ts +0 -0
- package/dist/core/loop/interfaces.d.ts +0 -0
- package/dist/core/loop/mission-ledger.d.ts +17 -0
- package/dist/core/loop/mission-loop-handler.d.ts +0 -0
- package/dist/core/loop/mission-loop.d.ts +7 -1
- package/dist/core/loop/mission-runtime-options.d.ts +8 -0
- package/dist/core/loop/parser.d.ts +0 -0
- package/dist/core/loop/progress-tracker.d.ts +0 -0
- package/dist/core/loop/session-state-store.d.ts +0 -0
- package/dist/core/loop/stats.d.ts +0 -0
- package/dist/core/loop/todo-continuation.d.ts +0 -0
- package/dist/core/loop/todo-enforcer.d.ts +0 -0
- package/dist/core/loop/todo-manager.d.ts +0 -0
- package/dist/core/loop/types/index.d.ts +0 -0
- package/dist/core/loop/types/todo-priority.d.ts +0 -0
- package/dist/core/loop/types/todo-status.d.ts +0 -0
- package/dist/core/loop/verification.d.ts +0 -0
- package/dist/core/memory/interfaces.d.ts +0 -0
- package/dist/core/memory/memory-manager.d.ts +0 -0
- package/dist/core/metrics/collector.d.ts +0 -0
- package/dist/core/notification/os-notify/index.d.ts +0 -0
- package/dist/core/notification/os-notify/notifier.d.ts +0 -0
- package/dist/core/notification/os-notify/platform-resolver.d.ts +0 -0
- package/dist/core/notification/os-notify/platform.d.ts +0 -0
- package/dist/core/notification/os-notify/sound-player.d.ts +0 -0
- package/dist/core/notification/os-notify/todo-checker.d.ts +0 -0
- package/dist/core/notification/task-toast-manager.d.ts +0 -0
- package/dist/core/notification/toast-core.d.ts +0 -0
- package/dist/core/notification/toast-sanitizer.d.ts +0 -0
- package/dist/core/notification/toast.d.ts +0 -0
- package/dist/core/orchestrator/index.d.ts +0 -0
- package/dist/core/orchestrator/interfaces/index.d.ts +0 -0
- package/dist/core/orchestrator/interfaces/session-state.d.ts +0 -0
- package/dist/core/orchestrator/session-manager.d.ts +0 -0
- package/dist/core/orchestrator/state.d.ts +1 -1
- package/dist/core/orchestrator/types/index.d.ts +0 -0
- package/dist/core/orchestrator/types/task-status.d.ts +0 -0
- package/dist/core/plugins/interfaces.d.ts +0 -0
- package/dist/core/plugins/plugin-manager.d.ts +0 -0
- package/dist/core/pool/buffer-pool.d.ts +0 -0
- package/dist/core/pool/object-pool.d.ts +0 -0
- package/dist/core/pool/string-pool.d.ts +0 -0
- package/dist/core/pool/task-pool.d.ts +0 -0
- package/dist/core/progress/calculator.d.ts +0 -0
- package/dist/core/progress/formatters.d.ts +0 -0
- package/dist/core/progress/interfaces/index.d.ts +0 -0
- package/dist/core/progress/interfaces/progress-snapshot.d.ts +0 -0
- package/dist/core/progress/interfaces/snapshot-input.d.ts +0 -0
- package/dist/core/progress/interfaces/step-progress.d.ts +0 -0
- package/dist/core/progress/interfaces/task-progress.d.ts +0 -0
- package/dist/core/progress/interfaces/todo-progress.d.ts +0 -0
- package/dist/core/progress/interfaces.d.ts +0 -0
- package/dist/core/progress/progress-notifier.d.ts +0 -0
- package/dist/core/progress/state-broadcaster.d.ts +0 -0
- package/dist/core/progress/store.d.ts +0 -0
- package/dist/core/progress/tracker.d.ts +0 -0
- package/dist/core/queue/async-queue.d.ts +0 -0
- package/dist/core/queue/async-utils.d.ts +0 -0
- package/dist/core/queue/index.d.ts +0 -0
- package/dist/core/queue/work-pool.d.ts +0 -0
- package/dist/core/queue/work-stealing-deque.d.ts +0 -0
- package/dist/core/queue/worker-pool.d.ts +0 -0
- package/dist/core/recovery/auto-recovery.d.ts +0 -0
- package/dist/core/recovery/constants.d.ts +0 -0
- package/dist/core/recovery/handler.d.ts +0 -0
- package/dist/core/recovery/interfaces/error-context.d.ts +0 -0
- package/dist/core/recovery/interfaces/error-pattern.d.ts +0 -0
- package/dist/core/recovery/interfaces/index.d.ts +0 -0
- package/dist/core/recovery/interfaces/recovery-action.d.ts +0 -0
- package/dist/core/recovery/interfaces/recovery-record.d.ts +0 -0
- package/dist/core/recovery/interfaces/recovery-stats.d.ts +0 -0
- package/dist/core/recovery/interfaces.d.ts +0 -0
- package/dist/core/recovery/patterns.d.ts +0 -0
- package/dist/core/recovery/retry.d.ts +0 -0
- package/dist/core/recovery/session-recovery.d.ts +0 -0
- package/dist/core/session/interfaces/context-stats.d.ts +0 -0
- package/dist/core/session/interfaces/index.d.ts +0 -0
- package/dist/core/session/interfaces/shared-context.d.ts +0 -0
- package/dist/core/session/interfaces/shared-decision.d.ts +0 -0
- package/dist/core/session/interfaces/shared-document.d.ts +0 -0
- package/dist/core/session/interfaces/shared-finding.d.ts +0 -0
- package/dist/core/session/interfaces.d.ts +0 -0
- package/dist/core/session/shared-context.d.ts +0 -0
- package/dist/core/session/store.d.ts +0 -0
- package/dist/core/session/summary.d.ts +0 -0
- package/dist/core/sync/todo-parser.d.ts +0 -0
- package/dist/core/sync/todo-sync-service.d.ts +0 -0
- package/dist/core/task/interfaces/index.d.ts +0 -0
- package/dist/core/task/interfaces/task-hierarchy.d.ts +0 -0
- package/dist/core/task/interfaces/task-input.d.ts +0 -0
- package/dist/core/task/interfaces/task-node.d.ts +0 -0
- package/dist/core/task/interfaces/task-progress.d.ts +0 -0
- package/dist/core/task/interfaces.d.ts +0 -0
- package/dist/core/task/parser.d.ts +0 -0
- package/dist/core/task/scheduler.d.ts +0 -0
- package/dist/core/task/store.d.ts +0 -0
- package/dist/core/task/summary.d.ts +0 -0
- package/dist/core/task/task-decomposer.d.ts +0 -0
- package/dist/core/todo/todo-manager.d.ts +0 -0
- package/dist/hooks/compatibility/external-plugin.d.ts +0 -0
- package/dist/hooks/constants.d.ts +0 -0
- package/dist/hooks/custom/agent-ui.d.ts +0 -0
- package/dist/hooks/custom/memory-gate.d.ts +0 -0
- package/dist/hooks/custom/metrics.d.ts +0 -0
- package/dist/hooks/custom/resource-control.d.ts +0 -0
- package/dist/hooks/custom/secret-scanner.d.ts +0 -0
- package/dist/hooks/custom/strict-role-guard.d.ts +0 -0
- package/dist/hooks/custom/user-activity.d.ts +0 -0
- package/dist/hooks/features/mission-loop.d.ts +1 -0
- package/dist/hooks/features/sanity-check.d.ts +0 -0
- package/dist/hooks/index.d.ts +0 -0
- package/dist/hooks/registry.d.ts +0 -0
- package/dist/hooks/types.d.ts +0 -0
- package/dist/index.d.ts +0 -0
- package/dist/index.js +844 -214
- package/dist/plugin-handlers/assistant-done-handler.d.ts +0 -0
- package/dist/plugin-handlers/chat-message-handler.d.ts +0 -0
- package/dist/plugin-handlers/config-handler.d.ts +8 -1
- package/dist/plugin-handlers/event-handler.d.ts +0 -0
- package/dist/plugin-handlers/index.d.ts +0 -0
- package/dist/plugin-handlers/interfaces/assistant-done-context.d.ts +0 -0
- package/dist/plugin-handlers/interfaces/chat-message-context.d.ts +0 -0
- package/dist/plugin-handlers/interfaces/event-handler-context.d.ts +0 -0
- package/dist/plugin-handlers/interfaces/index.d.ts +0 -0
- package/dist/plugin-handlers/interfaces/orchestrator-state.d.ts +0 -0
- package/dist/plugin-handlers/interfaces/session-compacting.d.ts +0 -0
- package/dist/plugin-handlers/interfaces/session-state.d.ts +3 -0
- package/dist/plugin-handlers/interfaces/system-transform.d.ts +0 -0
- package/dist/plugin-handlers/interfaces/tool-execute-context.d.ts +0 -0
- package/dist/plugin-handlers/interfaces/tool-hook.d.ts +0 -0
- package/dist/plugin-handlers/session-compacting-handler.d.ts +0 -0
- package/dist/plugin-handlers/system-transform-handler.d.ts +0 -0
- package/dist/plugin-handlers/tool-execute-handler.d.ts +0 -0
- package/dist/plugin-handlers/tool-execute-pre-handler.d.ts +0 -0
- package/dist/scripts/postinstall.js +21 -10
- package/dist/scripts/preuninstall.js +20 -11
- package/dist/shared/agent/constants/index.d.ts +0 -1
- package/dist/shared/agent/constants/names.d.ts +0 -0
- package/dist/shared/agent/index.d.ts +0 -0
- package/dist/shared/agent/interfaces/agent-definition.d.ts +0 -0
- package/dist/shared/agent/interfaces/concurrency-config.d.ts +0 -0
- package/dist/shared/agent/interfaces/index.d.ts +0 -0
- package/dist/shared/agent/types/agent-name.d.ts +0 -0
- package/dist/shared/agent/types/index.d.ts +0 -0
- package/dist/shared/agent/utils/index.d.ts +0 -0
- package/dist/shared/cache/constants/cache-actions.d.ts +0 -0
- package/dist/shared/cache/constants/cache.d.ts +0 -0
- package/dist/shared/cache/constants/filter-status.d.ts +0 -0
- package/dist/shared/cache/constants/index.d.ts +0 -0
- package/dist/shared/cache/index.d.ts +0 -0
- package/dist/shared/command/index.d.ts +0 -0
- package/dist/shared/command/interfaces/background-task.d.ts +0 -0
- package/dist/shared/command/interfaces/index.d.ts +0 -0
- package/dist/shared/command/interfaces/run-background-options.d.ts +0 -0
- package/dist/shared/command/types/background-task-status.d.ts +0 -0
- package/dist/shared/command/types/index.d.ts +0 -0
- package/dist/shared/constants/security-patterns.d.ts +0 -0
- package/dist/shared/constants/system-messages.d.ts +0 -0
- package/dist/shared/core/constants/cli.d.ts +0 -0
- package/dist/shared/core/constants/id-prefix.d.ts +0 -0
- package/dist/shared/core/constants/index.d.ts +0 -0
- package/dist/shared/core/constants/lifecycle.d.ts +0 -0
- package/dist/shared/core/constants/limits.d.ts +1 -1
- package/dist/shared/core/constants/logging.d.ts +0 -0
- package/dist/shared/core/constants/memory-hooks.d.ts +0 -0
- package/dist/shared/core/constants/memory-limits.d.ts +0 -0
- package/dist/shared/core/constants/paths.d.ts +0 -0
- package/dist/shared/core/constants/phases.d.ts +0 -0
- package/dist/shared/core/constants/status-labels.d.ts +0 -0
- package/dist/shared/core/constants/time.d.ts +0 -0
- package/dist/shared/core/constants/wal-actions.d.ts +0 -0
- package/dist/shared/core/index.d.ts +0 -0
- package/dist/shared/core/poolable.d.ts +0 -0
- package/dist/shared/errors/constants/error-patterns.d.ts +0 -0
- package/dist/shared/errors/constants/error-type.d.ts +0 -0
- package/dist/shared/errors/constants/index.d.ts +0 -0
- package/dist/shared/errors/detection.d.ts +0 -0
- package/dist/shared/errors/index.d.ts +0 -0
- package/dist/shared/errors/retry.d.ts +0 -0
- package/dist/shared/errors/types/error-pattern-type.d.ts +0 -0
- package/dist/shared/errors/types/index.d.ts +0 -0
- package/dist/shared/index.d.ts +0 -0
- package/dist/shared/lifecycle/index.d.ts +0 -0
- package/dist/shared/lifecycle/registration.d.ts +0 -0
- package/dist/shared/lifecycle/shutdown-manager.d.ts +0 -0
- package/dist/shared/loop/constants/index.d.ts +0 -0
- package/dist/shared/loop/constants/labels.d.ts +0 -0
- package/dist/shared/loop/constants/loop.d.ts +1 -1
- package/dist/shared/loop/constants/mission-control.d.ts +2 -2
- package/dist/shared/loop/constants/task-status.d.ts +0 -0
- package/dist/shared/loop/constants/todo-status.d.ts +0 -0
- package/dist/shared/loop/index.d.ts +0 -0
- package/dist/shared/loop/interfaces/index.d.ts +0 -0
- package/dist/shared/loop/interfaces/mission-loop.d.ts +9 -1
- package/dist/shared/loop/interfaces/todo-stats.d.ts +0 -0
- package/dist/shared/loop/interfaces/todo.d.ts +0 -0
- package/dist/shared/loop/types/index.d.ts +0 -0
- package/dist/shared/loop/types/todo-priority.d.ts +0 -0
- package/dist/shared/loop/types/todo-status.d.ts +0 -0
- package/dist/shared/message/constants/index.d.ts +0 -0
- package/dist/shared/message/constants/message-roles.d.ts +0 -0
- package/dist/shared/message/constants/part-types.d.ts +0 -0
- package/dist/shared/message/constants/plugin-hooks.d.ts +0 -0
- package/dist/shared/message/constants/prompts.d.ts +0 -0
- package/dist/shared/message/constants/slash-commands.d.ts +0 -0
- package/dist/shared/message/index.d.ts +0 -0
- package/dist/shared/notification/constants/index.d.ts +0 -0
- package/dist/shared/notification/constants/toast-duration.d.ts +0 -0
- package/dist/shared/notification/constants/toast-variants.d.ts +0 -0
- package/dist/shared/notification/constants/tui.const.d.ts +0 -0
- package/dist/shared/notification/index.d.ts +0 -0
- package/dist/shared/notification/interfaces/index.d.ts +0 -0
- package/dist/shared/notification/interfaces/task-toast.interface.d.ts +0 -0
- package/dist/shared/notification/interfaces/toast-message.d.ts +0 -0
- package/dist/shared/notification/interfaces/toast-options.d.ts +0 -0
- package/dist/shared/notification/os-notify/constants/index.d.ts +0 -0
- package/dist/shared/notification/os-notify/constants/notification-command-keys.d.ts +0 -0
- package/dist/shared/notification/os-notify/constants/notification-commands.d.ts +0 -0
- package/dist/shared/notification/os-notify/constants/notification-defaults.d.ts +0 -0
- package/dist/shared/notification/os-notify/index.d.ts +0 -0
- package/dist/shared/notification/os-notify/interfaces/index.d.ts +0 -0
- package/dist/shared/notification/os-notify/interfaces/notification-config.d.ts +0 -0
- package/dist/shared/notification/os-notify/interfaces/notification-state.d.ts +0 -0
- package/dist/shared/notification/os-notify/types/index.d.ts +0 -0
- package/dist/shared/notification/os-notify/types/notification-commands.d.ts +0 -0
- package/dist/shared/notification/presets/index.d.ts +0 -0
- package/dist/shared/notification/presets/mission.d.ts +0 -0
- package/dist/shared/notification/presets/parallel.d.ts +0 -0
- package/dist/shared/notification/presets/session.d.ts +0 -0
- package/dist/shared/notification/presets/task-lifecycle.d.ts +0 -0
- package/dist/shared/notification/presets/tools.d.ts +0 -0
- package/dist/shared/notification/presets/warnings.d.ts +0 -0
- package/dist/shared/notification/types/index.d.ts +0 -0
- package/dist/shared/notification/types/toast-variant.d.ts +0 -0
- package/dist/shared/os/constants/index.d.ts +0 -0
- package/dist/shared/os/constants/platform.d.ts +0 -0
- package/dist/shared/os/index.d.ts +0 -0
- package/dist/shared/os/types/index.d.ts +0 -0
- package/dist/shared/os/types/platform.d.ts +0 -0
- package/dist/shared/prompt/constants/architecture.d.ts +0 -0
- package/dist/shared/prompt/constants/index.d.ts +0 -0
- package/dist/shared/prompt/constants/mandates.d.ts +0 -0
- package/dist/shared/prompt/constants/philosophy.d.ts +0 -0
- package/dist/shared/prompt/constants/scouts.d.ts +0 -0
- package/dist/shared/prompt/constants/status.d.ts +0 -0
- package/dist/shared/prompt/constants/tags.d.ts +0 -0
- package/dist/shared/prompt/index.d.ts +0 -0
- package/dist/shared/recovery/constants/history.d.ts +0 -0
- package/dist/shared/recovery/constants/index.d.ts +0 -0
- package/dist/shared/recovery/constants/recovery-level.d.ts +0 -0
- package/dist/shared/recovery/constants/recovery.d.ts +0 -0
- package/dist/shared/recovery/index.d.ts +0 -0
- package/dist/shared/recovery/interfaces/error-context.d.ts +0 -0
- package/dist/shared/recovery/interfaces/index.d.ts +0 -0
- package/dist/shared/recovery/interfaces/recovery-record.d.ts +0 -0
- package/dist/shared/recovery/types/index.d.ts +0 -0
- package/dist/shared/recovery/types/recovery-action.d.ts +0 -0
- package/dist/shared/session/constants/events/document-events.d.ts +0 -0
- package/dist/shared/session/constants/events/index.d.ts +2 -0
- package/dist/shared/session/constants/events/message-events.d.ts +0 -0
- package/dist/shared/session/constants/events/mission-events.d.ts +0 -0
- package/dist/shared/session/constants/events/session-events.d.ts +3 -0
- package/dist/shared/session/constants/events/special-events.d.ts +0 -0
- package/dist/shared/session/constants/events/task-events.d.ts +0 -0
- package/dist/shared/session/constants/events/todo-events.d.ts +0 -0
- package/dist/shared/session/constants/index.d.ts +0 -0
- package/dist/shared/session/index.d.ts +0 -0
- package/dist/shared/task/base-task.d.ts +0 -0
- package/dist/shared/task/constants/background-status.d.ts +0 -0
- package/dist/shared/task/constants/background-task.d.ts +0 -0
- package/dist/shared/task/constants/index.d.ts +0 -0
- package/dist/shared/task/constants/metadata-keys.d.ts +0 -0
- package/dist/shared/task/constants/parallel-task.d.ts +0 -0
- package/dist/shared/task/index.d.ts +0 -0
- package/dist/shared/task/interfaces/index.d.ts +0 -0
- package/dist/shared/task/interfaces/launch-input.d.ts +0 -0
- package/dist/shared/task/interfaces/parallel-task.d.ts +0 -0
- package/dist/shared/task/interfaces/resume-input.d.ts +0 -0
- package/dist/shared/task/interfaces/task-progress.d.ts +0 -0
- package/dist/shared/task/types/index.d.ts +0 -0
- package/dist/shared/task/types/parallel-task-status.d.ts +0 -0
- package/dist/shared/tool/constants/common/index.d.ts +0 -0
- package/dist/shared/tool/constants/common/labels.d.ts +0 -0
- package/dist/shared/tool/constants/common/languages.d.ts +0 -0
- package/dist/shared/tool/constants/common/output-labels.d.ts +0 -0
- package/dist/shared/tool/constants/common/sources.d.ts +0 -0
- package/dist/shared/tool/constants/index.d.ts +0 -0
- package/dist/shared/tool/constants/lsp/index.d.ts +0 -0
- package/dist/shared/tool/constants/lsp/lsp-severity-labels.d.ts +0 -0
- package/dist/shared/tool/constants/lsp/lsp-severity.d.ts +0 -0
- package/dist/shared/tool/constants/parallel/index.d.ts +0 -0
- package/dist/shared/tool/constants/parallel/logging.d.ts +0 -0
- package/dist/shared/tool/constants/parallel/parameters.d.ts +0 -0
- package/dist/shared/tool/constants/tool-names.d.ts +0 -0
- package/dist/shared/tool/constants/tool-output.d.ts +0 -0
- package/dist/shared/tool/index.d.ts +0 -0
- package/dist/shared/tool/interfaces/ast/ast-replace-result.d.ts +0 -0
- package/dist/shared/tool/interfaces/ast/ast-search-result.d.ts +0 -0
- package/dist/shared/tool/interfaces/ast/index.d.ts +0 -0
- package/dist/shared/tool/interfaces/index.d.ts +0 -0
- package/dist/shared/tool/interfaces/lsp/index.d.ts +0 -0
- package/dist/shared/tool/interfaces/lsp/lsp-command-result.d.ts +0 -0
- package/dist/shared/tool/interfaces/lsp/lsp-diagnostic.d.ts +0 -0
- package/dist/shared/tool/interfaces/lsp/lsp-rename-location.d.ts +0 -0
- package/dist/shared/tool/interfaces/lsp/lsp-rename-result.d.ts +0 -0
- package/dist/shared/tool/interfaces/parallel/index.d.ts +0 -0
- package/dist/shared/tool/interfaces/parallel/poll-result.d.ts +0 -0
- package/dist/shared/tool/interfaces/parallel/session-client.d.ts +0 -0
- package/dist/shared/verification/constants/categories.d.ts +0 -0
- package/dist/shared/verification/constants/checklist.d.ts +0 -0
- package/dist/shared/verification/constants/index.d.ts +0 -0
- package/dist/shared/verification/constants/patterns.d.ts +0 -0
- package/dist/shared/verification/constants/signals.d.ts +0 -0
- package/dist/shared/verification/index.d.ts +0 -0
- package/dist/shared/verification/interfaces/checklist-item.d.ts +0 -0
- package/dist/shared/verification/interfaces/checklist-verification-result.d.ts +0 -0
- package/dist/shared/verification/interfaces/index.d.ts +0 -0
- package/dist/shared/verification/interfaces/verification-checklist.d.ts +0 -0
- package/dist/shared/verification/interfaces/verification-result.d.ts +0 -0
- package/dist/shared/verification/types/checklist-category.d.ts +0 -0
- package/dist/shared/verification/types/index.d.ts +0 -0
- package/dist/tools/ast/index.d.ts +0 -0
- package/dist/tools/background-cmd/check.d.ts +0 -0
- package/dist/tools/background-cmd/index.d.ts +0 -0
- package/dist/tools/background-cmd/kill.d.ts +0 -0
- package/dist/tools/background-cmd/list.d.ts +0 -0
- package/dist/tools/background-cmd/run.d.ts +0 -0
- package/dist/tools/callAgent.d.ts +0 -0
- package/dist/tools/lsp/diagnostics-cache.d.ts +0 -0
- package/dist/tools/lsp/index.d.ts +0 -0
- package/dist/tools/parallel/cancel-task.d.ts +0 -0
- package/dist/tools/parallel/delegate-task.d.ts +0 -0
- package/dist/tools/parallel/get-task-result.d.ts +0 -0
- package/dist/tools/parallel/index.d.ts +0 -0
- package/dist/tools/parallel/list-agents.d.ts +0 -0
- package/dist/tools/parallel/list-tasks.d.ts +0 -0
- package/dist/tools/parallel/show-metrics.d.ts +0 -0
- package/dist/tools/parallel/update-todo.d.ts +0 -0
- package/dist/tools/registry.d.ts +0 -0
- package/dist/tools/rust-pool.d.ts +32 -2
- package/dist/tools/rust.d.ts +0 -0
- package/dist/tools/search.d.ts +0 -0
- package/dist/tools/slashCommand.d.ts +0 -0
- package/dist/tools/web/cache-docs.d.ts +0 -0
- package/dist/tools/web/codesearch.d.ts +0 -0
- package/dist/tools/web/index.d.ts +0 -0
- package/dist/tools/web/webfetch.d.ts +0 -0
- package/dist/tools/web/websearch.d.ts +0 -0
- package/dist/utils/binary.d.ts +0 -0
- package/dist/utils/common.d.ts +0 -0
- package/dist/utils/compatibility/claude.d.ts +0 -0
- package/dist/utils/formatting/elapsed-time.d.ts +0 -0
- package/dist/utils/formatting/index.d.ts +0 -0
- package/dist/utils/formatting/timestamp.d.ts +0 -0
- package/dist/utils/parsing/index.d.ts +0 -0
- package/dist/utils/parsing/slash-command.d.ts +0 -0
- package/dist/utils/sanity/checker.d.ts +0 -0
- package/dist/utils/sanity/constants/escalation-prompt.d.ts +0 -0
- package/dist/utils/sanity/constants/index.d.ts +0 -0
- package/dist/utils/sanity/constants/recovery-prompt.d.ts +0 -0
- package/dist/utils/sanity/constants/severity.d.ts +0 -0
- package/dist/utils/sanity/index.d.ts +0 -0
- package/dist/utils/sanity/interfaces/index.d.ts +0 -0
- package/dist/utils/sanity/interfaces/sanity-result.d.ts +0 -0
- package/dist/utils/sanity/types/index.d.ts +0 -0
- package/dist/utils/sanity/types/severity.d.ts +0 -0
- package/package.json +89 -88
- package/scripts/run-install-hook.mjs +66 -66
- package/dist/shared/agent/constants/agent-tokens.d.ts +0 -11
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 agnusdei1207
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 agnusdei1207
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,394 +1,151 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
<
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
[](LICENSE)
|
|
10
|
-
[](https://www.npmjs.com/package/opencode-orchestrator)
|
|
1
|
+
<div align="center">
|
|
2
|
+
<img src="assets/logo.png" alt="OpenCode Orchestrator logo" width="160" />
|
|
3
|
+
<h1>OpenCode Orchestrator</h1>
|
|
4
|
+
<p>Multi-agent mission control for OpenCode.</p>
|
|
5
|
+
|
|
6
|
+
[](LICENSE)
|
|
7
|
+
[](https://www.npmjs.com/package/opencode-orchestrator)
|
|
11
8
|
<!-- VERSION:START -->
|
|
12
|
-
**Version:** `1.3.
|
|
13
|
-
<!-- VERSION:END -->
|
|
14
|
-
</div>
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
Install hooks are source-checkout safe, prefer `opencode.jsonc` when present, preserve sibling plugin entries, and skip automatic config mutation in CI environments.
|
|
26
|
-
|
|
27
|
-
To remove the plugin safely later, run:
|
|
28
|
-
|
|
29
|
-
```bash
|
|
30
|
-
npm explore -g opencode-orchestrator -- npm run cleanup:plugin
|
|
31
|
-
npm uninstall -g opencode-orchestrator
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
`npm uninstall -g` does not run dependency uninstall hooks in the npm 11 flow verified for this repo, so config cleanup is explicit.
|
|
35
|
-
|
|
36
|
-
Inside an OpenCode environment:
|
|
37
|
-
```bash
|
|
38
|
-
/task "Implement a new authentication module with JWT and audit logs"
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
---
|
|
43
|
-
|
|
44
|
-
## 🚀 Engine Workflow
|
|
45
|
-
|
|
46
|
-
**Hub-and-Spoke Architecture** with Work-Stealing Queues for parallel, context-isolated task execution.
|
|
47
|
-
```
|
|
48
|
-
╔══════════════════════════════════════════════════════════════════════════════╗
|
|
49
|
-
║ USER INPUT /task "..." ║
|
|
50
|
-
╚══════════════════════════════════════════════════════════════════════════════╝
|
|
51
|
-
│
|
|
52
|
-
▼
|
|
53
|
-
╔══════════════════════════════════════════════════════════════════════════════╗
|
|
54
|
-
║ ┌─────────────────────────────────────────────────────────────────────────┐ ║
|
|
55
|
-
║ │ C O M M A N D E R │ ║
|
|
56
|
-
║ │ [ Mission Analysis & Delegation ] │ ║
|
|
57
|
-
║ │ │ ║
|
|
58
|
-
║ │ • Interprets user intent • Coordinates multi-agent workflow │ ║
|
|
59
|
-
║ │ • Monitors progress • Manages work-stealing queues │ ║
|
|
60
|
-
║ └─────────────────────────────────────────────────────────────────────────┘ ║
|
|
61
|
-
╚══════════════════════════════════════════════════════════════════════════════╝
|
|
62
|
-
│
|
|
63
|
-
┌───────────────┼───────────────┐
|
|
64
|
-
▼ ▼ ▼
|
|
65
|
-
╔═════════════════╗ ╔═════════════════╗ ╔═════════════════╗
|
|
66
|
-
║ P L A N N E R ║ ║ W O R K E R ║ ║ W O R K E R ║
|
|
67
|
-
║ [Architect] ║ ║ [Implementer] ║ ║ [Implementer] ║
|
|
68
|
-
║ ║ ║ ║ ║ ║
|
|
69
|
-
║ • Dependency ║ ║ • File coding ║ ║ • File coding ║
|
|
70
|
-
║ analysis ║ ║ • TDD workflow ║ ║ • TDD workflow ║
|
|
71
|
-
║ • Roadmap gen ║ ║ • Documentation║ ║ • Documentation║
|
|
72
|
-
║ • TODO.md ║ ║ ║ ║ ║
|
|
73
|
-
╚═════════════════╝ ╚═════════════════╝ ╚═════════════════╝
|
|
74
|
-
│ │ │
|
|
75
|
-
│ ┌──────────────┼─────────────────────┘
|
|
76
|
-
│ │ │
|
|
77
|
-
▼ ▼ ▼
|
|
78
|
-
╔══════════════════════════════════════╗
|
|
79
|
-
║ SESSION POOL (MVCC Sync) ║
|
|
80
|
-
║ ┌─────────────────────────────────┐ ║
|
|
81
|
-
║ │ Object Pool │ Buffer Pool │ ║
|
|
82
|
-
║ │ String Pool │ Connection Pool │ ║
|
|
83
|
-
║ └─────────────────────────────────┘ ║
|
|
84
|
-
╚══════════════════════════════════════╝
|
|
85
|
-
│
|
|
86
|
-
▼
|
|
87
|
-
╔══════════════════════════════════════╗
|
|
88
|
-
║ MSVP MONITOR / REVIEWER ║
|
|
89
|
-
║ ┌─────────────────────────────────┐ ║
|
|
90
|
-
║ │ • Adaptive polling (500ms-5s) │ ║
|
|
91
|
-
║ │ • Stability detection │ ║
|
|
92
|
-
║ │ • Unit test verification │ ║
|
|
93
|
-
║ └─────────────────────────────────┘ ║
|
|
94
|
-
╚══════════════════════════════════════╝
|
|
95
|
-
│
|
|
96
|
-
▼
|
|
97
|
-
┌────────────────┐
|
|
98
|
-
│ ✨ COMPLETED │
|
|
99
|
-
└────────────────┘
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
---
|
|
103
|
-
|
|
104
|
-
## 🏗️ Architecture Layers
|
|
105
|
-
|
|
106
|
-
```
|
|
107
|
-
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
108
|
-
│ PRESENTATION LAYER │
|
|
109
|
-
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────────┐ │
|
|
110
|
-
│ │ Task Toast │ │ Progress │ │ Notification│ │ Mission Summary │ │
|
|
111
|
-
│ │ Manager │ │ Notifier │ │ Manager │ │ Display │ │
|
|
112
|
-
│ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────────┘ │
|
|
113
|
-
├─────────────────────────────────────────────────────────────────────────────┤
|
|
114
|
-
│ BUSINESS LOGIC LAYER │
|
|
115
|
-
│ ┌───────────────────────────────────────────────────────────────────────┐ │
|
|
116
|
-
│ │ Parallel Agent Orchestration │ │
|
|
117
|
-
│ │ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌────────────────┐ │ │
|
|
118
|
-
│ │ │ Commander │ │ Planner │ │ Worker │ │ Reviewer │ │ │
|
|
119
|
-
│ │ │ Agent │ │ Agent │ │ Agent │ │ Agent │ │ │
|
|
120
|
-
│ │ └────────────┘ └────────────┘ └────────────┘ └────────────────┘ │ │
|
|
121
|
-
│ └───────────────────────────────────────────────────────────────────────┘ │
|
|
122
|
-
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────────────────┐│
|
|
123
|
-
│ │ Concurrency │ │ Task Store │ │ Hook System ││
|
|
124
|
-
│ │ Controller │ │ (In-Memory) │ │ [Early/Normal/Late Phases] ││
|
|
125
|
-
│ └─────────────────┘ └─────────────────┘ └─────────────────────────────┘│
|
|
126
|
-
├─────────────────────────────────────────────────────────────────────────────┤
|
|
127
|
-
│ INFRASTRUCTURE LAYER │
|
|
128
|
-
│ ┌────────────────┐ ┌────────────────┐ ┌────────────────────────────┐ │
|
|
129
|
-
│ │ Session Pool │ │ Work-Stealing │ │ Memory Pools │ │
|
|
130
|
-
│ │ [5 per agent] │ │ [Chase-Lev] │ │ ┌──────┐ ┌──────┐ ┌─────┐│ │
|
|
131
|
-
│ │ [10 reuse max] │ │ [LIFO/FIFO] │ │ │Object│ │String│ │Buffer││ │
|
|
132
|
-
│ └────────────────┘ └────────────────┘ │ │ 200 │ │ intern│ │ 4KB ││ │
|
|
133
|
-
│ │ └──────┘ └──────┘ └─────┘│ │
|
|
134
|
-
│ ┌────────────────┐ ┌────────────────┐ └────────────────────────────┘ │
|
|
135
|
-
│ │ MVCC State │ │ Circuit Breaker │ ┌────────────────────────────┐ │
|
|
136
|
-
│ │ [Atomic Sync] │ │ [5 failures→open│ │ Rust Connection Pool │ │
|
|
137
|
-
│ │ │ │ [2 success→close│ │ [4 processes, 30s idle] │ │
|
|
138
|
-
│ └────────────────┘ └────────────────┘ └────────────────────────────┘ │
|
|
139
|
-
├─────────────────────────────────────────────────────────────────────────────┤
|
|
140
|
-
│ SAFETY LAYER │
|
|
141
|
-
│ ┌────────────────┐ ┌────────────────┐ ┌─────────────────────────────┐ │
|
|
142
|
-
│ │ RAII Pattern │ │ Shutdown │ │ Auto-Recovery │ │
|
|
143
|
-
│ │ [Zero Leaks] │ │ Manager │ │ [Exponential Backoff] │ │
|
|
144
|
-
│ │ │ │ [5s timeout] │ │ [Rate limit handling] │ │
|
|
145
|
-
│ └────────────────┘ └────────────────┘ └─────────────────────────────┘ │
|
|
146
|
-
└─────────────────────────────────────────────────────────────────────────────┘
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
---
|
|
150
|
-
|
|
151
|
-
## 🧪 Test Utilities
|
|
152
|
-
|
|
153
|
-
Reusable test helpers keep filesystem, task, and process-heavy flows deterministic:
|
|
154
|
-
|
|
155
|
-
```
|
|
156
|
-
tests/harness/
|
|
157
|
-
├── fixture.ts Disposable tmpdir utilities
|
|
158
|
-
│ ├── tmpdir() async disposable with cleanup
|
|
159
|
-
│ ├── tmpdirSync() sync disposable with cleanup
|
|
160
|
-
│ ├── createMockFs() In-memory fs mock
|
|
161
|
-
│ └── waitFor() Async condition waiter
|
|
162
|
-
│
|
|
163
|
-
├── builders.ts Factory functions for test objects
|
|
164
|
-
│ ├── createParallelTask() Build ParallelTask instances
|
|
165
|
-
│ ├── createBackgroundTask() Build BackgroundTask instances
|
|
166
|
-
│ └── createTodo() Build Todo instances
|
|
167
|
-
│
|
|
168
|
-
├── mocks.ts Mock utilities
|
|
169
|
-
│ ├── mockConsole() Spy on console.log/error
|
|
170
|
-
│ ├── mockProcessExit() Mock process.exit
|
|
171
|
-
│ ├── useFakeTimers() Time manipulation
|
|
172
|
-
│ └── createMockEmitter() EventEmitter spy
|
|
173
|
-
│
|
|
174
|
-
└── index.ts Unified exports
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
### Usage Example
|
|
178
|
-
|
|
179
|
-
```typescript
|
|
180
|
-
import { tmpdir, createParallelTask, mockConsole } from "@/tests/harness";
|
|
181
|
-
|
|
182
|
-
describe("My test", () => {
|
|
183
|
-
let consoleMock;
|
|
184
|
-
|
|
185
|
-
beforeEach(() => {
|
|
186
|
-
consoleMock = mockConsole();
|
|
187
|
-
consoleMock.setup();
|
|
188
|
-
});
|
|
189
|
-
|
|
190
|
-
afterEach(() => {
|
|
191
|
-
consoleMock.restore();
|
|
192
|
-
});
|
|
193
|
-
|
|
194
|
-
it("should work", async () => {
|
|
195
|
-
await using tmp = await tmpdir({ git: true });
|
|
196
|
-
const task = createParallelTask({ description: "Test" });
|
|
197
|
-
expect(task.status).toBe("pending");
|
|
198
|
-
});
|
|
199
|
-
});
|
|
200
|
-
```
|
|
201
|
-
|
|
202
|
-
---
|
|
203
|
-
|
|
204
|
-
## ⚡ Elite Multi-Agent Swarm
|
|
205
|
-
|
|
206
|
-
| Agent | Role | Core Responsibilities |
|
|
207
|
-
|:------|:-----|:------------------------|
|
|
208
|
-
| **Commander** | Mission Hub | Task decomposition, agent coordination, work-stealing orchestration, final mission seal |
|
|
209
|
-
| **Planner** | Architect | Dependency analysis, roadmap generation, TODO.md creation via MVCC, file-level planning |
|
|
210
|
-
| **Worker** | Implementer | High-throughput coding, TDD workflow, documentation, isolated file execution |
|
|
211
|
-
| **Reviewer** | Auditor | Unit test verification, LSP/Lint validation, integration testing, quality gate |
|
|
212
|
-
---
|
|
213
|
-
|
|
214
|
-
## 🛠️ Core Capabilities
|
|
215
|
-
|
|
216
|
-
### 🔒 Atomic MVCC State Synchronization
|
|
217
|
-
Solves the "Concurrent TODO Update" problem using **MVCC + Mutex**. Agents safely mark tasks complete in parallel without data loss or race conditions. Every state change is cryptographically hashed and logged.
|
|
218
|
-
|
|
219
|
-
### 🧩 Advanced Hook Orchestration
|
|
220
|
-
Execution flows governed by a **Priority-Phase Hook Registry**. Hooks are grouped into phases (`early`, `normal`, `late`) and executed via **Topological Sort** for predictable, dependency-aware ordering.
|
|
221
|
-
|
|
222
|
-
### 🛡️ Autonomous Recovery
|
|
223
|
-
- **Self-healing loops** with adaptive stagnation detection
|
|
224
|
-
- **Proactive Agency**: Smart monitoring that audits logs and plans ahead during background tasks
|
|
225
|
-
- **Auto-retry with backoff**: Exponential backoff for transient failures
|
|
226
|
-
|
|
227
|
-
### 🎯 State-Level Session Isolation
|
|
228
|
-
Reused sessions in the **SessionPool** are explicitly reset via server-side compaction, ensuring previous task context never leaks into new tasks.
|
|
229
|
-
|
|
230
|
-
### 🚀 Zero-Payload Turbo Mode
|
|
231
|
-
Leverages `system.transform` to unshift agent instruction sets server-side, reducing initial message payloads by **90%+** and preventing context fragmentation.
|
|
232
|
-
|
|
233
|
-
### 🧠 Hierarchical Memory System
|
|
234
|
-
Maintains focus across thousands of conversation turns using a 4-tier memory structure with **EMA-based Context Gating** to preserve architectural truth while pruning noise.
|
|
235
|
-
|
|
236
|
-
### 🔄 Adaptive Intelligence Loop
|
|
237
|
-
- **Stagnation Detection**: Senses when no progress is made across iterations
|
|
238
|
-
- **Diagnostic Intervention**: Forces "Diagnostic Mode" mandating log audits and strategy pivots
|
|
239
|
-
- **Proactive Agency**: Mandates Speculative Planning during background task execution
|
|
240
|
-
|
|
241
|
-
### 🧬 Knowledge Graph RAG (Second Brain)
|
|
242
|
-
An autonomous **Obsidian-style evolutionary memory system** that gives agents persistent, searchable knowledge across sessions.
|
|
243
|
-
|
|
244
|
-
Runtime context injection is active for orchestrated sessions through `experimental.chat.system.transform`, indexing `docs/**/*.md` and `.opencode/docs/**/*.md` with BM25/tag/graph fusion before prompt injection.
|
|
9
|
+
**Version:** `1.3.5`
|
|
10
|
+
<!-- VERSION:END -->
|
|
11
|
+
</div>
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 1. Install
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npm install -g opencode-orchestrator
|
|
19
|
+
```
|
|
245
20
|
|
|
21
|
+
The install hook merges OpenCode config instead of replacing it, prefers `opencode.jsonc` when present, preserves existing plugin tuple options, and skips automatic config mutation in CI.
|
|
22
|
+
|
|
23
|
+
To remove the plugin from OpenCode config:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
npm explore -g opencode-orchestrator -- npm run cleanup:plugin
|
|
27
|
+
npm uninstall -g opencode-orchestrator
|
|
246
28
|
```
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
### Cross-Platform Reliability
|
|
372
|
-
- **Windows guard**: Proper handling of WSL2, Git Bash, native Windows paths
|
|
373
|
-
- **Signal handling**: Graceful shutdown on SIGINT/SIGTERM
|
|
374
|
-
- **Process isolation**: Child process cleanup with timeout
|
|
375
|
-
|
|
376
|
-
---
|
|
377
|
-
|
|
378
|
-
## 📚 Documentation
|
|
379
|
-
|
|
380
|
-
- [System Architecture Deep-Dive →](docs/SYSTEM_ARCHITECTURE.md)
|
|
381
|
-
- [Developer Notes →](docs/DEVELOPERS_NOTE.md)
|
|
382
|
-
- [Knowledge RAG Roadmap →](docs/histories/2026/05/31/PLAN_SecondBrainOrchestration_2026-05-31.md)
|
|
383
|
-
|
|
384
|
-
---
|
|
385
|
-
|
|
386
|
-
## 📄 License
|
|
387
|
-
|
|
388
|
-
MIT License — see [LICENSE](LICENSE) for details.
|
|
389
|
-
|
|
390
|
-
---
|
|
391
|
-
|
|
392
|
-
<div align="center">
|
|
393
|
-
<sub>Built with ⚡ for production-grade autonomous software engineering</sub>
|
|
394
|
-
</div>
|
|
29
|
+
|
|
30
|
+
Manual fallback: remove `"opencode-orchestrator"` or `["opencode-orchestrator", {...}]` from the `plugin` array in `opencode.json` or `opencode.jsonc`.
|
|
31
|
+
|
|
32
|
+
## 2. Configure
|
|
33
|
+
|
|
34
|
+
OpenCode supports plugin options as `["plugin-name", {...}]` tuples. Use that form for orchestrator-specific settings:
|
|
35
|
+
|
|
36
|
+
```jsonc
|
|
37
|
+
{
|
|
38
|
+
"$schema": "https://opencode.ai/config.json",
|
|
39
|
+
"permission": {
|
|
40
|
+
"question": "allow"
|
|
41
|
+
},
|
|
42
|
+
"plugin": [
|
|
43
|
+
[
|
|
44
|
+
"opencode-orchestrator",
|
|
45
|
+
{
|
|
46
|
+
"agentConcurrency": {
|
|
47
|
+
"commander": 1,
|
|
48
|
+
"planner": 10,
|
|
49
|
+
"worker": 10,
|
|
50
|
+
"reviewer": 10
|
|
51
|
+
},
|
|
52
|
+
"missionLoop": {
|
|
53
|
+
"ledger": true,
|
|
54
|
+
"markdownMemory": true,
|
|
55
|
+
"maxEvidenceEvents": 20
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
]
|
|
59
|
+
]
|
|
60
|
+
}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Optional model routing stays in normal OpenCode config. The plugin does not force a model:
|
|
64
|
+
|
|
65
|
+
```jsonc
|
|
66
|
+
{
|
|
67
|
+
"model": "provider/model-id",
|
|
68
|
+
"agent": {
|
|
69
|
+
"commander": {
|
|
70
|
+
"model": "provider/model-id"
|
|
71
|
+
},
|
|
72
|
+
"worker": {
|
|
73
|
+
"model": "provider/stronger-model-id"
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Generated Commander, Planner, Worker, and Reviewer agents inherit global permissions. Same-name user agent config can still override specific model or permission keys.
|
|
80
|
+
|
|
81
|
+
## 3. Run
|
|
82
|
+
|
|
83
|
+
Inside OpenCode:
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
/task "Implement the requested change and verify it"
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Mission controls:
|
|
90
|
+
|
|
91
|
+
1. `/task ...` starts a persisted mission loop under `.opencode/`.
|
|
92
|
+
2. `Esc`/OpenCode interrupt is respected by idle guards so the plugin does not immediately re-continue an interrupted turn.
|
|
93
|
+
3. `/cancel` and `/stop` deactivate the current mission loop.
|
|
94
|
+
4. The default mission iteration ceiling is `1,000,000,000`.
|
|
95
|
+
|
|
96
|
+
## 4. How It Works
|
|
97
|
+
|
|
98
|
+
```mermaid
|
|
99
|
+
flowchart LR
|
|
100
|
+
U["/task input"] --> C["Commander"]
|
|
101
|
+
C --> P["Planner"]
|
|
102
|
+
C --> W["Worker pool"]
|
|
103
|
+
W --> R["Reviewer"]
|
|
104
|
+
P --> S["Mission state"]
|
|
105
|
+
W --> S
|
|
106
|
+
R --> V{"Verified?"}
|
|
107
|
+
V -- "no" --> C
|
|
108
|
+
V -- "yes" --> D["Done"]
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
| Agent | Purpose |
|
|
112
|
+
| --- | --- |
|
|
113
|
+
| Commander | Interprets the mission, coordinates agents, and keeps the loop aligned. |
|
|
114
|
+
| Planner | Breaks work into ordered steps and tracks dependencies. |
|
|
115
|
+
| Worker | Implements scoped file changes with isolated context. |
|
|
116
|
+
| Reviewer | Checks completion evidence, tests, and integration risk. |
|
|
117
|
+
|
|
118
|
+
Runtime evidence is written only when enabled:
|
|
119
|
+
|
|
120
|
+
| Artifact | Purpose |
|
|
121
|
+
| --- | --- |
|
|
122
|
+
| `.opencode/mission-ledger.jsonl` | Bounded event trail for mission decisions. |
|
|
123
|
+
| `.opencode/docs/brain/scratchpad.md` | Generated Markdown memory surface for active missions. |
|
|
124
|
+
| `.opencode/docs/brain/knowledge-map.canvas` | Obsidian-compatible visual map of objective, evidence, and verification nodes. |
|
|
125
|
+
|
|
126
|
+
## 5. Developer Notes
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
npm run build
|
|
130
|
+
npx tsc --noEmit
|
|
131
|
+
npm test
|
|
132
|
+
cargo test --workspace --all-targets
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
Useful references:
|
|
136
|
+
|
|
137
|
+
1. OpenCode plugins: https://opencode.ai/docs/plugins/
|
|
138
|
+
2. OpenCode config: https://opencode.ai/docs/config/
|
|
139
|
+
3. OpenCode keybinds: https://opencode.ai/docs/keybinds/
|
|
140
|
+
4. Project issues: https://github.com/agnusdei1207/opencode-orchestrator/issues
|
|
141
|
+
|
|
142
|
+
Config logs:
|
|
143
|
+
|
|
144
|
+
| Platform | Path |
|
|
145
|
+
| --- | --- |
|
|
146
|
+
| Unix | `/tmp/opencode-orchestrator.log` |
|
|
147
|
+
| Windows | `%TEMP%\opencode-orchestrator.log` |
|
|
148
|
+
|
|
149
|
+
## 6. License
|
|
150
|
+
|
|
151
|
+
MIT License. See [LICENSE](LICENSE).
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|