smithers-orchestrator 0.2.8 → 0.2.10
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/bin/cli.js +256 -154
- package/dist/src/commands/cli-utils.d.ts +12 -0
- package/dist/src/commands/cli-utils.d.ts.map +1 -0
- package/dist/src/commands/cli-utils.js +49 -0
- package/dist/src/commands/cli-utils.js.map +1 -0
- package/dist/src/commands/db/current-view.d.ts +3 -0
- package/dist/src/commands/db/current-view.d.ts.map +1 -0
- package/dist/src/commands/db/current-view.js +44 -0
- package/dist/src/commands/db/current-view.js.map +1 -0
- package/dist/src/commands/db/executions-view.d.ts +3 -0
- package/dist/src/commands/db/executions-view.d.ts.map +1 -0
- package/dist/src/commands/db/executions-view.js +34 -0
- package/dist/src/commands/db/executions-view.js.map +1 -0
- package/dist/src/commands/db/help.d.ts +2 -0
- package/dist/src/commands/db/help.d.ts.map +1 -0
- package/dist/src/commands/db/help.js +17 -0
- package/dist/src/commands/db/help.js.map +1 -0
- package/dist/src/commands/db/index.d.ts +13 -0
- package/dist/src/commands/db/index.d.ts.map +1 -0
- package/dist/src/commands/db/index.js +70 -0
- package/dist/src/commands/db/index.js.map +1 -0
- package/dist/src/commands/db/memories-view.d.ts +3 -0
- package/dist/src/commands/db/memories-view.d.ts.map +1 -0
- package/dist/src/commands/db/memories-view.js +30 -0
- package/dist/src/commands/db/memories-view.js.map +1 -0
- package/dist/src/commands/db/recovery-view.d.ts +3 -0
- package/dist/src/commands/db/recovery-view.d.ts.map +1 -0
- package/dist/src/commands/db/recovery-view.js +36 -0
- package/dist/src/commands/db/recovery-view.js.map +1 -0
- package/dist/src/commands/db/state-view.d.ts +3 -0
- package/dist/src/commands/db/state-view.d.ts.map +1 -0
- package/dist/src/commands/db/state-view.js +13 -0
- package/dist/src/commands/db/state-view.js.map +1 -0
- package/dist/src/commands/db/stats-view.d.ts +3 -0
- package/dist/src/commands/db/stats-view.d.ts.map +1 -0
- package/dist/src/commands/db/stats-view.js +23 -0
- package/dist/src/commands/db/stats-view.js.map +1 -0
- package/dist/src/commands/db/transitions-view.d.ts +3 -0
- package/dist/src/commands/db/transitions-view.d.ts.map +1 -0
- package/dist/src/commands/db/transitions-view.js +22 -0
- package/dist/src/commands/db/transitions-view.js.map +1 -0
- package/dist/src/commands/db/view-utils.d.ts +9 -0
- package/dist/src/commands/db/view-utils.d.ts.map +1 -0
- package/dist/src/commands/db/view-utils.js +29 -0
- package/dist/src/commands/db/view-utils.js.map +1 -0
- package/dist/src/commands/db.d.ts +2 -0
- package/dist/src/commands/db.d.ts.map +1 -0
- package/dist/src/commands/db.js +2 -0
- package/dist/src/commands/db.js.map +1 -0
- package/dist/src/commands/init.d.ts +14 -0
- package/dist/src/commands/init.d.ts.map +1 -0
- package/dist/src/commands/init.js +107 -0
- package/dist/src/commands/init.js.map +1 -0
- package/dist/src/commands/monitor.d.ts +14 -0
- package/dist/src/commands/monitor.d.ts.map +1 -0
- package/dist/src/commands/monitor.js +122 -0
- package/dist/src/commands/monitor.js.map +1 -0
- package/dist/src/commands/run.d.ts +13 -0
- package/dist/src/commands/run.d.ts.map +1 -0
- package/dist/src/commands/run.js +62 -0
- package/dist/src/commands/run.js.map +1 -0
- package/dist/src/commands/test-utils.d.ts +3 -0
- package/dist/src/commands/test-utils.d.ts.map +1 -0
- package/dist/src/commands/test-utils.js +14 -0
- package/dist/src/commands/test-utils.js.map +1 -0
- package/dist/src/components/Claude.d.ts +19 -0
- package/dist/src/components/Claude.d.ts.map +1 -0
- package/dist/src/components/Claude.js +438 -0
- package/dist/src/components/Claude.js.map +1 -0
- package/dist/src/components/ClaudeApi.d.ts +29 -0
- package/dist/src/components/ClaudeApi.d.ts.map +1 -0
- package/dist/src/components/ClaudeApi.js +21 -0
- package/dist/src/components/ClaudeApi.js.map +1 -0
- package/dist/src/components/Constraints.d.ts +24 -0
- package/dist/src/components/Constraints.d.ts.map +1 -0
- package/dist/src/components/Constraints.js +22 -0
- package/dist/src/components/Constraints.js.map +1 -0
- package/dist/src/components/Each.d.ts +7 -0
- package/dist/src/components/Each.d.ts.map +1 -0
- package/dist/src/components/Each.js +5 -0
- package/dist/src/components/Each.js.map +1 -0
- package/dist/src/components/End.d.ts +62 -0
- package/dist/src/components/End.d.ts.map +1 -0
- package/dist/src/components/End.js +81 -0
- package/dist/src/components/End.js.map +1 -0
- package/dist/src/components/ExecutionContext.d.ts +11 -0
- package/dist/src/components/ExecutionContext.d.ts.map +1 -0
- package/dist/src/components/ExecutionContext.js +10 -0
- package/dist/src/components/ExecutionContext.js.map +1 -0
- package/dist/src/components/ExecutionScope.d.ts +12 -0
- package/dist/src/components/ExecutionScope.d.ts.map +1 -0
- package/dist/src/components/ExecutionScope.js +18 -0
- package/dist/src/components/ExecutionScope.js.map +1 -0
- package/dist/src/components/Git/Commit.d.ts +33 -0
- package/dist/src/components/Git/Commit.d.ts.map +1 -0
- package/dist/src/components/Git/Commit.js +144 -0
- package/dist/src/components/Git/Commit.js.map +1 -0
- package/dist/src/components/Git/Notes.d.ts +25 -0
- package/dist/src/components/Git/Notes.d.ts.map +1 -0
- package/dist/src/components/Git/Notes.js +84 -0
- package/dist/src/components/Git/Notes.js.map +1 -0
- package/dist/src/components/Git/index.d.ts +3 -0
- package/dist/src/components/Git/index.d.ts.map +1 -0
- package/dist/src/components/Git/index.js +4 -1697
- package/dist/src/components/Git/index.js.map +1 -0
- package/dist/src/components/Hooks/OnCIFailure.d.ts +25 -0
- package/dist/src/components/Hooks/OnCIFailure.d.ts.map +1 -0
- package/dist/src/components/Hooks/OnCIFailure.js +169 -0
- package/dist/src/components/Hooks/OnCIFailure.js.map +1 -0
- package/dist/src/components/Hooks/PostCommit.d.ts +16 -0
- package/dist/src/components/Hooks/PostCommit.d.ts.map +1 -0
- package/dist/src/components/Hooks/PostCommit.js +128 -0
- package/dist/src/components/Hooks/PostCommit.js.map +1 -0
- package/dist/src/components/Hooks/index.d.ts +3 -0
- package/dist/src/components/Hooks/index.d.ts.map +1 -0
- package/dist/src/components/Hooks/index.js +5 -1718
- package/dist/src/components/Hooks/index.js.map +1 -0
- package/dist/src/components/Human.d.ts +32 -0
- package/dist/src/components/Human.d.ts.map +1 -0
- package/dist/src/components/Human.js +68 -0
- package/dist/src/components/Human.js.map +1 -0
- package/dist/src/components/If.d.ts +24 -0
- package/dist/src/components/If.d.ts.map +1 -0
- package/dist/src/components/If.js +4 -0
- package/dist/src/components/If.js.map +1 -0
- package/dist/src/components/JJ/Commit.d.ts +15 -0
- package/dist/src/components/JJ/Commit.d.ts.map +1 -0
- package/dist/src/components/JJ/Commit.js +80 -0
- package/dist/src/components/JJ/Commit.js.map +1 -0
- package/dist/src/components/JJ/Describe.d.ts +14 -0
- package/dist/src/components/JJ/Describe.d.ts.map +1 -0
- package/dist/src/components/JJ/Describe.js +64 -0
- package/dist/src/components/JJ/Describe.js.map +1 -0
- package/dist/src/components/JJ/Rebase.d.ts +15 -0
- package/dist/src/components/JJ/Rebase.d.ts.map +1 -0
- package/dist/src/components/JJ/Rebase.js +136 -0
- package/dist/src/components/JJ/Rebase.js.map +1 -0
- package/dist/src/components/JJ/Snapshot.d.ts +13 -0
- package/dist/src/components/JJ/Snapshot.d.ts.map +1 -0
- package/dist/src/components/JJ/Snapshot.js +63 -0
- package/dist/src/components/JJ/Snapshot.js.map +1 -0
- package/dist/src/components/JJ/Status.d.ts +18 -0
- package/dist/src/components/JJ/Status.d.ts.map +1 -0
- package/dist/src/components/JJ/Status.js +77 -0
- package/dist/src/components/JJ/Status.js.map +1 -0
- package/dist/src/components/JJ/index.d.ts +7 -0
- package/dist/src/components/JJ/index.d.ts.map +1 -0
- package/dist/src/components/JJ/index.js +10 -1859
- package/dist/src/components/JJ/index.js.map +1 -0
- package/dist/src/components/MCP/Sqlite.d.ts +25 -0
- package/dist/src/components/MCP/Sqlite.d.ts.map +1 -0
- package/dist/src/components/MCP/Sqlite.js +23 -0
- package/dist/src/components/MCP/Sqlite.js.map +1 -0
- package/dist/src/components/MCP/index.d.ts +2 -0
- package/dist/src/components/MCP/index.d.ts.map +1 -0
- package/dist/src/components/MCP/index.js +4 -44
- package/dist/src/components/MCP/index.js.map +1 -0
- package/dist/src/components/Parallel.d.ts +25 -0
- package/dist/src/components/Parallel.d.ts.map +1 -0
- package/dist/src/components/Parallel.js +24 -0
- package/dist/src/components/Parallel.js.map +1 -0
- package/dist/src/components/Persona.d.ts +24 -0
- package/dist/src/components/Persona.d.ts.map +1 -0
- package/dist/src/components/Persona.js +21 -0
- package/dist/src/components/Persona.js.map +1 -0
- package/dist/src/components/Phase.d.ts +49 -0
- package/dist/src/components/Phase.d.ts.map +1 -0
- package/dist/src/components/Phase.js +128 -0
- package/dist/src/components/Phase.js.map +1 -0
- package/dist/src/components/PhaseContext.d.ts +6 -0
- package/dist/src/components/PhaseContext.d.ts.map +1 -0
- package/dist/src/components/PhaseContext.js +6 -0
- package/dist/src/components/PhaseContext.js.map +1 -0
- package/dist/src/components/PhaseRegistry.d.ts +16 -0
- package/dist/src/components/PhaseRegistry.d.ts.map +1 -0
- package/dist/src/components/PhaseRegistry.js +73 -0
- package/dist/src/components/PhaseRegistry.js.map +1 -0
- package/dist/src/components/Ralph/utils.d.ts +14 -0
- package/dist/src/components/Ralph/utils.d.ts.map +1 -0
- package/dist/src/components/Ralph/utils.js +33 -0
- package/dist/src/components/Ralph/utils.js.map +1 -0
- package/dist/src/components/Ralph.d.ts +83 -0
- package/dist/src/components/Ralph.d.ts.map +1 -0
- package/dist/src/components/Ralph.js +82 -0
- package/dist/src/components/Ralph.js.map +1 -0
- package/dist/src/components/Review/Review.d.ts +9 -0
- package/dist/src/components/Review/Review.d.ts.map +1 -0
- package/dist/src/components/Review/Review.js +255 -0
- package/dist/src/components/Review/Review.js.map +1 -0
- package/dist/src/components/Review/index.d.ts +3 -0
- package/dist/src/components/Review/index.d.ts.map +1 -0
- package/dist/src/components/Review/index.js +2 -0
- package/dist/src/components/Review/index.js.map +1 -0
- package/dist/src/components/Review/types.d.ts +49 -0
- package/dist/src/components/Review/types.d.ts.map +1 -0
- package/dist/src/components/Review/types.js +2 -0
- package/dist/src/components/Review/types.js.map +1 -0
- package/dist/src/components/Review.d.ts +3 -0
- package/dist/src/components/Review.d.ts.map +1 -0
- package/dist/src/components/Review.js +2 -0
- package/dist/src/components/Review.js.map +1 -0
- package/dist/src/components/Smithers.d.ts +94 -0
- package/dist/src/components/Smithers.d.ts.map +1 -0
- package/dist/src/components/Smithers.js +240 -0
- package/dist/src/components/Smithers.js.map +1 -0
- package/dist/src/components/SmithersProvider.d.ts +274 -0
- package/dist/src/components/SmithersProvider.d.ts.map +1 -0
- package/dist/src/components/SmithersProvider.js +469 -0
- package/dist/src/components/SmithersProvider.js.map +1 -0
- package/dist/src/components/Step.d.ts +77 -0
- package/dist/src/components/Step.d.ts.map +1 -0
- package/dist/src/components/Step.js +313 -0
- package/dist/src/components/Step.js.map +1 -0
- package/dist/src/components/StepContext.d.ts +6 -0
- package/dist/src/components/StepContext.d.ts.map +1 -0
- package/dist/src/components/StepContext.js +6 -0
- package/dist/src/components/StepContext.js.map +1 -0
- package/dist/src/components/Stop.d.ts +22 -0
- package/dist/src/components/Stop.d.ts.map +1 -0
- package/dist/src/components/Stop.js +25 -0
- package/dist/src/components/Stop.js.map +1 -0
- package/dist/src/components/Subagent.d.ts +25 -0
- package/dist/src/components/Subagent.d.ts.map +1 -0
- package/dist/src/components/Subagent.js +21 -0
- package/dist/src/components/Subagent.js.map +1 -0
- package/dist/src/components/Task.d.ts +22 -0
- package/dist/src/components/Task.d.ts.map +1 -0
- package/dist/src/components/Task.js +19 -0
- package/dist/src/components/Task.js.map +1 -0
- package/dist/src/components/While.d.ts +17 -0
- package/dist/src/components/While.d.ts.map +1 -0
- package/dist/src/components/While.js +62 -0
- package/dist/src/components/While.js.map +1 -0
- package/dist/src/components/Worktree.d.ts +17 -0
- package/dist/src/components/Worktree.d.ts.map +1 -0
- package/dist/src/components/Worktree.js +105 -0
- package/dist/src/components/Worktree.js.map +1 -0
- package/dist/src/components/WorktreeProvider.d.ts +12 -0
- package/dist/src/components/WorktreeProvider.d.ts.map +1 -0
- package/dist/src/components/WorktreeProvider.js +10 -0
- package/dist/src/components/WorktreeProvider.js.map +1 -0
- package/dist/src/components/agents/ClaudeCodeCLI.d.ts +3 -0
- package/dist/src/components/agents/ClaudeCodeCLI.d.ts.map +1 -0
- package/dist/src/components/agents/ClaudeCodeCLI.js +12 -0
- package/dist/src/components/agents/ClaudeCodeCLI.js.map +1 -0
- package/dist/src/components/agents/SmithersCLI.d.ts +78 -0
- package/dist/src/components/agents/SmithersCLI.d.ts.map +1 -0
- package/dist/src/components/agents/SmithersCLI.js +280 -0
- package/dist/src/components/agents/SmithersCLI.js.map +1 -0
- package/dist/src/components/agents/claude-cli/arg-builder.d.ts +19 -0
- package/dist/src/components/agents/claude-cli/arg-builder.d.ts.map +1 -0
- package/dist/src/components/agents/claude-cli/arg-builder.js +84 -0
- package/dist/src/components/agents/claude-cli/arg-builder.js.map +1 -0
- package/dist/src/components/agents/claude-cli/executor.d.ts +23 -0
- package/dist/src/components/agents/claude-cli/executor.d.ts.map +1 -0
- package/dist/src/components/agents/claude-cli/executor.js +301 -0
- package/dist/src/components/agents/claude-cli/executor.js.map +1 -0
- package/dist/src/components/agents/claude-cli/index.d.ts +6 -0
- package/dist/src/components/agents/claude-cli/index.d.ts.map +1 -0
- package/dist/src/components/agents/claude-cli/index.js +11 -0
- package/dist/src/components/agents/claude-cli/index.js.map +1 -0
- package/dist/src/components/agents/claude-cli/message-parser.d.ts +37 -0
- package/dist/src/components/agents/claude-cli/message-parser.d.ts.map +1 -0
- package/dist/src/components/agents/claude-cli/message-parser.js +152 -0
- package/dist/src/components/agents/claude-cli/message-parser.js.map +1 -0
- package/dist/src/components/agents/claude-cli/output-parser.d.ts +18 -0
- package/dist/src/components/agents/claude-cli/output-parser.d.ts.map +1 -0
- package/dist/src/components/agents/claude-cli/output-parser.js +144 -0
- package/dist/src/components/agents/claude-cli/output-parser.js.map +1 -0
- package/dist/src/components/agents/claude-cli/stop-conditions.d.ts +9 -0
- package/dist/src/components/agents/claude-cli/stop-conditions.d.ts.map +1 -0
- package/dist/src/components/agents/claude-cli/stop-conditions.js +79 -0
- package/dist/src/components/agents/claude-cli/stop-conditions.js.map +1 -0
- package/dist/src/components/agents/types/agents.d.ts +197 -0
- package/dist/src/components/agents/types/agents.d.ts.map +1 -0
- package/dist/src/components/agents/types/agents.js +3 -0
- package/dist/src/components/agents/types/agents.js.map +1 -0
- package/dist/src/components/agents/types/execution.d.ts +128 -0
- package/dist/src/components/agents/types/execution.d.ts.map +1 -0
- package/dist/src/components/agents/types/execution.js +3 -0
- package/dist/src/components/agents/types/execution.js.map +1 -0
- package/dist/src/components/agents/types/index.d.ts +5 -0
- package/dist/src/components/agents/types/index.d.ts.map +1 -0
- package/dist/src/components/agents/types/index.js +4 -0
- package/dist/src/components/agents/types/index.js.map +1 -0
- package/dist/src/components/agents/types/schema.d.ts +11 -0
- package/dist/src/components/agents/types/schema.d.ts.map +1 -0
- package/dist/src/components/agents/types/schema.js +3 -0
- package/dist/src/components/agents/types/schema.js.map +1 -0
- package/dist/src/components/agents/types/tools.d.ts +5 -0
- package/dist/src/components/agents/types/tools.d.ts.map +1 -0
- package/dist/src/components/agents/types/tools.js +3 -0
- package/dist/src/components/agents/types/tools.js.map +1 -0
- package/dist/src/components/agents/types.d.ts +2 -0
- package/dist/src/components/agents/types.d.ts.map +1 -0
- package/dist/src/components/agents/types.js +4 -0
- package/dist/src/components/agents/types.js.map +1 -0
- package/dist/src/components/index.d.ts +34 -0
- package/dist/src/components/index.d.ts.map +1 -0
- package/dist/src/components/index.js +49 -5036
- package/dist/src/components/index.js.map +1 -0
- package/dist/src/core/index.d.ts +7 -0
- package/dist/src/core/index.d.ts.map +1 -0
- package/dist/src/core/index.js +6 -179
- package/dist/src/core/index.js.map +1 -0
- package/dist/src/db/agents.d.ts +28 -0
- package/dist/src/db/agents.d.ts.map +1 -0
- package/dist/src/db/agents.js +134 -0
- package/dist/src/db/agents.js.map +1 -0
- package/dist/src/db/artifacts.d.ts +12 -0
- package/dist/src/db/artifacts.d.ts.map +1 -0
- package/dist/src/db/artifacts.js +46 -0
- package/dist/src/db/artifacts.js.map +1 -0
- package/dist/src/db/build-state.d.ts +28 -0
- package/dist/src/db/build-state.d.ts.map +1 -0
- package/dist/src/db/build-state.js +108 -0
- package/dist/src/db/build-state.js.map +1 -0
- package/dist/src/db/execution.d.ts +19 -0
- package/dist/src/db/execution.d.ts.map +1 -0
- package/dist/src/db/execution.js +84 -0
- package/dist/src/db/execution.js.map +1 -0
- package/dist/src/db/human.d.ts +91 -0
- package/dist/src/db/human.d.ts.map +1 -0
- package/dist/src/db/human.js +89 -0
- package/dist/src/db/human.js.map +1 -0
- package/dist/src/db/index.d.ts +112 -0
- package/dist/src/db/index.d.ts.map +1 -0
- package/dist/src/db/index.js +175 -2158
- package/dist/src/db/index.js.map +1 -0
- package/dist/src/db/memories.d.ts +24 -0
- package/dist/src/db/memories.d.ts.map +1 -0
- package/dist/src/db/memories.js +105 -0
- package/dist/src/db/memories.js.map +1 -0
- package/dist/src/db/phases.d.ts +17 -0
- package/dist/src/db/phases.d.ts.map +1 -0
- package/dist/src/db/phases.js +50 -0
- package/dist/src/db/phases.js.map +1 -0
- package/dist/src/db/query.d.ts +8 -0
- package/dist/src/db/query.d.ts.map +1 -0
- package/dist/src/db/query.js +8 -0
- package/dist/src/db/query.js.map +1 -0
- package/dist/src/db/render-frames.d.ts +49 -0
- package/dist/src/db/render-frames.d.ts.map +1 -0
- package/dist/src/db/render-frames.js +71 -0
- package/dist/src/db/render-frames.js.map +1 -0
- package/dist/src/db/state.d.ts +20 -0
- package/dist/src/db/state.d.ts.map +1 -0
- package/dist/src/db/state.js +79 -0
- package/dist/src/db/state.js.map +1 -0
- package/dist/src/db/steps.d.ts +23 -0
- package/dist/src/db/steps.d.ts.map +1 -0
- package/dist/src/db/steps.js +57 -0
- package/dist/src/db/steps.js.map +1 -0
- package/dist/src/db/tasks.d.ts +56 -0
- package/dist/src/db/tasks.d.ts.map +1 -0
- package/dist/src/db/tasks.js +82 -0
- package/dist/src/db/tasks.js.map +1 -0
- package/dist/src/db/tools.d.ts +15 -0
- package/dist/src/db/tools.d.ts.map +1 -0
- package/dist/src/db/tools.js +60 -0
- package/dist/src/db/tools.js.map +1 -0
- package/dist/src/db/types.d.ts +236 -0
- package/dist/src/db/types.d.ts.map +1 -0
- package/dist/src/db/types.js +3 -0
- package/dist/src/db/types.js.map +1 -0
- package/dist/src/db/utils.d.ts +4 -0
- package/dist/src/db/utils.d.ts.map +1 -0
- package/dist/src/db/utils.js +17 -0
- package/dist/src/db/utils.js.map +1 -0
- package/dist/src/db/vcs-queue.d.ts +21 -0
- package/dist/src/db/vcs-queue.d.ts.map +1 -0
- package/dist/src/db/vcs-queue.js +27 -0
- package/dist/src/db/vcs-queue.js.map +1 -0
- package/dist/src/db/vcs.d.ts +61 -0
- package/dist/src/db/vcs.d.ts.map +1 -0
- package/dist/src/db/vcs.js +230 -0
- package/dist/src/db/vcs.js.map +1 -0
- package/dist/src/debug/index.d.ts +46 -0
- package/dist/src/debug/index.d.ts.map +1 -0
- package/dist/src/debug/index.js +181 -0
- package/dist/src/debug/index.js.map +1 -0
- package/dist/src/hooks/ai-sdk.d.ts +10 -0
- package/dist/src/hooks/ai-sdk.d.ts.map +1 -0
- package/dist/src/hooks/ai-sdk.js +32 -27
- package/dist/src/hooks/ai-sdk.js.map +1 -0
- package/dist/src/hooks/index.d.ts +7 -0
- package/dist/src/hooks/index.d.ts.map +1 -0
- package/dist/src/hooks/index.js +8 -1834
- package/dist/src/hooks/index.js.map +1 -0
- package/dist/src/hooks/useCaptureRenderFrame.d.ts +7 -0
- package/dist/src/hooks/useCaptureRenderFrame.d.ts.map +1 -0
- package/dist/src/hooks/useCaptureRenderFrame.js +24 -0
- package/dist/src/hooks/useCaptureRenderFrame.js.map +1 -0
- package/dist/src/hooks/useCommitWithRetry.d.ts +12 -0
- package/dist/src/hooks/useCommitWithRetry.d.ts.map +1 -0
- package/dist/src/hooks/useCommitWithRetry.js +40 -0
- package/dist/src/hooks/useCommitWithRetry.js.map +1 -0
- package/dist/src/hooks/useHuman.d.ts +37 -0
- package/dist/src/hooks/useHuman.d.ts.map +1 -0
- package/dist/src/hooks/useHuman.js +75 -0
- package/dist/src/hooks/useHuman.js.map +1 -0
- package/dist/src/hooks/useHumanInteractive.d.ts +36 -0
- package/dist/src/hooks/useHumanInteractive.d.ts.map +1 -0
- package/dist/src/hooks/useHumanInteractive.js +193 -0
- package/dist/src/hooks/useHumanInteractive.js.map +1 -0
- package/dist/src/hooks/useRalphCount.d.ts +8 -0
- package/dist/src/hooks/useRalphCount.d.ts.map +1 -0
- package/dist/src/hooks/useRalphCount.js +16 -0
- package/dist/src/hooks/useRalphCount.js.map +1 -0
- package/dist/src/index.d.ts +9 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +10 -11848
- package/dist/src/index.js.map +1 -0
- package/dist/src/jsx-runtime.d.ts +9 -0
- package/dist/src/jsx-runtime.d.ts.map +1 -0
- package/dist/src/jsx-runtime.js +8 -0
- package/dist/src/jsx-runtime.js.map +1 -0
- package/dist/src/middleware/caching.d.ts +23 -0
- package/dist/src/middleware/caching.d.ts.map +1 -0
- package/dist/src/middleware/caching.js +73 -0
- package/dist/src/middleware/caching.js.map +1 -0
- package/dist/src/middleware/compose.d.ts +11 -0
- package/dist/src/middleware/compose.d.ts.map +1 -0
- package/dist/src/middleware/compose.js +110 -0
- package/dist/src/middleware/compose.js.map +1 -0
- package/dist/src/middleware/cost-tracking.d.ts +14 -0
- package/dist/src/middleware/cost-tracking.d.ts.map +1 -0
- package/dist/src/middleware/cost-tracking.js +25 -0
- package/dist/src/middleware/cost-tracking.js.map +1 -0
- package/dist/src/middleware/extract-json.d.ts +6 -0
- package/dist/src/middleware/extract-json.d.ts.map +1 -0
- package/dist/src/middleware/extract-json.js +34 -0
- package/dist/src/middleware/extract-json.js.map +1 -0
- package/dist/src/middleware/extract-reasoning.d.ts +9 -0
- package/dist/src/middleware/extract-reasoning.d.ts.map +1 -0
- package/dist/src/middleware/extract-reasoning.js +27 -0
- package/dist/src/middleware/extract-reasoning.js.map +1 -0
- package/dist/src/middleware/index.d.ts +23 -0
- package/dist/src/middleware/index.d.ts.map +1 -0
- package/dist/src/middleware/index.js +12 -698
- package/dist/src/middleware/index.js.map +1 -0
- package/dist/src/middleware/logging.d.ts +19 -0
- package/dist/src/middleware/logging.d.ts.map +1 -0
- package/dist/src/middleware/logging.js +56 -0
- package/dist/src/middleware/logging.js.map +1 -0
- package/dist/src/middleware/rate-limiting.d.ts +7 -0
- package/dist/src/middleware/rate-limiting.d.ts.map +1 -0
- package/dist/src/middleware/rate-limiting.js +59 -0
- package/dist/src/middleware/rate-limiting.js.map +1 -0
- package/dist/src/middleware/redact-secrets.d.ts +7 -0
- package/dist/src/middleware/redact-secrets.d.ts.map +1 -0
- package/dist/src/middleware/redact-secrets.js +29 -0
- package/dist/src/middleware/redact-secrets.js.map +1 -0
- package/dist/src/middleware/retry.d.ts +11 -0
- package/dist/src/middleware/retry.d.ts.map +1 -0
- package/dist/src/middleware/retry.js +35 -0
- package/dist/src/middleware/retry.js.map +1 -0
- package/dist/src/middleware/timeout.d.ts +8 -0
- package/dist/src/middleware/timeout.d.ts.map +1 -0
- package/dist/src/middleware/timeout.js +26 -0
- package/dist/src/middleware/timeout.js.map +1 -0
- package/dist/src/middleware/types.d.ts +32 -0
- package/dist/src/middleware/types.d.ts.map +1 -0
- package/dist/src/middleware/types.js +2 -0
- package/dist/src/middleware/types.js.map +1 -0
- package/dist/src/middleware/validation.d.ts +11 -0
- package/dist/src/middleware/validation.d.ts.map +1 -0
- package/dist/src/middleware/validation.js +25 -0
- package/dist/src/middleware/validation.js.map +1 -0
- package/dist/src/monitor/haiku-summarizer.d.ts +10 -0
- package/dist/src/monitor/haiku-summarizer.d.ts.map +1 -0
- package/dist/src/monitor/haiku-summarizer.js +59 -0
- package/dist/src/monitor/haiku-summarizer.js.map +1 -0
- package/dist/src/monitor/index.d.ts +8 -0
- package/dist/src/monitor/index.d.ts.map +1 -0
- package/dist/src/monitor/index.js +6 -4388
- package/dist/src/monitor/index.js.map +1 -0
- package/dist/src/monitor/log-writer.d.ts +51 -0
- package/dist/src/monitor/log-writer.d.ts.map +1 -0
- package/dist/src/monitor/log-writer.js +183 -0
- package/dist/src/monitor/log-writer.js.map +1 -0
- package/dist/src/monitor/output-parser.d.ts +22 -0
- package/dist/src/monitor/output-parser.d.ts.map +1 -0
- package/dist/src/monitor/output-parser.js +114 -0
- package/dist/src/monitor/output-parser.js.map +1 -0
- package/dist/src/monitor/stream-formatter.d.ts +26 -0
- package/dist/src/monitor/stream-formatter.d.ts.map +1 -0
- package/dist/src/monitor/stream-formatter.js +137 -0
- package/dist/src/monitor/stream-formatter.js.map +1 -0
- package/dist/src/rate-limits/index.d.ts +8 -0
- package/dist/src/rate-limits/index.d.ts.map +1 -0
- package/dist/src/rate-limits/index.js +7 -4309
- package/dist/src/rate-limits/index.js.map +1 -0
- package/dist/src/rate-limits/middleware.d.ts +10 -0
- package/dist/src/rate-limits/middleware.d.ts.map +1 -0
- package/dist/src/rate-limits/middleware.js +18 -0
- package/dist/src/rate-limits/middleware.js.map +1 -0
- package/dist/src/rate-limits/monitor.d.ts +18 -0
- package/dist/src/rate-limits/monitor.d.ts.map +1 -0
- package/dist/src/rate-limits/monitor.js +101 -0
- package/dist/src/rate-limits/monitor.js.map +1 -0
- package/dist/src/rate-limits/providers/anthropic.d.ts +6 -0
- package/dist/src/rate-limits/providers/anthropic.d.ts.map +1 -0
- package/dist/src/rate-limits/providers/anthropic.js +58 -0
- package/dist/src/rate-limits/providers/anthropic.js.map +1 -0
- package/dist/src/rate-limits/providers/base.d.ts +2 -0
- package/dist/src/rate-limits/providers/base.d.ts.map +1 -0
- package/dist/src/rate-limits/providers/base.js +2 -0
- package/dist/src/rate-limits/providers/base.js.map +1 -0
- package/dist/src/rate-limits/providers/openai.d.ts +7 -0
- package/dist/src/rate-limits/providers/openai.d.ts.map +1 -0
- package/dist/src/rate-limits/providers/openai.js +85 -0
- package/dist/src/rate-limits/providers/openai.js.map +1 -0
- package/dist/src/rate-limits/store.d.ts +16 -0
- package/dist/src/rate-limits/store.d.ts.map +1 -0
- package/dist/src/rate-limits/store.js +65 -0
- package/dist/src/rate-limits/store.js.map +1 -0
- package/dist/src/rate-limits/throttle.d.ts +10 -0
- package/dist/src/rate-limits/throttle.d.ts.map +1 -0
- package/dist/src/rate-limits/throttle.js +52 -0
- package/dist/src/rate-limits/throttle.js.map +1 -0
- package/dist/src/rate-limits/types.d.ts +76 -0
- package/dist/src/rate-limits/types.d.ts.map +1 -0
- package/dist/src/rate-limits/types.js +2 -0
- package/dist/src/rate-limits/types.js.map +1 -0
- package/dist/src/reactive-sqlite/database.d.ts +106 -0
- package/dist/src/reactive-sqlite/database.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/database.js +278 -0
- package/dist/src/reactive-sqlite/database.js.map +1 -0
- package/dist/src/reactive-sqlite/hooks/context.d.ts +59 -0
- package/dist/src/reactive-sqlite/hooks/context.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/hooks/context.js +60 -0
- package/dist/src/reactive-sqlite/hooks/context.js.map +1 -0
- package/dist/src/reactive-sqlite/hooks/index.d.ts +12 -0
- package/dist/src/reactive-sqlite/hooks/index.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/hooks/index.js +12 -0
- package/dist/src/reactive-sqlite/hooks/index.js.map +1 -0
- package/dist/src/reactive-sqlite/hooks/shared.d.ts +32 -0
- package/dist/src/reactive-sqlite/hooks/shared.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/hooks/shared.js +62 -0
- package/dist/src/reactive-sqlite/hooks/shared.js.map +1 -0
- package/dist/src/reactive-sqlite/hooks/useMutation.d.ts +33 -0
- package/dist/src/reactive-sqlite/hooks/useMutation.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/hooks/useMutation.js +113 -0
- package/dist/src/reactive-sqlite/hooks/useMutation.js.map +1 -0
- package/dist/src/reactive-sqlite/hooks/useQuery.d.ts +34 -0
- package/dist/src/reactive-sqlite/hooks/useQuery.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/hooks/useQuery.js +140 -0
- package/dist/src/reactive-sqlite/hooks/useQuery.js.map +1 -0
- package/dist/src/reactive-sqlite/hooks/useQueryOne.d.ts +37 -0
- package/dist/src/reactive-sqlite/hooks/useQueryOne.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/hooks/useQueryOne.js +87 -0
- package/dist/src/reactive-sqlite/hooks/useQueryOne.js.map +1 -0
- package/dist/src/reactive-sqlite/hooks/useQueryValue.d.ts +31 -0
- package/dist/src/reactive-sqlite/hooks/useQueryValue.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/hooks/useQueryValue.js +83 -0
- package/dist/src/reactive-sqlite/hooks/useQueryValue.js.map +1 -0
- package/dist/src/reactive-sqlite/hooks.d.ts +7 -0
- package/dist/src/reactive-sqlite/hooks.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/hooks.js +7 -0
- package/dist/src/reactive-sqlite/hooks.js.map +1 -0
- package/dist/src/reactive-sqlite/index.d.ts +38 -0
- package/dist/src/reactive-sqlite/index.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/index.js +40 -765
- package/dist/src/reactive-sqlite/index.js.map +1 -0
- package/dist/src/reactive-sqlite/parser.d.ts +38 -0
- package/dist/src/reactive-sqlite/parser.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/parser.js +222 -0
- package/dist/src/reactive-sqlite/parser.js.map +1 -0
- package/dist/src/reactive-sqlite/types.d.ts +99 -0
- package/dist/src/reactive-sqlite/types.d.ts.map +1 -0
- package/dist/src/reactive-sqlite/types.js +5 -0
- package/dist/src/reactive-sqlite/types.js.map +1 -0
- package/dist/src/reconciler/hooks.d.ts +101 -0
- package/dist/src/reconciler/hooks.d.ts.map +1 -0
- package/dist/src/reconciler/hooks.js +178 -0
- package/dist/src/reconciler/hooks.js.map +1 -0
- package/dist/src/reconciler/host-config.d.ts +10 -0
- package/dist/src/reconciler/host-config.d.ts.map +1 -0
- package/dist/src/reconciler/host-config.js +242 -0
- package/dist/src/reconciler/host-config.js.map +1 -0
- package/dist/src/reconciler/index.d.ts +15 -0
- package/dist/src/reconciler/index.d.ts.map +1 -0
- package/dist/src/reconciler/index.js +19 -1976
- package/dist/src/reconciler/index.js.map +1 -0
- package/dist/src/reconciler/jsx-runtime.d.ts +18 -0
- package/dist/src/reconciler/jsx-runtime.d.ts.map +1 -0
- package/dist/src/reconciler/jsx-runtime.js +26 -58
- package/dist/src/reconciler/jsx-runtime.js.map +1 -0
- package/dist/src/reconciler/methods.d.ts +20 -0
- package/dist/src/reconciler/methods.d.ts.map +1 -0
- package/dist/src/reconciler/methods.js +98 -0
- package/dist/src/reconciler/methods.js.map +1 -0
- package/dist/src/reconciler/root.d.ts +37 -0
- package/dist/src/reconciler/root.d.ts.map +1 -0
- package/dist/src/reconciler/root.js +134 -0
- package/dist/src/reconciler/root.js.map +1 -0
- package/dist/src/reconciler/serialize.d.ts +15 -0
- package/dist/src/reconciler/serialize.d.ts.map +1 -0
- package/dist/src/reconciler/serialize.js +226 -0
- package/dist/src/reconciler/serialize.js.map +1 -0
- package/dist/src/reconciler/types.d.ts +57 -0
- package/dist/src/reconciler/types.d.ts.map +1 -0
- package/dist/src/reconciler/types.js +11 -0
- package/dist/src/reconciler/types.js.map +1 -0
- package/dist/src/streaming/claude-parser.d.ts +12 -0
- package/dist/src/streaming/claude-parser.d.ts.map +1 -0
- package/dist/src/streaming/claude-parser.js +197 -0
- package/dist/src/streaming/claude-parser.js.map +1 -0
- package/dist/src/streaming/types.d.ts +12 -0
- package/dist/src/streaming/types.d.ts.map +1 -0
- package/dist/src/streaming/types.js +3 -0
- package/dist/src/streaming/types.js.map +1 -0
- package/dist/src/streaming/v3-compat.d.ts +96 -0
- package/dist/src/streaming/v3-compat.d.ts.map +1 -0
- package/dist/src/streaming/v3-compat.js +3 -0
- package/dist/src/streaming/v3-compat.js.map +1 -0
- package/dist/src/tools/ReportTool.d.ts +46 -0
- package/dist/src/tools/ReportTool.d.ts.map +1 -0
- package/dist/src/tools/ReportTool.js +128 -0
- package/dist/src/tools/ReportTool.js.map +1 -0
- package/dist/src/tools/createSmithersTool.d.ts +34 -0
- package/dist/src/tools/createSmithersTool.d.ts.map +1 -0
- package/dist/src/tools/createSmithersTool.js +63 -0
- package/dist/src/tools/createSmithersTool.js.map +1 -0
- package/dist/src/tools/index.d.ts +8 -0
- package/dist/src/tools/index.d.ts.map +1 -0
- package/dist/src/tools/index.js +7 -13875
- package/dist/src/tools/index.js.map +1 -0
- package/dist/src/tools/registry.d.ts +139 -0
- package/dist/src/tools/registry.d.ts.map +1 -0
- package/dist/src/tools/registry.js +155 -0
- package/dist/src/tools/registry.js.map +1 -0
- package/dist/src/tools/smithers-mcp-server.d.ts +2 -0
- package/dist/src/tools/smithers-mcp-server.d.ts.map +1 -0
- package/dist/src/tools/smithers-mcp-server.js +24 -0
- package/dist/src/tools/smithers-mcp-server.js.map +1 -0
- package/dist/src/tools/tool-to-mcp.d.ts +13 -0
- package/dist/src/tools/tool-to-mcp.d.ts.map +1 -0
- package/dist/src/tools/tool-to-mcp.js +24 -0
- package/dist/src/tools/tool-to-mcp.js.map +1 -0
- package/dist/src/tools/types.d.ts +44 -0
- package/dist/src/tools/types.d.ts.map +1 -0
- package/dist/src/tools/types.js +2 -0
- package/dist/src/tools/types.js.map +1 -0
- package/dist/src/transport/smithers-chat-transport.d.ts +55 -0
- package/dist/src/transport/smithers-chat-transport.d.ts.map +1 -0
- package/dist/src/transport/smithers-chat-transport.js +390 -0
- package/dist/src/transport/smithers-chat-transport.js.map +1 -0
- package/dist/src/transport/types.d.ts +49 -0
- package/dist/src/transport/types.d.ts.map +1 -0
- package/dist/src/transport/types.js +2 -0
- package/dist/src/transport/types.js.map +1 -0
- package/dist/src/tui/App.d.ts +12 -0
- package/dist/src/tui/App.d.ts.map +1 -0
- package/dist/src/tui/App.js +94 -0
- package/dist/src/tui/App.js.map +1 -0
- package/dist/src/tui/components/index.d.ts +4 -0
- package/dist/src/tui/components/index.d.ts.map +1 -0
- package/dist/src/tui/components/index.js +5 -0
- package/dist/src/tui/components/index.js.map +1 -0
- package/dist/src/tui/components/layout/Header.d.ts +6 -0
- package/dist/src/tui/components/layout/Header.d.ts.map +1 -0
- package/dist/src/tui/components/layout/Header.js +20 -0
- package/dist/src/tui/components/layout/Header.js.map +1 -0
- package/dist/src/tui/components/layout/StatusBar.d.ts +7 -0
- package/dist/src/tui/components/layout/StatusBar.d.ts.map +1 -0
- package/dist/src/tui/components/layout/StatusBar.js +15 -0
- package/dist/src/tui/components/layout/StatusBar.js.map +1 -0
- package/dist/src/tui/components/layout/TabBar.d.ts +8 -0
- package/dist/src/tui/components/layout/TabBar.d.ts.map +1 -0
- package/dist/src/tui/components/layout/TabBar.js +26 -0
- package/dist/src/tui/components/layout/TabBar.js.map +1 -0
- package/dist/src/tui/components/layout/index.d.ts +4 -0
- package/dist/src/tui/components/layout/index.d.ts.map +1 -0
- package/dist/src/tui/components/layout/index.js +5 -0
- package/dist/src/tui/components/layout/index.js.map +1 -0
- package/dist/src/tui/components/shared/ScrollableList.d.ts +11 -0
- package/dist/src/tui/components/shared/ScrollableList.d.ts.map +1 -0
- package/dist/src/tui/components/shared/ScrollableList.js +62 -0
- package/dist/src/tui/components/shared/ScrollableList.js.map +1 -0
- package/dist/src/tui/components/shared/XMLViewer.d.ts +6 -0
- package/dist/src/tui/components/shared/XMLViewer.d.ts.map +1 -0
- package/dist/src/tui/components/shared/XMLViewer.js +26 -0
- package/dist/src/tui/components/shared/XMLViewer.js.map +1 -0
- package/dist/src/tui/components/shared/index.d.ts +3 -0
- package/dist/src/tui/components/shared/index.d.ts.map +1 -0
- package/dist/src/tui/components/shared/index.js +4 -0
- package/dist/src/tui/components/shared/index.js.map +1 -0
- package/dist/src/tui/components/views/ChatInterface.d.ts +7 -0
- package/dist/src/tui/components/views/ChatInterface.d.ts.map +1 -0
- package/dist/src/tui/components/views/ChatInterface.js +46 -0
- package/dist/src/tui/components/views/ChatInterface.js.map +1 -0
- package/dist/src/tui/components/views/DatabaseExplorer.d.ts +7 -0
- package/dist/src/tui/components/views/DatabaseExplorer.d.ts.map +1 -0
- package/dist/src/tui/components/views/DatabaseExplorer.js +90 -0
- package/dist/src/tui/components/views/DatabaseExplorer.js.map +1 -0
- package/dist/src/tui/components/views/ExecutionTimeline.d.ts +7 -0
- package/dist/src/tui/components/views/ExecutionTimeline.d.ts.map +1 -0
- package/dist/src/tui/components/views/ExecutionTimeline.js +84 -0
- package/dist/src/tui/components/views/ExecutionTimeline.js.map +1 -0
- package/dist/src/tui/components/views/HumanInteractionHandler.d.ts +7 -0
- package/dist/src/tui/components/views/HumanInteractionHandler.d.ts.map +1 -0
- package/dist/src/tui/components/views/HumanInteractionHandler.js +80 -0
- package/dist/src/tui/components/views/HumanInteractionHandler.js.map +1 -0
- package/dist/src/tui/components/views/RenderFrameInspector.d.ts +7 -0
- package/dist/src/tui/components/views/RenderFrameInspector.d.ts.map +1 -0
- package/dist/src/tui/components/views/RenderFrameInspector.js +37 -0
- package/dist/src/tui/components/views/RenderFrameInspector.js.map +1 -0
- package/dist/src/tui/components/views/ReportViewer.d.ts +7 -0
- package/dist/src/tui/components/views/ReportViewer.d.ts.map +1 -0
- package/dist/src/tui/components/views/ReportViewer.js +68 -0
- package/dist/src/tui/components/views/ReportViewer.js.map +1 -0
- package/dist/src/tui/components/views/index.d.ts +7 -0
- package/dist/src/tui/components/views/index.d.ts.map +1 -0
- package/dist/src/tui/components/views/index.js +8 -0
- package/dist/src/tui/components/views/index.js.map +1 -0
- package/dist/src/tui/hooks/index.d.ts +8 -0
- package/dist/src/tui/hooks/index.d.ts.map +1 -0
- package/dist/src/tui/hooks/index.js +9 -0
- package/dist/src/tui/hooks/index.js.map +1 -0
- package/dist/src/tui/hooks/useClaudeChat.d.ts +12 -0
- package/dist/src/tui/hooks/useClaudeChat.d.ts.map +1 -0
- package/dist/src/tui/hooks/useClaudeChat.js +61 -0
- package/dist/src/tui/hooks/useClaudeChat.js.map +1 -0
- package/dist/src/tui/hooks/useHumanRequests.d.ts +13 -0
- package/dist/src/tui/hooks/useHumanRequests.d.ts.map +1 -0
- package/dist/src/tui/hooks/useHumanRequests.js +67 -0
- package/dist/src/tui/hooks/useHumanRequests.js.map +1 -0
- package/dist/src/tui/hooks/usePollEvents.d.ts +11 -0
- package/dist/src/tui/hooks/usePollEvents.d.ts.map +1 -0
- package/dist/src/tui/hooks/usePollEvents.js +56 -0
- package/dist/src/tui/hooks/usePollEvents.js.map +1 -0
- package/dist/src/tui/hooks/usePollTableData.d.ts +7 -0
- package/dist/src/tui/hooks/usePollTableData.d.ts.map +1 -0
- package/dist/src/tui/hooks/usePollTableData.js +42 -0
- package/dist/src/tui/hooks/usePollTableData.js.map +1 -0
- package/dist/src/tui/hooks/useRenderFrames.d.ts +15 -0
- package/dist/src/tui/hooks/useRenderFrames.d.ts.map +1 -0
- package/dist/src/tui/hooks/useRenderFrames.js +67 -0
- package/dist/src/tui/hooks/useRenderFrames.js.map +1 -0
- package/dist/src/tui/hooks/useReportGenerator.d.ts +10 -0
- package/dist/src/tui/hooks/useReportGenerator.d.ts.map +1 -0
- package/dist/src/tui/hooks/useReportGenerator.js +58 -0
- package/dist/src/tui/hooks/useReportGenerator.js.map +1 -0
- package/dist/src/tui/hooks/useSmithersConnection.d.ts +21 -0
- package/dist/src/tui/hooks/useSmithersConnection.d.ts.map +1 -0
- package/dist/src/tui/hooks/useSmithersConnection.js +79 -0
- package/dist/src/tui/hooks/useSmithersConnection.js.map +1 -0
- package/dist/src/tui/index.d.ts +5 -0
- package/dist/src/tui/index.d.ts.map +1 -0
- package/dist/src/tui/index.js +18 -0
- package/dist/src/tui/index.js.map +1 -0
- package/dist/src/tui/services/claude-assistant.d.ts +12 -0
- package/dist/src/tui/services/claude-assistant.d.ts.map +1 -0
- package/dist/src/tui/services/claude-assistant.js +75 -0
- package/dist/src/tui/services/claude-assistant.js.map +1 -0
- package/dist/src/tui/services/index.d.ts +3 -0
- package/dist/src/tui/services/index.d.ts.map +1 -0
- package/dist/src/tui/services/index.js +4 -0
- package/dist/src/tui/services/index.js.map +1 -0
- package/dist/src/tui/services/report-generator.d.ts +13 -0
- package/dist/src/tui/services/report-generator.d.ts.map +1 -0
- package/dist/src/tui/services/report-generator.js +139 -0
- package/dist/src/tui/services/report-generator.js.map +1 -0
- package/dist/src/tui/state.d.ts +4 -0
- package/dist/src/tui/state.d.ts.map +1 -0
- package/dist/src/tui/state.js +38 -0
- package/dist/src/tui/state.js.map +1 -0
- package/dist/src/tui/utils/colors.d.ts +19 -0
- package/dist/src/tui/utils/colors.d.ts.map +1 -0
- package/dist/src/tui/utils/colors.js +34 -0
- package/dist/src/tui/utils/colors.js.map +1 -0
- package/dist/src/tui/utils/format.d.ts +6 -0
- package/dist/src/tui/utils/format.d.ts.map +1 -0
- package/dist/src/tui/utils/format.js +38 -0
- package/dist/src/tui/utils/format.js.map +1 -0
- package/dist/src/tui/utils/index.d.ts +3 -0
- package/dist/src/tui/utils/index.d.ts.map +1 -0
- package/dist/src/tui/utils/index.js +4 -0
- package/dist/src/tui/utils/index.js.map +1 -0
- package/dist/src/utils/capture.d.ts +63 -0
- package/dist/src/utils/capture.d.ts.map +1 -0
- package/dist/src/utils/capture.js +376 -0
- package/dist/src/utils/capture.js.map +1 -0
- package/dist/src/utils/extract-text.d.ts +3 -0
- package/dist/src/utils/extract-text.d.ts.map +1 -0
- package/dist/src/utils/extract-text.js +19 -0
- package/dist/src/utils/extract-text.js.map +1 -0
- package/dist/src/utils/mcp-config.d.ts +24 -0
- package/dist/src/utils/mcp-config.d.ts.map +1 -0
- package/dist/src/utils/mcp-config.js +84 -0
- package/dist/src/utils/mcp-config.js.map +1 -0
- package/dist/src/utils/scope.d.ts +4 -0
- package/dist/src/utils/scope.d.ts.map +1 -0
- package/dist/src/utils/scope.js +21 -0
- package/dist/src/utils/scope.js.map +1 -0
- package/dist/src/utils/structured-output/index.d.ts +5 -0
- package/dist/src/utils/structured-output/index.d.ts.map +1 -0
- package/dist/src/utils/structured-output/index.js +9 -0
- package/dist/src/utils/structured-output/index.js.map +1 -0
- package/dist/src/utils/structured-output/prompt-generator.d.ts +10 -0
- package/dist/src/utils/structured-output/prompt-generator.d.ts.map +1 -0
- package/dist/src/utils/structured-output/prompt-generator.js +39 -0
- package/dist/src/utils/structured-output/prompt-generator.js.map +1 -0
- package/dist/src/utils/structured-output/types.d.ts +16 -0
- package/dist/src/utils/structured-output/types.d.ts.map +1 -0
- package/dist/src/utils/structured-output/types.js +4 -0
- package/dist/src/utils/structured-output/types.js.map +1 -0
- package/dist/src/utils/structured-output/validator.d.ts +11 -0
- package/dist/src/utils/structured-output/validator.d.ts.map +1 -0
- package/dist/src/utils/structured-output/validator.js +69 -0
- package/dist/src/utils/structured-output/validator.js.map +1 -0
- package/dist/src/utils/structured-output/zod-converter.d.ts +12 -0
- package/dist/src/utils/structured-output/zod-converter.d.ts.map +1 -0
- package/dist/src/utils/structured-output/zod-converter.js +108 -0
- package/dist/src/utils/structured-output/zod-converter.js.map +1 -0
- package/dist/src/utils/structured-output.d.ts +2 -0
- package/dist/src/utils/structured-output.d.ts.map +1 -0
- package/dist/src/utils/structured-output.js +10 -0
- package/dist/src/utils/structured-output.js.map +1 -0
- package/dist/src/utils/vcs/git.d.ts +73 -0
- package/dist/src/utils/vcs/git.d.ts.map +1 -0
- package/dist/src/utils/vcs/git.js +260 -0
- package/dist/src/utils/vcs/git.js.map +1 -0
- package/dist/src/utils/vcs/index.d.ts +5 -0
- package/dist/src/utils/vcs/index.d.ts.map +1 -0
- package/dist/src/utils/vcs/index.js +9 -0
- package/dist/src/utils/vcs/index.js.map +1 -0
- package/dist/src/utils/vcs/jj.d.ts +62 -0
- package/dist/src/utils/vcs/jj.d.ts.map +1 -0
- package/dist/src/utils/vcs/jj.js +151 -0
- package/dist/src/utils/vcs/jj.js.map +1 -0
- package/dist/src/utils/vcs/parsers.d.ts +14 -0
- package/dist/src/utils/vcs/parsers.d.ts.map +1 -0
- package/dist/src/utils/vcs/parsers.js +73 -0
- package/dist/src/utils/vcs/parsers.js.map +1 -0
- package/dist/src/utils/vcs/types.d.ts +62 -0
- package/dist/src/utils/vcs/types.d.ts.map +1 -0
- package/dist/src/utils/vcs/types.js +3 -0
- package/dist/src/utils/vcs/types.js.map +1 -0
- package/dist/src/utils/vcs.d.ts +2 -0
- package/dist/src/utils/vcs.d.ts.map +1 -0
- package/dist/src/utils/vcs.js +4 -0
- package/dist/src/utils/vcs.js.map +1 -0
- package/package.json +2 -2
package/dist/bin/cli.js
CHANGED
|
@@ -60651,7 +60651,7 @@ function createRoot(renderer) {
|
|
|
60651
60651
|
}
|
|
60652
60652
|
|
|
60653
60653
|
// src/tui/App.tsx
|
|
60654
|
-
var
|
|
60654
|
+
var import_react31 = __toESM(require_react(), 1);
|
|
60655
60655
|
|
|
60656
60656
|
// src/tui/utils/colors.ts
|
|
60657
60657
|
var colors = {
|
|
@@ -60816,19 +60816,53 @@ function StatusBar({ isConnected, error: error2, dbPath }) {
|
|
|
60816
60816
|
}, undefined, true, undefined, this);
|
|
60817
60817
|
}
|
|
60818
60818
|
|
|
60819
|
-
// src/tui/components/views/ExecutionTimeline.tsx
|
|
60820
|
-
var import_react17 = __toESM(require_react(), 1);
|
|
60821
|
-
|
|
60822
60819
|
// src/tui/hooks/usePollEvents.ts
|
|
60820
|
+
init_hooks();
|
|
60821
|
+
|
|
60822
|
+
// src/tui/state.ts
|
|
60823
|
+
init_reactive_sqlite();
|
|
60824
|
+
init_reactive_sqlite();
|
|
60823
60825
|
var import_react16 = __toESM(require_react(), 1);
|
|
60826
|
+
var tuiDb = new ReactiveDatabase(":memory:");
|
|
60827
|
+
tuiDb.exec("CREATE TABLE IF NOT EXISTS tui_state (key TEXT PRIMARY KEY, value TEXT)");
|
|
60828
|
+
function parseValue(raw, fallback) {
|
|
60829
|
+
if (!raw)
|
|
60830
|
+
return fallback;
|
|
60831
|
+
try {
|
|
60832
|
+
return JSON.parse(raw);
|
|
60833
|
+
} catch {
|
|
60834
|
+
return fallback;
|
|
60835
|
+
}
|
|
60836
|
+
}
|
|
60837
|
+
function readTuiState(key, fallback) {
|
|
60838
|
+
const row = tuiDb.queryOne("SELECT value FROM tui_state WHERE key = ?", [key]);
|
|
60839
|
+
return row ? parseValue(row.value, fallback) : fallback;
|
|
60840
|
+
}
|
|
60841
|
+
function writeTuiState(key, value) {
|
|
60842
|
+
const jsonValue = JSON.stringify(value);
|
|
60843
|
+
tuiDb.run("INSERT INTO tui_state (key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = ?", [key, jsonValue, jsonValue]);
|
|
60844
|
+
}
|
|
60845
|
+
function useTuiState(key, fallback) {
|
|
60846
|
+
const { data: raw } = useQueryValue(tuiDb, "SELECT value FROM tui_state WHERE key = ?", [key]);
|
|
60847
|
+
const value = parseValue(raw, fallback);
|
|
60848
|
+
const setValue = import_react16.useCallback((next) => {
|
|
60849
|
+
const resolved = typeof next === "function" ? next(readTuiState(key, fallback)) : next;
|
|
60850
|
+
writeTuiState(key, resolved);
|
|
60851
|
+
}, [key, fallback]);
|
|
60852
|
+
return [value, setValue];
|
|
60853
|
+
}
|
|
60854
|
+
|
|
60855
|
+
// src/tui/hooks/usePollEvents.ts
|
|
60856
|
+
var EVENTS_KEY = "tui:timeline:events";
|
|
60857
|
+
var EMPTY_EVENTS = [];
|
|
60824
60858
|
function usePollEvents(db) {
|
|
60825
|
-
const [events, setEvents] =
|
|
60826
|
-
|
|
60859
|
+
const [events, setEvents] = useTuiState(EVENTS_KEY, EMPTY_EVENTS);
|
|
60860
|
+
useEffectOnValueChange(db, () => {
|
|
60827
60861
|
const pollEvents = () => {
|
|
60828
60862
|
try {
|
|
60829
60863
|
const execution = db.execution.current();
|
|
60830
60864
|
if (!execution) {
|
|
60831
|
-
setEvents(
|
|
60865
|
+
setEvents(EMPTY_EVENTS);
|
|
60832
60866
|
return;
|
|
60833
60867
|
}
|
|
60834
60868
|
const phases = db.query("SELECT id, name, status, created_at as timestamp FROM phases WHERE execution_id = ? ORDER BY created_at DESC LIMIT 20", [execution.id]);
|
|
@@ -60868,7 +60902,7 @@ function usePollEvents(db) {
|
|
|
60868
60902
|
pollEvents();
|
|
60869
60903
|
const interval = setInterval(pollEvents, 500);
|
|
60870
60904
|
return () => clearInterval(interval);
|
|
60871
|
-
}, [
|
|
60905
|
+
}, [setEvents]);
|
|
60872
60906
|
return events;
|
|
60873
60907
|
}
|
|
60874
60908
|
|
|
@@ -60911,15 +60945,27 @@ function formatValue(value) {
|
|
|
60911
60945
|
}
|
|
60912
60946
|
|
|
60913
60947
|
// src/tui/components/views/ExecutionTimeline.tsx
|
|
60948
|
+
init_hooks();
|
|
60914
60949
|
var jsx_dev_runtime5 = __toESM(require_jsx_dev_runtime(), 1);
|
|
60915
60950
|
function ExecutionTimeline({ db, height }) {
|
|
60916
60951
|
const events = usePollEvents(db);
|
|
60917
|
-
const [selectedIndex, setSelectedIndex] =
|
|
60918
|
-
const [scrollOffset, setScrollOffset] =
|
|
60952
|
+
const [selectedIndex, setSelectedIndex] = useTuiState("tui:timeline:selectedIndex", 0);
|
|
60953
|
+
const [scrollOffset, setScrollOffset] = useTuiState("tui:timeline:scrollOffset", 0);
|
|
60919
60954
|
const visibleHeight = height - 4;
|
|
60955
|
+
const clampKey = `${events.length}:${visibleHeight}`;
|
|
60956
|
+
useEffectOnValueChange(clampKey, () => {
|
|
60957
|
+
const maxIndex = Math.max(0, events.length - 1);
|
|
60958
|
+
if (selectedIndex > maxIndex) {
|
|
60959
|
+
setSelectedIndex(maxIndex);
|
|
60960
|
+
}
|
|
60961
|
+
const maxOffset = Math.max(0, events.length - visibleHeight);
|
|
60962
|
+
if (scrollOffset > maxOffset) {
|
|
60963
|
+
setScrollOffset(maxOffset);
|
|
60964
|
+
}
|
|
60965
|
+
}, [events.length, visibleHeight, selectedIndex, scrollOffset, setSelectedIndex, setScrollOffset]);
|
|
60920
60966
|
useKeyboard((key) => {
|
|
60921
60967
|
if (key.name === "j" || key.name === "down") {
|
|
60922
|
-
const newIndex = Math.min(selectedIndex + 1, events.length - 1);
|
|
60968
|
+
const newIndex = Math.min(selectedIndex + 1, Math.max(0, events.length - 1));
|
|
60923
60969
|
setSelectedIndex(newIndex);
|
|
60924
60970
|
if (newIndex >= scrollOffset + visibleHeight) {
|
|
60925
60971
|
setScrollOffset(newIndex - visibleHeight + 1);
|
|
@@ -60934,7 +60980,7 @@ function ExecutionTimeline({ db, height }) {
|
|
|
60934
60980
|
setSelectedIndex(0);
|
|
60935
60981
|
setScrollOffset(0);
|
|
60936
60982
|
} else if (key.name === "G" || key.shift && key.name === "g") {
|
|
60937
|
-
setSelectedIndex(events.length - 1);
|
|
60983
|
+
setSelectedIndex(Math.max(0, events.length - 1));
|
|
60938
60984
|
setScrollOffset(Math.max(0, events.length - visibleHeight));
|
|
60939
60985
|
}
|
|
60940
60986
|
});
|
|
@@ -61028,11 +61074,16 @@ function getTypeColor(type) {
|
|
|
61028
61074
|
}
|
|
61029
61075
|
|
|
61030
61076
|
// src/tui/hooks/useRenderFrames.ts
|
|
61031
|
-
|
|
61077
|
+
init_hooks();
|
|
61078
|
+
var import_react18 = __toESM(require_react(), 1);
|
|
61079
|
+
var EMPTY_FRAMES = [];
|
|
61032
61080
|
function useRenderFrames(db, executionId) {
|
|
61033
|
-
const
|
|
61034
|
-
const
|
|
61035
|
-
|
|
61081
|
+
const framesKey = executionId ? `tui:renderFrames:${executionId}:frames` : "tui:renderFrames:frames";
|
|
61082
|
+
const indexKey = executionId ? `tui:renderFrames:${executionId}:index` : "tui:renderFrames:index";
|
|
61083
|
+
const [frames, setFrames] = useTuiState(framesKey, EMPTY_FRAMES);
|
|
61084
|
+
const [currentIndex, setCurrentIndex] = useTuiState(indexKey, 0);
|
|
61085
|
+
const pollKey = import_react18.useMemo(() => ({ db, executionId }), [db, executionId]);
|
|
61086
|
+
useEffectOnValueChange(pollKey, () => {
|
|
61036
61087
|
const pollFrames = () => {
|
|
61037
61088
|
try {
|
|
61038
61089
|
const allFrames = executionId ? db.renderFrames.listForExecution(executionId) : db.renderFrames.list();
|
|
@@ -61044,21 +61095,27 @@ function useRenderFrames(db, executionId) {
|
|
|
61044
61095
|
pollFrames();
|
|
61045
61096
|
const interval = setInterval(pollFrames, 500);
|
|
61046
61097
|
return () => clearInterval(interval);
|
|
61047
|
-
}, [db, executionId]);
|
|
61048
|
-
|
|
61098
|
+
}, [db, executionId, setFrames]);
|
|
61099
|
+
useEffectOnValueChange(frames.length, () => {
|
|
61100
|
+
const maxIndex = Math.max(0, frames.length - 1);
|
|
61101
|
+
if (currentIndex > maxIndex) {
|
|
61102
|
+
setCurrentIndex(maxIndex);
|
|
61103
|
+
}
|
|
61104
|
+
}, [frames.length, currentIndex, setCurrentIndex]);
|
|
61105
|
+
const goToFrame = import_react18.useCallback((index) => {
|
|
61049
61106
|
const clampedIndex = Math.max(0, Math.min(index, frames.length - 1));
|
|
61050
61107
|
setCurrentIndex(clampedIndex);
|
|
61051
|
-
}, [frames.length]);
|
|
61052
|
-
const nextFrame =
|
|
61108
|
+
}, [frames.length, setCurrentIndex]);
|
|
61109
|
+
const nextFrame = import_react18.useCallback(() => {
|
|
61053
61110
|
goToFrame(currentIndex + 1);
|
|
61054
61111
|
}, [currentIndex, goToFrame]);
|
|
61055
|
-
const prevFrame =
|
|
61112
|
+
const prevFrame = import_react18.useCallback(() => {
|
|
61056
61113
|
goToFrame(currentIndex - 1);
|
|
61057
61114
|
}, [currentIndex, goToFrame]);
|
|
61058
|
-
const goToLatest =
|
|
61115
|
+
const goToLatest = import_react18.useCallback(() => {
|
|
61059
61116
|
goToFrame(frames.length - 1);
|
|
61060
61117
|
}, [frames.length, goToFrame]);
|
|
61061
|
-
const goToFirst =
|
|
61118
|
+
const goToFirst = import_react18.useCallback(() => {
|
|
61062
61119
|
goToFrame(0);
|
|
61063
61120
|
}, [goToFrame]);
|
|
61064
61121
|
const currentFrame = frames[currentIndex] ?? null;
|
|
@@ -61179,11 +61236,9 @@ function RenderFrameInspector({ db, height }) {
|
|
|
61179
61236
|
}, undefined, true, undefined, this);
|
|
61180
61237
|
}
|
|
61181
61238
|
|
|
61182
|
-
// src/tui/components/views/DatabaseExplorer.tsx
|
|
61183
|
-
var import_react22 = __toESM(require_react(), 1);
|
|
61184
|
-
|
|
61185
61239
|
// src/tui/hooks/usePollTableData.ts
|
|
61186
|
-
|
|
61240
|
+
init_hooks();
|
|
61241
|
+
var import_react20 = __toESM(require_react(), 1);
|
|
61187
61242
|
var ALLOWED_TABLES2 = [
|
|
61188
61243
|
"executions",
|
|
61189
61244
|
"phases",
|
|
@@ -61202,13 +61257,18 @@ var ALLOWED_TABLES2 = [
|
|
|
61202
61257
|
"snapshots",
|
|
61203
61258
|
"reviews"
|
|
61204
61259
|
];
|
|
61260
|
+
var EMPTY_COLUMNS = [];
|
|
61261
|
+
var EMPTY_DATA = [];
|
|
61205
61262
|
function usePollTableData(db, tableName) {
|
|
61206
|
-
const
|
|
61207
|
-
const
|
|
61208
|
-
|
|
61263
|
+
const columnsKey = `tui:table:${tableName}:columns`;
|
|
61264
|
+
const dataKey = `tui:table:${tableName}:rows`;
|
|
61265
|
+
const [columns, setColumns] = useTuiState(columnsKey, EMPTY_COLUMNS);
|
|
61266
|
+
const [data, setData] = useTuiState(dataKey, EMPTY_DATA);
|
|
61267
|
+
const pollKey = import_react20.useMemo(() => ({ db, tableName }), [db, tableName]);
|
|
61268
|
+
useEffectOnValueChange(pollKey, () => {
|
|
61209
61269
|
if (!ALLOWED_TABLES2.includes(tableName)) {
|
|
61210
|
-
setColumns(
|
|
61211
|
-
setData(
|
|
61270
|
+
setColumns(EMPTY_COLUMNS);
|
|
61271
|
+
setData(EMPTY_DATA);
|
|
61212
61272
|
return;
|
|
61213
61273
|
}
|
|
61214
61274
|
const poll = () => {
|
|
@@ -61219,18 +61279,19 @@ function usePollTableData(db, tableName) {
|
|
|
61219
61279
|
setData(tableData);
|
|
61220
61280
|
} catch (err) {
|
|
61221
61281
|
console.debug("[usePollTableData] Polling error:", err);
|
|
61222
|
-
setColumns(
|
|
61223
|
-
setData(
|
|
61282
|
+
setColumns(EMPTY_COLUMNS);
|
|
61283
|
+
setData(EMPTY_DATA);
|
|
61224
61284
|
}
|
|
61225
61285
|
};
|
|
61226
61286
|
poll();
|
|
61227
61287
|
const interval = setInterval(poll, 500);
|
|
61228
61288
|
return () => clearInterval(interval);
|
|
61229
|
-
}, [
|
|
61289
|
+
}, [setColumns, setData, tableName, db]);
|
|
61230
61290
|
return { columns, data };
|
|
61231
61291
|
}
|
|
61232
61292
|
|
|
61233
61293
|
// src/tui/components/views/DatabaseExplorer.tsx
|
|
61294
|
+
init_hooks();
|
|
61234
61295
|
var jsx_dev_runtime7 = __toESM(require_jsx_dev_runtime(), 1);
|
|
61235
61296
|
var TABLES = [
|
|
61236
61297
|
"executions",
|
|
@@ -61251,11 +61312,18 @@ var TABLES = [
|
|
|
61251
61312
|
"reviews"
|
|
61252
61313
|
];
|
|
61253
61314
|
function DatabaseExplorer({ db, height }) {
|
|
61254
|
-
const [selectedTable, setSelectedTable] =
|
|
61255
|
-
const [rowOffset, setRowOffset] =
|
|
61256
|
-
const [isTableListFocused, setIsTableListFocused] =
|
|
61315
|
+
const [selectedTable, setSelectedTable] = useTuiState("tui:db:selectedTable", 0);
|
|
61316
|
+
const [rowOffset, setRowOffset] = useTuiState("tui:db:rowOffset", 0);
|
|
61317
|
+
const [isTableListFocused, setIsTableListFocused] = useTuiState("tui:db:isTableListFocused", true);
|
|
61257
61318
|
const tableName = TABLES[selectedTable] ?? "executions";
|
|
61258
61319
|
const { columns, data: tableData } = usePollTableData(db, tableName);
|
|
61320
|
+
const visibleRowsCount = height - 8;
|
|
61321
|
+
useEffectOnValueChange(`${tableData.length}:${visibleRowsCount}`, () => {
|
|
61322
|
+
const maxOffset = Math.max(0, tableData.length - visibleRowsCount);
|
|
61323
|
+
if (rowOffset > maxOffset) {
|
|
61324
|
+
setRowOffset(maxOffset);
|
|
61325
|
+
}
|
|
61326
|
+
}, [rowOffset, setRowOffset, tableData.length, visibleRowsCount]);
|
|
61259
61327
|
const handleSelectTable = (index) => {
|
|
61260
61328
|
setSelectedTable(index);
|
|
61261
61329
|
setRowOffset(0);
|
|
@@ -61271,13 +61339,14 @@ function DatabaseExplorer({ db, height }) {
|
|
|
61271
61339
|
}
|
|
61272
61340
|
} else {
|
|
61273
61341
|
if (key.name === "j" || key.name === "down") {
|
|
61274
|
-
|
|
61342
|
+
const maxOffset = Math.max(0, tableData.length - visibleRowsCount);
|
|
61343
|
+
setRowOffset((prev) => Math.min(prev + 1, maxOffset));
|
|
61275
61344
|
} else if (key.name === "k" || key.name === "up") {
|
|
61276
61345
|
setRowOffset((prev) => Math.max(prev - 1, 0));
|
|
61277
61346
|
}
|
|
61278
61347
|
}
|
|
61279
61348
|
});
|
|
61280
|
-
const visibleRows = tableData.slice(rowOffset, rowOffset +
|
|
61349
|
+
const visibleRows = tableData.slice(rowOffset, rowOffset + visibleRowsCount);
|
|
61281
61350
|
return /* @__PURE__ */ jsx_dev_runtime7.jsxDEV("box", {
|
|
61282
61351
|
style: { flexDirection: "row", width: "100%", height: "100%" },
|
|
61283
61352
|
children: [
|
|
@@ -61371,10 +61440,10 @@ function DatabaseExplorer({ db, height }) {
|
|
|
61371
61440
|
}
|
|
61372
61441
|
|
|
61373
61442
|
// src/tui/components/views/ChatInterface.tsx
|
|
61374
|
-
var
|
|
61443
|
+
var import_react23 = __toESM(require_react(), 1);
|
|
61375
61444
|
|
|
61376
61445
|
// src/tui/hooks/useClaudeChat.ts
|
|
61377
|
-
var
|
|
61446
|
+
var import_react22 = __toESM(require_react(), 1);
|
|
61378
61447
|
|
|
61379
61448
|
// src/tui/services/claude-assistant.ts
|
|
61380
61449
|
var SYSTEM_PROMPT = `You are an observability assistant for Smithers orchestrator.
|
|
@@ -61454,13 +61523,17 @@ ${contextSummary}`;
|
|
|
61454
61523
|
}
|
|
61455
61524
|
|
|
61456
61525
|
// src/tui/hooks/useClaudeChat.ts
|
|
61526
|
+
var MESSAGES_KEY = "tui:chat:messages";
|
|
61527
|
+
var LOADING_KEY = "tui:chat:loading";
|
|
61528
|
+
var ERROR_KEY = "tui:chat:error";
|
|
61529
|
+
var EMPTY_MESSAGES = [];
|
|
61457
61530
|
function useClaudeChat(db) {
|
|
61458
|
-
const [messages, setMessages] =
|
|
61459
|
-
const [isLoading, setIsLoading] =
|
|
61460
|
-
const [error2, setError] =
|
|
61531
|
+
const [messages, setMessages] = useTuiState(MESSAGES_KEY, EMPTY_MESSAGES);
|
|
61532
|
+
const [isLoading, setIsLoading] = useTuiState(LOADING_KEY, false);
|
|
61533
|
+
const [error2, setError] = useTuiState(ERROR_KEY, null);
|
|
61461
61534
|
const isAvailable = !!process.env["ANTHROPIC_API_KEY"];
|
|
61462
|
-
const assistant = createClaudeAssistant(db);
|
|
61463
|
-
const sendMessage =
|
|
61535
|
+
const assistant = import_react22.useMemo(() => createClaudeAssistant(db), [db]);
|
|
61536
|
+
const sendMessage = import_react22.useCallback(async (content) => {
|
|
61464
61537
|
if (!isAvailable) {
|
|
61465
61538
|
setError("ANTHROPIC_API_KEY not set. Claude chat is unavailable.");
|
|
61466
61539
|
return;
|
|
@@ -61470,11 +61543,13 @@ function useClaudeChat(db) {
|
|
|
61470
61543
|
content,
|
|
61471
61544
|
timestamp: new Date().toISOString()
|
|
61472
61545
|
};
|
|
61473
|
-
|
|
61546
|
+
const history = readTuiState(MESSAGES_KEY, EMPTY_MESSAGES);
|
|
61547
|
+
const nextMessages = [...history, userMessage];
|
|
61548
|
+
setMessages(nextMessages);
|
|
61474
61549
|
setIsLoading(true);
|
|
61475
61550
|
setError(null);
|
|
61476
61551
|
try {
|
|
61477
|
-
const response = await assistant.chat(
|
|
61552
|
+
const response = await assistant.chat(nextMessages);
|
|
61478
61553
|
const assistantMessage = {
|
|
61479
61554
|
role: "assistant",
|
|
61480
61555
|
content: response,
|
|
@@ -61486,11 +61561,11 @@ function useClaudeChat(db) {
|
|
|
61486
61561
|
} finally {
|
|
61487
61562
|
setIsLoading(false);
|
|
61488
61563
|
}
|
|
61489
|
-
}, [
|
|
61490
|
-
const clearHistory =
|
|
61564
|
+
}, [assistant, isAvailable, setError, setIsLoading, setMessages]);
|
|
61565
|
+
const clearHistory = import_react22.useCallback(() => {
|
|
61491
61566
|
setMessages([]);
|
|
61492
61567
|
setError(null);
|
|
61493
|
-
}, []);
|
|
61568
|
+
}, [setMessages, setError]);
|
|
61494
61569
|
return {
|
|
61495
61570
|
messages,
|
|
61496
61571
|
isLoading,
|
|
@@ -61505,9 +61580,9 @@ function useClaudeChat(db) {
|
|
|
61505
61580
|
var jsx_dev_runtime8 = __toESM(require_jsx_dev_runtime(), 1);
|
|
61506
61581
|
function ChatInterface({ db }) {
|
|
61507
61582
|
const { messages, isLoading, error: error2, isAvailable, sendMessage, clearHistory } = useClaudeChat(db);
|
|
61508
|
-
const [inputValue, setInputValue] =
|
|
61509
|
-
const [isInputFocused, setIsInputFocused] =
|
|
61510
|
-
const handleSubmit =
|
|
61583
|
+
const [inputValue, setInputValue] = useTuiState("tui:chat:input", "");
|
|
61584
|
+
const [isInputFocused, setIsInputFocused] = useTuiState("tui:chat:focus", true);
|
|
61585
|
+
const handleSubmit = import_react23.useCallback(async () => {
|
|
61511
61586
|
if (!inputValue.trim())
|
|
61512
61587
|
return;
|
|
61513
61588
|
const message = inputValue.trim();
|
|
@@ -61519,7 +61594,7 @@ function ChatInterface({ db }) {
|
|
|
61519
61594
|
clearHistory();
|
|
61520
61595
|
}
|
|
61521
61596
|
if (key.name === "tab") {
|
|
61522
|
-
setIsInputFocused(!
|
|
61597
|
+
setIsInputFocused((prev) => !prev);
|
|
61523
61598
|
}
|
|
61524
61599
|
});
|
|
61525
61600
|
if (!isAvailable) {
|
|
@@ -61627,32 +61702,36 @@ function ChatInterface({ db }) {
|
|
|
61627
61702
|
}
|
|
61628
61703
|
|
|
61629
61704
|
// src/tui/components/views/HumanInteractionHandler.tsx
|
|
61630
|
-
var
|
|
61705
|
+
var import_react26 = __toESM(require_react(), 1);
|
|
61631
61706
|
|
|
61632
61707
|
// src/tui/hooks/useHumanRequests.ts
|
|
61633
|
-
|
|
61708
|
+
init_hooks();
|
|
61709
|
+
var import_react25 = __toESM(require_react(), 1);
|
|
61634
61710
|
function useHumanRequests(db) {
|
|
61635
|
-
const [pendingRequests, setPendingRequests] =
|
|
61636
|
-
const [selectedIndex, setSelectedIndex] =
|
|
61637
|
-
const refreshRequests =
|
|
61711
|
+
const [pendingRequests, setPendingRequests] = useTuiState("tui:human:pendingRequests", []);
|
|
61712
|
+
const [selectedIndex, setSelectedIndex] = useTuiState("tui:human:selectedIndex", 0);
|
|
61713
|
+
const refreshRequests = import_react25.useCallback(() => {
|
|
61638
61714
|
try {
|
|
61639
61715
|
const pending = db.human.listPending();
|
|
61640
61716
|
setPendingRequests(pending);
|
|
61641
|
-
if (selectedIndex >= pending.length && pending.length > 0) {
|
|
61642
|
-
setSelectedIndex(pending.length - 1);
|
|
61643
|
-
}
|
|
61644
61717
|
} catch {}
|
|
61645
|
-
}, [db,
|
|
61646
|
-
|
|
61718
|
+
}, [db, setPendingRequests]);
|
|
61719
|
+
useEffectOnValueChange(db, () => {
|
|
61647
61720
|
refreshRequests();
|
|
61648
61721
|
const interval = setInterval(refreshRequests, 500);
|
|
61649
61722
|
return () => clearInterval(interval);
|
|
61650
61723
|
}, [refreshRequests]);
|
|
61651
|
-
|
|
61724
|
+
useEffectOnValueChange(pendingRequests.length, () => {
|
|
61725
|
+
const maxIndex = Math.max(0, pendingRequests.length - 1);
|
|
61726
|
+
if (selectedIndex > maxIndex) {
|
|
61727
|
+
setSelectedIndex(maxIndex);
|
|
61728
|
+
}
|
|
61729
|
+
}, [pendingRequests.length, selectedIndex, setSelectedIndex]);
|
|
61730
|
+
const selectRequest = import_react25.useCallback((index) => {
|
|
61652
61731
|
const clampedIndex = Math.max(0, Math.min(index, pendingRequests.length - 1));
|
|
61653
61732
|
setSelectedIndex(clampedIndex);
|
|
61654
|
-
}, [pendingRequests.length]);
|
|
61655
|
-
const approveRequest =
|
|
61733
|
+
}, [pendingRequests.length, setSelectedIndex]);
|
|
61734
|
+
const approveRequest = import_react25.useCallback((response) => {
|
|
61656
61735
|
const request = pendingRequests[selectedIndex];
|
|
61657
61736
|
if (!request)
|
|
61658
61737
|
return;
|
|
@@ -61661,7 +61740,7 @@ function useHumanRequests(db) {
|
|
|
61661
61740
|
refreshRequests();
|
|
61662
61741
|
} catch {}
|
|
61663
61742
|
}, [db, pendingRequests, selectedIndex, refreshRequests]);
|
|
61664
|
-
const rejectRequest =
|
|
61743
|
+
const rejectRequest = import_react25.useCallback((response) => {
|
|
61665
61744
|
const request = pendingRequests[selectedIndex];
|
|
61666
61745
|
if (!request)
|
|
61667
61746
|
return;
|
|
@@ -61683,6 +61762,7 @@ function useHumanRequests(db) {
|
|
|
61683
61762
|
}
|
|
61684
61763
|
|
|
61685
61764
|
// src/tui/components/views/HumanInteractionHandler.tsx
|
|
61765
|
+
init_hooks();
|
|
61686
61766
|
var jsx_dev_runtime9 = __toESM(require_jsx_dev_runtime(), 1);
|
|
61687
61767
|
function HumanInteractionHandler({ db }) {
|
|
61688
61768
|
const {
|
|
@@ -61693,9 +61773,15 @@ function HumanInteractionHandler({ db }) {
|
|
|
61693
61773
|
approveRequest,
|
|
61694
61774
|
rejectRequest
|
|
61695
61775
|
} = useHumanRequests(db);
|
|
61696
|
-
const [responseText, setResponseText] =
|
|
61697
|
-
const [selectedOption, setSelectedOption] =
|
|
61698
|
-
|
|
61776
|
+
const [responseText, setResponseText] = useTuiState("tui:human:responseText", "");
|
|
61777
|
+
const [selectedOption, setSelectedOption] = useTuiState("tui:human:selectedOption", 0);
|
|
61778
|
+
useEffectOnValueChange(selectedRequest?.options?.length ?? 0, () => {
|
|
61779
|
+
const maxIndex = Math.max(0, (selectedRequest?.options?.length ?? 0) - 1);
|
|
61780
|
+
if (selectedOption > maxIndex) {
|
|
61781
|
+
setSelectedOption(maxIndex);
|
|
61782
|
+
}
|
|
61783
|
+
}, [selectedOption, selectedRequest?.options?.length, setSelectedOption]);
|
|
61784
|
+
const handleApprove = import_react26.useCallback(() => {
|
|
61699
61785
|
if (selectedRequest?.options && selectedRequest.options.length > 0) {
|
|
61700
61786
|
approveRequest(selectedRequest.options[selectedOption]);
|
|
61701
61787
|
} else if (responseText.trim()) {
|
|
@@ -61708,7 +61794,7 @@ function HumanInteractionHandler({ db }) {
|
|
|
61708
61794
|
useKeyboard((key) => {
|
|
61709
61795
|
if (key.name === "j" || key.name === "down") {
|
|
61710
61796
|
if (selectedRequest?.options && selectedRequest.options.length > 0) {
|
|
61711
|
-
setSelectedOption((prev) => Math.min(prev + 1, selectedRequest.options.length - 1));
|
|
61797
|
+
setSelectedOption((prev) => Math.min(prev + 1, Math.max(0, selectedRequest.options.length - 1)));
|
|
61712
61798
|
} else {
|
|
61713
61799
|
selectRequest(selectedIndex + 1);
|
|
61714
61800
|
}
|
|
@@ -61879,11 +61965,8 @@ function HumanInteractionHandler({ db }) {
|
|
|
61879
61965
|
}, undefined, true, undefined, this);
|
|
61880
61966
|
}
|
|
61881
61967
|
|
|
61882
|
-
// src/tui/components/views/ReportViewer.tsx
|
|
61883
|
-
var import_react31 = __toESM(require_react(), 1);
|
|
61884
|
-
|
|
61885
61968
|
// src/tui/hooks/useReportGenerator.ts
|
|
61886
|
-
var
|
|
61969
|
+
var import_react28 = __toESM(require_react(), 1);
|
|
61887
61970
|
|
|
61888
61971
|
// src/tui/services/report-generator.ts
|
|
61889
61972
|
function gatherMetrics(db) {
|
|
@@ -62030,25 +62113,17 @@ ${analysis}` : metricsReport;
|
|
|
62030
62113
|
}
|
|
62031
62114
|
|
|
62032
62115
|
// src/tui/hooks/useReportGenerator.ts
|
|
62116
|
+
init_hooks();
|
|
62033
62117
|
var REPORT_INTERVAL_MS = 10 * 60 * 1000;
|
|
62118
|
+
var REPORTS_KEY = "tui:reports:list";
|
|
62119
|
+
var GENERATING_KEY = "tui:reports:generating";
|
|
62120
|
+
var LAST_GENERATED_KEY = "tui:reports:lastGeneratedAt";
|
|
62121
|
+
var EMPTY_REPORTS = [];
|
|
62034
62122
|
function useReportGenerator(db) {
|
|
62035
|
-
const [reports, setReports] =
|
|
62036
|
-
const [isGenerating, setIsGenerating] =
|
|
62037
|
-
const [lastGeneratedAt, setLastGeneratedAt] =
|
|
62038
|
-
|
|
62039
|
-
const loadReports = () => {
|
|
62040
|
-
try {
|
|
62041
|
-
const dbReports = db.query("SELECT * FROM reports WHERE type = 'auto_summary' ORDER BY created_at DESC LIMIT 50");
|
|
62042
|
-
setReports(dbReports);
|
|
62043
|
-
} catch (err) {
|
|
62044
|
-
console.debug("[useReportGenerator] Load error:", err);
|
|
62045
|
-
}
|
|
62046
|
-
};
|
|
62047
|
-
loadReports();
|
|
62048
|
-
const interval = setInterval(loadReports, 5000);
|
|
62049
|
-
return () => clearInterval(interval);
|
|
62050
|
-
}, [db]);
|
|
62051
|
-
const generateNow = import_react30.useCallback(async () => {
|
|
62123
|
+
const [reports, setReports] = useTuiState(REPORTS_KEY, EMPTY_REPORTS);
|
|
62124
|
+
const [isGenerating, setIsGenerating] = useTuiState(GENERATING_KEY, false);
|
|
62125
|
+
const [lastGeneratedAt, setLastGeneratedAt] = useTuiState(LAST_GENERATED_KEY, null);
|
|
62126
|
+
const generateNow = import_react28.useCallback(async () => {
|
|
62052
62127
|
setIsGenerating(true);
|
|
62053
62128
|
try {
|
|
62054
62129
|
const report = await generateReport(db);
|
|
@@ -62061,13 +62136,26 @@ function useReportGenerator(db) {
|
|
|
62061
62136
|
} finally {
|
|
62062
62137
|
setIsGenerating(false);
|
|
62063
62138
|
}
|
|
62064
|
-
}, [db]);
|
|
62065
|
-
|
|
62066
|
-
const
|
|
62139
|
+
}, [db, setIsGenerating, setReports, setLastGeneratedAt]);
|
|
62140
|
+
useEffectOnValueChange(db, () => {
|
|
62141
|
+
const loadReports = () => {
|
|
62142
|
+
try {
|
|
62143
|
+
const dbReports = db.query("SELECT * FROM reports WHERE type = 'auto_summary' ORDER BY created_at DESC LIMIT 50");
|
|
62144
|
+
setReports(dbReports);
|
|
62145
|
+
} catch (err) {
|
|
62146
|
+
console.debug("[useReportGenerator] Load error:", err);
|
|
62147
|
+
}
|
|
62148
|
+
};
|
|
62149
|
+
loadReports();
|
|
62150
|
+
const loadInterval = setInterval(loadReports, 5000);
|
|
62151
|
+
const generateInterval = setInterval(() => {
|
|
62067
62152
|
generateNow();
|
|
62068
62153
|
}, REPORT_INTERVAL_MS);
|
|
62069
|
-
return () =>
|
|
62070
|
-
|
|
62154
|
+
return () => {
|
|
62155
|
+
clearInterval(loadInterval);
|
|
62156
|
+
clearInterval(generateInterval);
|
|
62157
|
+
};
|
|
62158
|
+
}, [db, generateNow, setReports]);
|
|
62071
62159
|
return {
|
|
62072
62160
|
reports,
|
|
62073
62161
|
isGenerating,
|
|
@@ -62077,13 +62165,20 @@ function useReportGenerator(db) {
|
|
|
62077
62165
|
}
|
|
62078
62166
|
|
|
62079
62167
|
// src/tui/components/views/ReportViewer.tsx
|
|
62168
|
+
init_hooks();
|
|
62080
62169
|
var jsx_dev_runtime10 = __toESM(require_jsx_dev_runtime(), 1);
|
|
62081
62170
|
function ReportViewer({ db }) {
|
|
62082
62171
|
const { reports, isGenerating, generateNow } = useReportGenerator(db);
|
|
62083
|
-
const [selectedIndex, setSelectedIndex] =
|
|
62172
|
+
const [selectedIndex, setSelectedIndex] = useTuiState("tui:reports:selectedIndex", 0);
|
|
62173
|
+
useEffectOnValueChange(reports.length, () => {
|
|
62174
|
+
const maxIndex = Math.max(0, reports.length - 1);
|
|
62175
|
+
if (selectedIndex > maxIndex) {
|
|
62176
|
+
setSelectedIndex(maxIndex);
|
|
62177
|
+
}
|
|
62178
|
+
}, [reports.length, selectedIndex, setSelectedIndex]);
|
|
62084
62179
|
useKeyboard((key) => {
|
|
62085
62180
|
if (key.name === "j" || key.name === "down") {
|
|
62086
|
-
setSelectedIndex((prev) => Math.min(prev + 1, reports.length - 1));
|
|
62181
|
+
setSelectedIndex((prev) => Math.min(prev + 1, Math.max(0, reports.length - 1)));
|
|
62087
62182
|
} else if (key.name === "k" || key.name === "up") {
|
|
62088
62183
|
setSelectedIndex((prev) => Math.max(prev - 1, 0));
|
|
62089
62184
|
} else if (key.name === "r") {
|
|
@@ -62230,60 +62325,67 @@ function getLineColor(line) {
|
|
|
62230
62325
|
|
|
62231
62326
|
// src/tui/hooks/useSmithersConnection.ts
|
|
62232
62327
|
init_db();
|
|
62233
|
-
|
|
62328
|
+
init_hooks();
|
|
62329
|
+
var import_react30 = __toESM(require_react(), 1);
|
|
62330
|
+
var EMPTY_EXECUTIONS = [];
|
|
62234
62331
|
function useSmithersConnection(dbPath) {
|
|
62235
|
-
const
|
|
62236
|
-
const
|
|
62237
|
-
const
|
|
62238
|
-
const [
|
|
62239
|
-
const [
|
|
62240
|
-
|
|
62241
|
-
|
|
62242
|
-
|
|
62243
|
-
const
|
|
62244
|
-
|
|
62245
|
-
|
|
62246
|
-
|
|
62247
|
-
|
|
62248
|
-
|
|
62249
|
-
|
|
62250
|
-
|
|
62251
|
-
try {
|
|
62252
|
-
const current = smithersDb?.execution.current();
|
|
62253
|
-
if (current) {
|
|
62254
|
-
setCurrentExecution({
|
|
62255
|
-
...current,
|
|
62256
|
-
started_at: current.started_at?.toISOString() ?? null,
|
|
62257
|
-
completed_at: current.completed_at?.toISOString() ?? null
|
|
62258
|
-
});
|
|
62259
|
-
} else {
|
|
62260
|
-
setCurrentExecution(null);
|
|
62261
|
-
}
|
|
62262
|
-
const allExecs = smithersDb?.execution.list() ?? [];
|
|
62263
|
-
setExecutions(allExecs.map((e) => ({
|
|
62264
|
-
...e,
|
|
62265
|
-
started_at: e.started_at?.toISOString() ?? null,
|
|
62266
|
-
completed_at: e.completed_at?.toISOString() ?? null
|
|
62267
|
-
})));
|
|
62268
|
-
} catch {}
|
|
62269
|
-
};
|
|
62270
|
-
pollData();
|
|
62271
|
-
pollInterval = setInterval(pollData, 500);
|
|
62272
|
-
} catch (e) {
|
|
62273
|
-
setError(e instanceof Error ? e.message : "Connection failed");
|
|
62274
|
-
setIsConnected(false);
|
|
62332
|
+
const dbRef = import_react30.useRef(null);
|
|
62333
|
+
const pollIntervalRef = import_react30.useRef(null);
|
|
62334
|
+
const keyBase = `tui:connection:${dbPath}`;
|
|
62335
|
+
const [isConnected, setIsConnected] = useTuiState(`${keyBase}:connected`, false);
|
|
62336
|
+
const [error2, setError] = useTuiState(`${keyBase}:error`, null);
|
|
62337
|
+
const [currentExecution, setCurrentExecution] = useTuiState(`${keyBase}:currentExecution`, null);
|
|
62338
|
+
const [executions, setExecutions] = useTuiState(`${keyBase}:executions`, EMPTY_EXECUTIONS);
|
|
62339
|
+
useEffectOnValueChange(dbPath, () => {
|
|
62340
|
+
const cleanup = () => {
|
|
62341
|
+
if (pollIntervalRef.current) {
|
|
62342
|
+
clearInterval(pollIntervalRef.current);
|
|
62343
|
+
pollIntervalRef.current = null;
|
|
62344
|
+
}
|
|
62345
|
+
if (dbRef.current) {
|
|
62346
|
+
dbRef.current.close();
|
|
62347
|
+
dbRef.current = null;
|
|
62275
62348
|
}
|
|
62276
62349
|
};
|
|
62277
|
-
|
|
62278
|
-
|
|
62279
|
-
|
|
62280
|
-
|
|
62281
|
-
|
|
62282
|
-
|
|
62283
|
-
|
|
62284
|
-
|
|
62350
|
+
cleanup();
|
|
62351
|
+
try {
|
|
62352
|
+
const fullPath = dbPath.endsWith(".db") ? dbPath : `${dbPath}/smithers.db`;
|
|
62353
|
+
const smithersDb = createSmithersDB({ path: fullPath });
|
|
62354
|
+
dbRef.current = smithersDb;
|
|
62355
|
+
setIsConnected(true);
|
|
62356
|
+
setError(null);
|
|
62357
|
+
const pollData = () => {
|
|
62358
|
+
try {
|
|
62359
|
+
const current = smithersDb.execution.current();
|
|
62360
|
+
if (current) {
|
|
62361
|
+
setCurrentExecution({
|
|
62362
|
+
...current,
|
|
62363
|
+
started_at: current.started_at?.toISOString() ?? null,
|
|
62364
|
+
completed_at: current.completed_at?.toISOString() ?? null
|
|
62365
|
+
});
|
|
62366
|
+
} else {
|
|
62367
|
+
setCurrentExecution(null);
|
|
62368
|
+
}
|
|
62369
|
+
const allExecs = smithersDb.execution.list();
|
|
62370
|
+
setExecutions(allExecs.map((e) => ({
|
|
62371
|
+
...e,
|
|
62372
|
+
started_at: e.started_at?.toISOString() ?? null,
|
|
62373
|
+
completed_at: e.completed_at?.toISOString() ?? null
|
|
62374
|
+
})));
|
|
62375
|
+
} catch {}
|
|
62376
|
+
};
|
|
62377
|
+
pollData();
|
|
62378
|
+
pollIntervalRef.current = setInterval(pollData, 500);
|
|
62379
|
+
} catch (e) {
|
|
62380
|
+
setError(e instanceof Error ? e.message : "Connection failed");
|
|
62381
|
+
setIsConnected(false);
|
|
62382
|
+
setCurrentExecution(null);
|
|
62383
|
+
setExecutions(EMPTY_EXECUTIONS);
|
|
62384
|
+
}
|
|
62385
|
+
return cleanup;
|
|
62386
|
+
}, [dbPath, setCurrentExecution, setError, setExecutions, setIsConnected]);
|
|
62285
62387
|
return {
|
|
62286
|
-
db,
|
|
62388
|
+
db: dbRef.current,
|
|
62287
62389
|
isConnected,
|
|
62288
62390
|
error: error2,
|
|
62289
62391
|
currentExecution,
|
|
@@ -62302,7 +62404,7 @@ var TABS = [
|
|
|
62302
62404
|
{ key: "reports", label: "Reports", shortcut: "F6" }
|
|
62303
62405
|
];
|
|
62304
62406
|
function App({ dbPath }) {
|
|
62305
|
-
const [activeTab, setActiveTab] =
|
|
62407
|
+
const [activeTab, setActiveTab] = useTuiState("tui:app:activeTab", "timeline");
|
|
62306
62408
|
const { height } = useTerminalDimensions();
|
|
62307
62409
|
const { db, isConnected, error: error2, currentExecution } = useSmithersConnection(dbPath);
|
|
62308
62410
|
useKeyboard((key) => {
|
|
@@ -62331,7 +62433,7 @@ function App({ dbPath }) {
|
|
|
62331
62433
|
}
|
|
62332
62434
|
});
|
|
62333
62435
|
const contentHeight = Math.max(height - 6, 10);
|
|
62334
|
-
const renderView =
|
|
62436
|
+
const renderView = import_react31.useCallback(() => {
|
|
62335
62437
|
if (!db) {
|
|
62336
62438
|
return /* @__PURE__ */ jsx_dev_runtime11.jsxDEV("text", {
|
|
62337
62439
|
content: "Connecting to database...",
|