@ebowwa/coder 0.2.1 → 0.7.64
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -32
- 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 +32 -2
- 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 +167 -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/index.d.ts +480 -0
- package/dist/native/index.d.ts.map +1 -0
- package/dist/native/index.js +1625 -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/README.md +5 -5
- package/native/index.darwin-arm64.node +0 -0
- package/native/index.node +0 -0
- package/native/package.json +4 -4
- package/package.json +33 -16
- package/packages/src/core/__tests__/permissions.test.ts +1091 -0
- package/packages/src/core/agent-loop/__tests__/compaction.test.ts +280 -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 +88 -0
- package/packages/src/core/agent-loop/formatters.ts +50 -0
- package/packages/src/core/agent-loop/index.ts +135 -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 +222 -0
- package/packages/src/core/agent-loop/types.ts +148 -0
- package/packages/src/core/agent-loop.ts +18 -0
- package/packages/src/core/api-client-impl.ts +619 -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 +590 -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-loader.ts +324 -0
- package/packages/src/core/context-compaction.ts +578 -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 +430 -0
- package/packages/src/core/normalizers/todo +4 -0
- package/packages/src/core/permissions.ts +431 -0
- package/packages/src/core/retry.ts +170 -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 +1877 -0
- package/packages/src/index.ts +120 -0
- package/packages/src/interfaces/mcp/client.ts +389 -0
- package/packages/src/interfaces/ui/Screenshot 2026-03-02 at 9.23.10/342/200/257PM.png +0 -0
- package/packages/src/interfaces/ui/Screenshot 2026-03-03 at 10.55.11/342/200/257AM.png +0 -0
- package/packages/src/interfaces/ui/index.ts +161 -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/cli/index.ts +228 -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 +71 -0
- package/packages/src/interfaces/ui/terminal/shared/loading-state.ts +322 -0
- package/packages/src/interfaces/ui/terminal/shared/query.ts +146 -0
- package/packages/src/interfaces/ui/terminal/shared/setup.ts +295 -0
- package/packages/src/interfaces/ui/terminal/shared/status-line.ts +358 -0
- package/packages/src/interfaces/ui/terminal/shared/system-prompt.ts +146 -0
- package/packages/src/interfaces/ui/terminal/tui/HelpPanel.tsx +262 -0
- package/packages/src/interfaces/ui/terminal/tui/InputContext.tsx +232 -0
- package/packages/src/interfaces/ui/terminal/tui/InputField.tsx +62 -0
- package/packages/src/interfaces/ui/terminal/tui/InteractiveTUI.tsx +537 -0
- package/packages/src/interfaces/ui/terminal/tui/MessageArea.tsx +107 -0
- package/packages/src/interfaces/ui/terminal/tui/MessageStore.tsx +240 -0
- package/packages/src/interfaces/ui/terminal/tui/StatusBar.tsx +54 -0
- package/packages/src/interfaces/ui/terminal/tui/commands.ts +438 -0
- package/packages/src/interfaces/ui/terminal/tui/components/InteractiveElements.tsx +584 -0
- package/packages/src/interfaces/ui/terminal/tui/components/MultilineInput.tsx +614 -0
- package/packages/src/interfaces/ui/terminal/tui/components/PaneManager.tsx +333 -0
- package/packages/src/interfaces/ui/terminal/tui/components/Sidebar.tsx +604 -0
- package/packages/src/interfaces/ui/terminal/tui/components/index.ts +118 -0
- package/packages/src/interfaces/ui/terminal/tui/console.ts +49 -0
- package/packages/src/interfaces/ui/terminal/tui/index.ts +90 -0
- package/packages/src/interfaces/ui/terminal/tui/run.tsx +42 -0
- package/packages/src/interfaces/ui/terminal/tui/spinner.ts +69 -0
- package/packages/src/interfaces/ui/terminal/tui/tui-app.tsx +390 -0
- package/packages/src/interfaces/ui/terminal/tui/tui-footer.ts +422 -0
- package/packages/src/interfaces/ui/terminal/tui/types.ts +186 -0
- package/packages/src/interfaces/ui/terminal/tui/useInputHandler.ts +104 -0
- package/packages/src/interfaces/ui/terminal/tui/useNativeInput.ts +239 -0
- package/packages/src/lmdb.db +0 -0
- package/packages/src/lmdb.db-lock +0 -0
- package/packages/src/native/index.ts +2345 -0
- package/packages/src/teammates/index.ts +982 -0
- package/packages/src/types/index.ts +722 -0
- package/dist/cli.js +0 -148
- package/dist/index-0pkak453.js +0 -136
- package/dist/index-0qd0x8b4.js +0 -110
- package/dist/index-0x3kprq6.js +0 -240
- package/dist/index-1eawy937.js +0 -308
- package/dist/index-24m2aygy.js +0 -240
- package/dist/index-29xcjnne.js +0 -280
- package/dist/index-2avyytn5.js +0 -349
- package/dist/index-4ms367ey.js +0 -136
- package/dist/index-4w2t3b0m.js +0 -240
- package/dist/index-4xfgd8nz.js +0 -261
- package/dist/index-5acjp9gc.js +0 -157
- package/dist/index-5s15hr56.js +0 -136
- package/dist/index-6e4wf341.js +0 -349
- package/dist/index-6fvnkedw.js +0 -240
- package/dist/index-6rqpmd4g.js +0 -128
- package/dist/index-77ckwnbm.js +0 -280
- package/dist/index-9knxy49k.js +0 -128
- package/dist/index-9zrnw4zx.js +0 -128
- package/dist/index-bk21w99v.js +0 -280
- package/dist/index-c41n76fv.js +0 -240
- package/dist/index-cb4ppjdt.js +0 -255
- package/dist/index-cfb2edt6.js +0 -240
- package/dist/index-cmfa38hh.js +0 -308
- package/dist/index-datjz8q1.js +0 -257
- package/dist/index-eadf4wvn.js +0 -240
- package/dist/index-em5k0m3z.js +0 -345
- package/dist/index-gh8r333a.js +0 -110
- package/dist/index-gkx6k2tr.js +0 -261
- package/dist/index-h5cabfks.js +0 -155
- package/dist/index-hcrpwyy3.js +0 -261
- package/dist/index-hk7fwwa8.js +0 -257
- package/dist/index-jb8cw7f8.js +0 -136
- package/dist/index-kbyw4th1.js +0 -347
- package/dist/index-kgj5gqnm.js +0 -345
- package/dist/index-mdf6xp1z.js +0 -255
- package/dist/index-mrhv8kvc.js +0 -280
- package/dist/index-mt4743dd.js +0 -161
- package/dist/index-qnwsg97q.js +0 -240
- package/dist/index-qwdy6x44.js +0 -261
- package/dist/index-rmj77261.js +0 -157
- package/dist/index-sbbw1a61.js +0 -349
- package/dist/index-svy5bcpn.js +0 -345
- package/dist/index-tvmy7tm9.js +0 -261
- package/dist/index-tzz4vzkj.js +0 -312
- package/dist/index-vz80zmhe.js +0 -110
- package/dist/index-wed2fk67.js +0 -240
- package/dist/index-wksgzz8e.js +0 -280
- package/dist/index-wn2m4wma.js +0 -240
- package/dist/index-xha05vjc.js +0 -257
- package/dist/index-yc6eh8p8.js +0 -136
- package/dist/index-ycjxx9ft.js +0 -240
- package/dist/index-z0gzd0fc.js +0 -110
- package/dist/index-z8cwtf8j.js +0 -240
- package/dist/index-zy5mtt00.js +0 -128
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useNativeInput.d.ts","sourceRoot":"","sources":["../../../../../packages/src/interfaces/ui/terminal/tui/useNativeInput.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAEnG,UAAU,qBAAqB;IAC7B,iDAAiD;IACjD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8BAA8B;IAC9B,KAAK,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;CACxC;AAED,UAAU,oBAAoB;IAC5B,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,8CAA8C;IAC9C,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,EAC7B,QAAe,EACf,KAAK,GACN,EAAE,qBAAqB,GAAG,oBAAoB,CA2E9C;AAED;;GAEG;AACH,eAAO,MAAM,SAAS;IACpB,kCAAkC;mBACnB,cAAc,GAAG,OAAO;IAIvC,sCAAsC;uBACnB,cAAc,GAAG,OAAO;IAI3C,mCAAmC;oBACnB,cAAc,GAAG,OAAO;IAIxC,mCAAmC;oBACnB,cAAc,GAAG,OAAO;IAIxC,gCAAgC;iBACnB,cAAc,GAAG,OAAO;IAIrC,gDAAgD;qBAC/B,cAAc,GAAG,OAAO;IAIzC,qCAAqC;gBACzB,cAAc,GAAG,OAAO;IAIpC,uCAAuC;kBACzB,cAAc,GAAG,OAAO;IAItC,uCAAuC;kBACzB,cAAc,GAAG,OAAO;IAItC,wCAAwC;mBACzB,cAAc,GAAG,OAAO;IAIvC,oCAAoC;oBACpB,cAAc,GAAG,OAAO;IAIxC,sCAAsC;sBACpB,cAAc,GAAG,OAAO;IAI1C,iCAAiC;kBACnB,cAAc,GAAG,OAAO;IAItC,gCAAgC;iBACnB,cAAc,GAAG,OAAO;IAIrC,+BAA+B;mBAChB,cAAc,GAAG,OAAO;IAIvC,mDAAmD;mBACpC,cAAc,GAAG,OAAO;IAIvC,6CAA6C;mBAC9B,cAAc,GAAG,OAAO;IAIvC,8CAA8C;uBAC3B,cAAc,GAAG,OAAO;IAU3C,iCAAiC;qBAChB,cAAc,GAAG,OAAO;IAIzC,mCAAmC;uBAChB,cAAc,GAAG,OAAO;CAG5C,CAAC;AAEF,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Native terminal input hook
|
|
3
|
+
*
|
|
4
|
+
* Reads key events from stdin without managing raw mode.
|
|
5
|
+
* Ink handles raw mode - we just read the key events.
|
|
6
|
+
*
|
|
7
|
+
* IMPORTANT: This hook does NOT manage raw mode. Ink does that.
|
|
8
|
+
* We only read events from stdin via the native module.
|
|
9
|
+
*/
|
|
10
|
+
import { useEffect, useRef, useState } from "react";
|
|
11
|
+
import { loadNative } from "../../../../native/index.js";
|
|
12
|
+
/**
|
|
13
|
+
* React hook for terminal keyboard input
|
|
14
|
+
*
|
|
15
|
+
* Uses native Rust TerminalHandle to read key events from stdin.
|
|
16
|
+
* Does NOT manage raw mode - let Ink handle that.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```tsx
|
|
20
|
+
* useNativeInput({
|
|
21
|
+
* isActive: !isLoading,
|
|
22
|
+
* onKey: (event) => {
|
|
23
|
+
* if (KeyEvents.isEnter(event)) {
|
|
24
|
+
* handleSubmit();
|
|
25
|
+
* } else if (KeyEvents.isPrintable(event)) {
|
|
26
|
+
* handleChar(event.code);
|
|
27
|
+
* }
|
|
28
|
+
* },
|
|
29
|
+
* });
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export function useNativeInput({ isActive = true, onKey, }) {
|
|
33
|
+
const [isReady, setIsReady] = useState(false);
|
|
34
|
+
const [error, setError] = useState(null);
|
|
35
|
+
const onKeyRef = useRef(onKey);
|
|
36
|
+
const terminalRef = useRef(null);
|
|
37
|
+
const runningRef = useRef(false);
|
|
38
|
+
// Keep callback ref updated
|
|
39
|
+
useEffect(() => {
|
|
40
|
+
onKeyRef.current = onKey;
|
|
41
|
+
}, [onKey]);
|
|
42
|
+
// Initialize terminal and start polling loop
|
|
43
|
+
useEffect(() => {
|
|
44
|
+
if (!isActive) {
|
|
45
|
+
runningRef.current = false;
|
|
46
|
+
setIsReady(false);
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
// Get terminal handle from native module
|
|
50
|
+
const native = loadNative();
|
|
51
|
+
let terminal;
|
|
52
|
+
try {
|
|
53
|
+
terminal = native.create_terminal();
|
|
54
|
+
terminalRef.current = terminal;
|
|
55
|
+
}
|
|
56
|
+
catch (e) {
|
|
57
|
+
const err = e instanceof Error ? e : new Error(String(e));
|
|
58
|
+
setError(err);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
// DON'T enter raw mode - Ink handles that
|
|
62
|
+
// Just mark as ready and start polling
|
|
63
|
+
setIsReady(true);
|
|
64
|
+
runningRef.current = true;
|
|
65
|
+
// Polling loop using setImmediate-like behavior
|
|
66
|
+
let timeoutId = null;
|
|
67
|
+
const poll = () => {
|
|
68
|
+
if (!runningRef.current)
|
|
69
|
+
return;
|
|
70
|
+
try {
|
|
71
|
+
// Poll with 16ms timeout (60fps) for responsive input
|
|
72
|
+
// Use non-blocking read - returns null if no event available
|
|
73
|
+
const event = terminal.pollEvent(16);
|
|
74
|
+
if (event) {
|
|
75
|
+
onKeyRef.current(event);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
catch {
|
|
79
|
+
// Ignore polling errors
|
|
80
|
+
}
|
|
81
|
+
// Continue polling with a small delay to prevent tight loop
|
|
82
|
+
if (runningRef.current) {
|
|
83
|
+
timeoutId = setTimeout(poll, 16);
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
// Start polling
|
|
87
|
+
poll();
|
|
88
|
+
// Cleanup: stop polling (no raw mode to exit - Ink handles that)
|
|
89
|
+
return () => {
|
|
90
|
+
runningRef.current = false;
|
|
91
|
+
if (timeoutId) {
|
|
92
|
+
clearTimeout(timeoutId);
|
|
93
|
+
}
|
|
94
|
+
terminalRef.current = null;
|
|
95
|
+
setIsReady(false);
|
|
96
|
+
};
|
|
97
|
+
}, [isActive]);
|
|
98
|
+
return { isReady, error };
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Key event helper functions
|
|
102
|
+
*/
|
|
103
|
+
export const KeyEvents = {
|
|
104
|
+
/** Check if event is Enter key */
|
|
105
|
+
isEnter(event) {
|
|
106
|
+
return event.code === "enter" && event.kind === "press";
|
|
107
|
+
},
|
|
108
|
+
/** Check if event is Backspace key */
|
|
109
|
+
isBackspace(event) {
|
|
110
|
+
return event.code === "backspace" && event.kind === "press";
|
|
111
|
+
},
|
|
112
|
+
/** Check if event is Delete key */
|
|
113
|
+
isDelete(event) {
|
|
114
|
+
return event.code === "delete" && event.kind === "press";
|
|
115
|
+
},
|
|
116
|
+
/** Check if event is Escape key */
|
|
117
|
+
isEscape(event) {
|
|
118
|
+
return event.code === "escape" && event.kind === "press";
|
|
119
|
+
},
|
|
120
|
+
/** Check if event is Tab key */
|
|
121
|
+
isTab(event) {
|
|
122
|
+
return event.code === "tab" && event.kind === "press";
|
|
123
|
+
},
|
|
124
|
+
/** Check if event is BackTab (Shift+Tab) key */
|
|
125
|
+
isBackTab(event) {
|
|
126
|
+
return event.code === "backtab" && event.kind === "press";
|
|
127
|
+
},
|
|
128
|
+
/** Check if event is Arrow Up key */
|
|
129
|
+
isUp(event) {
|
|
130
|
+
return event.code === "up" && event.kind === "press";
|
|
131
|
+
},
|
|
132
|
+
/** Check if event is Arrow Down key */
|
|
133
|
+
isDown(event) {
|
|
134
|
+
return event.code === "down" && event.kind === "press";
|
|
135
|
+
},
|
|
136
|
+
/** Check if event is Arrow Left key */
|
|
137
|
+
isLeft(event) {
|
|
138
|
+
return event.code === "left" && event.kind === "press";
|
|
139
|
+
},
|
|
140
|
+
/** Check if event is Arrow Right key */
|
|
141
|
+
isRight(event) {
|
|
142
|
+
return event.code === "right" && event.kind === "press";
|
|
143
|
+
},
|
|
144
|
+
/** Check if event is Page Up key */
|
|
145
|
+
isPageUp(event) {
|
|
146
|
+
return event.code === "pageup" && event.kind === "press";
|
|
147
|
+
},
|
|
148
|
+
/** Check if event is Page Down key */
|
|
149
|
+
isPageDown(event) {
|
|
150
|
+
return event.code === "pagedown" && event.kind === "press";
|
|
151
|
+
},
|
|
152
|
+
/** Check if event is Home key */
|
|
153
|
+
isHome(event) {
|
|
154
|
+
return event.code === "home" && event.kind === "press";
|
|
155
|
+
},
|
|
156
|
+
/** Check if event is End key */
|
|
157
|
+
isEnd(event) {
|
|
158
|
+
return event.code === "end" && event.kind === "press";
|
|
159
|
+
},
|
|
160
|
+
/** Check if event is Ctrl+C */
|
|
161
|
+
isCtrlC(event) {
|
|
162
|
+
return event.code === "c" && event.ctrl && event.kind === "press";
|
|
163
|
+
},
|
|
164
|
+
/** Check if event is Ctrl+A (beginning of line) */
|
|
165
|
+
isCtrlA(event) {
|
|
166
|
+
return event.code === "a" && event.ctrl && event.kind === "press";
|
|
167
|
+
},
|
|
168
|
+
/** Check if event is Ctrl+E (end of line) */
|
|
169
|
+
isCtrlE(event) {
|
|
170
|
+
return event.code === "e" && event.ctrl && event.kind === "press";
|
|
171
|
+
},
|
|
172
|
+
/** Check if event is a printable character */
|
|
173
|
+
isPrintable(event) {
|
|
174
|
+
return (!event.is_special &&
|
|
175
|
+
!event.ctrl &&
|
|
176
|
+
!event.alt &&
|
|
177
|
+
event.code.length === 1 &&
|
|
178
|
+
event.kind === "press");
|
|
179
|
+
},
|
|
180
|
+
/** Check if event is Shift+Up */
|
|
181
|
+
isShiftUp(event) {
|
|
182
|
+
return event.code === "up" && event.shift && event.kind === "press";
|
|
183
|
+
},
|
|
184
|
+
/** Check if event is Shift+Down */
|
|
185
|
+
isShiftDown(event) {
|
|
186
|
+
return event.code === "down" && event.shift && event.kind === "press";
|
|
187
|
+
},
|
|
188
|
+
};
|
|
@@ -0,0 +1,480 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Native module loader
|
|
3
|
+
* Loads Rust-compiled native modules for performance-critical operations
|
|
4
|
+
*/
|
|
5
|
+
export interface HighlightResult {
|
|
6
|
+
/** ANSI-colored text (for terminal display) */
|
|
7
|
+
html: string;
|
|
8
|
+
/** Theme used for highlighting */
|
|
9
|
+
theme: string;
|
|
10
|
+
}
|
|
11
|
+
export interface HighlightDiffResult {
|
|
12
|
+
/** ANSI-colored diff output */
|
|
13
|
+
output: string;
|
|
14
|
+
/** Number of added lines */
|
|
15
|
+
additions: number;
|
|
16
|
+
/** Number of deleted lines */
|
|
17
|
+
deletions: number;
|
|
18
|
+
/** Number of hunks */
|
|
19
|
+
hunks: number;
|
|
20
|
+
}
|
|
21
|
+
export interface DiffOptions {
|
|
22
|
+
/** File path to display in header */
|
|
23
|
+
file_path?: string;
|
|
24
|
+
/** Number of context lines around changes (default: 3) */
|
|
25
|
+
context_lines?: number;
|
|
26
|
+
}
|
|
27
|
+
/** A single edit operation for multi-file editing */
|
|
28
|
+
export interface MultiEditEntry {
|
|
29
|
+
/** File path to edit (absolute path) */
|
|
30
|
+
filePath: string;
|
|
31
|
+
/** String to find and replace */
|
|
32
|
+
oldString: string;
|
|
33
|
+
/** Replacement string */
|
|
34
|
+
newString: string;
|
|
35
|
+
/** Replace all occurrences (default: false) */
|
|
36
|
+
replaceAll?: boolean;
|
|
37
|
+
}
|
|
38
|
+
/** Result of an atomic multi-file edit operation */
|
|
39
|
+
export interface MultiEditResult {
|
|
40
|
+
/** Whether all edits succeeded */
|
|
41
|
+
success: boolean;
|
|
42
|
+
/** List of files that were modified */
|
|
43
|
+
filesModified: string[];
|
|
44
|
+
/** Total number of string replacements made */
|
|
45
|
+
totalReplacements: number;
|
|
46
|
+
/** Error message if operation failed */
|
|
47
|
+
error?: string;
|
|
48
|
+
/** Whether changes were rolled back due to failure */
|
|
49
|
+
rolledBack: boolean;
|
|
50
|
+
}
|
|
51
|
+
/** Preview result for a single file */
|
|
52
|
+
export interface MultiEditPreviewEntry {
|
|
53
|
+
/** File path */
|
|
54
|
+
filePath: string;
|
|
55
|
+
/** Number of replacements that would be made */
|
|
56
|
+
replacementCount: number;
|
|
57
|
+
}
|
|
58
|
+
/** OHLCV candlestick data */
|
|
59
|
+
export interface OHLCV {
|
|
60
|
+
timestamp: number;
|
|
61
|
+
open: number;
|
|
62
|
+
high: number;
|
|
63
|
+
low: number;
|
|
64
|
+
close: number;
|
|
65
|
+
volume: number;
|
|
66
|
+
}
|
|
67
|
+
/** AMM state for constant-product AMMs */
|
|
68
|
+
export interface AMMState {
|
|
69
|
+
pool_yes: number;
|
|
70
|
+
pool_no: number;
|
|
71
|
+
k: number;
|
|
72
|
+
fee: number;
|
|
73
|
+
price_yes: number;
|
|
74
|
+
price_no: number;
|
|
75
|
+
}
|
|
76
|
+
/** AMM cost calculation result */
|
|
77
|
+
export interface AMMCostResult {
|
|
78
|
+
cost: number;
|
|
79
|
+
avg_price: number;
|
|
80
|
+
}
|
|
81
|
+
/** AMM price impact result */
|
|
82
|
+
export interface AMMPriceImpactResult {
|
|
83
|
+
price_before: number;
|
|
84
|
+
price_after: number;
|
|
85
|
+
price_impact: number;
|
|
86
|
+
slippage: number;
|
|
87
|
+
}
|
|
88
|
+
/** LMSR price result */
|
|
89
|
+
export interface LMSRPriceResult {
|
|
90
|
+
yes_price: number;
|
|
91
|
+
no_price: number;
|
|
92
|
+
spread: number;
|
|
93
|
+
}
|
|
94
|
+
/** Arbitrage detection result */
|
|
95
|
+
export interface ArbitrageResult {
|
|
96
|
+
has_arbitrage: boolean;
|
|
97
|
+
yes_price: number;
|
|
98
|
+
no_price: number;
|
|
99
|
+
total: number;
|
|
100
|
+
profit_per_share: number;
|
|
101
|
+
}
|
|
102
|
+
/** Odds conversion result */
|
|
103
|
+
export interface OddsConversion {
|
|
104
|
+
probability: number;
|
|
105
|
+
decimal_odds: number;
|
|
106
|
+
american_odds: number;
|
|
107
|
+
}
|
|
108
|
+
/** Value at Risk result */
|
|
109
|
+
export interface VaRResult {
|
|
110
|
+
var: number;
|
|
111
|
+
cvar: number;
|
|
112
|
+
confidence_level: number;
|
|
113
|
+
}
|
|
114
|
+
/** Drawdown analysis result */
|
|
115
|
+
export interface DrawdownResult {
|
|
116
|
+
max_drawdown: number;
|
|
117
|
+
max_duration: number;
|
|
118
|
+
current_drawdown: number;
|
|
119
|
+
recovery_factor: number;
|
|
120
|
+
}
|
|
121
|
+
/** Sharpe ratio result */
|
|
122
|
+
export interface SharpeResult {
|
|
123
|
+
sharpe_ratio: number;
|
|
124
|
+
annualized_sharpe: number;
|
|
125
|
+
risk_free_rate: number;
|
|
126
|
+
avg_return: number;
|
|
127
|
+
std_dev: number;
|
|
128
|
+
}
|
|
129
|
+
/** Native key event from terminal */
|
|
130
|
+
export interface NativeKeyEvent {
|
|
131
|
+
/** The key code (character or special key name) */
|
|
132
|
+
code: string;
|
|
133
|
+
/** Whether this is a special key (arrow, function, etc.) */
|
|
134
|
+
is_special: boolean;
|
|
135
|
+
/** Ctrl modifier */
|
|
136
|
+
ctrl: boolean;
|
|
137
|
+
/** Alt/Meta modifier */
|
|
138
|
+
alt: boolean;
|
|
139
|
+
/** Shift modifier */
|
|
140
|
+
shift: boolean;
|
|
141
|
+
/** Event kind: "press", "release", "repeat" */
|
|
142
|
+
kind: "press" | "release" | "repeat";
|
|
143
|
+
}
|
|
144
|
+
/** Terminal handle for raw mode input */
|
|
145
|
+
export interface TerminalHandle {
|
|
146
|
+
/** Enter raw terminal mode */
|
|
147
|
+
enterRawMode(): void;
|
|
148
|
+
/** Exit raw terminal mode */
|
|
149
|
+
exitRawMode(): void;
|
|
150
|
+
/** Check if in raw mode (getter) */
|
|
151
|
+
readonly isRawMode: boolean;
|
|
152
|
+
/** Poll for a key event (non-blocking), returns null if no event */
|
|
153
|
+
pollEvent(timeoutMs?: number): NativeKeyEvent | null;
|
|
154
|
+
/** Read next key event (blocking, async) */
|
|
155
|
+
readEvent(): Promise<NativeKeyEvent>;
|
|
156
|
+
}
|
|
157
|
+
/** Message for display in the native TUI */
|
|
158
|
+
export interface TuiMessage {
|
|
159
|
+
id: string;
|
|
160
|
+
role: "user" | "assistant" | "system";
|
|
161
|
+
content: string;
|
|
162
|
+
timestamp?: number;
|
|
163
|
+
subType?: string;
|
|
164
|
+
toolName?: string;
|
|
165
|
+
isError?: boolean;
|
|
166
|
+
}
|
|
167
|
+
/** TUI state for rendering */
|
|
168
|
+
export interface TuiState {
|
|
169
|
+
messages: TuiMessage[];
|
|
170
|
+
inputValue: string;
|
|
171
|
+
cursorPos: number;
|
|
172
|
+
isLoading: boolean;
|
|
173
|
+
spinnerFrame: number;
|
|
174
|
+
model: string;
|
|
175
|
+
tokensUsed: number;
|
|
176
|
+
permissionMode: string;
|
|
177
|
+
streamingText: string;
|
|
178
|
+
scrollOffset: number;
|
|
179
|
+
contextWarning?: string;
|
|
180
|
+
}
|
|
181
|
+
/** Result of handling input in native TUI */
|
|
182
|
+
export interface InputResult {
|
|
183
|
+
submitted: boolean;
|
|
184
|
+
text?: string;
|
|
185
|
+
exitRequested: boolean;
|
|
186
|
+
command?: string;
|
|
187
|
+
scrollUp: boolean;
|
|
188
|
+
scrollDown: boolean;
|
|
189
|
+
inputValue: string;
|
|
190
|
+
cursorPos: number;
|
|
191
|
+
historyNavigated: boolean;
|
|
192
|
+
historyDirection: number;
|
|
193
|
+
}
|
|
194
|
+
/** Native TUI handle from Rust */
|
|
195
|
+
export interface NativeTuiHandle {
|
|
196
|
+
init(): void;
|
|
197
|
+
cleanup(): void;
|
|
198
|
+
render(state: TuiState): void;
|
|
199
|
+
pollInput(state: TuiState, timeoutMs?: number): InputResult;
|
|
200
|
+
addToHistory(input: string): void;
|
|
201
|
+
}
|
|
202
|
+
export interface NativeModule {
|
|
203
|
+
/** Syntax highlight code with ANSI escape codes */
|
|
204
|
+
highlight_code: (code: string, language: string) => HighlightResult;
|
|
205
|
+
/** Highlight markdown with nested code block syntax highlighting */
|
|
206
|
+
highlight_markdown: (markdown: string) => HighlightResult;
|
|
207
|
+
/** Highlight a diff with ANSI colors */
|
|
208
|
+
highlight_diff: (oldText: string, newText: string, options?: DiffOptions) => HighlightDiffResult;
|
|
209
|
+
search_files: (pattern: string, path: string, options: {
|
|
210
|
+
case_insensitive?: boolean;
|
|
211
|
+
hidden?: boolean;
|
|
212
|
+
glob?: string;
|
|
213
|
+
max_results?: number;
|
|
214
|
+
}) => {
|
|
215
|
+
matches: Array<{
|
|
216
|
+
file_path: string;
|
|
217
|
+
line_number: number;
|
|
218
|
+
column: number;
|
|
219
|
+
line_content: string;
|
|
220
|
+
match_text: string;
|
|
221
|
+
}>;
|
|
222
|
+
total_count: number;
|
|
223
|
+
files_searched: number;
|
|
224
|
+
};
|
|
225
|
+
count_tokens: (text: string) => number;
|
|
226
|
+
calculate_diff: (oldText: string, newText: string) => Array<{
|
|
227
|
+
oldStart: number;
|
|
228
|
+
oldLines: number;
|
|
229
|
+
newStart: number;
|
|
230
|
+
newLines: number;
|
|
231
|
+
content: string;
|
|
232
|
+
}>;
|
|
233
|
+
compact_content: (content: string, maxTokens: number, strategy?: "truncate" | "summarize" | "extract") => string;
|
|
234
|
+
count_tool_use: (messages: Array<{
|
|
235
|
+
role: string;
|
|
236
|
+
tool_use?: Array<{
|
|
237
|
+
name: string;
|
|
238
|
+
input?: any;
|
|
239
|
+
}>;
|
|
240
|
+
tool_result?: Array<any>;
|
|
241
|
+
}>) => Record<string, number>;
|
|
242
|
+
find_tool_pairs: (messages: Array<{
|
|
243
|
+
role: string;
|
|
244
|
+
tool_use?: Array<{
|
|
245
|
+
name: string;
|
|
246
|
+
input?: any;
|
|
247
|
+
}>;
|
|
248
|
+
tool_result?: Array<any>;
|
|
249
|
+
}>, window_size: number) => Record<string, Record<string, number>>;
|
|
250
|
+
find_common_patterns: (messages: Array<{
|
|
251
|
+
role: string;
|
|
252
|
+
tool_use?: Array<{
|
|
253
|
+
name: string;
|
|
254
|
+
input?: any;
|
|
255
|
+
}>;
|
|
256
|
+
tool_result?: Array<any>;
|
|
257
|
+
}>) => Array<{
|
|
258
|
+
tools: [string, string];
|
|
259
|
+
count: number;
|
|
260
|
+
percentage: number;
|
|
261
|
+
}>;
|
|
262
|
+
/** Validate multi-file edits without applying them */
|
|
263
|
+
validate_multi_edits: (edits: MultiEditEntry[]) => string[];
|
|
264
|
+
/** Preview what edits would be applied without making changes */
|
|
265
|
+
preview_multi_edits: (edits: MultiEditEntry[]) => MultiEditPreviewEntry[];
|
|
266
|
+
/** Apply multiple file edits atomically with rollback on failure */
|
|
267
|
+
apply_multi_edits: (edits: MultiEditEntry[]) => MultiEditResult;
|
|
268
|
+
/** Get library version */
|
|
269
|
+
quant_version: () => string;
|
|
270
|
+
quant_ohlcv_new: (timestamp: bigint, open: number, high: number, low: number, close: number, volume: number) => string;
|
|
271
|
+
quant_amm_new: (poolYes: number, poolNo: number, fee: number) => string;
|
|
272
|
+
quant_amm_calculate_cost: (poolYes: number, poolNo: number, buyYes: boolean, shares: number) => string;
|
|
273
|
+
quant_amm_price_impact: (poolYes: number, poolNo: number, buyYes: boolean, shares: number) => string;
|
|
274
|
+
quant_lmsr_price: (yesShares: number, noShares: number, b: number) => string;
|
|
275
|
+
quant_lmsr_cost: (yesShares: number, noShares: number, b: number, buyYes: boolean, shares: number) => string;
|
|
276
|
+
quant_detect_arbitrage: (yesPrice: number, noPrice: number) => string;
|
|
277
|
+
quant_convert_odds: (value: number, fromType: number) => string;
|
|
278
|
+
quant_mean: (data: Float64Array) => number;
|
|
279
|
+
quant_std_dev: (data: Float64Array) => number;
|
|
280
|
+
quant_variance: (data: Float64Array) => number;
|
|
281
|
+
quant_correlation: (x: Float64Array, y: Float64Array) => number;
|
|
282
|
+
/** Classify an operation into an action type */
|
|
283
|
+
classify_operation: (operation: string, domain: string, target?: string | null, reasoning?: string | null) => any;
|
|
284
|
+
/** Get all supported action types */
|
|
285
|
+
get_action_types: () => string[];
|
|
286
|
+
/** Get risk levels for all action types */
|
|
287
|
+
get_action_risk_levels: () => Array<{
|
|
288
|
+
actionType: string;
|
|
289
|
+
riskLevel: number;
|
|
290
|
+
}>;
|
|
291
|
+
/** Create a deny-all policy */
|
|
292
|
+
create_deny_all_policy: () => any;
|
|
293
|
+
/** Create an observe-only policy */
|
|
294
|
+
create_observe_only_policy: () => any;
|
|
295
|
+
/** Create a transfer approval policy */
|
|
296
|
+
create_transfer_approval_policy: () => any;
|
|
297
|
+
/** Generate a new Ed25519 keypair for signing intents */
|
|
298
|
+
cs_generate_keypair: () => {
|
|
299
|
+
privateKey: string;
|
|
300
|
+
publicKey: string;
|
|
301
|
+
};
|
|
302
|
+
/** Sign an agent intent with a private key */
|
|
303
|
+
cs_sign_intent: (intent: any, privateKey: string) => any;
|
|
304
|
+
/** Verify an intent's signature */
|
|
305
|
+
cs_verify_intent: (intent: any) => any;
|
|
306
|
+
/** Hash an intent for comparison */
|
|
307
|
+
cs_hash_intent: (intent: any) => string;
|
|
308
|
+
/** Check if two intents are equivalent */
|
|
309
|
+
cs_intents_equivalent: (intent1: any, intent2: any) => boolean;
|
|
310
|
+
/** Score how well an action aligns with an intent */
|
|
311
|
+
cs_score_alignment: (action: any, intent: any) => any;
|
|
312
|
+
/** Batch score multiple actions against an intent */
|
|
313
|
+
cs_batch_score_alignment: (actions: any[], intent: any) => any[];
|
|
314
|
+
/** Check if any action in a sequence would violate intent */
|
|
315
|
+
cs_check_sequence_violations: (actions: any[], intent: any) => number[];
|
|
316
|
+
/** Load intent from a JSON file */
|
|
317
|
+
cs_load_intent: (path: string) => any;
|
|
318
|
+
/** Save intent to a JSON file */
|
|
319
|
+
cs_save_intent: (intent: any, path: string) => void;
|
|
320
|
+
/** Parse intent from JSON string */
|
|
321
|
+
cs_parse_intent: (json: string) => any;
|
|
322
|
+
/** Serialize intent to JSON string */
|
|
323
|
+
cs_serialize_intent: (intent: any) => string;
|
|
324
|
+
/** Validate intent structure */
|
|
325
|
+
cs_validate_intent: (intent: any) => any;
|
|
326
|
+
/** Create a default data collector intent */
|
|
327
|
+
cs_create_data_collector_intent: (name: string, description: string) => any;
|
|
328
|
+
/** Merge two intents (child overrides parent) */
|
|
329
|
+
cs_merge_intents: (base: any, override: any) => any;
|
|
330
|
+
/** Analyze behavior for signs of intent corruption */
|
|
331
|
+
cs_analyze_corruption: (snapshot: any, intent: any) => any;
|
|
332
|
+
/** Detect behavioral drift between two snapshots */
|
|
333
|
+
cs_detect_drift: (baseline: any, current: any) => any;
|
|
334
|
+
/** Create an empty behavior snapshot */
|
|
335
|
+
cs_create_empty_snapshot: () => any;
|
|
336
|
+
/** Update a snapshot with a new action result */
|
|
337
|
+
cs_update_snapshot: (snapshot: any, action: any, alignment: any) => any;
|
|
338
|
+
/** Classify data based on content and source */
|
|
339
|
+
classify_data: (content: string, source: string, tags: string[]) => any;
|
|
340
|
+
/** Check if content contains sensitive data */
|
|
341
|
+
contains_sensitive_data: (content: string) => boolean;
|
|
342
|
+
/** Redact sensitive content */
|
|
343
|
+
redact_sensitive: (content: string, replacement?: string | null) => string;
|
|
344
|
+
/** Get sensitivity levels */
|
|
345
|
+
get_sensitivity_levels: () => Array<{
|
|
346
|
+
name: string;
|
|
347
|
+
value: number;
|
|
348
|
+
description: string;
|
|
349
|
+
}>;
|
|
350
|
+
/** Get data categories */
|
|
351
|
+
get_data_categories: () => Array<{
|
|
352
|
+
name: string;
|
|
353
|
+
description: string;
|
|
354
|
+
}>;
|
|
355
|
+
/** Create a flow policy engine */
|
|
356
|
+
create_flow_policy_engine: () => any;
|
|
357
|
+
/** Create an allow-all flow policy */
|
|
358
|
+
create_allow_all_flow_policy: () => any;
|
|
359
|
+
/** Create a deny-all flow policy */
|
|
360
|
+
create_deny_all_flow_policy: () => any;
|
|
361
|
+
/** Create a strict flow policy */
|
|
362
|
+
create_strict_flow_policy: () => any;
|
|
363
|
+
/** Create a flow tracker */
|
|
364
|
+
create_flow_tracker: () => any;
|
|
365
|
+
/** Create a leak prevention engine */
|
|
366
|
+
create_leak_prevention: () => any;
|
|
367
|
+
/** Check content for leaks */
|
|
368
|
+
check_for_leaks: (content: string, channel: string) => any;
|
|
369
|
+
/** Sanitize content */
|
|
370
|
+
sanitize_content: (content: string) => string;
|
|
371
|
+
/** Create a taint tracker */
|
|
372
|
+
create_taint_tracker: () => any;
|
|
373
|
+
/** Create a terminal handle for raw mode input */
|
|
374
|
+
create_terminal: () => TerminalHandle;
|
|
375
|
+
/** Create a native TUI handle */
|
|
376
|
+
create_tui: () => NativeTuiHandle;
|
|
377
|
+
/** Check if native TUI is available */
|
|
378
|
+
is_native_tui_available: () => boolean;
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Load the native module
|
|
382
|
+
*/
|
|
383
|
+
export declare function loadNative(): NativeModule;
|
|
384
|
+
/**
|
|
385
|
+
* Check if native module is available
|
|
386
|
+
*/
|
|
387
|
+
export declare function isNativeAvailable(): boolean;
|
|
388
|
+
export declare const native: NativeModule;
|
|
389
|
+
/**
|
|
390
|
+
* Syntax highlight code with ANSI escape codes for terminal display
|
|
391
|
+
* Uses native Rust module if available, falls back to JS implementation
|
|
392
|
+
*/
|
|
393
|
+
export declare function highlight_code(code: string, language: string): HighlightResult;
|
|
394
|
+
/**
|
|
395
|
+
* Highlight markdown with nested code block syntax highlighting
|
|
396
|
+
* Parses markdown for code fences and highlights code blocks with their language
|
|
397
|
+
*/
|
|
398
|
+
export declare function highlight_markdown(markdown: string): HighlightResult;
|
|
399
|
+
/**
|
|
400
|
+
* List all supported languages for syntax highlighting
|
|
401
|
+
*/
|
|
402
|
+
export declare function list_highlight_languages(): string[];
|
|
403
|
+
/**
|
|
404
|
+
* Highlight a diff with ANSI colors
|
|
405
|
+
* Uses native Rust module if available, falls back to JS implementation
|
|
406
|
+
*/
|
|
407
|
+
export declare function highlight_diff(oldText: string, newText: string, options?: DiffOptions): HighlightDiffResult;
|
|
408
|
+
/**
|
|
409
|
+
* Calculate diff hunks with hunk headers for LLM context
|
|
410
|
+
* Returns structured diff with @@ headers included in content
|
|
411
|
+
*/
|
|
412
|
+
export declare function calculate_diff(oldText: string, newText: string): Array<{
|
|
413
|
+
oldStart: number;
|
|
414
|
+
oldLines: number;
|
|
415
|
+
newStart: number;
|
|
416
|
+
newLines: number;
|
|
417
|
+
content: string;
|
|
418
|
+
}>;
|
|
419
|
+
/**
|
|
420
|
+
* Validate multi-file edits without applying them
|
|
421
|
+
* Returns an array of error messages (empty if valid)
|
|
422
|
+
*/
|
|
423
|
+
export declare function validate_multi_edits(edits: MultiEditEntry[]): string[];
|
|
424
|
+
/**
|
|
425
|
+
* Preview what edits would be applied without making changes
|
|
426
|
+
* Returns an array of { file_path, replacement_count } for each file
|
|
427
|
+
*/
|
|
428
|
+
export declare function preview_multi_edits(edits: MultiEditEntry[]): MultiEditPreviewEntry[];
|
|
429
|
+
/**
|
|
430
|
+
* Apply multiple file edits atomically with rollback on failure
|
|
431
|
+
*
|
|
432
|
+
* This function:
|
|
433
|
+
* 1. Validates all edits can be applied (files exist, strings found)
|
|
434
|
+
* 2. Creates backups of all affected files
|
|
435
|
+
* 3. Applies all edits
|
|
436
|
+
* 4. Rolls back on any failure
|
|
437
|
+
*
|
|
438
|
+
* @param edits Array of edit operations
|
|
439
|
+
* @returns Result with success status and list of modified files
|
|
440
|
+
*/
|
|
441
|
+
export declare function apply_multi_edits(edits: MultiEditEntry[]): MultiEditResult;
|
|
442
|
+
/**
|
|
443
|
+
* Quant module interface for financial calculations
|
|
444
|
+
* Loads from @ebowwa/quant-rust native library
|
|
445
|
+
*/
|
|
446
|
+
interface QuantModule {
|
|
447
|
+
quant_version: () => string;
|
|
448
|
+
quant_last_error: () => string;
|
|
449
|
+
quant_clear_error: () => void;
|
|
450
|
+
quant_ohlcv_new: (timestamp: bigint, open: number, high: number, low: number, close: number, volume: number) => string;
|
|
451
|
+
quant_amm_new: (poolYes: number, poolNo: number, fee: number) => string;
|
|
452
|
+
quant_amm_calculate_cost: (poolYes: number, poolNo: number, buyYes: boolean, shares: number) => string;
|
|
453
|
+
quant_amm_price_impact: (poolYes: number, poolNo: number, buyYes: boolean, shares: number) => string;
|
|
454
|
+
quant_lmsr_price: (yesShares: number, noShares: number, b: number) => string;
|
|
455
|
+
quant_lmsr_cost: (yesShares: number, noShares: number, b: number, buyYes: boolean, shares: number) => string;
|
|
456
|
+
quant_detect_arbitrage: (yesPrice: number, noPrice: number) => string;
|
|
457
|
+
quant_convert_odds: (value: number, fromType: number) => string;
|
|
458
|
+
quant_mean: (ptr: number, len: number) => number;
|
|
459
|
+
quant_std_dev: (ptr: number, len: number) => number;
|
|
460
|
+
quant_variance: (ptr: number, len: number) => number;
|
|
461
|
+
quant_correlation: (ptrX: number, ptrY: number, len: number) => number;
|
|
462
|
+
quant_free_string: (ptr: number) => void;
|
|
463
|
+
}
|
|
464
|
+
export declare const quant: QuantModule | null;
|
|
465
|
+
export declare function quantVersion(): string;
|
|
466
|
+
export declare function isQuantAvailable(): boolean;
|
|
467
|
+
export declare function createOHLCV(timestamp: number, open: number, high: number, low: number, close: number, volume: number): OHLCV;
|
|
468
|
+
export declare function createAMM(poolYes: number, poolNo: number, fee: number): AMMState;
|
|
469
|
+
export declare function ammCalculateCost(poolYes: number, poolNo: number, outcome: "yes" | "no" | boolean, shares: number): number;
|
|
470
|
+
export declare function ammPriceImpact(poolYes: number, poolNo: number, outcome: "yes" | "no" | boolean, shares: number): AMMPriceImpactResult;
|
|
471
|
+
export declare function lmsrPrice(yesShares: number, noShares: number, b: number): LMSRPriceResult;
|
|
472
|
+
export declare function lmsrCost(yesShares: number, noShares: number, b: number, outcome: "yes" | "no" | boolean, shares: number): AMMCostResult;
|
|
473
|
+
export declare function detectArbitrage(yesPrice: number, noPrice: number): ArbitrageResult;
|
|
474
|
+
export declare function convertOdds(value: number, fromType: "probability" | "decimal" | "american"): OddsConversion;
|
|
475
|
+
export declare function quantMean(data: number[]): number;
|
|
476
|
+
export declare function quantStdDev(data: number[]): number;
|
|
477
|
+
export declare function quantVariance(data: number[]): number;
|
|
478
|
+
export declare function quantCorrelation(x: number[], y: number[]): number;
|
|
479
|
+
export {};
|
|
480
|
+
//# sourceMappingURL=index.d.ts.map
|