@yjjeong/omg 0.1.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/CHANGELOG.md +85 -0
- package/LICENSE +21 -0
- package/README.md +153 -0
- package/dist/cli/args.d.ts +39 -0
- package/dist/cli/args.d.ts.map +1 -0
- package/dist/cli/args.js +129 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/autoCommit.d.ts +20 -0
- package/dist/cli/autoCommit.d.ts.map +1 -0
- package/dist/cli/autoCommit.js +121 -0
- package/dist/cli/autoCommit.js.map +1 -0
- package/dist/cli/bgTasks.d.ts +57 -0
- package/dist/cli/bgTasks.d.ts.map +1 -0
- package/dist/cli/bgTasks.js +193 -0
- package/dist/cli/bgTasks.js.map +1 -0
- package/dist/cli/compactor.d.ts +48 -0
- package/dist/cli/compactor.d.ts.map +1 -0
- package/dist/cli/compactor.js +73 -0
- package/dist/cli/compactor.js.map +1 -0
- package/dist/cli/doctor.d.ts +77 -0
- package/dist/cli/doctor.d.ts.map +1 -0
- package/dist/cli/doctor.js +279 -0
- package/dist/cli/doctor.js.map +1 -0
- package/dist/cli/gitStatus.d.ts +7 -0
- package/dist/cli/gitStatus.d.ts.map +1 -0
- package/dist/cli/gitStatus.js +70 -0
- package/dist/cli/gitStatus.js.map +1 -0
- package/dist/cli/handoff.d.ts +36 -0
- package/dist/cli/handoff.d.ts.map +1 -0
- package/dist/cli/handoff.js +60 -0
- package/dist/cli/handoff.js.map +1 -0
- package/dist/cli/interactive/brokers.d.ts +31 -0
- package/dist/cli/interactive/brokers.d.ts.map +1 -0
- package/dist/cli/interactive/brokers.js +259 -0
- package/dist/cli/interactive/brokers.js.map +1 -0
- package/dist/cli/interactive/index.d.ts +8 -0
- package/dist/cli/interactive/index.d.ts.map +1 -0
- package/dist/cli/interactive/index.js +731 -0
- package/dist/cli/interactive/index.js.map +1 -0
- package/dist/cli/interactive/proxyQuestions.d.ts +15 -0
- package/dist/cli/interactive/proxyQuestions.d.ts.map +1 -0
- package/dist/cli/interactive/proxyQuestions.js +48 -0
- package/dist/cli/interactive/proxyQuestions.js.map +1 -0
- package/dist/cli/interactive/tabManager.d.ts +32 -0
- package/dist/cli/interactive/tabManager.d.ts.map +1 -0
- package/dist/cli/interactive/tabManager.js +244 -0
- package/dist/cli/interactive/tabManager.js.map +1 -0
- package/dist/cli/interactive/teamHint.d.ts +2 -0
- package/dist/cli/interactive/teamHint.d.ts.map +1 -0
- package/dist/cli/interactive/teamHint.js +14 -0
- package/dist/cli/interactive/teamHint.js.map +1 -0
- package/dist/cli/login.d.ts +13 -0
- package/dist/cli/login.d.ts.map +1 -0
- package/dist/cli/login.js +53 -0
- package/dist/cli/login.js.map +1 -0
- package/dist/cli/modes/demo.d.ts +12 -0
- package/dist/cli/modes/demo.d.ts.map +1 -0
- package/dist/cli/modes/demo.js +48 -0
- package/dist/cli/modes/demo.js.map +1 -0
- package/dist/cli/modes/doctor.d.ts +28 -0
- package/dist/cli/modes/doctor.d.ts.map +1 -0
- package/dist/cli/modes/doctor.js +79 -0
- package/dist/cli/modes/doctor.js.map +1 -0
- package/dist/cli/modes/login.d.ts +5 -0
- package/dist/cli/modes/login.d.ts.map +1 -0
- package/dist/cli/modes/login.js +40 -0
- package/dist/cli/modes/login.js.map +1 -0
- package/dist/cli/modes/mcpServe.d.ts +9 -0
- package/dist/cli/modes/mcpServe.d.ts.map +1 -0
- package/dist/cli/modes/mcpServe.js +112 -0
- package/dist/cli/modes/mcpServe.js.map +1 -0
- package/dist/cli/modes/orchestrator.d.ts +14 -0
- package/dist/cli/modes/orchestrator.d.ts.map +1 -0
- package/dist/cli/modes/orchestrator.js +64 -0
- package/dist/cli/modes/orchestrator.js.map +1 -0
- package/dist/cli/modes/team.d.ts +14 -0
- package/dist/cli/modes/team.d.ts.map +1 -0
- package/dist/cli/modes/team.js +87 -0
- package/dist/cli/modes/team.js.map +1 -0
- package/dist/cli/registry.d.ts +3 -0
- package/dist/cli/registry.d.ts.map +1 -0
- package/dist/cli/registry.js +15 -0
- package/dist/cli/registry.js.map +1 -0
- package/dist/cli/slash/core.d.ts +3 -0
- package/dist/cli/slash/core.d.ts.map +1 -0
- package/dist/cli/slash/core.js +509 -0
- package/dist/cli/slash/core.js.map +1 -0
- package/dist/cli/slash/index.d.ts +3 -0
- package/dist/cli/slash/index.d.ts.map +1 -0
- package/dist/cli/slash/index.js +28 -0
- package/dist/cli/slash/index.js.map +1 -0
- package/dist/cli/slash/modes.d.ts +3 -0
- package/dist/cli/slash/modes.d.ts.map +1 -0
- package/dist/cli/slash/modes.js +530 -0
- package/dist/cli/slash/modes.js.map +1 -0
- package/dist/cli/slash/session.d.ts +3 -0
- package/dist/cli/slash/session.d.ts.map +1 -0
- package/dist/cli/slash/session.js +376 -0
- package/dist/cli/slash/session.js.map +1 -0
- package/dist/cli/slash/shared.d.ts +43 -0
- package/dist/cli/slash/shared.d.ts.map +1 -0
- package/dist/cli/slash/shared.js +6 -0
- package/dist/cli/slash/shared.js.map +1 -0
- package/dist/cli/slash/tabs.d.ts +3 -0
- package/dist/cli/slash/tabs.d.ts.map +1 -0
- package/dist/cli/slash/tabs.js +497 -0
- package/dist/cli/slash/tabs.js.map +1 -0
- package/dist/cli/slash/team.d.ts +3 -0
- package/dist/cli/slash/team.d.ts.map +1 -0
- package/dist/cli/slash/team.js +85 -0
- package/dist/cli/slash/team.js.map +1 -0
- package/dist/cli/slash.d.ts +3 -0
- package/dist/cli/slash.d.ts.map +1 -0
- package/dist/cli/slash.js +8 -0
- package/dist/cli/slash.js.map +1 -0
- package/dist/cli/teamPipeline.d.ts +42 -0
- package/dist/cli/teamPipeline.d.ts.map +1 -0
- package/dist/cli/teamPipeline.js +406 -0
- package/dist/cli/teamPipeline.js.map +1 -0
- package/dist/cli/touchedFiles.d.ts +14 -0
- package/dist/cli/touchedFiles.d.ts.map +1 -0
- package/dist/cli/touchedFiles.js +66 -0
- package/dist/cli/touchedFiles.js.map +1 -0
- package/dist/cli/turn.d.ts +47 -0
- package/dist/cli/turn.d.ts.map +1 -0
- package/dist/cli/turn.js +626 -0
- package/dist/cli/turn.js.map +1 -0
- package/dist/cli/types.d.ts +47 -0
- package/dist/cli/types.d.ts.map +1 -0
- package/dist/cli/types.js +5 -0
- package/dist/cli/types.js.map +1 -0
- package/dist/cli/uiSession.d.ts +10 -0
- package/dist/cli/uiSession.d.ts.map +1 -0
- package/dist/cli/uiSession.js +66 -0
- package/dist/cli/uiSession.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +128 -0
- package/dist/cli.js.map +1 -0
- package/dist/core/adapter.d.ts +47 -0
- package/dist/core/adapter.d.ts.map +1 -0
- package/dist/core/adapter.js +48 -0
- package/dist/core/adapter.js.map +1 -0
- package/dist/core/adapters/anthropic.d.ts +35 -0
- package/dist/core/adapters/anthropic.d.ts.map +1 -0
- package/dist/core/adapters/anthropic.js +203 -0
- package/dist/core/adapters/anthropic.js.map +1 -0
- package/dist/core/adapters/claudeCli.d.ts +126 -0
- package/dist/core/adapters/claudeCli.d.ts.map +1 -0
- package/dist/core/adapters/claudeCli.js +584 -0
- package/dist/core/adapters/claudeCli.js.map +1 -0
- package/dist/core/adapters/cliAdapterBase.d.ts +48 -0
- package/dist/core/adapters/cliAdapterBase.d.ts.map +1 -0
- package/dist/core/adapters/cliAdapterBase.js +105 -0
- package/dist/core/adapters/cliAdapterBase.js.map +1 -0
- package/dist/core/adapters/cliStderr.d.ts +35 -0
- package/dist/core/adapters/cliStderr.d.ts.map +1 -0
- package/dist/core/adapters/cliStderr.js +87 -0
- package/dist/core/adapters/cliStderr.js.map +1 -0
- package/dist/core/adapters/codexCli.d.ts +113 -0
- package/dist/core/adapters/codexCli.d.ts.map +1 -0
- package/dist/core/adapters/codexCli.js +424 -0
- package/dist/core/adapters/codexCli.js.map +1 -0
- package/dist/core/adapters/gemini.d.ts +17 -0
- package/dist/core/adapters/gemini.d.ts.map +1 -0
- package/dist/core/adapters/gemini.js +133 -0
- package/dist/core/adapters/gemini.js.map +1 -0
- package/dist/core/adapters/geminiCli.d.ts +91 -0
- package/dist/core/adapters/geminiCli.d.ts.map +1 -0
- package/dist/core/adapters/geminiCli.js +276 -0
- package/dist/core/adapters/geminiCli.js.map +1 -0
- package/dist/core/adapters/nudges.d.ts +21 -0
- package/dist/core/adapters/nudges.d.ts.map +1 -0
- package/dist/core/adapters/nudges.js +75 -0
- package/dist/core/adapters/nudges.js.map +1 -0
- package/dist/core/adapters/openai.d.ts +17 -0
- package/dist/core/adapters/openai.d.ts.map +1 -0
- package/dist/core/adapters/openai.js +138 -0
- package/dist/core/adapters/openai.js.map +1 -0
- package/dist/core/adapters/parseFailures.d.ts +10 -0
- package/dist/core/adapters/parseFailures.d.ts.map +1 -0
- package/dist/core/adapters/parseFailures.js +35 -0
- package/dist/core/adapters/parseFailures.js.map +1 -0
- package/dist/core/adapters/utils.d.ts +11 -0
- package/dist/core/adapters/utils.d.ts.map +1 -0
- package/dist/core/adapters/utils.js +33 -0
- package/dist/core/adapters/utils.js.map +1 -0
- package/dist/core/askBroker.d.ts +11 -0
- package/dist/core/askBroker.d.ts.map +1 -0
- package/dist/core/askBroker.js +78 -0
- package/dist/core/askBroker.js.map +1 -0
- package/dist/core/atomicWrite.d.ts +5 -0
- package/dist/core/atomicWrite.d.ts.map +1 -0
- package/dist/core/atomicWrite.js +18 -0
- package/dist/core/atomicWrite.js.map +1 -0
- package/dist/core/brokers/askBroker.d.ts +11 -0
- package/dist/core/brokers/askBroker.d.ts.map +1 -0
- package/dist/core/brokers/askBroker.js +78 -0
- package/dist/core/brokers/askBroker.js.map +1 -0
- package/dist/core/brokers/permissionBroker.d.ts +7 -0
- package/dist/core/brokers/permissionBroker.d.ts.map +1 -0
- package/dist/core/brokers/permissionBroker.js +63 -0
- package/dist/core/brokers/permissionBroker.js.map +1 -0
- package/dist/core/brokers/socketBroker.d.ts +35 -0
- package/dist/core/brokers/socketBroker.d.ts.map +1 -0
- package/dist/core/brokers/socketBroker.js +74 -0
- package/dist/core/brokers/socketBroker.js.map +1 -0
- package/dist/core/clipboard.d.ts +4 -0
- package/dist/core/clipboard.d.ts.map +1 -0
- package/dist/core/clipboard.js +46 -0
- package/dist/core/clipboard.js.map +1 -0
- package/dist/core/compactor.d.ts +32 -0
- package/dist/core/compactor.d.ts.map +1 -0
- package/dist/core/compactor.js +91 -0
- package/dist/core/compactor.js.map +1 -0
- package/dist/core/consensusEngine.d.ts +21 -0
- package/dist/core/consensusEngine.d.ts.map +1 -0
- package/dist/core/consensusEngine.js +116 -0
- package/dist/core/consensusEngine.js.map +1 -0
- package/dist/core/context/contextCompressor.d.ts +10 -0
- package/dist/core/context/contextCompressor.d.ts.map +1 -0
- package/dist/core/context/contextCompressor.js +54 -0
- package/dist/core/context/contextCompressor.js.map +1 -0
- package/dist/core/context/contextWindows.d.ts +25 -0
- package/dist/core/context/contextWindows.d.ts.map +1 -0
- package/dist/core/context/contextWindows.js +101 -0
- package/dist/core/context/contextWindows.js.map +1 -0
- package/dist/core/context/summarizer.d.ts +65 -0
- package/dist/core/context/summarizer.d.ts.map +1 -0
- package/dist/core/context/summarizer.js +184 -0
- package/dist/core/context/summarizer.js.map +1 -0
- package/dist/core/context/usageCache.d.ts +19 -0
- package/dist/core/context/usageCache.d.ts.map +1 -0
- package/dist/core/context/usageCache.js +157 -0
- package/dist/core/context/usageCache.js.map +1 -0
- package/dist/core/context/usageWindow.d.ts +19 -0
- package/dist/core/context/usageWindow.d.ts.map +1 -0
- package/dist/core/context/usageWindow.js +73 -0
- package/dist/core/context/usageWindow.js.map +1 -0
- package/dist/core/contextCompressor.d.ts +10 -0
- package/dist/core/contextCompressor.d.ts.map +1 -0
- package/dist/core/contextCompressor.js +54 -0
- package/dist/core/contextCompressor.js.map +1 -0
- package/dist/core/contextWindows.d.ts +5 -0
- package/dist/core/contextWindows.d.ts.map +1 -0
- package/dist/core/contextWindows.js +60 -0
- package/dist/core/contextWindows.js.map +1 -0
- package/dist/core/continuum/digest.d.ts +35 -0
- package/dist/core/continuum/digest.d.ts.map +1 -0
- package/dist/core/continuum/digest.js +91 -0
- package/dist/core/continuum/digest.js.map +1 -0
- package/dist/core/continuum/index.d.ts +6 -0
- package/dist/core/continuum/index.d.ts.map +1 -0
- package/dist/core/continuum/index.js +7 -0
- package/dist/core/continuum/index.js.map +1 -0
- package/dist/core/continuum/inject.d.ts +9 -0
- package/dist/core/continuum/inject.d.ts.map +1 -0
- package/dist/core/continuum/inject.js +78 -0
- package/dist/core/continuum/inject.js.map +1 -0
- package/dist/core/continuum/projectId.d.ts +10 -0
- package/dist/core/continuum/projectId.d.ts.map +1 -0
- package/dist/core/continuum/projectId.js +60 -0
- package/dist/core/continuum/projectId.js.map +1 -0
- package/dist/core/continuum/store.d.ts +24 -0
- package/dist/core/continuum/store.d.ts.map +1 -0
- package/dist/core/continuum/store.js +144 -0
- package/dist/core/continuum/store.js.map +1 -0
- package/dist/core/continuum/types.d.ts +87 -0
- package/dist/core/continuum/types.d.ts.map +1 -0
- package/dist/core/continuum/types.js +9 -0
- package/dist/core/continuum/types.js.map +1 -0
- package/dist/core/dag.d.ts +21 -0
- package/dist/core/dag.d.ts.map +1 -0
- package/dist/core/dag.js +71 -0
- package/dist/core/dag.js.map +1 -0
- package/dist/core/director.d.ts +11 -0
- package/dist/core/director.d.ts.map +1 -0
- package/dist/core/director.js +37 -0
- package/dist/core/director.js.map +1 -0
- package/dist/core/hookedToolBroker.d.ts +25 -0
- package/dist/core/hookedToolBroker.d.ts.map +1 -0
- package/dist/core/hookedToolBroker.js +95 -0
- package/dist/core/hookedToolBroker.js.map +1 -0
- package/dist/core/langHint.d.ts +9 -0
- package/dist/core/langHint.d.ts.map +1 -0
- package/dist/core/langHint.js +33 -0
- package/dist/core/langHint.js.map +1 -0
- package/dist/core/mcp/mcpClient.d.ts +42 -0
- package/dist/core/mcp/mcpClient.d.ts.map +1 -0
- package/dist/core/mcp/mcpClient.js +134 -0
- package/dist/core/mcp/mcpClient.js.map +1 -0
- package/dist/core/mcp/mcpConfig.d.ts +58 -0
- package/dist/core/mcp/mcpConfig.d.ts.map +1 -0
- package/dist/core/mcp/mcpConfig.js +148 -0
- package/dist/core/mcp/mcpConfig.js.map +1 -0
- package/dist/core/mcp/mcpManager.d.ts +31 -0
- package/dist/core/mcp/mcpManager.d.ts.map +1 -0
- package/dist/core/mcp/mcpManager.js +83 -0
- package/dist/core/mcp/mcpManager.js.map +1 -0
- package/dist/core/mcpClient.d.ts +42 -0
- package/dist/core/mcpClient.d.ts.map +1 -0
- package/dist/core/mcpClient.js +134 -0
- package/dist/core/mcpClient.js.map +1 -0
- package/dist/core/mcpConfig.d.ts +24 -0
- package/dist/core/mcpConfig.d.ts.map +1 -0
- package/dist/core/mcpConfig.js +74 -0
- package/dist/core/mcpConfig.js.map +1 -0
- package/dist/core/mcpManager.d.ts +31 -0
- package/dist/core/mcpManager.d.ts.map +1 -0
- package/dist/core/mcpManager.js +83 -0
- package/dist/core/mcpManager.js.map +1 -0
- package/dist/core/memory.d.ts +22 -0
- package/dist/core/memory.d.ts.map +1 -0
- package/dist/core/memory.js +102 -0
- package/dist/core/memory.js.map +1 -0
- package/dist/core/omgToolManifest.d.ts +34 -0
- package/dist/core/omgToolManifest.d.ts.map +1 -0
- package/dist/core/omgToolManifest.js +59 -0
- package/dist/core/omgToolManifest.js.map +1 -0
- package/dist/core/orchestration/consensusEngine.d.ts +21 -0
- package/dist/core/orchestration/consensusEngine.d.ts.map +1 -0
- package/dist/core/orchestration/consensusEngine.js +116 -0
- package/dist/core/orchestration/consensusEngine.js.map +1 -0
- package/dist/core/orchestration/dag.d.ts +21 -0
- package/dist/core/orchestration/dag.d.ts.map +1 -0
- package/dist/core/orchestration/dag.js +71 -0
- package/dist/core/orchestration/dag.js.map +1 -0
- package/dist/core/orchestration/director.d.ts +11 -0
- package/dist/core/orchestration/director.d.ts.map +1 -0
- package/dist/core/orchestration/director.js +37 -0
- package/dist/core/orchestration/director.js.map +1 -0
- package/dist/core/orchestration/orchestrator.d.ts +32 -0
- package/dist/core/orchestration/orchestrator.d.ts.map +1 -0
- package/dist/core/orchestration/orchestrator.js +214 -0
- package/dist/core/orchestration/orchestrator.js.map +1 -0
- package/dist/core/orchestration/roleRouter.d.ts +28 -0
- package/dist/core/orchestration/roleRouter.d.ts.map +1 -0
- package/dist/core/orchestration/roleRouter.js +64 -0
- package/dist/core/orchestration/roleRouter.js.map +1 -0
- package/dist/core/orchestration/teamRunner.d.ts +69 -0
- package/dist/core/orchestration/teamRunner.d.ts.map +1 -0
- package/dist/core/orchestration/teamRunner.js +477 -0
- package/dist/core/orchestration/teamRunner.js.map +1 -0
- package/dist/core/orchestration/types.d.ts +115 -0
- package/dist/core/orchestration/types.d.ts.map +1 -0
- package/dist/core/orchestration/types.js +71 -0
- package/dist/core/orchestration/types.js.map +1 -0
- package/dist/core/orchestrator.d.ts +32 -0
- package/dist/core/orchestrator.d.ts.map +1 -0
- package/dist/core/orchestrator.js +214 -0
- package/dist/core/orchestrator.js.map +1 -0
- package/dist/core/permissionBroker.d.ts +7 -0
- package/dist/core/permissionBroker.d.ts.map +1 -0
- package/dist/core/permissionBroker.js +63 -0
- package/dist/core/permissionBroker.js.map +1 -0
- package/dist/core/planConfig.d.ts +15 -0
- package/dist/core/planConfig.d.ts.map +1 -0
- package/dist/core/planConfig.js +98 -0
- package/dist/core/planConfig.js.map +1 -0
- package/dist/core/presetPersistence.d.ts +4 -0
- package/dist/core/presetPersistence.d.ts.map +1 -0
- package/dist/core/presetPersistence.js +64 -0
- package/dist/core/presetPersistence.js.map +1 -0
- package/dist/core/roleRouter.d.ts +26 -0
- package/dist/core/roleRouter.d.ts.map +1 -0
- package/dist/core/roleRouter.js +62 -0
- package/dist/core/roleRouter.js.map +1 -0
- package/dist/core/sessionList.d.ts +26 -0
- package/dist/core/sessionList.d.ts.map +1 -0
- package/dist/core/sessionList.js +278 -0
- package/dist/core/sessionList.js.map +1 -0
- package/dist/core/slugify.d.ts +2 -0
- package/dist/core/slugify.d.ts.map +1 -0
- package/dist/core/slugify.js +17 -0
- package/dist/core/slugify.js.map +1 -0
- package/dist/core/socketBroker.d.ts +19 -0
- package/dist/core/socketBroker.d.ts.map +1 -0
- package/dist/core/socketBroker.js +48 -0
- package/dist/core/socketBroker.js.map +1 -0
- package/dist/core/state/agentsMdScaffold.d.ts +15 -0
- package/dist/core/state/agentsMdScaffold.d.ts.map +1 -0
- package/dist/core/state/agentsMdScaffold.js +118 -0
- package/dist/core/state/agentsMdScaffold.js.map +1 -0
- package/dist/core/state/atomicWrite.d.ts +5 -0
- package/dist/core/state/atomicWrite.d.ts.map +1 -0
- package/dist/core/state/atomicWrite.js +18 -0
- package/dist/core/state/atomicWrite.js.map +1 -0
- package/dist/core/state/handoff.d.ts +20 -0
- package/dist/core/state/handoff.d.ts.map +1 -0
- package/dist/core/state/handoff.js +71 -0
- package/dist/core/state/handoff.js.map +1 -0
- package/dist/core/state/mcpCatalog.d.ts +11 -0
- package/dist/core/state/mcpCatalog.d.ts.map +1 -0
- package/dist/core/state/mcpCatalog.js +51 -0
- package/dist/core/state/mcpCatalog.js.map +1 -0
- package/dist/core/state/mcpRecommendations.d.ts +7 -0
- package/dist/core/state/mcpRecommendations.d.ts.map +1 -0
- package/dist/core/state/mcpRecommendations.js +57 -0
- package/dist/core/state/mcpRecommendations.js.map +1 -0
- package/dist/core/state/memory.d.ts +22 -0
- package/dist/core/state/memory.d.ts.map +1 -0
- package/dist/core/state/memory.js +102 -0
- package/dist/core/state/memory.js.map +1 -0
- package/dist/core/state/planConfig.d.ts +15 -0
- package/dist/core/state/planConfig.d.ts.map +1 -0
- package/dist/core/state/planConfig.js +98 -0
- package/dist/core/state/planConfig.js.map +1 -0
- package/dist/core/state/presetPersistence.d.ts +4 -0
- package/dist/core/state/presetPersistence.d.ts.map +1 -0
- package/dist/core/state/presetPersistence.js +67 -0
- package/dist/core/state/presetPersistence.js.map +1 -0
- package/dist/core/state/sessionList.d.ts +26 -0
- package/dist/core/state/sessionList.d.ts.map +1 -0
- package/dist/core/state/sessionList.js +278 -0
- package/dist/core/state/sessionList.js.map +1 -0
- package/dist/core/state/stackDetect.d.ts +8 -0
- package/dist/core/state/stackDetect.d.ts.map +1 -0
- package/dist/core/state/stackDetect.js +40 -0
- package/dist/core/state/stackDetect.js.map +1 -0
- package/dist/core/state/tabPersistence.d.ts +29 -0
- package/dist/core/state/tabPersistence.d.ts.map +1 -0
- package/dist/core/state/tabPersistence.js +65 -0
- package/dist/core/state/tabPersistence.js.map +1 -0
- package/dist/core/tabPersistence.d.ts +29 -0
- package/dist/core/tabPersistence.d.ts.map +1 -0
- package/dist/core/tabPersistence.js +65 -0
- package/dist/core/tabPersistence.js.map +1 -0
- package/dist/core/teamRunner.d.ts +42 -0
- package/dist/core/teamRunner.d.ts.map +1 -0
- package/dist/core/teamRunner.js +248 -0
- package/dist/core/teamRunner.js.map +1 -0
- package/dist/core/toolGate.d.ts +23 -0
- package/dist/core/toolGate.d.ts.map +1 -0
- package/dist/core/toolGate.js +51 -0
- package/dist/core/toolGate.js.map +1 -0
- package/dist/core/toolInterceptor.d.ts +7 -0
- package/dist/core/toolInterceptor.d.ts.map +1 -0
- package/dist/core/toolInterceptor.js +108 -0
- package/dist/core/toolInterceptor.js.map +1 -0
- package/dist/core/tools/hookedToolBroker.d.ts +25 -0
- package/dist/core/tools/hookedToolBroker.d.ts.map +1 -0
- package/dist/core/tools/hookedToolBroker.js +95 -0
- package/dist/core/tools/hookedToolBroker.js.map +1 -0
- package/dist/core/tools/omgToolManifest.d.ts +42 -0
- package/dist/core/tools/omgToolManifest.d.ts.map +1 -0
- package/dist/core/tools/omgToolManifest.js +66 -0
- package/dist/core/tools/omgToolManifest.js.map +1 -0
- package/dist/core/tools/toolGate.d.ts +23 -0
- package/dist/core/tools/toolGate.d.ts.map +1 -0
- package/dist/core/tools/toolGate.js +51 -0
- package/dist/core/tools/toolGate.js.map +1 -0
- package/dist/core/tools/toolInterceptor.d.ts +7 -0
- package/dist/core/tools/toolInterceptor.d.ts.map +1 -0
- package/dist/core/tools/toolInterceptor.js +108 -0
- package/dist/core/tools/toolInterceptor.js.map +1 -0
- package/dist/core/tools/tools.d.ts +34 -0
- package/dist/core/tools/tools.d.ts.map +1 -0
- package/dist/core/tools/tools.js +328 -0
- package/dist/core/tools/tools.js.map +1 -0
- package/dist/core/tools.d.ts +34 -0
- package/dist/core/tools.d.ts.map +1 -0
- package/dist/core/tools.js +300 -0
- package/dist/core/tools.js.map +1 -0
- package/dist/core/types.d.ts +107 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +55 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core/usageCache.d.ts +19 -0
- package/dist/core/usageCache.d.ts.map +1 -0
- package/dist/core/usageCache.js +157 -0
- package/dist/core/usageCache.js.map +1 -0
- package/dist/core/usageWindow.d.ts +19 -0
- package/dist/core/usageWindow.d.ts.map +1 -0
- package/dist/core/usageWindow.js +73 -0
- package/dist/core/usageWindow.js.map +1 -0
- package/dist/core/util/bgProtocol.d.ts +5 -0
- package/dist/core/util/bgProtocol.d.ts.map +1 -0
- package/dist/core/util/bgProtocol.js +20 -0
- package/dist/core/util/bgProtocol.js.map +1 -0
- package/dist/core/util/clipboard.d.ts +4 -0
- package/dist/core/util/clipboard.d.ts.map +1 -0
- package/dist/core/util/clipboard.js +46 -0
- package/dist/core/util/clipboard.js.map +1 -0
- package/dist/core/util/clipboardImage.d.ts +3 -0
- package/dist/core/util/clipboardImage.d.ts.map +1 -0
- package/dist/core/util/clipboardImage.js +58 -0
- package/dist/core/util/clipboardImage.js.map +1 -0
- package/dist/core/util/langHint.d.ts +9 -0
- package/dist/core/util/langHint.d.ts.map +1 -0
- package/dist/core/util/langHint.js +33 -0
- package/dist/core/util/langHint.js.map +1 -0
- package/dist/core/util/slugify.d.ts +2 -0
- package/dist/core/util/slugify.d.ts.map +1 -0
- package/dist/core/util/slugify.js +28 -0
- package/dist/core/util/slugify.js.map +1 -0
- package/dist/hooks/hookedToolProxy.mjs +118 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/ipc/dispatcher.d.ts +21 -0
- package/dist/ipc/dispatcher.d.ts.map +1 -0
- package/dist/ipc/dispatcher.js +160 -0
- package/dist/ipc/dispatcher.js.map +1 -0
- package/dist/ipc/events.d.ts +33 -0
- package/dist/ipc/events.d.ts.map +1 -0
- package/dist/ipc/events.js +42 -0
- package/dist/ipc/events.js.map +1 -0
- package/dist/ipc/rpc.d.ts +31 -0
- package/dist/ipc/rpc.d.ts.map +1 -0
- package/dist/ipc/rpc.js +110 -0
- package/dist/ipc/rpc.js.map +1 -0
- package/dist/ipc/stdio.d.ts +11 -0
- package/dist/ipc/stdio.d.ts.map +1 -0
- package/dist/ipc/stdio.js +52 -0
- package/dist/ipc/stdio.js.map +1 -0
- package/dist/mcp/askClient.d.ts +9 -0
- package/dist/mcp/askClient.d.ts.map +1 -0
- package/dist/mcp/askClient.js +70 -0
- package/dist/mcp/askClient.js.map +1 -0
- package/dist/mcp/constants.d.ts +6 -0
- package/dist/mcp/constants.d.ts.map +1 -0
- package/dist/mcp/constants.js +8 -0
- package/dist/mcp/constants.js.map +1 -0
- package/dist/mcp/permissionClient.d.ts +5 -0
- package/dist/mcp/permissionClient.d.ts.map +1 -0
- package/dist/mcp/permissionClient.js +71 -0
- package/dist/mcp/permissionClient.js.map +1 -0
- package/dist/mcp/schemas.d.ts +9 -0
- package/dist/mcp/schemas.d.ts.map +1 -0
- package/dist/mcp/schemas.js +121 -0
- package/dist/mcp/schemas.js.map +1 -0
- package/dist/mcp/server.d.ts +41 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +204 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/policy/loader.d.ts +27 -0
- package/dist/policy/loader.d.ts.map +1 -0
- package/dist/policy/loader.js +89 -0
- package/dist/policy/loader.js.map +1 -0
- package/dist/policy/team-claude-only.yaml +46 -0
- package/dist/policy/team-codex-only.yaml +46 -0
- package/dist/policy/team-codex.yaml +54 -0
- package/dist/policy/team.yaml +104 -0
- package/dist/toolhook/hookedToolProxy.mjs +118 -0
- package/dist/ui/components/App.d.ts +14 -0
- package/dist/ui/components/App.d.ts.map +1 -0
- package/dist/ui/components/App.js +803 -0
- package/dist/ui/components/App.js.map +1 -0
- package/dist/ui/components/AskPicker.d.ts +8 -0
- package/dist/ui/components/AskPicker.d.ts.map +1 -0
- package/dist/ui/components/AskPicker.js +202 -0
- package/dist/ui/components/AskPicker.js.map +1 -0
- package/dist/ui/components/CommandInput.d.ts +63 -0
- package/dist/ui/components/CommandInput.d.ts.map +1 -0
- package/dist/ui/components/CommandInput.js +994 -0
- package/dist/ui/components/CommandInput.js.map +1 -0
- package/dist/ui/components/DiffView.d.ts +19 -0
- package/dist/ui/components/DiffView.d.ts.map +1 -0
- package/dist/ui/components/DiffView.js +93 -0
- package/dist/ui/components/DiffView.js.map +1 -0
- package/dist/ui/components/Dock.d.ts +49 -0
- package/dist/ui/components/Dock.d.ts.map +1 -0
- package/dist/ui/components/Dock.js +52 -0
- package/dist/ui/components/Dock.js.map +1 -0
- package/dist/ui/components/EventLog.d.ts +42 -0
- package/dist/ui/components/EventLog.d.ts.map +1 -0
- package/dist/ui/components/EventLog.js +450 -0
- package/dist/ui/components/EventLog.js.map +1 -0
- package/dist/ui/components/FileSuggest.d.ts +8 -0
- package/dist/ui/components/FileSuggest.d.ts.map +1 -0
- package/dist/ui/components/FileSuggest.js +19 -0
- package/dist/ui/components/FileSuggest.js.map +1 -0
- package/dist/ui/components/HRule.d.ts +27 -0
- package/dist/ui/components/HRule.d.ts.map +1 -0
- package/dist/ui/components/HRule.js +75 -0
- package/dist/ui/components/HRule.js.map +1 -0
- package/dist/ui/components/HintBar.d.ts +2 -0
- package/dist/ui/components/HintBar.d.ts.map +1 -0
- package/dist/ui/components/HintBar.js +19 -0
- package/dist/ui/components/HintBar.js.map +1 -0
- package/dist/ui/components/MarkdownText.d.ts +13 -0
- package/dist/ui/components/MarkdownText.d.ts.map +1 -0
- package/dist/ui/components/MarkdownText.js +255 -0
- package/dist/ui/components/MarkdownText.js.map +1 -0
- package/dist/ui/components/PermissionPrompt.d.ts +8 -0
- package/dist/ui/components/PermissionPrompt.d.ts.map +1 -0
- package/dist/ui/components/PermissionPrompt.js +37 -0
- package/dist/ui/components/PermissionPrompt.js.map +1 -0
- package/dist/ui/components/SessionPicker.d.ts +16 -0
- package/dist/ui/components/SessionPicker.d.ts.map +1 -0
- package/dist/ui/components/SessionPicker.js +116 -0
- package/dist/ui/components/SessionPicker.js.map +1 -0
- package/dist/ui/components/SlashPalette.d.ts +8 -0
- package/dist/ui/components/SlashPalette.d.ts.map +1 -0
- package/dist/ui/components/SlashPalette.js +41 -0
- package/dist/ui/components/SlashPalette.js.map +1 -0
- package/dist/ui/components/Spinner.d.ts +37 -0
- package/dist/ui/components/Spinner.d.ts.map +1 -0
- package/dist/ui/components/Spinner.js +139 -0
- package/dist/ui/components/Spinner.js.map +1 -0
- package/dist/ui/components/StatusBar.d.ts +92 -0
- package/dist/ui/components/StatusBar.d.ts.map +1 -0
- package/dist/ui/components/StatusBar.js +268 -0
- package/dist/ui/components/StatusBar.js.map +1 -0
- package/dist/ui/components/TabChip.d.ts +11 -0
- package/dist/ui/components/TabChip.d.ts.map +1 -0
- package/dist/ui/components/TabChip.js +23 -0
- package/dist/ui/components/TabChip.js.map +1 -0
- package/dist/ui/components/TeamIndicator.d.ts +6 -0
- package/dist/ui/components/TeamIndicator.d.ts.map +1 -0
- package/dist/ui/components/TeamIndicator.js +17 -0
- package/dist/ui/components/TeamIndicator.js.map +1 -0
- package/dist/ui/components/TeamStatusPanel.d.ts +14 -0
- package/dist/ui/components/TeamStatusPanel.d.ts.map +1 -0
- package/dist/ui/components/TeamStatusPanel.js +65 -0
- package/dist/ui/components/TeamStatusPanel.js.map +1 -0
- package/dist/ui/components/ThinkingBlock.d.ts +10 -0
- package/dist/ui/components/ThinkingBlock.d.ts.map +1 -0
- package/dist/ui/components/ThinkingBlock.js +21 -0
- package/dist/ui/components/ThinkingBlock.js.map +1 -0
- package/dist/ui/components/TodoIndicator.d.ts +11 -0
- package/dist/ui/components/TodoIndicator.d.ts.map +1 -0
- package/dist/ui/components/TodoIndicator.js +37 -0
- package/dist/ui/components/TodoIndicator.js.map +1 -0
- package/dist/ui/components/ToolCallCard.d.ts +16 -0
- package/dist/ui/components/ToolCallCard.d.ts.map +1 -0
- package/dist/ui/components/ToolCallCard.js +195 -0
- package/dist/ui/components/ToolCallCard.js.map +1 -0
- package/dist/ui/components/Welcome.d.ts +8 -0
- package/dist/ui/components/Welcome.d.ts.map +1 -0
- package/dist/ui/components/Welcome.js +53 -0
- package/dist/ui/components/Welcome.js.map +1 -0
- package/dist/ui/cursorState.d.ts +29 -0
- package/dist/ui/cursorState.d.ts.map +1 -0
- package/dist/ui/cursorState.js +49 -0
- package/dist/ui/cursorState.js.map +1 -0
- package/dist/ui/diff.d.ts +34 -0
- package/dist/ui/diff.d.ts.map +1 -0
- package/dist/ui/diff.js +184 -0
- package/dist/ui/diff.js.map +1 -0
- package/dist/ui/diffLang.d.ts +2 -0
- package/dist/ui/diffLang.d.ts.map +1 -0
- package/dist/ui/diffLang.js +36 -0
- package/dist/ui/diffLang.js.map +1 -0
- package/dist/ui/emoji.d.ts +4 -0
- package/dist/ui/emoji.d.ts.map +1 -0
- package/dist/ui/emoji.js +73 -0
- package/dist/ui/emoji.js.map +1 -0
- package/dist/ui/fileMentions.d.ts +41 -0
- package/dist/ui/fileMentions.d.ts.map +1 -0
- package/dist/ui/fileMentions.js +135 -0
- package/dist/ui/fileMentions.js.map +1 -0
- package/dist/ui/hooks/useLineEditor.d.ts +44 -0
- package/dist/ui/hooks/useLineEditor.d.ts.map +1 -0
- package/dist/ui/hooks/useLineEditor.js +142 -0
- package/dist/ui/hooks/useLineEditor.js.map +1 -0
- package/dist/ui/inputHistory.d.ts +8 -0
- package/dist/ui/inputHistory.d.ts.map +1 -0
- package/dist/ui/inputHistory.js +56 -0
- package/dist/ui/inputHistory.js.map +1 -0
- package/dist/ui/jsonrpc.d.ts +17 -0
- package/dist/ui/jsonrpc.d.ts.map +1 -0
- package/dist/ui/jsonrpc.js +41 -0
- package/dist/ui/jsonrpc.js.map +1 -0
- package/dist/ui/launcher.d.ts +20 -0
- package/dist/ui/launcher.d.ts.map +1 -0
- package/dist/ui/launcher.js +185 -0
- package/dist/ui/launcher.js.map +1 -0
- package/dist/ui/markdown.d.ts +104 -0
- package/dist/ui/markdown.d.ts.map +1 -0
- package/dist/ui/markdown.js +449 -0
- package/dist/ui/markdown.js.map +1 -0
- package/dist/ui/mouse.d.ts +22 -0
- package/dist/ui/mouse.d.ts.map +1 -0
- package/dist/ui/mouse.js +31 -0
- package/dist/ui/mouse.js.map +1 -0
- package/dist/ui/outbound.d.ts +20 -0
- package/dist/ui/outbound.d.ts.map +1 -0
- package/dist/ui/outbound.js +49 -0
- package/dist/ui/outbound.js.map +1 -0
- package/dist/ui/screenMode.d.ts +25 -0
- package/dist/ui/screenMode.d.ts.map +1 -0
- package/dist/ui/screenMode.js +43 -0
- package/dist/ui/screenMode.js.map +1 -0
- package/dist/ui/slashCatalog.d.ts +18 -0
- package/dist/ui/slashCatalog.d.ts.map +1 -0
- package/dist/ui/slashCatalog.js +243 -0
- package/dist/ui/slashCatalog.js.map +1 -0
- package/dist/ui/syntax.d.ts +11 -0
- package/dist/ui/syntax.d.ts.map +1 -0
- package/dist/ui/syntax.js +78 -0
- package/dist/ui/syntax.js.map +1 -0
- package/dist/ui/theme.d.ts +165 -0
- package/dist/ui/theme.d.ts.map +1 -0
- package/dist/ui/theme.js +394 -0
- package/dist/ui/theme.js.map +1 -0
- package/dist/ui/types.d.ts +203 -0
- package/dist/ui/types.d.ts.map +1 -0
- package/dist/ui/types.js +53 -0
- package/dist/ui/types.js.map +1 -0
- package/package.json +104 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
// Phase 344: `omg doctor` run-mode. A non-TUI entry that reports provider
|
|
2
|
+
// setup status and the exact command to fix each gap, then exits. The
|
|
3
|
+
// testable logic lives in cli/doctor.ts; this is the I/O + exit-code
|
|
4
|
+
// shell (mirrors cli/modes/login.ts).
|
|
5
|
+
import { BASE_PROVIDERS, diagnose, nodeDoctorEnv, renderJson, renderReport, requiredFromProviders, } from "../doctor.js";
|
|
6
|
+
import { loadActivePreset } from "../../core/state/presetPersistence.js";
|
|
7
|
+
import { PRESET_PATHS } from "../../core/orchestration/roleRouter.js";
|
|
8
|
+
import { loadTeamPolicy } from "../../policy/loader.js";
|
|
9
|
+
import { loadMergedMcpConfig } from "../../core/mcp/mcpConfig.js";
|
|
10
|
+
import { gitToplevel } from "../../core/state/agentsMdScaffold.js";
|
|
11
|
+
/** Phase 348: external MCP servers from user + project mcp.json, for the
|
|
12
|
+
* doctor report. Project dir = git root of cwd (where recommendations live). */
|
|
13
|
+
function mcpStatusForCwd() {
|
|
14
|
+
try {
|
|
15
|
+
const projectDir = gitToplevel(process.cwd()) ?? process.cwd();
|
|
16
|
+
const cfg = loadMergedMcpConfig({ projectDir });
|
|
17
|
+
return Object.entries(cfg.servers).map(([name, s]) => ({
|
|
18
|
+
name,
|
|
19
|
+
enabled: s.enabled !== false,
|
|
20
|
+
...(s.providers ? { providers: s.providers } : {}),
|
|
21
|
+
}));
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
return [];
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
/** Providers the active team preset actually uses (so a missing provider
|
|
28
|
+
* is only an error when some role needs it). Falls back to "everything
|
|
29
|
+
* optional" if the policy can't be read. */
|
|
30
|
+
export function requiredForActivePreset() {
|
|
31
|
+
try {
|
|
32
|
+
const preset = loadActivePreset();
|
|
33
|
+
const policy = loadTeamPolicy(PRESET_PATHS[preset]);
|
|
34
|
+
const providers = [...policy.roles.values()].map((r) => r.llm.provider);
|
|
35
|
+
return requiredFromProviders(providers);
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
return requiredFromProviders([]);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/** Run `omg doctor [--json]`. Exit 0 iff every required provider is
|
|
42
|
+
* usable; 1 otherwise. */
|
|
43
|
+
export async function runDoctorCli(opts = {}) {
|
|
44
|
+
const required = opts.required ?? requiredForActivePreset();
|
|
45
|
+
const base = await diagnose(opts.env ?? nodeDoctorEnv(), required, {
|
|
46
|
+
probeSdks: "all",
|
|
47
|
+
});
|
|
48
|
+
const report = { ...base, mcp: mcpStatusForCwd() };
|
|
49
|
+
process.stdout.write(opts.json ? renderJson(report) : renderReport(report));
|
|
50
|
+
return report.pass ? 0 : 1;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Phase 344: one-shot startup nudge. When the active preset has a required
|
|
54
|
+
* provider that isn't usable, print the doctor report (and a pointer to
|
|
55
|
+
* `omg doctor` / `omg login`) before the TUI launches. Never blocks; it's
|
|
56
|
+
* self-limiting — once setup is fixed, `pass` is true and nothing prints.
|
|
57
|
+
*
|
|
58
|
+
* Cheap on the default path: `probeSdks: "required"` means no SDK import
|
|
59
|
+
* unless a role actually uses the SDK provider id. Suppress with
|
|
60
|
+
* OMG_SKIP_PREFLIGHT=1; skipped for the stub provider (demo / no-deps).
|
|
61
|
+
*/
|
|
62
|
+
export async function runPreflightNudge(args) {
|
|
63
|
+
if (process.env.OMG_SKIP_PREFLIGHT === "1")
|
|
64
|
+
return;
|
|
65
|
+
if (args.defaultProvider === "stub")
|
|
66
|
+
return;
|
|
67
|
+
const required = args.required ?? requiredForActivePreset();
|
|
68
|
+
const anyRequired = BASE_PROVIDERS.some((b) => required[b].cli || required[b].sdk);
|
|
69
|
+
if (!anyRequired)
|
|
70
|
+
return;
|
|
71
|
+
const report = await diagnose(args.env ?? nodeDoctorEnv(), required, {
|
|
72
|
+
probeSdks: "required",
|
|
73
|
+
});
|
|
74
|
+
if (report.pass)
|
|
75
|
+
return;
|
|
76
|
+
process.stdout.write("\n" + renderReport(report));
|
|
77
|
+
process.stdout.write("Run `omg doctor` for the full status, or `omg login <provider>` to authenticate.\n\n");
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=doctor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/modes/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** Run `omg login <provider>`. Empty / unknown provider prints usage and
|
|
2
|
+
* returns exit 2; otherwise hands the TTY to the provider login and
|
|
3
|
+
* returns its exit code. */
|
|
4
|
+
export declare function runLoginCli(providerArg: string): Promise<number>;
|
|
5
|
+
//# sourceMappingURL=login.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/cli/modes/login.ts"],"names":[],"mappings":"AAwBA;;6BAE6B;AAC7B,wBAAsB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA4BtE"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
// Phase 293: `omg login [provider]` run-mode. A non-TUI entry that hands
|
|
2
|
+
// the terminal straight to the provider's interactive login. Use it when
|
|
3
|
+
// a provider's auth has expired (every team role on it returns an empty
|
|
4
|
+
// body) and you want to re-authenticate from the shell.
|
|
5
|
+
import { LOGIN_PROVIDERS, isLoginProvider, loginCommandLine, runProviderLogin, } from "../login.js";
|
|
6
|
+
function usage() {
|
|
7
|
+
const lines = LOGIN_PROVIDERS.map((p) => ` omg login ${p.padEnd(7)}→ runs \`${loginCommandLine(p)}\``);
|
|
8
|
+
return ("omg login <provider> — authenticate a provider CLI.\n" +
|
|
9
|
+
` providers: ${LOGIN_PROVIDERS.join(", ")}\n` +
|
|
10
|
+
lines.join("\n") +
|
|
11
|
+
"\n");
|
|
12
|
+
}
|
|
13
|
+
/** Run `omg login <provider>`. Empty / unknown provider prints usage and
|
|
14
|
+
* returns exit 2; otherwise hands the TTY to the provider login and
|
|
15
|
+
* returns its exit code. */
|
|
16
|
+
export async function runLoginCli(providerArg) {
|
|
17
|
+
const arg = providerArg.trim().toLowerCase();
|
|
18
|
+
if (!arg) {
|
|
19
|
+
process.stdout.write(usage());
|
|
20
|
+
return 2;
|
|
21
|
+
}
|
|
22
|
+
if (!isLoginProvider(arg)) {
|
|
23
|
+
process.stderr.write(`omg login: unknown provider '${arg}'.\n\n` + usage());
|
|
24
|
+
return 2;
|
|
25
|
+
}
|
|
26
|
+
process.stdout.write(`Launching \`${loginCommandLine(arg)}\`…\n`);
|
|
27
|
+
const code = await runProviderLogin(arg);
|
|
28
|
+
if (code === 127) {
|
|
29
|
+
process.stderr.write(`omg login: '${arg}' CLI not found on PATH. Install it first.\n`);
|
|
30
|
+
return 127;
|
|
31
|
+
}
|
|
32
|
+
if (code === 0) {
|
|
33
|
+
process.stdout.write(`omg login: ${arg} authenticated.\n`);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
process.stderr.write(`omg login: ${arg} login exited with code ${code}.\n`);
|
|
37
|
+
}
|
|
38
|
+
return code;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=login.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/cli/modes/login.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,yEAAyE;AACzE,wEAAwE;AACxE,wDAAwD;AAExD,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,SAAS,KAAK;IACZ,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAC/B,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,gBAAgB,CAAC,CAAC,CAAC,IAAI,CACvE,CAAC;IACF,OAAO,CACL,uDAAuD;QACvD,gBAAgB,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QAC9C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QAChB,IAAI,CACL,CAAC;AACJ,CAAC;AAED;;6BAE6B;AAC7B,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,WAAmB;IACnD,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC7C,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9B,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,gCAAgC,GAAG,QAAQ,GAAG,KAAK,EAAE,CACtD,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACzC,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,eAAe,GAAG,8CAA8C,CACjE,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC;IACD,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,mBAAmB,CAAC,CAAC;IAC7D,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,cAAc,GAAG,2BAA2B,IAAI,KAAK,CACtD,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare function runMcpServe(opts: {
|
|
2
|
+
writable: boolean;
|
|
3
|
+
shell: boolean;
|
|
4
|
+
/** Phase 348: per-role external-server allowlist + the provider this child
|
|
5
|
+
* serves (passed by buildOmgServerSpec as --mcp-allow / --mcp-provider). */
|
|
6
|
+
mcpAllow?: string[];
|
|
7
|
+
mcpProvider?: string;
|
|
8
|
+
}): Promise<number>;
|
|
9
|
+
//# sourceMappingURL=mcpServe.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcpServe.d.ts","sourceRoot":"","sources":["../../../src/cli/modes/mcpServe.ts"],"names":[],"mappings":"AAiBA,wBAAsB,WAAW,CAAC,IAAI,EAAE;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf;iFAC6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,OAAO,CAAC,MAAM,CAAC,CA4GlB"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
// omg — `--mcp-serve` run-mode, extracted from cli.ts (pure move).
|
|
2
|
+
// Serves omg's tool registry over stdio as an MCP server, layering in
|
|
3
|
+
// the delegate tool, the interactive ask_user round-trip, and any
|
|
4
|
+
// external MCP servers from ~/.omg/mcp.json (with a recursion guard).
|
|
5
|
+
import { RoleRouter } from "../../core/orchestration/roleRouter.js";
|
|
6
|
+
import { makeAdapter, } from "../../core/orchestration/orchestrator.js";
|
|
7
|
+
import { defaultRegistry, defaultShellRegistry, defaultWritableRegistry, registerDelegate, } from "../../core/tools/tools.js";
|
|
8
|
+
export async function runMcpServe(opts) {
|
|
9
|
+
// Phase 56: the parent omg process exposes the active tab's cwd
|
|
10
|
+
// via the OMG_TAB_CWD env var when it spawns the CLI child. The
|
|
11
|
+
// MCP server inherits it through the CLI, and we honor it as the
|
|
12
|
+
// root for file / shell tools. Falls back to process.cwd when
|
|
13
|
+
// unset (manual `omg --mcp-serve` invocations, or pre-Phase 56
|
|
14
|
+
// adapters).
|
|
15
|
+
const envCwd = process.env.OMG_TAB_CWD;
|
|
16
|
+
const root = envCwd && envCwd.length > 0 ? envCwd : process.cwd();
|
|
17
|
+
// Pick the registry tier that matches the flags the user passed. The
|
|
18
|
+
// shell tier extends writable extends default, so this is a flat
|
|
19
|
+
// switch with rising privilege.
|
|
20
|
+
const registry = opts.shell
|
|
21
|
+
? defaultShellRegistry(root)
|
|
22
|
+
: opts.writable
|
|
23
|
+
? defaultWritableRegistry(root)
|
|
24
|
+
: defaultRegistry(root);
|
|
25
|
+
// Phase 90: expose the `delegate` tool so the main agent can hand
|
|
26
|
+
// subtasks to other team roles. Each call spawns a fresh adapter
|
|
27
|
+
// built from team.yaml, runs the prompt once, streams text back.
|
|
28
|
+
try {
|
|
29
|
+
const router = RoleRouter.default();
|
|
30
|
+
registerDelegate(registry, {
|
|
31
|
+
roles: router.roles,
|
|
32
|
+
resolveAdapter: async (role) => {
|
|
33
|
+
const cfg = router.configFor(role);
|
|
34
|
+
return await makeAdapter(cfg.llm.provider, cfg.llm.model);
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
// team.yaml missing / malformed → ship without delegate. Other
|
|
40
|
+
// tools still work.
|
|
41
|
+
}
|
|
42
|
+
// Phase 150: the interactive ask_user tool. When the parent omg opened
|
|
43
|
+
// an ask broker (OMG_ASK_SOCKET set), this round-trips a multiple-choice
|
|
44
|
+
// question to the TUI picker and returns the chosen label(s). Without a
|
|
45
|
+
// broker (e.g. scripted use) it returns a clear note so the agent moves
|
|
46
|
+
// on instead of waiting.
|
|
47
|
+
{
|
|
48
|
+
const { getEnvAskClient } = await import("../../mcp/askClient.js");
|
|
49
|
+
const askClient = getEnvAskClient();
|
|
50
|
+
registry.register("ask_user", async (args) => {
|
|
51
|
+
const question = typeof args.question === "string" ? args.question : "";
|
|
52
|
+
const options = Array.isArray(args.options) ? args.options : [];
|
|
53
|
+
const multiSelect = args.multiSelect === true;
|
|
54
|
+
if (!question || options.length === 0) {
|
|
55
|
+
return { answer: "ask_user requires a question and options." };
|
|
56
|
+
}
|
|
57
|
+
if (!askClient) {
|
|
58
|
+
return {
|
|
59
|
+
answer: "ask_user is unavailable (no interactive UI). Proceed with your best judgment.",
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
const answer = await askClient.ask(question, options, multiSelect);
|
|
63
|
+
return { answer };
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
// Phase 129: pull in any external MCP servers from ~/.omg/mcp.json and
|
|
67
|
+
// merge their tools (namespaced mcp__<server>__<tool>) into the same
|
|
68
|
+
// registry. This is what lets a CLI that drives omg's tools also reach
|
|
69
|
+
// the user's external MCP ecosystem. Best-effort: a server that fails
|
|
70
|
+
// to start is skipped.
|
|
71
|
+
// Phase 136: recursion guard. If a user's mcp.json points a server
|
|
72
|
+
// back at `omg --mcp-serve`, each level would spawn another omg that
|
|
73
|
+
// reads the same config — infinite fork. We track depth in an env
|
|
74
|
+
// var that children inherit; past MAX_MCP_DEPTH we serve built-ins
|
|
75
|
+
// only and don't connect external servers.
|
|
76
|
+
const MAX_MCP_DEPTH = 1;
|
|
77
|
+
const mcpDepth = Number(process.env.OMG_MCP_DEPTH ?? "0") || 0;
|
|
78
|
+
const { loadMergedMcpConfig, activeServers } = await import("../../core/mcp/mcpConfig.js");
|
|
79
|
+
const { McpManager } = await import("../../core/mcp/mcpManager.js");
|
|
80
|
+
// Phase 348: merge user (~/.omg) + project (<root>/.omg) configs, then keep
|
|
81
|
+
// only the servers that should actually connect — enabled, within this
|
|
82
|
+
// role's allowlist (OMG_MCP_ALLOW, set per-role by buildOmgServerSpec), and
|
|
83
|
+
// tagged for this provider (OMG_MCP_PROVIDER). Empty allowlist env = all.
|
|
84
|
+
const merged = loadMergedMcpConfig({ projectDir: root });
|
|
85
|
+
const mcpConfig = {
|
|
86
|
+
servers: activeServers(merged.servers, {
|
|
87
|
+
allow: opts.mcpAllow && opts.mcpAllow.length > 0 ? opts.mcpAllow : undefined,
|
|
88
|
+
provider: opts.mcpProvider,
|
|
89
|
+
}),
|
|
90
|
+
warnings: merged.warnings,
|
|
91
|
+
};
|
|
92
|
+
let mcpManager = null;
|
|
93
|
+
if (Object.keys(mcpConfig.servers).length > 0 && mcpDepth < MAX_MCP_DEPTH) {
|
|
94
|
+
// Children inherit an incremented depth so a nested omg server
|
|
95
|
+
// stops recursing.
|
|
96
|
+
process.env.OMG_MCP_DEPTH = String(mcpDepth + 1);
|
|
97
|
+
mcpManager = new McpManager();
|
|
98
|
+
try {
|
|
99
|
+
await mcpManager.connectAll(mcpConfig, { cwd: root });
|
|
100
|
+
mcpManager.registerInto(registry);
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
/* MCP merge is best-effort; built-in tools still serve */
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
const { McpServer } = await import("../../mcp/server.js");
|
|
107
|
+
const server = new McpServer({ registry });
|
|
108
|
+
await server.run();
|
|
109
|
+
await mcpManager?.stopAll();
|
|
110
|
+
return 0;
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=mcpServe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcpServe.js","sourceRoot":"","sources":["../../../src/cli/modes/mcpServe.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare function runOrchestrator(opts: {
|
|
2
|
+
prompt: string;
|
|
3
|
+
role: string;
|
|
4
|
+
provider: string;
|
|
5
|
+
headless: boolean;
|
|
6
|
+
tools: boolean;
|
|
7
|
+
writable: boolean;
|
|
8
|
+
shell: boolean;
|
|
9
|
+
ask: boolean;
|
|
10
|
+
loop: boolean;
|
|
11
|
+
maxSteps: number;
|
|
12
|
+
adapterOpts: Record<string, unknown>;
|
|
13
|
+
}): Promise<number>;
|
|
14
|
+
//# sourceMappingURL=orchestrator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../src/cli/modes/orchestrator.ts"],"names":[],"mappings":"AAgBA,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC,GAAG,OAAO,CAAC,MAAM,CAAC,CA0DlB"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
// omg — `--run` orchestrator run-mode, extracted from cli.ts (pure move).
|
|
2
|
+
// Runs one role through the Orchestrator (single turn or agentic loop),
|
|
3
|
+
// either headless or through the in-process Ink UI.
|
|
4
|
+
import { RoleRouter, UnknownRoleError } from "../../core/orchestration/roleRouter.js";
|
|
5
|
+
import { Orchestrator, makeAdapter, makeMultiStepStubAdapter, } from "../../core/orchestration/orchestrator.js";
|
|
6
|
+
import { StdoutLineWriter } from "../../ipc/stdio.js";
|
|
7
|
+
import { RpcGate } from "../../core/tools/toolGate.js";
|
|
8
|
+
import { buildRegistry } from "../registry.js";
|
|
9
|
+
import { openUiSession } from "../uiSession.js";
|
|
10
|
+
export async function runOrchestrator(opts) {
|
|
11
|
+
const router = RoleRouter.default();
|
|
12
|
+
let config;
|
|
13
|
+
try {
|
|
14
|
+
config = router.configFor(opts.role);
|
|
15
|
+
}
|
|
16
|
+
catch (e) {
|
|
17
|
+
if (e instanceof UnknownRoleError) {
|
|
18
|
+
process.stderr.write(`${e.message}\n`);
|
|
19
|
+
return 2;
|
|
20
|
+
}
|
|
21
|
+
throw e;
|
|
22
|
+
}
|
|
23
|
+
const effectiveProvider = opts.provider === "policy"
|
|
24
|
+
? config.llm.provider
|
|
25
|
+
: opts.provider;
|
|
26
|
+
// If the caller overrode the provider, team.yaml's model belongs to
|
|
27
|
+
// a different vendor — drop it and let the adapter use its own
|
|
28
|
+
// default. Otherwise honor the policy-set model.
|
|
29
|
+
const modelForAdapter = effectiveProvider === config.llm.provider ? config.llm.model : "";
|
|
30
|
+
const adapter = effectiveProvider === "stub" && opts.loop
|
|
31
|
+
? makeMultiStepStubAdapter()
|
|
32
|
+
: await makeAdapter(effectiveProvider, modelForAdapter, opts.adapterOpts);
|
|
33
|
+
const registry = buildRegistry(opts.tools, opts.writable, opts.shell);
|
|
34
|
+
if (opts.headless) {
|
|
35
|
+
const writer = new StdoutLineWriter();
|
|
36
|
+
const orch = new Orchestrator(router, (m) => writer.write(m), {
|
|
37
|
+
toolRegistry: registry,
|
|
38
|
+
});
|
|
39
|
+
if (opts.loop) {
|
|
40
|
+
await orch.runLoop(opts.role, opts.prompt, adapter, {
|
|
41
|
+
maxSteps: opts.maxSteps,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
await orch.runTurn(opts.role, opts.prompt, adapter);
|
|
46
|
+
}
|
|
47
|
+
return 0;
|
|
48
|
+
}
|
|
49
|
+
const session = await openUiSession(opts.ask);
|
|
50
|
+
const gate = opts.ask && session.rpcClient !== null
|
|
51
|
+
? new RpcGate(session.rpcClient)
|
|
52
|
+
: undefined;
|
|
53
|
+
const orch = new Orchestrator(router, (m) => session.pushEvent(m), {
|
|
54
|
+
toolRegistry: registry,
|
|
55
|
+
toolGate: gate,
|
|
56
|
+
});
|
|
57
|
+
const run = opts.loop
|
|
58
|
+
? orch.runLoop(opts.role, opts.prompt, adapter, { maxSteps: opts.maxSteps })
|
|
59
|
+
: orch.runTurn(opts.role, opts.prompt, adapter);
|
|
60
|
+
await Promise.race([run, session.quitPromise]);
|
|
61
|
+
await session.cleanup();
|
|
62
|
+
return 0;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=orchestrator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../src/cli/modes/orchestrator.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,wEAAwE;AACxE,oDAAoD;AAEpD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AACtF,OAAO,EACL,YAAY,EACZ,WAAW,EACX,wBAAwB,GAEzB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAYrC;IACC,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;IACpC,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,gBAAgB,EAAE,CAAC;YAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC;YACvC,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;IAED,MAAM,iBAAiB,GACrB,IAAI,CAAC,QAAQ,KAAK,QAAQ;QACxB,CAAC,CAAE,MAAM,CAAC,GAAG,CAAC,QAAqB;QACnC,CAAC,CAAE,IAAI,CAAC,QAAqB,CAAC;IAClC,oEAAoE;IACpE,+DAA+D;IAC/D,iDAAiD;IACjD,MAAM,eAAe,GACnB,iBAAiB,KAAK,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,MAAM,OAAO,GACX,iBAAiB,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI;QACvC,CAAC,CAAC,wBAAwB,EAAE;QAC5B,CAAC,CAAC,MAAM,WAAW,CAAC,iBAAiB,EAAE,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAEtE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YAC5D,YAAY,EAAE,QAAQ;SACvB,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE;gBAClD,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,IAAI,GACR,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI;QACpC,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;QAChC,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;QACjE,YAAY,EAAE,QAAQ;QACtB,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI;QACnB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5E,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAC/C,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IACxB,OAAO,CAAC,CAAC;AACX,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare function runTeam(opts: {
|
|
2
|
+
prompt: string;
|
|
3
|
+
provider: string;
|
|
4
|
+
maxIterations: number;
|
|
5
|
+
headless: boolean;
|
|
6
|
+
tools: boolean;
|
|
7
|
+
writable: boolean;
|
|
8
|
+
shell: boolean;
|
|
9
|
+
ask: boolean;
|
|
10
|
+
reviewerRoles: string[];
|
|
11
|
+
strategy: string;
|
|
12
|
+
adapterOpts: Record<string, unknown>;
|
|
13
|
+
}): Promise<number>;
|
|
14
|
+
//# sourceMappingURL=team.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"team.d.ts","sourceRoot":"","sources":["../../../src/cli/modes/team.ts"],"names":[],"mappings":"AAuBA,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,OAAO,CAAC;IACb,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC,GAAG,OAAO,CAAC,MAAM,CAAC,CA6ElB"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
// omg — `--team-run` run-mode, extracted from cli.ts (pure move).
|
|
2
|
+
// Runs a multi-role team to consensus (escalate / voting / hierarchy),
|
|
3
|
+
// prebuilding one adapter per role, either headless or through the UI.
|
|
4
|
+
import { makeAdapter, makeTeamStubAdapter, } from "../../core/orchestration/orchestrator.js";
|
|
5
|
+
import { RoleRouter } from "../../core/orchestration/roleRouter.js";
|
|
6
|
+
import { TeamRunner } from "../../core/orchestration/teamRunner.js";
|
|
7
|
+
import { languageDirective } from "../../core/util/langHint.js";
|
|
8
|
+
import { DirectorEscalateStrategy, HierarchyStrategy, VotingStrategy, } from "../../core/orchestration/consensusEngine.js";
|
|
9
|
+
import { StdoutLineWriter } from "../../ipc/stdio.js";
|
|
10
|
+
import { RpcGate } from "../../core/tools/toolGate.js";
|
|
11
|
+
import { buildRegistry } from "../registry.js";
|
|
12
|
+
import { openUiSession } from "../uiSession.js";
|
|
13
|
+
export async function runTeam(opts) {
|
|
14
|
+
const router = RoleRouter.default();
|
|
15
|
+
const registry = buildRegistry(opts.tools, opts.writable, opts.shell);
|
|
16
|
+
let strategy;
|
|
17
|
+
if (opts.strategy === "voting")
|
|
18
|
+
strategy = new VotingStrategy();
|
|
19
|
+
else if (opts.strategy === "hierarchy")
|
|
20
|
+
strategy = new HierarchyStrategy(opts.reviewerRoles);
|
|
21
|
+
else
|
|
22
|
+
strategy = new DirectorEscalateStrategy();
|
|
23
|
+
// Phase 141: headless team roles mirror the task language too.
|
|
24
|
+
const langSystem = languageDirective(opts.prompt);
|
|
25
|
+
const adapterFor = async (role) => {
|
|
26
|
+
const cfg = router.configFor(role);
|
|
27
|
+
const effective = opts.provider === "policy"
|
|
28
|
+
? cfg.llm.provider
|
|
29
|
+
: opts.provider;
|
|
30
|
+
if (effective === "stub")
|
|
31
|
+
return makeTeamStubAdapter(role);
|
|
32
|
+
const modelForAdapter = effective === cfg.llm.provider ? cfg.llm.model : "";
|
|
33
|
+
const baseSystem = opts.adapterOpts
|
|
34
|
+
?.system;
|
|
35
|
+
const system = [baseSystem, langSystem].filter(Boolean).join("\n\n");
|
|
36
|
+
return await makeAdapter(effective, modelForAdapter, {
|
|
37
|
+
...opts.adapterOpts,
|
|
38
|
+
system,
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
const adapterCache = new Map();
|
|
42
|
+
for (const role of ["implementer", ...opts.reviewerRoles]) {
|
|
43
|
+
if (!adapterCache.has(role)) {
|
|
44
|
+
adapterCache.set(role, await adapterFor(role));
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
const factory = (role) => {
|
|
48
|
+
const cached = adapterCache.get(role);
|
|
49
|
+
if (cached === undefined)
|
|
50
|
+
throw new Error(`adapter for role '${role}' not prebuilt`);
|
|
51
|
+
return cached;
|
|
52
|
+
};
|
|
53
|
+
if (opts.headless) {
|
|
54
|
+
const writer = new StdoutLineWriter();
|
|
55
|
+
const runner = new TeamRunner(router, (m) => writer.write(m), factory, {
|
|
56
|
+
toolRegistry: registry,
|
|
57
|
+
});
|
|
58
|
+
const outcome = await runner.runTeam(opts.prompt, {
|
|
59
|
+
reviewerRoles: opts.reviewerRoles,
|
|
60
|
+
strategy,
|
|
61
|
+
maxIterations: opts.maxIterations,
|
|
62
|
+
});
|
|
63
|
+
return outcome.final === "approve" ? 0 : 1;
|
|
64
|
+
}
|
|
65
|
+
const session = await openUiSession(opts.ask);
|
|
66
|
+
const gate = opts.ask && session.rpcClient !== null
|
|
67
|
+
? new RpcGate(session.rpcClient)
|
|
68
|
+
: undefined;
|
|
69
|
+
const runner = new TeamRunner(router, (m) => session.pushEvent(m), factory, {
|
|
70
|
+
toolRegistry: registry,
|
|
71
|
+
toolGate: gate,
|
|
72
|
+
});
|
|
73
|
+
const run = runner.runTeam(opts.prompt, {
|
|
74
|
+
reviewerRoles: opts.reviewerRoles,
|
|
75
|
+
strategy,
|
|
76
|
+
maxIterations: opts.maxIterations,
|
|
77
|
+
});
|
|
78
|
+
const outcome = await Promise.race([
|
|
79
|
+
run,
|
|
80
|
+
session.quitPromise.then(() => null),
|
|
81
|
+
]);
|
|
82
|
+
await session.cleanup();
|
|
83
|
+
if (outcome === null)
|
|
84
|
+
return 130; // quit before completion
|
|
85
|
+
return outcome.final === "approve" ? 0 : 1;
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=team.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"team.js","sourceRoot":"","sources":["../../../src/cli/modes/team.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,wBAAwB,CAAC;AAEhC,wBAAgB,aAAa,CAC3B,YAAY,EAAE,OAAO,EACrB,QAAQ,EAAE,OAAO,EACjB,KAAK,EAAE,OAAO,GACb,YAAY,GAAG,SAAS,CAK1B"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// omg — tool-registry tier selection, extracted from cli.ts (pure move).
|
|
2
|
+
// Maps the --tools/--write-tools/--shell-tools flags to the matching
|
|
3
|
+
// registry tier (default ⊂ writable ⊂ shell). Returns undefined when
|
|
4
|
+
// tools are disabled.
|
|
5
|
+
import { defaultRegistry, defaultShellRegistry, defaultWritableRegistry, } from "../core/tools/tools.js";
|
|
6
|
+
export function buildRegistry(toolsEnabled, writable, shell) {
|
|
7
|
+
if (!toolsEnabled)
|
|
8
|
+
return undefined;
|
|
9
|
+
if (shell)
|
|
10
|
+
return defaultShellRegistry();
|
|
11
|
+
if (writable)
|
|
12
|
+
return defaultWritableRegistry();
|
|
13
|
+
return defaultRegistry();
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,qEAAqE;AACrE,qEAAqE;AACrE,sBAAsB;AAEtB,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,uBAAuB,GAExB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,UAAU,aAAa,CAC3B,YAAqB,EACrB,QAAiB,EACjB,KAAc;IAEd,IAAI,CAAC,YAAY;QAAE,OAAO,SAAS,CAAC;IACpC,IAAI,KAAK;QAAE,OAAO,oBAAoB,EAAE,CAAC;IACzC,IAAI,QAAQ;QAAE,OAAO,uBAAuB,EAAE,CAAC;IAC/C,OAAO,eAAe,EAAE,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/cli/slash/core.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAQhD,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,YAAY,GAChB,OAAO,CAAC,OAAO,CAAC,CA2iBlB"}
|