@ebowwa/coder 0.7.63 → 0.7.65
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/dist/core/__tests__/permissions.test.d.ts +12 -0
- package/dist/core/__tests__/permissions.test.d.ts.map +1 -0
- package/dist/core/__tests__/permissions.test.js +851 -0
- package/dist/core/agent-loop/__tests__/compaction.test.d.ts +5 -0
- package/dist/core/agent-loop/__tests__/compaction.test.d.ts.map +1 -0
- package/dist/core/agent-loop/__tests__/compaction.test.js +209 -0
- package/dist/core/agent-loop/__tests__/formatters.test.d.ts +5 -0
- package/dist/core/agent-loop/__tests__/formatters.test.d.ts.map +1 -0
- package/dist/core/agent-loop/__tests__/formatters.test.js +195 -0
- package/dist/core/agent-loop/__tests__/index.test.d.ts +5 -0
- package/dist/core/agent-loop/__tests__/index.test.d.ts.map +1 -0
- package/dist/core/agent-loop/__tests__/index.test.js +121 -0
- package/dist/core/agent-loop/__tests__/loop-state.test.d.ts +5 -0
- package/dist/core/agent-loop/__tests__/loop-state.test.d.ts.map +1 -0
- package/dist/core/agent-loop/__tests__/loop-state.test.js +340 -0
- package/dist/core/agent-loop/__tests__/message-builder.test.d.ts +5 -0
- package/dist/core/agent-loop/__tests__/message-builder.test.d.ts.map +1 -0
- package/dist/core/agent-loop/__tests__/message-builder.test.js +178 -0
- package/dist/core/agent-loop/__tests__/tool-executor.test.d.ts +5 -0
- package/dist/core/agent-loop/__tests__/tool-executor.test.d.ts.map +1 -0
- package/dist/core/agent-loop/__tests__/tool-executor.test.js +331 -0
- package/dist/core/agent-loop/compaction.d.ts +39 -0
- package/dist/core/agent-loop/compaction.d.ts.map +1 -0
- package/dist/core/agent-loop/compaction.js +51 -0
- package/dist/core/agent-loop/formatters.d.ts +21 -0
- package/dist/core/agent-loop/formatters.d.ts.map +1 -0
- package/dist/core/agent-loop/formatters.js +42 -0
- package/dist/core/agent-loop/index.d.ts +25 -0
- package/dist/core/agent-loop/index.d.ts.map +1 -0
- package/dist/core/agent-loop/index.js +83 -0
- package/dist/core/agent-loop/loop-state.d.ts +74 -0
- package/dist/core/agent-loop/loop-state.d.ts.map +1 -0
- package/dist/core/agent-loop/loop-state.js +147 -0
- package/dist/core/agent-loop/message-builder.d.ts +13 -0
- package/dist/core/agent-loop/message-builder.d.ts.map +1 -0
- package/dist/core/agent-loop/message-builder.js +49 -0
- package/dist/core/agent-loop/tool-executor.d.ts +23 -0
- package/dist/core/agent-loop/tool-executor.d.ts.map +1 -0
- package/dist/core/agent-loop/tool-executor.js +152 -0
- package/dist/core/agent-loop/turn-executor.d.ts +57 -0
- package/dist/core/agent-loop/turn-executor.d.ts.map +1 -0
- package/dist/core/agent-loop/turn-executor.js +124 -0
- package/dist/core/agent-loop/types.d.ts +141 -0
- package/dist/core/agent-loop/types.d.ts.map +1 -0
- package/dist/core/agent-loop/types.js +4 -0
- package/dist/core/agent-loop.d.ts +17 -0
- package/dist/core/agent-loop.d.ts.map +1 -0
- package/dist/core/agent-loop.js +16 -0
- package/dist/core/api-client-impl.d.ts +62 -0
- package/dist/core/api-client-impl.d.ts.map +1 -0
- package/dist/core/api-client-impl.js +479 -0
- package/dist/core/api-client.d.ts +6 -0
- package/dist/core/api-client.d.ts.map +1 -0
- package/dist/core/api-client.js +5 -0
- package/dist/core/checkpoints.d.ts +128 -0
- package/dist/core/checkpoints.d.ts.map +1 -0
- package/dist/core/checkpoints.js +438 -0
- package/dist/core/claude-md.d.ts +71 -0
- package/dist/core/claude-md.d.ts.map +1 -0
- package/dist/core/claude-md.js +198 -0
- package/dist/core/cognitive-security/hooks.d.ts +138 -0
- package/dist/core/cognitive-security/hooks.d.ts.map +1 -0
- package/dist/core/cognitive-security/hooks.js +389 -0
- package/dist/core/cognitive-security/index.d.ts +751 -0
- package/dist/core/cognitive-security/index.d.ts.map +1 -0
- package/dist/core/cognitive-security/index.js +1123 -0
- package/dist/core/cognitive-security/middleware.d.ts +136 -0
- package/dist/core/cognitive-security/middleware.d.ts.map +1 -0
- package/dist/core/cognitive-security/middleware.js +376 -0
- package/dist/core/config-loader.d.ts +127 -0
- package/dist/core/config-loader.d.ts.map +1 -0
- package/dist/core/config-loader.js +219 -0
- package/dist/core/context-compaction.d.ts +87 -0
- package/dist/core/context-compaction.d.ts.map +1 -0
- package/dist/core/context-compaction.js +428 -0
- package/dist/core/git-status.d.ts +25 -0
- package/dist/core/git-status.d.ts.map +1 -0
- package/dist/core/git-status.js +204 -0
- package/dist/core/image.d.ts +69 -0
- package/dist/core/image.d.ts.map +1 -0
- package/dist/core/image.js +290 -0
- package/dist/core/image.test.d.ts +2 -0
- package/dist/core/image.test.d.ts.map +1 -0
- package/dist/core/image.test.js +149 -0
- package/dist/core/models.d.ts +123 -0
- package/dist/core/models.d.ts.map +1 -0
- package/dist/core/models.js +325 -0
- package/dist/core/permissions.d.ts +81 -0
- package/dist/core/permissions.d.ts.map +1 -0
- package/dist/core/permissions.js +327 -0
- package/dist/core/retry.d.ts +25 -0
- package/dist/core/retry.d.ts.map +1 -0
- package/dist/core/retry.js +121 -0
- package/dist/core/session-store.d.ts +9 -0
- package/dist/core/session-store.d.ts.map +1 -0
- package/dist/core/session-store.js +10 -0
- package/dist/core/sessions/export.d.ts +47 -0
- package/dist/core/sessions/export.d.ts.map +1 -0
- package/dist/core/sessions/export.js +256 -0
- package/dist/core/sessions/index.d.ts +132 -0
- package/dist/core/sessions/index.d.ts.map +1 -0
- package/dist/core/sessions/index.js +442 -0
- package/dist/core/sessions/metadata.d.ts +77 -0
- package/dist/core/sessions/metadata.d.ts.map +1 -0
- package/dist/core/sessions/metadata.js +233 -0
- package/dist/core/sessions/persistence.d.ts +72 -0
- package/dist/core/sessions/persistence.d.ts.map +1 -0
- package/dist/core/sessions/persistence.js +201 -0
- package/dist/core/sessions/types.d.ts +110 -0
- package/dist/core/sessions/types.d.ts.map +1 -0
- package/dist/core/sessions/types.js +4 -0
- package/dist/core/stream-highlighter.d.ts +18 -0
- package/dist/core/stream-highlighter.d.ts.map +1 -0
- package/dist/core/stream-highlighter.js +916 -0
- package/dist/core/system-reminders.d.ts +89 -0
- package/dist/core/system-reminders.d.ts.map +1 -0
- package/dist/core/system-reminders.js +285 -0
- package/dist/ecosystem/hooks/__tests__/index.test.d.ts +5 -0
- package/dist/ecosystem/hooks/__tests__/index.test.d.ts.map +1 -0
- package/dist/ecosystem/hooks/__tests__/index.test.js +458 -0
- package/dist/ecosystem/hooks/index.d.ts +59 -0
- package/dist/ecosystem/hooks/index.d.ts.map +1 -0
- package/dist/ecosystem/hooks/index.js +294 -0
- package/dist/ecosystem/hooks/prompt-evaluator.d.ts +32 -0
- package/dist/ecosystem/hooks/prompt-evaluator.d.ts.map +1 -0
- package/dist/ecosystem/hooks/prompt-evaluator.js +229 -0
- package/dist/ecosystem/skills/index.d.ts +55 -0
- package/dist/ecosystem/skills/index.d.ts.map +1 -0
- package/dist/ecosystem/skills/index.js +258 -0
- package/dist/ecosystem/tools/__tests__/index.test.d.ts +7 -0
- package/dist/ecosystem/tools/__tests__/index.test.d.ts.map +1 -0
- package/dist/ecosystem/tools/__tests__/index.test.js +856 -0
- package/dist/ecosystem/tools/index.d.ts +24 -0
- package/dist/ecosystem/tools/index.d.ts.map +1 -0
- package/dist/ecosystem/tools/index.js +1709 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +33688 -49712
- package/dist/interfaces/mcp/client.d.ts +40 -0
- package/dist/interfaces/mcp/client.d.ts.map +1 -0
- package/dist/interfaces/mcp/client.js +309 -0
- package/dist/interfaces/ui/index.d.ts +36 -0
- package/dist/interfaces/ui/index.d.ts.map +1 -0
- package/dist/interfaces/ui/index.js +61 -0
- package/dist/interfaces/ui/spinner.d.ts +140 -0
- package/dist/interfaces/ui/spinner.d.ts.map +1 -0
- package/dist/interfaces/ui/spinner.js +342 -0
- package/dist/interfaces/ui/terminal/cli/index.d.ts +12 -0
- package/dist/interfaces/ui/terminal/cli/index.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/cli/index.js +32012 -50526
- package/dist/interfaces/ui/terminal/native/README.md +53 -0
- package/dist/interfaces/ui/terminal/native/claude_code_native.darwin-x64.node +0 -0
- package/dist/interfaces/ui/terminal/native/claude_code_native.dylib +0 -0
- package/dist/interfaces/ui/terminal/native/index.d.ts +0 -0
- package/dist/interfaces/ui/terminal/native/index.darwin-arm64.node +0 -0
- package/dist/interfaces/ui/terminal/native/index.js +43 -0
- package/dist/interfaces/ui/terminal/native/index.node +0 -0
- package/dist/interfaces/ui/terminal/native/package.json +34 -0
- package/dist/interfaces/ui/terminal/shared/args.d.ts +39 -0
- package/dist/interfaces/ui/terminal/shared/args.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/shared/args.js +176 -0
- package/dist/interfaces/ui/terminal/shared/index.d.ts +11 -0
- package/dist/interfaces/ui/terminal/shared/index.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/shared/index.js +16 -0
- package/dist/interfaces/ui/terminal/shared/loading-state.d.ts +124 -0
- package/dist/interfaces/ui/terminal/shared/loading-state.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/shared/loading-state.js +246 -0
- package/dist/interfaces/ui/terminal/shared/query.d.ts +22 -0
- package/dist/interfaces/ui/terminal/shared/query.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/shared/query.js +100 -0
- package/dist/interfaces/ui/terminal/shared/setup.d.ts +33 -0
- package/dist/interfaces/ui/terminal/shared/setup.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/shared/setup.js +226 -0
- package/dist/interfaces/ui/terminal/shared/status-line.d.ts +117 -0
- package/dist/interfaces/ui/terminal/shared/status-line.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/shared/status-line.js +267 -0
- package/dist/interfaces/ui/terminal/shared/system-prompt.d.ts +38 -0
- package/dist/interfaces/ui/terminal/shared/system-prompt.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/shared/system-prompt.js +102 -0
- package/dist/interfaces/ui/terminal/tui/HelpPanel.d.ts +39 -0
- package/dist/interfaces/ui/terminal/tui/HelpPanel.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/HelpPanel.js +215 -0
- package/dist/interfaces/ui/terminal/tui/InputContext.d.ts +91 -0
- package/dist/interfaces/ui/terminal/tui/InputContext.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/InputContext.js +154 -0
- package/dist/interfaces/ui/terminal/tui/InputField.d.ts +18 -0
- package/dist/interfaces/ui/terminal/tui/InputField.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/InputField.js +41 -0
- package/dist/interfaces/ui/terminal/tui/InteractiveTUI.d.ts +16 -0
- package/dist/interfaces/ui/terminal/tui/InteractiveTUI.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/InteractiveTUI.js +451 -0
- package/dist/interfaces/ui/terminal/tui/MessageArea.d.ts +10 -0
- package/dist/interfaces/ui/terminal/tui/MessageArea.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/MessageArea.js +91 -0
- package/dist/interfaces/ui/terminal/tui/MessageStore.d.ts +48 -0
- package/dist/interfaces/ui/terminal/tui/MessageStore.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/MessageStore.js +151 -0
- package/dist/interfaces/ui/terminal/tui/StatusBar.d.ts +9 -0
- package/dist/interfaces/ui/terminal/tui/StatusBar.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/StatusBar.js +36 -0
- package/dist/interfaces/ui/terminal/tui/commands.d.ts +21 -0
- package/dist/interfaces/ui/terminal/tui/commands.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/commands.js +359 -0
- package/dist/interfaces/ui/terminal/tui/components/InteractiveElements.d.ts +115 -0
- package/dist/interfaces/ui/terminal/tui/components/InteractiveElements.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/components/InteractiveElements.js +306 -0
- package/dist/interfaces/ui/terminal/tui/components/MultilineInput.d.ts +92 -0
- package/dist/interfaces/ui/terminal/tui/components/MultilineInput.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/components/MultilineInput.js +399 -0
- package/dist/interfaces/ui/terminal/tui/components/PaneManager.d.ts +59 -0
- package/dist/interfaces/ui/terminal/tui/components/PaneManager.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/components/PaneManager.js +139 -0
- package/dist/interfaces/ui/terminal/tui/components/Sidebar.d.ts +68 -0
- package/dist/interfaces/ui/terminal/tui/components/Sidebar.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/components/Sidebar.js +340 -0
- package/dist/interfaces/ui/terminal/tui/components/index.d.ts +23 -0
- package/dist/interfaces/ui/terminal/tui/components/index.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/components/index.js +51 -0
- package/dist/interfaces/ui/terminal/tui/console.d.ts +20 -0
- package/dist/interfaces/ui/terminal/tui/console.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/console.js +46 -0
- package/dist/interfaces/ui/terminal/tui/index.d.ts +20 -0
- package/dist/interfaces/ui/terminal/tui/index.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/index.js +28 -0
- package/dist/interfaces/ui/terminal/tui/run.d.ts +13 -0
- package/dist/interfaces/ui/terminal/tui/run.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/run.js +31 -0
- package/dist/interfaces/ui/terminal/tui/spinner.d.ts +44 -0
- package/dist/interfaces/ui/terminal/tui/spinner.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/spinner.js +59 -0
- package/dist/interfaces/ui/terminal/tui/tui-app.d.ts +39 -0
- package/dist/interfaces/ui/terminal/tui/tui-app.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/tui-app.js +198 -0
- package/dist/interfaces/ui/terminal/tui/tui-footer.d.ts +167 -0
- package/dist/interfaces/ui/terminal/tui/tui-footer.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/tui-footer.js +330 -0
- package/dist/interfaces/ui/terminal/tui/types.d.ts +165 -0
- package/dist/interfaces/ui/terminal/tui/types.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/types.js +5 -0
- package/dist/interfaces/ui/terminal/tui/useInputHandler.d.ts +23 -0
- package/dist/interfaces/ui/terminal/tui/useInputHandler.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/useInputHandler.js +72 -0
- package/dist/interfaces/ui/terminal/tui/useNativeInput.d.ts +90 -0
- package/dist/interfaces/ui/terminal/tui/useNativeInput.d.ts.map +1 -0
- package/dist/interfaces/ui/terminal/tui/useNativeInput.js +188 -0
- package/dist/native/README.md +53 -0
- package/dist/native/claude_code_native.darwin-x64.node +0 -0
- package/dist/native/claude_code_native.dylib +0 -0
- package/dist/native/index.d.ts +0 -0
- package/dist/native/index.d.ts.map +1 -0
- package/dist/native/index.darwin-arm64.node +0 -0
- package/dist/native/index.js +43 -0
- package/dist/native/index.node +0 -0
- package/dist/native/package.json +34 -0
- package/dist/teammates/index.d.ts +161 -0
- package/dist/teammates/index.d.ts.map +1 -0
- package/dist/teammates/index.js +827 -0
- package/dist/types/index.d.ts +482 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +52 -0
- package/native/index.darwin-arm64.node +0 -0
- package/native/index.js +33 -19
- package/package.json +6 -3
- package/packages/src/core/__tests__/permissions.test.ts +1091 -0
- package/packages/src/core/agent-loop/__tests__/compaction.test.ts +283 -0
- package/packages/src/core/agent-loop/__tests__/formatters.test.ts +234 -0
- package/packages/src/core/agent-loop/__tests__/index.test.ts +162 -0
- package/packages/src/core/agent-loop/__tests__/loop-state.test.ts +413 -0
- package/packages/src/core/agent-loop/__tests__/message-builder.test.ts +229 -0
- package/packages/src/core/agent-loop/__tests__/tool-executor.test.ts +457 -0
- package/packages/src/core/agent-loop/compaction.ts +92 -0
- package/packages/src/core/agent-loop/formatters.ts +50 -0
- package/packages/src/core/agent-loop/index.ts +137 -0
- package/packages/src/core/agent-loop/loop-state.ts +187 -0
- package/packages/src/core/agent-loop/message-builder.ts +62 -0
- package/packages/src/core/agent-loop/tool-executor.ts +211 -0
- package/packages/src/core/agent-loop/turn-executor.ts +226 -0
- package/packages/src/core/agent-loop/types.ts +152 -0
- package/packages/src/core/agent-loop.ts +18 -0
- package/packages/src/core/api-client-impl.ts +729 -0
- package/packages/src/core/api-client.ts +6 -0
- package/packages/src/core/checkpoints.ts +606 -0
- package/packages/src/core/claude-md.ts +272 -0
- package/packages/src/core/cognitive-security/hooks.ts +591 -0
- package/packages/src/core/cognitive-security/index.ts +2041 -0
- package/packages/src/core/cognitive-security/middleware.ts +536 -0
- package/packages/src/core/config/todo +7 -0
- package/packages/src/core/config-loader.ts +324 -0
- package/packages/src/core/context/__tests__/integration.test.ts +334 -0
- package/packages/src/core/context/compaction.ts +170 -0
- package/packages/src/core/context/constants.ts +58 -0
- package/packages/src/core/context/extraction.ts +85 -0
- package/packages/src/core/context/index.ts +66 -0
- package/packages/src/core/context/summarization.ts +251 -0
- package/packages/src/core/context/token-estimation.ts +98 -0
- package/packages/src/core/context/types.ts +59 -0
- package/packages/src/core/git-status.ts +262 -0
- package/packages/src/core/image.test.ts +180 -0
- package/packages/src/core/image.ts +350 -0
- package/packages/src/core/lmdb.db +0 -0
- package/packages/src/core/lmdb.db-lock +0 -0
- package/packages/src/core/models.ts +507 -0
- package/packages/src/core/normalizers/todo +8 -0
- package/packages/src/core/permissions.ts +431 -0
- package/packages/src/core/providers/README.md +230 -0
- package/packages/src/core/providers/__tests__/providers.test.ts +135 -0
- package/packages/src/core/providers/index.ts +419 -0
- package/packages/src/core/providers/types.ts +132 -0
- package/packages/src/core/retry.ts +180 -0
- package/packages/src/core/session-store.ts +36 -0
- package/packages/src/core/sessions/export.ts +329 -0
- package/packages/src/core/sessions/index.ts +587 -0
- package/packages/src/core/sessions/metadata.ts +309 -0
- package/packages/src/core/sessions/persistence.ts +244 -0
- package/packages/src/core/sessions/types.ts +169 -0
- package/packages/src/core/stream-highlighter.ts +1123 -0
- package/packages/src/core/system-reminders.ts +402 -0
- package/packages/src/core/todo +8 -0
- package/packages/src/ecosystem/hooks/__tests__/index.test.ts +561 -0
- package/packages/src/ecosystem/hooks/index.ts +341 -0
- package/packages/src/ecosystem/hooks/prompt-evaluator.ts +300 -0
- package/packages/src/ecosystem/skills/index.ts +295 -0
- package/packages/src/ecosystem/tools/__tests__/index.test.ts +1335 -0
- package/packages/src/ecosystem/tools/index.ts +2051 -0
- package/packages/src/index.ts +141 -0
- package/packages/src/interfaces/mcp/client.ts +389 -0
- package/packages/src/interfaces/ui/index.ts +158 -0
- package/packages/src/interfaces/ui/lmdb.db +0 -0
- package/packages/src/interfaces/ui/lmdb.db-lock +0 -0
- package/packages/src/interfaces/ui/spinner.ts +451 -0
- package/packages/src/interfaces/ui/terminal/bridge/index.ts +370 -0
- package/packages/src/interfaces/ui/terminal/bridge/ipc.ts +829 -0
- package/packages/src/interfaces/ui/terminal/bridge/screen-export.ts +968 -0
- package/packages/src/interfaces/ui/terminal/bridge/types.ts +226 -0
- package/packages/src/interfaces/ui/terminal/bridge/useBridge.ts +210 -0
- package/packages/src/interfaces/ui/terminal/cli/bootstrap.ts +132 -0
- package/packages/src/interfaces/ui/terminal/cli/index.ts +415 -0
- package/packages/src/interfaces/ui/terminal/cli/interactive/index.ts +110 -0
- package/packages/src/interfaces/ui/terminal/cli/interactive/input-handler.ts +393 -0
- package/packages/src/interfaces/ui/terminal/cli/interactive/interactive-runner.ts +820 -0
- package/packages/src/interfaces/ui/terminal/cli/interactive/message-store.ts +299 -0
- package/packages/src/interfaces/ui/terminal/cli/interactive/types.ts +274 -0
- package/packages/src/interfaces/ui/terminal/lmdb.db +0 -0
- package/packages/src/interfaces/ui/terminal/lmdb.db-lock +0 -0
- package/packages/src/interfaces/ui/terminal/shared/args.ts +222 -0
- package/packages/src/interfaces/ui/terminal/shared/index.ts +84 -0
- package/packages/src/interfaces/ui/terminal/shared/loading-state.ts +322 -0
- package/packages/src/interfaces/ui/terminal/shared/query.ts +152 -0
- package/packages/src/interfaces/ui/terminal/shared/setup.ts +299 -0
- package/packages/src/interfaces/ui/terminal/shared/spinner-frames.ts +73 -0
- package/packages/src/interfaces/ui/terminal/shared/status-line.ts +366 -0
- package/packages/src/interfaces/ui/terminal/shared/system-prompt.ts +146 -0
- package/packages/src/lmdb.db +0 -0
- package/packages/src/lmdb.db-lock +0 -0
- package/packages/src/native/index.ts +2722 -0
- package/packages/src/native/tui_v2_types.ts +39 -0
- package/packages/src/teammates/coordination.test.ts +279 -0
- package/packages/src/teammates/coordination.ts +646 -0
- package/packages/src/teammates/index.ts +1052 -0
- package/packages/src/teammates/integration.test.ts +272 -0
- package/packages/src/teammates/runner.test.ts +235 -0
- package/packages/src/teammates/runner.ts +750 -0
- package/packages/src/teammates/schemas.ts +673 -0
- package/packages/src/types/index.ts +723 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# @ebowwa/coder-native
|
|
2
|
+
|
|
3
|
+
Native Rust modules for [@ebowwa/coder](https://github.com/ebowwa/coder).
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- **Fast Search**: Ripgrep-based file and content search
|
|
8
|
+
- **Token Counting**: Efficient token counting for LLM contexts
|
|
9
|
+
- **Diff Calculation**: Fast diff generation and application
|
|
10
|
+
- **Content Compaction**: Smart content compaction for context windows
|
|
11
|
+
|
|
12
|
+
## Installation
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
bun add @ebowwa/coder-native
|
|
16
|
+
# or
|
|
17
|
+
npm install @ebowwa/coder-native
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Supported Platforms
|
|
21
|
+
|
|
22
|
+
- macOS x64 (Intel)
|
|
23
|
+
- macOS arm64 (Apple Silicon)
|
|
24
|
+
- Linux x64 (GNU)
|
|
25
|
+
- Windows x64 (MSVC)
|
|
26
|
+
|
|
27
|
+
## Usage
|
|
28
|
+
|
|
29
|
+
```javascript
|
|
30
|
+
const native = require('@ebowwa/coder-native');
|
|
31
|
+
|
|
32
|
+
// Search files
|
|
33
|
+
const results = native.searchFiles('pattern', '/path/to/search');
|
|
34
|
+
|
|
35
|
+
// Count tokens
|
|
36
|
+
const tokens = native.countTokens('some text content');
|
|
37
|
+
|
|
38
|
+
// Compute diff
|
|
39
|
+
const diff = native.computeDiff(oldText, newText);
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Building from Source
|
|
43
|
+
|
|
44
|
+
Requires Rust and Cargo:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
cd rust
|
|
48
|
+
cargo build --release
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## License
|
|
52
|
+
|
|
53
|
+
MIT
|
|
Binary file
|
|
File without changes
|
|
Binary file
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// Native module loader for claude-code-native
|
|
2
|
+
// Loads the appropriate .node file based on platform
|
|
3
|
+
|
|
4
|
+
const { platform, arch } = process;
|
|
5
|
+
const fs = require('fs');
|
|
6
|
+
const path = require('path');
|
|
7
|
+
|
|
8
|
+
// List all .node files in the native directory
|
|
9
|
+
const nativeDir = __dirname;
|
|
10
|
+
const nodeFiles = fs.readdirSync(nativeDir).filter(f => f.endsWith('.node'));
|
|
11
|
+
|
|
12
|
+
// Find the matching file for current platform
|
|
13
|
+
let nativeBinding = null;
|
|
14
|
+
|
|
15
|
+
// Try to find a file matching our platform
|
|
16
|
+
for (const file of nodeFiles) {
|
|
17
|
+
// Check for darwin-arm64
|
|
18
|
+
if (platform === 'darwin' && arch === 'arm64' && file.includes('darwin') && file.includes('arm64')) {
|
|
19
|
+
nativeBinding = require(path.join(nativeDir, file));
|
|
20
|
+
break;
|
|
21
|
+
}
|
|
22
|
+
// Check for darwin-x64
|
|
23
|
+
if (platform === 'darwin' && arch === 'x64' && file.includes('darwin') && (file.includes('x64') && !file.includes('arm64'))) {
|
|
24
|
+
nativeBinding = require(path.join(nativeDir, file));
|
|
25
|
+
break;
|
|
26
|
+
}
|
|
27
|
+
// Check for linux-x64
|
|
28
|
+
if (platform === 'linux' && arch === 'x64' && file.includes('linux') && file.includes('x64')) {
|
|
29
|
+
nativeBinding = require(path.join(nativeDir, file));
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
// Check for win32-x64
|
|
33
|
+
if (platform === 'win32' && arch === 'x64' && file.includes('win32') && file.includes('x64')) {
|
|
34
|
+
nativeBinding = require(path.join(nativeDir, file));
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if (!nativeBinding) {
|
|
40
|
+
throw new Error(`Unsupported platform: ${platform}-${arch}. Available files: ${nodeFiles.join(', ')}`);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
module.exports = nativeBinding;
|
|
Binary file
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@ebowwa/coder-native",
|
|
3
|
+
"version": "0.2.1",
|
|
4
|
+
"description": "Native Rust modules for @ebowwa/coder - provides high-performance search, token counting, and diff operations",
|
|
5
|
+
"author": "ebowwa",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"keywords": ["coder", "native", "rust", "napi", "search", "tokens"],
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "https://github.com/ebowwa/coder"
|
|
11
|
+
},
|
|
12
|
+
"main": "index.js",
|
|
13
|
+
"types": "index.d.ts",
|
|
14
|
+
"files": [
|
|
15
|
+
"*.node",
|
|
16
|
+
"index.js",
|
|
17
|
+
"index.d.ts"
|
|
18
|
+
],
|
|
19
|
+
"napi": {
|
|
20
|
+
"name": "coder_native",
|
|
21
|
+
"triples": {
|
|
22
|
+
"defaults": false,
|
|
23
|
+
"additional": [
|
|
24
|
+
"x86_64-apple-darwin",
|
|
25
|
+
"aarch64-apple-darwin",
|
|
26
|
+
"x86_64-unknown-linux-gnu",
|
|
27
|
+
"x86_64-pc-windows-msvc"
|
|
28
|
+
]
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"engines": {
|
|
32
|
+
"node": ">= 16"
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Argument Parsing
|
|
3
|
+
* Shared between CLI and TUI modes
|
|
4
|
+
*/
|
|
5
|
+
import type { PermissionMode, ClaudeModel, EffortLevel } from "../../../../types/index.js";
|
|
6
|
+
export interface CLIArgs {
|
|
7
|
+
model: ClaudeModel;
|
|
8
|
+
permissionMode: PermissionMode;
|
|
9
|
+
maxTokens: number;
|
|
10
|
+
systemPrompt?: string;
|
|
11
|
+
appendSystemPrompt?: string;
|
|
12
|
+
configFile?: string;
|
|
13
|
+
mcpConfig?: string;
|
|
14
|
+
resumeSession?: string;
|
|
15
|
+
listSessions?: boolean;
|
|
16
|
+
teammateMode?: boolean;
|
|
17
|
+
agentId?: string;
|
|
18
|
+
agentName?: string;
|
|
19
|
+
teamName?: string;
|
|
20
|
+
agentColor?: string;
|
|
21
|
+
/** Enable extended thinking with effort level */
|
|
22
|
+
extendedThinking?: boolean;
|
|
23
|
+
/** Effort level: low, medium, high, max */
|
|
24
|
+
effort?: EffortLevel;
|
|
25
|
+
/** Enable interleaved thinking (default: true) */
|
|
26
|
+
interleaved?: boolean;
|
|
27
|
+
query?: string;
|
|
28
|
+
/** Disable progress indicators */
|
|
29
|
+
noProgress?: boolean;
|
|
30
|
+
/** Show version and exit */
|
|
31
|
+
showVersion?: boolean;
|
|
32
|
+
/** Enable debug output */
|
|
33
|
+
debug?: boolean;
|
|
34
|
+
}
|
|
35
|
+
export declare function parseArgs(): CLIArgs;
|
|
36
|
+
export declare function printHelp(): void;
|
|
37
|
+
export declare function getApiKey(): string | null;
|
|
38
|
+
export declare function requireApiKey(): string;
|
|
39
|
+
//# sourceMappingURL=args.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../../../packages/src/interfaces/ui/terminal/shared/args.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAQ3F,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,WAAW,CAAC;IACnB,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,kDAAkD;IAClD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAMD,wBAAgB,SAAS,IAAI,OAAO,CA6FnC;AAMD,wBAAgB,SAAS,IAAI,IAAI,CAsDhC;AAMD,wBAAgB,SAAS,IAAI,MAAM,GAAG,IAAI,CAMzC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAOtC"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Argument Parsing
|
|
3
|
+
* Shared between CLI and TUI modes
|
|
4
|
+
*/
|
|
5
|
+
import { VERSION } from "./status-line.js";
|
|
6
|
+
import { DEFAULT_MODEL, resolveModelAlias } from "../../../../core/models.js";
|
|
7
|
+
// ============================================
|
|
8
|
+
// ARGUMENT PARSING
|
|
9
|
+
// ============================================
|
|
10
|
+
export function parseArgs() {
|
|
11
|
+
const args = process.argv.slice(2);
|
|
12
|
+
const result = {
|
|
13
|
+
// Read from environment variables (can be configured via Doppler)
|
|
14
|
+
model: process.env.ANTHROPIC_MODEL || process.env.ANTHROPIC_DEFAULT_SONNET_MODEL || DEFAULT_MODEL,
|
|
15
|
+
permissionMode: (process.env.CODER_PERMISSION_MODE || "default"),
|
|
16
|
+
maxTokens: parseInt(process.env.ANTHROPIC_MAX_TOKENS || process.env.CODER_MAX_TOKENS || "4096"),
|
|
17
|
+
};
|
|
18
|
+
for (let i = 0; i < args.length; i++) {
|
|
19
|
+
const arg = args[i];
|
|
20
|
+
switch (arg) {
|
|
21
|
+
case "--model":
|
|
22
|
+
case "-m":
|
|
23
|
+
result.model = resolveModelAlias(args[++i] ?? DEFAULT_MODEL);
|
|
24
|
+
break;
|
|
25
|
+
case "--permission-mode":
|
|
26
|
+
case "-p":
|
|
27
|
+
result.permissionMode = (args[++i] ?? "default");
|
|
28
|
+
break;
|
|
29
|
+
case "--max-tokens":
|
|
30
|
+
result.maxTokens = parseInt(args[++i] ?? "4096", 10);
|
|
31
|
+
break;
|
|
32
|
+
case "--system-prompt":
|
|
33
|
+
result.systemPrompt = args[++i];
|
|
34
|
+
break;
|
|
35
|
+
case "--append-system-prompt":
|
|
36
|
+
result.appendSystemPrompt = args[++i];
|
|
37
|
+
break;
|
|
38
|
+
case "--config":
|
|
39
|
+
result.configFile = args[++i];
|
|
40
|
+
break;
|
|
41
|
+
case "--mcp-config":
|
|
42
|
+
result.mcpConfig = args[++i];
|
|
43
|
+
break;
|
|
44
|
+
case "--resume":
|
|
45
|
+
result.resumeSession = args[++i];
|
|
46
|
+
break;
|
|
47
|
+
case "--sessions":
|
|
48
|
+
result.listSessions = true;
|
|
49
|
+
break;
|
|
50
|
+
case "--teammate-mode":
|
|
51
|
+
result.teammateMode = true;
|
|
52
|
+
break;
|
|
53
|
+
case "--agent-id":
|
|
54
|
+
result.agentId = args[++i];
|
|
55
|
+
break;
|
|
56
|
+
case "--agent-name":
|
|
57
|
+
result.agentName = args[++i];
|
|
58
|
+
break;
|
|
59
|
+
case "--team-name":
|
|
60
|
+
result.teamName = args[++i];
|
|
61
|
+
break;
|
|
62
|
+
case "--agent-color":
|
|
63
|
+
result.agentColor = args[++i];
|
|
64
|
+
break;
|
|
65
|
+
case "--interleaved":
|
|
66
|
+
result.interleaved = true;
|
|
67
|
+
break;
|
|
68
|
+
case "--no-interleaved":
|
|
69
|
+
result.interleaved = false;
|
|
70
|
+
break;
|
|
71
|
+
case "--extended-thinking":
|
|
72
|
+
case "-e":
|
|
73
|
+
result.extendedThinking = true;
|
|
74
|
+
break;
|
|
75
|
+
case "--effort":
|
|
76
|
+
result.effort = args[++i] ?? "medium";
|
|
77
|
+
break;
|
|
78
|
+
case "--query":
|
|
79
|
+
case "-q":
|
|
80
|
+
result.query = args[++i];
|
|
81
|
+
break;
|
|
82
|
+
case "--no-progress":
|
|
83
|
+
result.noProgress = true;
|
|
84
|
+
break;
|
|
85
|
+
case "--version":
|
|
86
|
+
case "-v":
|
|
87
|
+
result.showVersion = true;
|
|
88
|
+
break;
|
|
89
|
+
case "--debug":
|
|
90
|
+
case "-d":
|
|
91
|
+
result.debug = true;
|
|
92
|
+
break;
|
|
93
|
+
case "--help":
|
|
94
|
+
case "-h":
|
|
95
|
+
printHelp();
|
|
96
|
+
process.exit(0);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return result;
|
|
100
|
+
}
|
|
101
|
+
// ============================================
|
|
102
|
+
// HELP TEXT
|
|
103
|
+
// ============================================
|
|
104
|
+
export function printHelp() {
|
|
105
|
+
console.log(`
|
|
106
|
+
Coder v${VERSION}
|
|
107
|
+
AI-powered terminal coding assistant
|
|
108
|
+
|
|
109
|
+
USAGE:
|
|
110
|
+
coder [OPTIONS] [QUERY]
|
|
111
|
+
|
|
112
|
+
With Doppler (recommended):
|
|
113
|
+
doppler run -- coder [OPTIONS] [QUERY]
|
|
114
|
+
|
|
115
|
+
OPTIONS:
|
|
116
|
+
-m, --model <model> Model to use (default: ${DEFAULT_MODEL})
|
|
117
|
+
-p, --permission-mode <mode> Permission mode (default, acceptEdits, bypassPermissions)
|
|
118
|
+
--max-tokens <tokens> Maximum output tokens (default: 4096)
|
|
119
|
+
-v, --version Show version and exit
|
|
120
|
+
-d, --debug Enable debug output
|
|
121
|
+
|
|
122
|
+
Extended Thinking:
|
|
123
|
+
-e, --extended-thinking Enable extended thinking mode
|
|
124
|
+
--effort <level> Thinking effort: low, medium, high, max
|
|
125
|
+
--interleaved Enable interleaved thinking (default: true)
|
|
126
|
+
--no-interleaved Disable interleaved thinking
|
|
127
|
+
--system-prompt <prompt> Override system prompt
|
|
128
|
+
--append-system-prompt <p> Append to system prompt
|
|
129
|
+
--config <file> Configuration file path
|
|
130
|
+
--mcp-config <file> MCP server configuration file
|
|
131
|
+
--resume <session-id> Resume a previous session
|
|
132
|
+
--sessions List recent sessions
|
|
133
|
+
--teammate-mode Run as teammate agent
|
|
134
|
+
--agent-id <id> Agent identifier
|
|
135
|
+
--agent-name <name> Agent display name
|
|
136
|
+
--team-name <name> Team name
|
|
137
|
+
--agent-color <color> Agent color for UI
|
|
138
|
+
-q, --query <query> Single query to execute
|
|
139
|
+
--no-progress Disable progress indicators
|
|
140
|
+
-h, --help Show this help message
|
|
141
|
+
|
|
142
|
+
EXAMPLES:
|
|
143
|
+
# Interactive mode (with Doppler for secrets)
|
|
144
|
+
doppler run -- coder
|
|
145
|
+
|
|
146
|
+
# Single query
|
|
147
|
+
doppler run -- coder -q "What files are in this directory?"
|
|
148
|
+
|
|
149
|
+
# Use a specific model
|
|
150
|
+
doppler run -- coder -m claude-opus-4-6 "Explain this codebase"
|
|
151
|
+
|
|
152
|
+
# Resume a session
|
|
153
|
+
doppler run -- coder --resume abc123-def456
|
|
154
|
+
|
|
155
|
+
# Show version
|
|
156
|
+
coder --version
|
|
157
|
+
`);
|
|
158
|
+
}
|
|
159
|
+
// ============================================
|
|
160
|
+
// API KEY RESOLUTION
|
|
161
|
+
// ============================================
|
|
162
|
+
export function getApiKey() {
|
|
163
|
+
return process.env.ANTHROPIC_API_KEY ||
|
|
164
|
+
process.env.CLAUDE_API_KEY ||
|
|
165
|
+
process.env.ANTHROPIC_AUTH_TOKEN ||
|
|
166
|
+
process.env.Z_AI_API_KEY ||
|
|
167
|
+
null;
|
|
168
|
+
}
|
|
169
|
+
export function requireApiKey() {
|
|
170
|
+
const apiKey = getApiKey();
|
|
171
|
+
if (!apiKey) {
|
|
172
|
+
console.error("Error: ANTHROPIC_API_KEY, CLAUDE_API_KEY, ANTHROPIC_AUTH_TOKEN, or Z_AI_API_KEY environment variable required");
|
|
173
|
+
process.exit(1);
|
|
174
|
+
}
|
|
175
|
+
return apiKey;
|
|
176
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared Terminal Utilities
|
|
3
|
+
* Common code shared between CLI and TUI modes
|
|
4
|
+
*/
|
|
5
|
+
export { parseArgs, printHelp, getApiKey, requireApiKey, type CLIArgs, } from "./args.js";
|
|
6
|
+
export { setupSession, loadMCPConfig, mcpToolsToToolDefinitions, type SessionSetup, type SetupOptions, } from "./setup.js";
|
|
7
|
+
export { buildDefaultSystemPrompt, buildCompleteSystemPrompt, fetchGitStatus, type GitStatusInfo, } from "./system-prompt.js";
|
|
8
|
+
export { runSingleQuery, type QueryOptions, } from "./query.js";
|
|
9
|
+
export { LoadingState, getLoadingState, setLoading, stopLoading, updateLoading, startTool, endTool, type LoadingPhase, type LoadingStateData, type LoadingStateEvents, } from "./loading-state.js";
|
|
10
|
+
export { VERSION, BUILD_TIME, renderStatusLine, renderCompactStatusLine, renderMinimalStatusLine, renderFooterStatus, renderAutoCompactWarning, calculateContextInfo, formatPermissionMode, formatTokenCount, formatContextPercent, getContextWindow, shouldShowAutoCompactWarning, getModelDisplayName, getPermissionModeDisplay, type StatusLineOptions, type ContextInfo, } from "./status-line.js";
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/src/interfaces/ui/terminal/shared/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,SAAS,EACT,SAAS,EACT,SAAS,EACT,aAAa,EACb,KAAK,OAAO,GACb,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,YAAY,EACZ,aAAa,EACb,yBAAyB,EACzB,KAAK,YAAY,EACjB,KAAK,YAAY,GAClB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,cAAc,EACd,KAAK,aAAa,GACnB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,cAAc,EACd,KAAK,YAAY,GAClB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,UAAU,EACV,WAAW,EACX,aAAa,EACb,SAAS,EACT,OAAO,EACP,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EAClB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,4BAA4B,EAC5B,mBAAmB,EACnB,wBAAwB,EACxB,KAAK,iBAAiB,EACtB,KAAK,WAAW,GACjB,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared Terminal Utilities
|
|
3
|
+
* Common code shared between CLI and TUI modes
|
|
4
|
+
*/
|
|
5
|
+
// Argument parsing
|
|
6
|
+
export { parseArgs, printHelp, getApiKey, requireApiKey, } from "./args.js";
|
|
7
|
+
// Session setup
|
|
8
|
+
export { setupSession, loadMCPConfig, mcpToolsToToolDefinitions, } from "./setup.js";
|
|
9
|
+
// System prompt building
|
|
10
|
+
export { buildDefaultSystemPrompt, buildCompleteSystemPrompt, fetchGitStatus, } from "./system-prompt.js";
|
|
11
|
+
// Single query execution
|
|
12
|
+
export { runSingleQuery, } from "./query.js";
|
|
13
|
+
// Loading State
|
|
14
|
+
export { LoadingState, getLoadingState, setLoading, stopLoading, updateLoading, startTool, endTool, } from "./loading-state.js";
|
|
15
|
+
// Status Line
|
|
16
|
+
export { VERSION, BUILD_TIME, renderStatusLine, renderCompactStatusLine, renderMinimalStatusLine, renderFooterStatus, renderAutoCompactWarning, calculateContextInfo, formatPermissionMode, formatTokenCount, formatContextPercent, getContextWindow, shouldShowAutoCompactWarning, getModelDisplayName, getPermissionModeDisplay, } from "./status-line.js";
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Loading State Manager for Coder CLI
|
|
3
|
+
* Tracks global loading state across the application
|
|
4
|
+
*/
|
|
5
|
+
import { EventEmitter } from "events";
|
|
6
|
+
export type LoadingPhase = "idle" | "initializing" | "loading-config" | "connecting-mcp" | "api-request" | "streaming" | "tool-execution" | "processing" | "checkpointing";
|
|
7
|
+
export interface LoadingStateData {
|
|
8
|
+
isLoading: boolean;
|
|
9
|
+
phase: LoadingPhase;
|
|
10
|
+
message: string;
|
|
11
|
+
startTime: number;
|
|
12
|
+
activeTools: Set<string>;
|
|
13
|
+
activeToolCount: number;
|
|
14
|
+
hasActiveTools: boolean;
|
|
15
|
+
responseLength: number;
|
|
16
|
+
paused: boolean;
|
|
17
|
+
pausedTime: number;
|
|
18
|
+
}
|
|
19
|
+
export interface LoadingStateEvents {
|
|
20
|
+
"state-change": (state: LoadingStateData) => void;
|
|
21
|
+
"tool-start": (toolName: string) => void;
|
|
22
|
+
"tool-end": (toolName: string) => void;
|
|
23
|
+
"phase-change": (phase: LoadingPhase, previousPhase: LoadingPhase) => void;
|
|
24
|
+
"progress": (message: string) => void;
|
|
25
|
+
}
|
|
26
|
+
export declare class LoadingState extends EventEmitter {
|
|
27
|
+
private state;
|
|
28
|
+
private static instance;
|
|
29
|
+
private constructor();
|
|
30
|
+
/**
|
|
31
|
+
* Get singleton instance
|
|
32
|
+
*/
|
|
33
|
+
static getInstance(): LoadingState;
|
|
34
|
+
/**
|
|
35
|
+
* Reset singleton (for testing)
|
|
36
|
+
*/
|
|
37
|
+
static reset(): void;
|
|
38
|
+
/**
|
|
39
|
+
* Start loading
|
|
40
|
+
*/
|
|
41
|
+
start(phase?: LoadingPhase, message?: string): void;
|
|
42
|
+
/**
|
|
43
|
+
* Stop loading
|
|
44
|
+
*/
|
|
45
|
+
stop(): void;
|
|
46
|
+
/**
|
|
47
|
+
* Update phase
|
|
48
|
+
*/
|
|
49
|
+
setPhase(phase: LoadingPhase): void;
|
|
50
|
+
/**
|
|
51
|
+
* Update message
|
|
52
|
+
*/
|
|
53
|
+
setMessage(message: string): void;
|
|
54
|
+
/**
|
|
55
|
+
* Update both phase and message
|
|
56
|
+
*/
|
|
57
|
+
update(phase: LoadingPhase, message: string): void;
|
|
58
|
+
/**
|
|
59
|
+
* Report progress
|
|
60
|
+
*/
|
|
61
|
+
progress(message: string): void;
|
|
62
|
+
/**
|
|
63
|
+
* Mark tool as started
|
|
64
|
+
*/
|
|
65
|
+
toolStart(toolName: string): void;
|
|
66
|
+
/**
|
|
67
|
+
* Mark tool as completed
|
|
68
|
+
*/
|
|
69
|
+
toolEnd(toolName: string): void;
|
|
70
|
+
/**
|
|
71
|
+
* Update response length (for streaming)
|
|
72
|
+
*/
|
|
73
|
+
setResponseLength(length: number): void;
|
|
74
|
+
/**
|
|
75
|
+
* Pause loading state
|
|
76
|
+
*/
|
|
77
|
+
pause(): void;
|
|
78
|
+
/**
|
|
79
|
+
* Resume loading state
|
|
80
|
+
*/
|
|
81
|
+
resume(): void;
|
|
82
|
+
/**
|
|
83
|
+
* Get current state (copy)
|
|
84
|
+
*/
|
|
85
|
+
getState(): LoadingStateData;
|
|
86
|
+
/**
|
|
87
|
+
* Check if loading
|
|
88
|
+
*/
|
|
89
|
+
isLoading(): boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Get current phase
|
|
92
|
+
*/
|
|
93
|
+
getPhase(): LoadingPhase;
|
|
94
|
+
/**
|
|
95
|
+
* Get elapsed time in ms
|
|
96
|
+
*/
|
|
97
|
+
getElapsedMs(): number;
|
|
98
|
+
/**
|
|
99
|
+
* Get active tool names
|
|
100
|
+
*/
|
|
101
|
+
getActiveTools(): string[];
|
|
102
|
+
/**
|
|
103
|
+
* Check if specific tool is active
|
|
104
|
+
*/
|
|
105
|
+
isToolActive(toolName: string): boolean;
|
|
106
|
+
/**
|
|
107
|
+
* Get formatted state for display
|
|
108
|
+
*/
|
|
109
|
+
getFormattedState(): string;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Get the global loading state instance
|
|
113
|
+
*/
|
|
114
|
+
export declare function getLoadingState(): LoadingState;
|
|
115
|
+
/**
|
|
116
|
+
* Quick access to loading state methods
|
|
117
|
+
* These call getInstance() each time to handle reset() properly
|
|
118
|
+
*/
|
|
119
|
+
export declare const setLoading: (phase: LoadingPhase, message?: string) => void;
|
|
120
|
+
export declare const stopLoading: () => void;
|
|
121
|
+
export declare const updateLoading: (message: string) => void;
|
|
122
|
+
export declare const startTool: (toolName: string) => void;
|
|
123
|
+
export declare const endTool: (toolName: string) => void;
|
|
124
|
+
//# sourceMappingURL=loading-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loading-state.d.ts","sourceRoot":"","sources":["../../../../../packages/src/interfaces/ui/terminal/shared/loading-state.ts"],"names":[],"mappings":"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"}
|