@aragon-agent/cli 0.6.47 → 0.6.48
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/README.md +27 -6
- package/dist/agent/coalesce.d.ts +1 -1
- package/dist/agent/controller.d.ts +21 -21
- package/dist/agent/controller.js +13 -13
- package/dist/agent/conversation-reset.d.ts +1 -1
- package/dist/agent/governance-wiring.d.ts +6 -6
- package/dist/agent/governance-wiring.js +4 -4
- package/dist/agent/headless.d.ts +5 -5
- package/dist/agent/headless.js +4 -4
- package/dist/agent/job-notices.d.ts +1 -1
- package/dist/agent/job-notices.js +1 -1
- package/dist/agent/kit-apply.d.ts +3 -3
- package/dist/agent/kit-apply.js +3 -3
- package/dist/agent/model-profile-settings.d.ts +2 -2
- package/dist/agent/model-profile-settings.js +6 -6
- package/dist/agent/prompt-options.d.ts +1 -1
- package/dist/agent/system-prompt.d.ts +1 -1
- package/dist/{ui → app}/App.d.ts +9 -9
- package/dist/{ui → app}/App.js +79 -79
- package/dist/{ui → app}/use-startup-notices.d.ts +1 -1
- package/dist/{ui → app}/use-startup-notices.js +2 -2
- package/dist/cli.js +29 -29
- package/dist/commands/agents-command.js +1 -1
- package/dist/commands/builtins.js +9 -9
- package/dist/commands/governance-command.js +2 -2
- package/dist/commands/governance-runs-table.js +1 -1
- package/dist/commands/kit-command.js +1 -1
- package/dist/commands/perf.d.ts +3 -3
- package/dist/commands/perf.js +1 -1
- package/dist/commands/registry.d.ts +8 -8
- package/dist/commands/skills.js +2 -2
- package/dist/commands/team-command.js +1 -1
- package/dist/compaction/archive.d.ts +1 -1
- package/dist/compaction/archive.js +1 -1
- package/dist/compaction/child.d.ts +3 -3
- package/dist/compaction/child.js +4 -4
- package/dist/compaction/command.js +5 -5
- package/dist/compaction/compactor.d.ts +6 -6
- package/dist/compaction/compactor.js +6 -6
- package/dist/compaction/context-command.js +1 -1
- package/dist/compaction/digest.js +1 -1
- package/dist/compaction/memory-input.js +1 -1
- package/dist/compaction/memory-validation.js +1 -1
- package/dist/compaction/memory.js +1 -1
- package/dist/compaction/summarize-call.js +1 -1
- package/dist/compaction/summary-prompt.js +1 -1
- package/dist/compaction/tail-budget.js +2 -2
- package/dist/compaction/wiring.d.ts +5 -5
- package/dist/compaction/wiring.js +2 -2
- package/dist/config/cli-commands.d.ts +1 -1
- package/dist/config/cli-commands.js +3 -3
- package/dist/config/env.d.ts +1 -1
- package/dist/config/env.js +4 -4
- package/dist/config/load.d.ts +2 -2
- package/dist/config/load.js +6 -6
- package/dist/config/migrate-state-out-of-config.js +1 -1
- package/dist/config/model-profile-store.d.ts +4 -54
- package/dist/config/model-profile-store.js +3 -3
- package/dist/config/prompt-history.js +1 -1
- package/dist/config/store.d.ts +2 -2
- package/dist/config/store.js +3 -3
- package/dist/diagnostics/doctor.js +4 -4
- package/dist/exec/bridge/decisions.d.ts +1 -1
- package/dist/exec/bridge/human-answers.d.ts +1 -1
- package/dist/exec/bridge/human-answers.js +1 -1
- package/dist/exec/bridge/protocol.d.ts +1 -1
- package/dist/exec/bridge/server.js +1 -1
- package/dist/exec/events.d.ts +2 -2
- package/dist/exec/index.d.ts +1 -1
- package/dist/exec/index.js +1 -1
- package/dist/exec/permission.js +1 -1
- package/dist/exec/runner.d.ts +3 -3
- package/dist/exec/runner.js +2 -2
- package/dist/exec/threads/runtime.js +1 -1
- package/dist/fast/digest.d.ts +1 -1
- package/dist/fast/digest.js +1 -1
- package/dist/fast/frames.d.ts +1 -1
- package/dist/fast/frames.js +1 -1
- package/dist/fast/prompt.d.ts +1 -1
- package/dist/fast/prompt.js +1 -1
- package/dist/fast/review-call.js +1 -1
- package/dist/fast/reviewer.d.ts +3 -3
- package/dist/fast/reviewer.js +1 -1
- package/dist/fast/summary-call.d.ts +3 -3
- package/dist/fast/summary-call.js +2 -2
- package/dist/fast/summary-prompt.d.ts +1 -1
- package/dist/fast/summary-prompt.js +1 -1
- package/dist/fast/wiring.d.ts +4 -4
- package/dist/fast/wiring.js +1 -1
- package/dist/governance/card-normalize.d.ts +1 -1
- package/dist/governance/copy.d.ts +1 -1
- package/dist/governance/copy.js +2 -2
- package/dist/governance/engine/artifact-persist.d.ts +1 -1
- package/dist/governance/engine/budget.d.ts +1 -1
- package/dist/governance/engine/budget.js +1 -1
- package/dist/governance/engine/cards.d.ts +1 -1
- package/dist/governance/engine/digest.js +1 -1
- package/dist/governance/engine/engine-core.d.ts +5 -5
- package/dist/governance/engine/engine-core.js +1 -1
- package/dist/governance/engine/engine.d.ts +1 -1
- package/dist/governance/engine/engine.js +1 -1
- package/dist/governance/engine/estimate.d.ts +1 -1
- package/dist/governance/engine/estimate.js +1 -1
- package/dist/governance/engine/inspector.js +2 -2
- package/dist/governance/engine/integration.d.ts +1 -1
- package/dist/governance/engine/lifecycle.d.ts +1 -1
- package/dist/governance/engine/lifecycle.js +1 -1
- package/dist/governance/engine/phase-members.d.ts +1 -1
- package/dist/governance/engine/phase-planner.d.ts +1 -1
- package/dist/governance/engine/phase-planner.js +1 -1
- package/dist/governance/engine/rebuild.d.ts +1 -1
- package/dist/governance/engine/report.d.ts +1 -1
- package/dist/governance/engine/report.js +1 -1
- package/dist/governance/engine/run-digest.d.ts +1 -1
- package/dist/governance/engine/spec-builder.d.ts +2 -2
- package/dist/governance/engine/spec-builder.js +2 -2
- package/dist/governance/engine/stage-runner.js +2 -2
- package/dist/governance/engine/start-input.d.ts +1 -1
- package/dist/governance/engine/start-input.js +1 -1
- package/dist/governance/engine/state-machine.d.ts +1 -1
- package/dist/governance/engine/state-machine.js +3 -3
- package/dist/governance/engine/submission-queries.d.ts +1 -1
- package/dist/governance/engine/submission-render.d.ts +1 -1
- package/dist/governance/engine/submissions.d.ts +1 -1
- package/dist/governance/engine/submissions.js +1 -1
- package/dist/governance/engine/visibility.d.ts +1 -1
- package/dist/governance/engine/visibility.js +1 -1
- package/dist/governance/posture-transition.d.ts +2 -2
- package/dist/governance/posture-transition.js +1 -1
- package/dist/governance/profiles.d.ts +1 -1
- package/dist/governance/prompts/orchestrator-block.d.ts +2 -2
- package/dist/governance/prompts/orchestrator-block.js +2 -2
- package/dist/governance/prompts/plan-addendum.d.ts +1 -1
- package/dist/governance/prompts/plan-addendum.js +1 -1
- package/dist/governance/prompts/role-blocks.d.ts +2 -2
- package/dist/governance/prompts/role-blocks.js +1 -1
- package/dist/governance/report-reader.js +1 -1
- package/dist/governance/roles.d.ts +1 -1
- package/dist/governance/rules/claims.d.ts +1 -1
- package/dist/governance/rules/claims.js +1 -1
- package/dist/governance/rules/elimination.d.ts +1 -1
- package/dist/governance/rules/elimination.js +1 -1
- package/dist/governance/rules/failure-analysis.d.ts +2 -2
- package/dist/governance/rules/failure-analysis.js +1 -1
- package/dist/governance/rules/ledger-replay.d.ts +1 -1
- package/dist/governance/rules/ledger-state.d.ts +1 -1
- package/dist/governance/rules/ledger-state.js +1 -1
- package/dist/governance/rules/ledger.d.ts +2 -2
- package/dist/governance/rules/ledger.js +2 -2
- package/dist/governance/rules/rca.d.ts +1 -1
- package/dist/governance/rules/rca.js +1 -1
- package/dist/governance/rules/settlement.d.ts +2 -2
- package/dist/governance/rules/settlement.js +2 -2
- package/dist/governance/rules/suspicion.d.ts +1 -1
- package/dist/governance/store/artifacts.d.ts +1 -1
- package/dist/governance/store/artifacts.js +1 -1
- package/dist/governance/store/events-log.d.ts +1 -1
- package/dist/governance/store/run-store.d.ts +1 -1
- package/dist/governance/store/run-store.js +1 -1
- package/dist/governance/store/scoreboard-export.d.ts +1 -1
- package/dist/governance/tools/child-tools.d.ts +1 -1
- package/dist/governance/tools/guard.d.ts +1 -1
- package/dist/governance/tools/guard.js +1 -1
- package/dist/governance/tools/inspector-tools.d.ts +2 -2
- package/dist/governance/tools/inspector-tools.js +2 -2
- package/dist/governance/tools/lead-tools.d.ts +1 -1
- package/dist/governance/tools/lead-tools.js +1 -1
- package/dist/governance/tools/normalize-util.js +1 -1
- package/dist/governance/tools/scan-incomplete.js +1 -1
- package/dist/governance/tools/shared-tools.d.ts +1 -1
- package/dist/governance/tools/shared-tools.js +1 -1
- package/dist/governance/tools/submit-normalizers.d.ts +1 -1
- package/dist/governance/tools/submit-normalizers.js +1 -1
- package/dist/governance/tools/submit-tools.d.ts +1 -1
- package/dist/logging/cli-commands.js +1 -1
- package/dist/logging/install.d.ts +1 -1
- package/dist/logging/install.js +3 -3
- package/dist/logging/logger.d.ts +2 -2
- package/dist/logging/logger.js +31 -2
- package/dist/proc/kill-tree.js +1 -1
- package/dist/proc/log-mirror.js +1 -1
- package/dist/proc/log-ring.js +2 -2
- package/dist/proc/notices.d.ts +1 -1
- package/dist/proc/notices.js +2 -2
- package/dist/proc/prompt.d.ts +1 -1
- package/dist/proc/prompt.js +1 -1
- package/dist/proc/readiness.js +1 -1
- package/dist/proc/supervisor.d.ts +1 -1
- package/dist/proc/supervisor.js +3 -3
- package/dist/proc/wait.d.ts +1 -1
- package/dist/proc/wait.js +1 -1
- package/dist/prompts/command.d.ts +1 -1
- package/dist/prompts/command.js +1 -1
- package/dist/prompts/normalize.d.ts +1 -1
- package/dist/prompts/normalize.js +1 -1
- package/dist/prompts/resolve.d.ts +1 -1
- package/dist/prompts/store.d.ts +2 -12
- package/dist/prompts/store.js +6 -60
- package/dist/session/checkpoint.d.ts +2 -2
- package/dist/session/clear-archive.d.ts +2 -2
- package/dist/session/persist.d.ts +2 -2
- package/dist/session/persist.js +1 -1
- package/dist/session/startup-session.d.ts +2 -2
- package/dist/session/validate-session.js +3 -3
- package/dist/skills/service.d.ts +2 -2
- package/dist/team/bus.d.ts +1 -1
- package/dist/team/bus.js +1 -1
- package/dist/team/child-reviewer.d.ts +2 -2
- package/dist/team/child-reviewer.js +1 -1
- package/dist/team/comm-tools.js +1 -1
- package/dist/team/dispatch-gate.js +1 -1
- package/dist/team/forced-dispatch.js +1 -1
- package/dist/team/forced-mode.d.ts +1 -1
- package/dist/team/forced-prompt.d.ts +1 -1
- package/dist/team/forced-prompt.js +1 -1
- package/dist/team/normalize.d.ts +1 -1
- package/dist/team/normalize.js +1 -1
- package/dist/team/overseer.d.ts +3 -3
- package/dist/team/overseer.js +3 -3
- package/dist/team/prompt.d.ts +1 -1
- package/dist/team/prompt.js +1 -1
- package/dist/team/report.d.ts +2 -2
- package/dist/team/report.js +2 -2
- package/dist/team/retry.d.ts +1 -1
- package/dist/team/retry.js +1 -1
- package/dist/team/runtime.d.ts +4 -4
- package/dist/team/runtime.js +2 -2
- package/dist/team/settled.d.ts +2 -2
- package/dist/team/subagent.d.ts +4 -4
- package/dist/team/subagent.js +5 -5
- package/dist/team/task-tool.d.ts +1 -1
- package/dist/team/task-tool.js +1 -1
- package/dist/todo/normalize.d.ts +1 -1
- package/dist/todo/normalize.js +1 -1
- package/dist/todo/prompt.d.ts +1 -1
- package/dist/todo/prompt.js +1 -1
- package/dist/todo/store.d.ts +1 -1
- package/dist/todo/store.js +2 -2
- package/dist/todo/todo-tool.d.ts +1 -1
- package/dist/todo/todo-tool.js +2 -2
- package/dist/tools/bash-tool.d.ts +1 -1
- package/dist/tools/bash-tool.js +2 -2
- package/dist/tools/diff.d.ts +1 -1
- package/dist/tools/diff.js +1 -1
- package/dist/tools/file-change-store.d.ts +1 -1
- package/dist/tools/fs-tools.d.ts +2 -2
- package/dist/tools/fs-tools.js +1 -1
- package/dist/tools/index.d.ts +3 -3
- package/dist/tools/index.js +1 -1
- package/dist/tools/job-tools.d.ts +2 -2
- package/dist/tools/job-tools.js +4 -4
- package/dist/tools/plan-tools.d.ts +1 -1
- package/dist/tools/plan-tools.js +1 -1
- package/dist/tools/proc-tools.d.ts +1 -1
- package/dist/tools/proc-tools.js +2 -2
- package/dist/update/classify-failure.d.ts +1 -1
- package/dist/update/install-lock.js +1 -1
- package/dist/update/install-source.d.ts +1 -1
- package/dist/update/installer.js +2 -2
- package/dist/update/npm-view.d.ts +1 -1
- package/dist/update/npm-view.js +1 -1
- package/dist/update/registry.d.ts +1 -1
- package/dist/update/registry.js +1 -1
- package/dist/update/service.d.ts +2 -2
- package/dist/update/service.js +2 -2
- package/package.json +7 -7
- package/dist/agent/agent-mode.d.ts +0 -108
- package/dist/agent/agent-mode.js +0 -121
- package/dist/agent/entry-limits.d.ts +0 -65
- package/dist/agent/entry-limits.js +0 -133
- package/dist/agent/governance-view.d.ts +0 -40
- package/dist/agent/governance-view.js +0 -40
- package/dist/agent/invocation-card.d.ts +0 -77
- package/dist/agent/invocation-card.js +0 -169
- package/dist/agent/model-probe-limits.d.ts +0 -39
- package/dist/agent/model-probe-limits.js +0 -25
- package/dist/agent/model-probe.d.ts +0 -104
- package/dist/agent/model-probe.js +0 -391
- package/dist/agent/queued-messages.d.ts +0 -23
- package/dist/agent/queued-messages.js +0 -49
- package/dist/agent/reducer.d.ts +0 -857
- package/dist/agent/reducer.js +0 -1646
- package/dist/agent/retry-view.d.ts +0 -68
- package/dist/agent/retry-view.js +0 -95
- package/dist/agent/usage.d.ts +0 -47
- package/dist/agent/usage.js +0 -84
- package/dist/compaction/limits.d.ts +0 -61
- package/dist/compaction/limits.js +0 -64
- package/dist/compaction/meter.d.ts +0 -276
- package/dist/compaction/meter.js +0 -512
- package/dist/compaction/pressure.d.ts +0 -163
- package/dist/compaction/pressure.js +0 -199
- package/dist/compaction/reason-text.d.ts +0 -36
- package/dist/compaction/reason-text.js +0 -78
- package/dist/compaction/types.d.ts +0 -360
- package/dist/compaction/types.js +0 -22
- package/dist/config/governance-config.d.ts +0 -125
- package/dist/config/governance-config.js +0 -164
- package/dist/config/kit-resolution.d.ts +0 -93
- package/dist/config/kit-resolution.js +0 -226
- package/dist/config/model-kits.d.ts +0 -225
- package/dist/config/model-kits.js +0 -302
- package/dist/config/model-profile-resolution.d.ts +0 -28
- package/dist/config/model-profile-resolution.js +0 -88
- package/dist/config/model-profiles.d.ts +0 -103
- package/dist/config/model-profiles.js +0 -188
- package/dist/config/schema.d.ts +0 -1645
- package/dist/config/schema.js +0 -1383
- package/dist/fast/limits.d.ts +0 -152
- package/dist/fast/limits.js +0 -152
- package/dist/fast/resolve.d.ts +0 -44
- package/dist/fast/resolve.js +0 -107
- package/dist/fast/task-summary-types.d.ts +0 -66
- package/dist/fast/task-summary-types.js +0 -17
- package/dist/fast/types.d.ts +0 -141
- package/dist/fast/types.js +0 -14
- package/dist/governance/governed-dispatch.d.ts +0 -19
- package/dist/governance/governed-dispatch.js +0 -17
- package/dist/governance/limits.d.ts +0 -107
- package/dist/governance/limits.js +0 -131
- package/dist/governance/posture.d.ts +0 -35
- package/dist/governance/posture.js +0 -59
- package/dist/governance/rules/events-table.d.ts +0 -46
- package/dist/governance/rules/events-table.js +0 -94
- package/dist/governance/types.d.ts +0 -661
- package/dist/governance/types.js +0 -27
- package/dist/input/control-sequences.d.ts +0 -71
- package/dist/input/control-sequences.js +0 -222
- package/dist/input/csiu-keys.d.ts +0 -66
- package/dist/input/csiu-keys.js +0 -181
- package/dist/input/cursor-report.d.ts +0 -61
- package/dist/input/cursor-report.js +0 -97
- package/dist/input/enter-sequences.d.ts +0 -64
- package/dist/input/enter-sequences.js +0 -153
- package/dist/input/interrupt-gesture.d.ts +0 -18
- package/dist/input/interrupt-gesture.js +0 -19
- package/dist/input/keyboard-enhancement.d.ts +0 -42
- package/dist/input/keyboard-enhancement.js +0 -65
- package/dist/input/keymap.d.ts +0 -20
- package/dist/input/keymap.js +0 -99
- package/dist/input/limits.d.ts +0 -118
- package/dist/input/limits.js +0 -109
- package/dist/input/mouse-events.d.ts +0 -87
- package/dist/input/mouse-events.js +0 -212
- package/dist/input/paste-parse.d.ts +0 -83
- package/dist/input/paste-parse.js +0 -107
- package/dist/input/pointer-router.d.ts +0 -11
- package/dist/input/pointer-router.js +0 -14
- package/dist/input/stdin-filter.d.ts +0 -112
- package/dist/input/stdin-filter.js +0 -657
- package/dist/input/win32-input-mode.d.ts +0 -61
- package/dist/input/win32-input-mode.js +0 -269
- package/dist/logging/levels.d.ts +0 -40
- package/dist/logging/levels.js +0 -59
- package/dist/logging/secret-registry.d.ts +0 -32
- package/dist/logging/secret-registry.js +0 -73
- package/dist/proc/limits.d.ts +0 -214
- package/dist/proc/limits.js +0 -221
- package/dist/proc/progress.d.ts +0 -47
- package/dist/proc/progress.js +0 -163
- package/dist/proc/types.d.ts +0 -269
- package/dist/proc/types.js +0 -15
- package/dist/proc/wait-view.d.ts +0 -65
- package/dist/proc/wait-view.js +0 -66
- package/dist/prompts/copy.d.ts +0 -89
- package/dist/prompts/copy.js +0 -131
- package/dist/prompts/fill.d.ts +0 -51
- package/dist/prompts/fill.js +0 -46
- package/dist/prompts/limits.d.ts +0 -53
- package/dist/prompts/limits.js +0 -53
- package/dist/prompts/search.d.ts +0 -58
- package/dist/prompts/search.js +0 -146
- package/dist/prompts/types.d.ts +0 -204
- package/dist/prompts/types.js +0 -13
- package/dist/team/activity.d.ts +0 -67
- package/dist/team/activity.js +0 -130
- package/dist/team/limits.d.ts +0 -308
- package/dist/team/limits.js +0 -330
- package/dist/team/model.d.ts +0 -104
- package/dist/team/model.js +0 -150
- package/dist/team/panel-rows.d.ts +0 -48
- package/dist/team/panel-rows.js +0 -75
- package/dist/team/timeline.d.ts +0 -74
- package/dist/team/timeline.js +0 -101
- package/dist/team/types.d.ts +0 -354
- package/dist/team/types.js +0 -13
- package/dist/todo/acceptance.d.ts +0 -120
- package/dist/todo/acceptance.js +0 -399
- package/dist/todo/follow-through.d.ts +0 -138
- package/dist/todo/follow-through.js +0 -248
- package/dist/todo/limits.d.ts +0 -152
- package/dist/todo/limits.js +0 -152
- package/dist/todo/panel-rows.d.ts +0 -45
- package/dist/todo/panel-rows.js +0 -70
- package/dist/todo/plan-sections.d.ts +0 -60
- package/dist/todo/plan-sections.js +0 -108
- package/dist/todo/row-window.d.ts +0 -51
- package/dist/todo/row-window.js +0 -107
- package/dist/todo/types.d.ts +0 -124
- package/dist/todo/types.js +0 -12
- package/dist/tools/human-input.d.ts +0 -212
- package/dist/tools/human-input.js +0 -265
- package/dist/tools/patch.d.ts +0 -115
- package/dist/tools/patch.js +0 -453
- package/dist/tools/terminal-output.d.ts +0 -115
- package/dist/tools/terminal-output.js +0 -201
- package/dist/tools/tool-output-store.d.ts +0 -68
- package/dist/tools/tool-output-store.js +0 -102
- package/dist/ui/ActivityLine.d.ts +0 -26
- package/dist/ui/ActivityLine.js +0 -51
- package/dist/ui/AutocompletePopup.d.ts +0 -23
- package/dist/ui/AutocompletePopup.js +0 -17
- package/dist/ui/BottomStatusRow.d.ts +0 -10
- package/dist/ui/BottomStatusRow.js +0 -9
- package/dist/ui/Composer.d.ts +0 -115
- package/dist/ui/Composer.js +0 -64
- package/dist/ui/GovernancePanel.d.ts +0 -50
- package/dist/ui/GovernancePanel.js +0 -77
- package/dist/ui/GovernanceRun.d.ts +0 -18
- package/dist/ui/GovernanceRun.js +0 -11
- package/dist/ui/Header.d.ts +0 -48
- package/dist/ui/Header.js +0 -27
- package/dist/ui/Logo.d.ts +0 -32
- package/dist/ui/Logo.js +0 -65
- package/dist/ui/Markdown.d.ts +0 -29
- package/dist/ui/Markdown.js +0 -116
- package/dist/ui/PromptCaret.d.ts +0 -11
- package/dist/ui/PromptCaret.js +0 -31
- package/dist/ui/PromptInput.d.ts +0 -192
- package/dist/ui/PromptInput.js +0 -689
- package/dist/ui/QueuePanel.d.ts +0 -8
- package/dist/ui/QueuePanel.js +0 -9
- package/dist/ui/QueueStatusRow.d.ts +0 -24
- package/dist/ui/QueueStatusRow.js +0 -51
- package/dist/ui/ScrollbackShell.d.ts +0 -132
- package/dist/ui/ScrollbackShell.js +0 -26
- package/dist/ui/SessionOpener.d.ts +0 -30
- package/dist/ui/SessionOpener.js +0 -12
- package/dist/ui/StatusBar.d.ts +0 -130
- package/dist/ui/StatusBar.js +0 -61
- package/dist/ui/TeamPanel.d.ts +0 -76
- package/dist/ui/TeamPanel.js +0 -103
- package/dist/ui/ToastStack.d.ts +0 -8
- package/dist/ui/ToastStack.js +0 -31
- package/dist/ui/TodoPanel.d.ts +0 -52
- package/dist/ui/TodoPanel.js +0 -214
- package/dist/ui/Transcript.d.ts +0 -105
- package/dist/ui/Transcript.js +0 -258
- package/dist/ui/UpdateLine.d.ts +0 -44
- package/dist/ui/UpdateLine.js +0 -129
- package/dist/ui/activity-phrases.d.ts +0 -33
- package/dist/ui/activity-phrases.js +0 -50
- package/dist/ui/capabilities.d.ts +0 -27
- package/dist/ui/capabilities.js +0 -65
- package/dist/ui/clipboard-task.d.ts +0 -29
- package/dist/ui/clipboard-task.js +0 -66
- package/dist/ui/clipboard.d.ts +0 -31
- package/dist/ui/clipboard.js +0 -157
- package/dist/ui/color-runtime.d.ts +0 -5
- package/dist/ui/color-runtime.js +0 -29
- package/dist/ui/composer-input.d.ts +0 -38
- package/dist/ui/composer-input.js +0 -79
- package/dist/ui/composer-limits.d.ts +0 -30
- package/dist/ui/composer-limits.js +0 -45
- package/dist/ui/composer-rows.d.ts +0 -73
- package/dist/ui/composer-rows.js +0 -129
- package/dist/ui/console-bridge.d.ts +0 -19
- package/dist/ui/console-bridge.js +0 -52
- package/dist/ui/density.d.ts +0 -26
- package/dist/ui/density.js +0 -34
- package/dist/ui/display-tab.d.ts +0 -51
- package/dist/ui/display-tab.js +0 -82
- package/dist/ui/editor-navigation.d.ts +0 -55
- package/dist/ui/editor-navigation.js +0 -96
- package/dist/ui/editor-reducer.d.ts +0 -108
- package/dist/ui/editor-reducer.js +0 -187
- package/dist/ui/enter-frames.d.ts +0 -47
- package/dist/ui/enter-frames.js +0 -117
- package/dist/ui/entries/AssistantEntry.d.ts +0 -37
- package/dist/ui/entries/AssistantEntry.js +0 -43
- package/dist/ui/entries/CompactionCard.d.ts +0 -88
- package/dist/ui/entries/CompactionCard.js +0 -222
- package/dist/ui/entries/DiffView.d.ts +0 -61
- package/dist/ui/entries/DiffView.js +0 -103
- package/dist/ui/entries/EntryFrame.d.ts +0 -23
- package/dist/ui/entries/EntryFrame.js +0 -6
- package/dist/ui/entries/FastCard.d.ts +0 -53
- package/dist/ui/entries/FastCard.js +0 -105
- package/dist/ui/entries/GovernanceCard.d.ts +0 -30
- package/dist/ui/entries/GovernanceCard.js +0 -32
- package/dist/ui/entries/InvocationCard.d.ts +0 -20
- package/dist/ui/entries/InvocationCard.js +0 -32
- package/dist/ui/entries/QueuedEntry.d.ts +0 -27
- package/dist/ui/entries/QueuedEntry.js +0 -33
- package/dist/ui/entries/RetryCard.d.ts +0 -56
- package/dist/ui/entries/RetryCard.js +0 -60
- package/dist/ui/entries/ServiceCard.d.ts +0 -82
- package/dist/ui/entries/ServiceCard.js +0 -151
- package/dist/ui/entries/TeamCard.d.ts +0 -55
- package/dist/ui/entries/TeamCard.js +0 -94
- package/dist/ui/entries/TodoCard.d.ts +0 -54
- package/dist/ui/entries/TodoCard.js +0 -98
- package/dist/ui/entries/ToolCard.d.ts +0 -81
- package/dist/ui/entries/ToolCard.js +0 -169
- package/dist/ui/entries/ToolPreview.d.ts +0 -59
- package/dist/ui/entries/ToolPreview.js +0 -208
- package/dist/ui/entries/UserEntry.d.ts +0 -36
- package/dist/ui/entries/UserEntry.js +0 -57
- package/dist/ui/entries/WaitCard.d.ts +0 -37
- package/dist/ui/entries/WaitCard.js +0 -92
- package/dist/ui/exit-snapshot.d.ts +0 -43
- package/dist/ui/exit-snapshot.js +0 -26
- package/dist/ui/frame-differ.d.ts +0 -166
- package/dist/ui/frame-differ.js +0 -354
- package/dist/ui/frame-observer.d.ts +0 -17
- package/dist/ui/frame-observer.js +0 -94
- package/dist/ui/frame-parser.d.ts +0 -7
- package/dist/ui/frame-parser.js +0 -18
- package/dist/ui/gauge.d.ts +0 -39
- package/dist/ui/gauge.js +0 -55
- package/dist/ui/glyphs.d.ts +0 -178
- package/dist/ui/glyphs.js +0 -165
- package/dist/ui/governance-copy.d.ts +0 -69
- package/dist/ui/governance-copy.js +0 -104
- package/dist/ui/governance-status.d.ts +0 -145
- package/dist/ui/governance-status.js +0 -326
- package/dist/ui/gradient.d.ts +0 -11
- package/dist/ui/gradient.js +0 -50
- package/dist/ui/ink-runtime.d.ts +0 -4
- package/dist/ui/ink-runtime.js +0 -51
- package/dist/ui/interaction-copy.d.ts +0 -84
- package/dist/ui/interaction-copy.js +0 -41
- package/dist/ui/interaction-hints.d.ts +0 -44
- package/dist/ui/interaction-hints.js +0 -97
- package/dist/ui/layout/AppShell.d.ts +0 -17
- package/dist/ui/layout/AppShell.js +0 -6
- package/dist/ui/layout/Gutter.d.ts +0 -67
- package/dist/ui/layout/Gutter.js +0 -42
- package/dist/ui/layout/MeasuredEntry.d.ts +0 -21
- package/dist/ui/layout/MeasuredEntry.js +0 -30
- package/dist/ui/layout/OverlayFrame.d.ts +0 -73
- package/dist/ui/layout/OverlayFrame.js +0 -110
- package/dist/ui/layout/ScrollIndicator.d.ts +0 -32
- package/dist/ui/layout/ScrollIndicator.js +0 -22
- package/dist/ui/layout/ScrollViewport.d.ts +0 -40
- package/dist/ui/layout/ScrollViewport.js +0 -222
- package/dist/ui/layout/agents-board.d.ts +0 -102
- package/dist/ui/layout/agents-board.js +0 -389
- package/dist/ui/layout/autocomplete.d.ts +0 -18
- package/dist/ui/layout/autocomplete.js +0 -26
- package/dist/ui/layout/budget.d.ts +0 -43
- package/dist/ui/layout/budget.js +0 -52
- package/dist/ui/layout/cells.d.ts +0 -61
- package/dist/ui/layout/cells.js +0 -156
- package/dist/ui/layout/document-layout.d.ts +0 -13
- package/dist/ui/layout/document-layout.js +0 -10
- package/dist/ui/layout/follow-state.d.ts +0 -138
- package/dist/ui/layout/follow-state.js +0 -148
- package/dist/ui/layout/frame.d.ts +0 -36
- package/dist/ui/layout/frame.js +0 -39
- package/dist/ui/layout/governance-board.d.ts +0 -121
- package/dist/ui/layout/governance-board.js +0 -382
- package/dist/ui/layout/governance-card.d.ts +0 -53
- package/dist/ui/layout/governance-card.js +0 -134
- package/dist/ui/layout/governance-chip.d.ts +0 -38
- package/dist/ui/layout/governance-chip.js +0 -64
- package/dist/ui/layout/governance-panel.d.ts +0 -85
- package/dist/ui/layout/governance-panel.js +0 -358
- package/dist/ui/layout/governance-roster.d.ts +0 -65
- package/dist/ui/layout/governance-roster.js +0 -275
- package/dist/ui/layout/header-hints.d.ts +0 -90
- package/dist/ui/layout/header-hints.js +0 -110
- package/dist/ui/layout/header-left.d.ts +0 -115
- package/dist/ui/layout/header-left.js +0 -206
- package/dist/ui/layout/invocation-card.d.ts +0 -41
- package/dist/ui/layout/invocation-card.js +0 -91
- package/dist/ui/layout/kit-chip.d.ts +0 -50
- package/dist/ui/layout/kit-chip.js +0 -81
- package/dist/ui/layout/overlay-window.d.ts +0 -43
- package/dist/ui/layout/overlay-window.js +0 -51
- package/dist/ui/layout/queue-layout.d.ts +0 -19
- package/dist/ui/layout/queue-layout.js +0 -26
- package/dist/ui/layout/rail.d.ts +0 -7
- package/dist/ui/layout/rail.js +0 -16
- package/dist/ui/layout/scroll-indicator.d.ts +0 -27
- package/dist/ui/layout/scroll-indicator.js +0 -36
- package/dist/ui/layout/scroll.d.ts +0 -37
- package/dist/ui/layout/scroll.js +0 -99
- package/dist/ui/layout/scrollbar-geometry.d.ts +0 -17
- package/dist/ui/layout/scrollbar-geometry.js +0 -13
- package/dist/ui/layout/session-chip.d.ts +0 -52
- package/dist/ui/layout/session-chip.js +0 -64
- package/dist/ui/layout/shortcut-panel-layout.d.ts +0 -191
- package/dist/ui/layout/shortcut-panel-layout.js +0 -321
- package/dist/ui/layout/status-detail-layout.d.ts +0 -9
- package/dist/ui/layout/status-detail-layout.js +0 -79
- package/dist/ui/layout/status-layout.d.ts +0 -140
- package/dist/ui/layout/status-layout.js +0 -262
- package/dist/ui/layout/task-summary-cell.d.ts +0 -61
- package/dist/ui/layout/task-summary-cell.js +0 -65
- package/dist/ui/layout/team-panel.d.ts +0 -18
- package/dist/ui/layout/team-panel.js +0 -25
- package/dist/ui/layout/team-row.d.ts +0 -139
- package/dist/ui/layout/team-row.js +0 -246
- package/dist/ui/layout/todo-layout.d.ts +0 -62
- package/dist/ui/layout/todo-layout.js +0 -102
- package/dist/ui/layout/useTerminalSize.d.ts +0 -13
- package/dist/ui/layout/useTerminalSize.js +0 -50
- package/dist/ui/layout/viewport-geometry.d.ts +0 -29
- package/dist/ui/layout/viewport-geometry.js +0 -28
- package/dist/ui/layout/virtual-window.d.ts +0 -112
- package/dist/ui/layout/virtual-window.js +0 -494
- package/dist/ui/layout/wait-bar.d.ts +0 -34
- package/dist/ui/layout/wait-bar.js +0 -48
- package/dist/ui/layout/wrap-rows.d.ts +0 -26
- package/dist/ui/layout/wrap-rows.js +0 -88
- package/dist/ui/live-clamp.d.ts +0 -14
- package/dist/ui/live-clamp.js +0 -46
- package/dist/ui/markdown-blocks.d.ts +0 -107
- package/dist/ui/markdown-blocks.js +0 -240
- package/dist/ui/overlays/AgentsBoardOverlay.d.ts +0 -57
- package/dist/ui/overlays/AgentsBoardOverlay.js +0 -183
- package/dist/ui/overlays/ConfirmDialog.d.ts +0 -31
- package/dist/ui/overlays/ConfirmDialog.js +0 -44
- package/dist/ui/overlays/GovernanceBoardOverlay.d.ts +0 -41
- package/dist/ui/overlays/GovernanceBoardOverlay.js +0 -76
- package/dist/ui/overlays/GovernanceSettingsPage.d.ts +0 -48
- package/dist/ui/overlays/GovernanceSettingsPage.js +0 -93
- package/dist/ui/overlays/HelpOverlay.d.ts +0 -29
- package/dist/ui/overlays/HelpOverlay.js +0 -232
- package/dist/ui/overlays/KitEditor.d.ts +0 -23
- package/dist/ui/overlays/KitEditor.js +0 -101
- package/dist/ui/overlays/KitManager.d.ts +0 -23
- package/dist/ui/overlays/KitManager.js +0 -104
- package/dist/ui/overlays/KitPicker.d.ts +0 -49
- package/dist/ui/overlays/KitPicker.js +0 -58
- package/dist/ui/overlays/ModelDiscoveryList.d.ts +0 -23
- package/dist/ui/overlays/ModelDiscoveryList.js +0 -161
- package/dist/ui/overlays/ModelPicker.d.ts +0 -26
- package/dist/ui/overlays/ModelPicker.js +0 -63
- package/dist/ui/overlays/ModelProfileEditor.d.ts +0 -29
- package/dist/ui/overlays/ModelProfileEditor.js +0 -168
- package/dist/ui/overlays/ModelProfilePicker.d.ts +0 -48
- package/dist/ui/overlays/ModelProfilePicker.js +0 -231
- package/dist/ui/overlays/PlanReviewOverlay.d.ts +0 -51
- package/dist/ui/overlays/PlanReviewOverlay.js +0 -132
- package/dist/ui/overlays/PromptEditorPage.d.ts +0 -48
- package/dist/ui/overlays/PromptEditorPage.js +0 -227
- package/dist/ui/overlays/PromptLibraryOverlay.d.ts +0 -37
- package/dist/ui/overlays/PromptLibraryOverlay.js +0 -191
- package/dist/ui/overlays/PromptPicker.d.ts +0 -36
- package/dist/ui/overlays/PromptPicker.js +0 -129
- package/dist/ui/overlays/PromptTextArea.d.ts +0 -86
- package/dist/ui/overlays/PromptTextArea.js +0 -141
- package/dist/ui/overlays/QuestionOverlay.d.ts +0 -39
- package/dist/ui/overlays/QuestionOverlay.js +0 -258
- package/dist/ui/overlays/QueueOverlay.d.ts +0 -22
- package/dist/ui/overlays/QueueOverlay.js +0 -79
- package/dist/ui/overlays/SettingsScreen.d.ts +0 -228
- package/dist/ui/overlays/SettingsScreen.js +0 -1037
- package/dist/ui/overlays/ShortcutPanel.d.ts +0 -39
- package/dist/ui/overlays/ShortcutPanel.js +0 -106
- package/dist/ui/overlays/TeamFanoutPage.d.ts +0 -51
- package/dist/ui/overlays/TeamFanoutPage.js +0 -90
- package/dist/ui/overlays/governance-settings.d.ts +0 -79
- package/dist/ui/overlays/governance-settings.js +0 -140
- package/dist/ui/overlays/kit-picker-state.d.ts +0 -87
- package/dist/ui/overlays/kit-picker-state.js +0 -136
- package/dist/ui/overlays/kit-settings-state.d.ts +0 -129
- package/dist/ui/overlays/kit-settings-state.js +0 -268
- package/dist/ui/overlays/model-probe-view.d.ts +0 -128
- package/dist/ui/overlays/model-probe-view.js +0 -225
- package/dist/ui/overlays/model-profile-state.d.ts +0 -177
- package/dist/ui/overlays/model-profile-state.js +0 -301
- package/dist/ui/overlays/prompt-library-state.d.ts +0 -162
- package/dist/ui/overlays/prompt-library-state.js +0 -335
- package/dist/ui/overlays/prompt-picker-state.d.ts +0 -71
- package/dist/ui/overlays/prompt-picker-state.js +0 -98
- package/dist/ui/overlays/team-fanout-state.d.ts +0 -106
- package/dist/ui/overlays/team-fanout-state.js +0 -155
- package/dist/ui/overlays/use-model-probe.d.ts +0 -30
- package/dist/ui/overlays/use-model-probe.js +0 -109
- package/dist/ui/palettes.d.ts +0 -112
- package/dist/ui/palettes.js +0 -130
- package/dist/ui/paste-frames.d.ts +0 -91
- package/dist/ui/paste-frames.js +0 -117
- package/dist/ui/paste-tokens.d.ts +0 -90
- package/dist/ui/paste-tokens.js +0 -147
- package/dist/ui/render-cache.d.ts +0 -81
- package/dist/ui/render-cache.js +0 -196
- package/dist/ui/render-governor.d.ts +0 -54
- package/dist/ui/render-governor.js +0 -78
- package/dist/ui/run-metrics.d.ts +0 -23
- package/dist/ui/run-metrics.js +0 -27
- package/dist/ui/run-status-row.d.ts +0 -63
- package/dist/ui/run-status-row.js +0 -54
- package/dist/ui/screen.d.ts +0 -107
- package/dist/ui/screen.js +0 -234
- package/dist/ui/scrollback/LiveTail.d.ts +0 -115
- package/dist/ui/scrollback/LiveTail.js +0 -48
- package/dist/ui/scrollback/band.d.ts +0 -114
- package/dist/ui/scrollback/band.js +0 -143
- package/dist/ui/scrollback/budget.d.ts +0 -90
- package/dist/ui/scrollback/budget.js +0 -100
- package/dist/ui/scrollback/canvas.d.ts +0 -100
- package/dist/ui/scrollback/canvas.js +0 -114
- package/dist/ui/scrollback/cursor-probe.d.ts +0 -71
- package/dist/ui/scrollback/cursor-probe.js +0 -133
- package/dist/ui/scrollback/drain.d.ts +0 -32
- package/dist/ui/scrollback/drain.js +0 -64
- package/dist/ui/scrollback/exit-summary.d.ts +0 -23
- package/dist/ui/scrollback/exit-summary.js +0 -25
- package/dist/ui/scrollback/limits.d.ts +0 -98
- package/dist/ui/scrollback/limits.js +0 -98
- package/dist/ui/scrollback/live-preview.d.ts +0 -34
- package/dist/ui/scrollback/live-preview.js +0 -130
- package/dist/ui/scrollback/overflow-print.d.ts +0 -108
- package/dist/ui/scrollback/overflow-print.js +0 -120
- package/dist/ui/scrollback/renderer.d.ts +0 -48
- package/dist/ui/scrollback/renderer.js +0 -186
- package/dist/ui/scrollback/scrollback-writer.d.ts +0 -174
- package/dist/ui/scrollback/scrollback-writer.js +0 -648
- package/dist/ui/scrollback/settled-boundary.d.ts +0 -42
- package/dist/ui/scrollback/settled-boundary.js +0 -109
- package/dist/ui/scrollback/tail-anchor.d.ts +0 -71
- package/dist/ui/scrollback/tail-anchor.js +0 -79
- package/dist/ui/scrollback/tail-window.d.ts +0 -73
- package/dist/ui/scrollback/tail-window.js +0 -89
- package/dist/ui/scrollback/use-scrollback-view.d.ts +0 -139
- package/dist/ui/scrollback/use-scrollback-view.js +0 -601
- package/dist/ui/scrollback/writer-shapes.d.ts +0 -127
- package/dist/ui/scrollback/writer-shapes.js +0 -159
- package/dist/ui/scrollbar-controller.d.ts +0 -30
- package/dist/ui/scrollbar-controller.js +0 -124
- package/dist/ui/selection/highlight.d.ts +0 -39
- package/dist/ui/selection/highlight.js +0 -64
- package/dist/ui/selection/screen-mirror.d.ts +0 -24
- package/dist/ui/selection/screen-mirror.js +0 -35
- package/dist/ui/selection/selection-controller.d.ts +0 -104
- package/dist/ui/selection/selection-controller.js +0 -372
- package/dist/ui/selection/selection.d.ts +0 -90
- package/dist/ui/selection/selection.js +0 -223
- package/dist/ui/shortcuts.d.ts +0 -81
- package/dist/ui/shortcuts.js +0 -221
- package/dist/ui/status-feedback.d.ts +0 -35
- package/dist/ui/status-feedback.js +0 -38
- package/dist/ui/stdout-frame-writer.d.ts +0 -74
- package/dist/ui/stdout-frame-writer.js +0 -155
- package/dist/ui/team-status.d.ts +0 -166
- package/dist/ui/team-status.js +0 -252
- package/dist/ui/terminal-plan.d.ts +0 -52
- package/dist/ui/terminal-plan.js +0 -49
- package/dist/ui/theme.d.ts +0 -96
- package/dist/ui/theme.js +0 -130
- package/dist/ui/transcript-text.d.ts +0 -41
- package/dist/ui/transcript-text.js +0 -282
- package/dist/ui/use-height-store.d.ts +0 -31
- package/dist/ui/use-height-store.js +0 -76
- package/dist/ui/use-render-governor.d.ts +0 -39
- package/dist/ui/use-render-governor.js +0 -57
- package/dist/ui/use-wheel-routing.d.ts +0 -57
- package/dist/ui/use-wheel-routing.js +0 -152
- package/dist/ui/win-vt-force.d.ts +0 -136
- package/dist/ui/win-vt-force.js +0 -237
- package/dist/ui/win-vt-input.d.ts +0 -57
- package/dist/ui/win-vt-input.js +0 -62
- package/dist/update/limits.d.ts +0 -111
- package/dist/update/limits.js +0 -111
- package/dist/update/semver.d.ts +0 -89
- package/dist/update/semver.js +0 -295
- package/dist/update/types.d.ts +0 -169
- package/dist/update/types.js +0 -68
- /package/dist/{ui → app}/session-bridge.d.ts +0 -0
- /package/dist/{ui → app}/session-bridge.js +0 -0
|
@@ -1,232 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Text } from 'ink';
|
|
3
|
-
import { pickGlyphs } from '../glyphs.js';
|
|
4
|
-
const KEY_PAD = 24;
|
|
5
|
-
/**
|
|
6
|
-
* Rows that only make sense when the APPLICATION scrolls and selects. In native
|
|
7
|
-
* scroll mode (tui-native-terminal-scroll §4.7) the terminal does both, so they are
|
|
8
|
-
* dropped and one honest row replaces them.
|
|
9
|
-
*/
|
|
10
|
-
const APP_SCROLL_ROWS = new Set([
|
|
11
|
-
'Shift+Up / Shift+Down', 'Wheel', 'Shift+Wheel', 'Drag right edge', '^N',
|
|
12
|
-
'Drag text (left button)', 'Ctrl+C (with a selection)',
|
|
13
|
-
]);
|
|
14
|
-
function keyRows(times, native = false) {
|
|
15
|
-
const all = allKeyRows(times);
|
|
16
|
-
if (!native)
|
|
17
|
-
return all;
|
|
18
|
-
return all
|
|
19
|
-
.filter(([key]) => !APP_SCROLL_ROWS.has(key))
|
|
20
|
-
.map(([key, description]) => key === 'PgUp / PgDn' ? [key, 'Page through an open overlay'] : [key, description])
|
|
21
|
-
.concat([['Scroll', 'Use your terminal (wheel, Shift+PgUp, scrollbar, search)']]);
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* The key column of every binding row, EXPORTED so the drawer's drift guard can read
|
|
25
|
-
* the real table instead of scraping this file with a regex
|
|
26
|
-
* (tui-shortcut-drawer-and-task-summary D-8 / AC-5).
|
|
27
|
-
*
|
|
28
|
-
* A SOURCE SCRAPE WOULD PASS ON A COMMENT: the regex has no way to tell a key row
|
|
29
|
-
* from a legend row from a line inside a block comment, and the guard's whole job is
|
|
30
|
-
* to notice a row someone forgot.
|
|
31
|
-
*/
|
|
32
|
-
export function allKeyRows(times) {
|
|
33
|
-
return [
|
|
34
|
-
['Enter', 'Submit (idle) / queue steering (running); re-pins to the newest output'],
|
|
35
|
-
['Alt+Enter / Shift+Enter', 'Newline when supported; the host may intercept either binding'],
|
|
36
|
-
['Ctrl+J', 'Newline fallback; /terminal-setup explains Shift+Enter binding'],
|
|
37
|
-
['Esc', 'Close menu / overlay'],
|
|
38
|
-
['Esc twice', 'Interrupt run (within 1.5s)'],
|
|
39
|
-
['Esc again', 'Force-stop after requesting interruption'],
|
|
40
|
-
// BOTH KEYS ARE LISTED HERE, and this row is why (shift-tab-mode-toggle-
|
|
41
|
-
// still-dead-on-windows, review R-7). The hint row above the composer is the
|
|
42
|
-
// other place the fallback is named, and it has two off-switches - a short
|
|
43
|
-
// terminal (`showHint`) and `hints: false`. A key that only exists behind
|
|
44
|
-
// either of them is a key the affected user never learns about, which is the
|
|
45
|
-
// one-shot notice's failure repeated with a different switch.
|
|
46
|
-
// BOTH KEYS ARE SPELLED OUT, and `Ctrl+N` is written in FULL: `^N` is this
|
|
47
|
-
// product's word for transcript line offset (the header chip and the row below),
|
|
48
|
-
// so abbreviating the mode fallback would put two meanings of `^` on one screen
|
|
49
|
-
// (quick-prompt-library D-1 / P1-7).
|
|
50
|
-
['Shift+Tab / Ctrl+N', 'Cycle BUILD / PLAN / GOVERN / PLAN+GOVERN (/plan and /gov pick one)'],
|
|
51
|
-
['Ctrl+P', 'Quick prompt library: manage, create, reorder, pick'],
|
|
52
|
-
// The ladder clears a draft first (ctrl-c-clear-draft-exit):
|
|
53
|
-
// with a draft x2 clears the input and x3 exits; an empty input
|
|
54
|
-
// keeps the previous x2 exit.
|
|
55
|
-
['Ctrl+C', `Draft: ${times}2 clear input, ${times}3 exit. Empty: ${times}2 exit`],
|
|
56
|
-
// Ctrl+L IS THE BRANCH KEY NOW (tui-branch-terminal-shortcut D-1) and the
|
|
57
|
-
// redraw moved to Ctrl+R. Both rows are listed, because the migration is the
|
|
58
|
-
// one thing an existing user will press by muscle memory and be surprised by.
|
|
59
|
-
['Ctrl+L', 'Open a new terminal on this session (the branch gets its own id)'],
|
|
60
|
-
['Ctrl+R', 'Redraw the frame'],
|
|
61
|
-
['Ctrl+T', 'Show/hide thinking (off by default)'],
|
|
62
|
-
['Ctrl+I', 'Build the project index (bundled skill; asks first; needs keyboard enhancement)'],
|
|
63
|
-
// THE KIT KEYS (agent-model-kits D-11 / D-15): `Ctrl+K` moved to the picker
|
|
64
|
-
// and `killToEnd` moved to `Alt+K`. BOTH rows are listed, because an existing
|
|
65
|
-
// user will press the old key by muscle memory and needs to find out where it
|
|
66
|
-
// went - and because `^K` is only advertised in the expanded header row.
|
|
67
|
-
['Ctrl+K', 'Agent kits: pick a preset for this session (see /kit)'],
|
|
68
|
-
['Alt+K', 'Delete from the cursor to the end of the line (was Ctrl+K)'],
|
|
69
|
-
// Ctrl+G OPENED THE STATUS DETAIL ROW UNTIL THE DRAWER TOOK THE KEY
|
|
70
|
-
// (tui-shortcut-drawer-and-task-summary D-6). The detail row did not disappear,
|
|
71
|
-
// it moved to `d` inside this panel, and saying so here is the only place a
|
|
72
|
-
// user's muscle memory can find out.
|
|
73
|
-
['Ctrl+G', 'Keyboard drawer: every shortcut, with keywords (d = status details)'],
|
|
74
|
-
// Ctrl+O WAS MISSING FROM THIS TABLE ENTIRELY while it worked in the app, which
|
|
75
|
-
// is exactly the gap the drawer's reverse drift guard exists to force closed: a
|
|
76
|
-
// key that only exists in the code is a key only its author knows.
|
|
77
|
-
['Ctrl+O', 'Expand the newest tool output (native mode reprints it as a block)'],
|
|
78
|
-
// The board's key is listed HERE and in the team table below: the roster shows
|
|
79
|
-
// `ctrl+b` only on a terminal wide enough for the hint cell, and a key a user can
|
|
80
|
-
// only learn from a wide terminal is a key the rest never discover (AC-18).
|
|
81
|
-
['Ctrl+B', 'Agents board: every subagent, its facts and its timeline (read-only)'],
|
|
82
|
-
['PgUp / PgDn', 'Scroll a page (transcript, or this overlay)'],
|
|
83
|
-
['Shift+Up / Shift+Down', 'Scroll the transcript a line (full-screen mode)'],
|
|
84
|
-
['Wheel', 'Scroll the transcript (or the open overlay)'],
|
|
85
|
-
['Shift+Wheel', 'Scroll the transcript a page'],
|
|
86
|
-
// Drag-select is the one affordance here a user cannot discover by pressing
|
|
87
|
-
// a key, so it has to be named somewhere they can look it up. The one-shot
|
|
88
|
-
// startup notice is the other place, and it scrolls away.
|
|
89
|
-
['Drag right edge', 'Scroll messages; input stays fixed; type to return to newest output'],
|
|
90
|
-
['Bottom rows', 'Fixed input, one status row; Ctrl+G adds one detail row'],
|
|
91
|
-
['C / Th / t/s', 'Context percent / thinking level / run-average output tokens per second'],
|
|
92
|
-
['B / P / P>B', 'Status-row mode word: BUILD / PLAN; CUR>PENDING = switch deferred to run end'],
|
|
93
|
-
['O/N/L/M/H/X', 'Thinking: off/minimal/low/medium/high/xhigh'],
|
|
94
|
-
['~ / ? / --', 'Estimated context / unknown context / unavailable output speed'],
|
|
95
|
-
['Output speed', 'Main Agent reported output tokens / total run time, including tools and waits'],
|
|
96
|
-
['Copy / Sent / E / F', 'Copying / unconfirmed copy sent / copy error / Esc force-stop'],
|
|
97
|
-
['^N', 'Transcript line offset from the bottom, not a new-message count'],
|
|
98
|
-
['Drag text (left button)', 'Select text on screen; the highlight waits'],
|
|
99
|
-
['Ctrl+C (with a selection)', 'Copy the pending selection - does not arm exit'],
|
|
100
|
-
['Native terminal selection', 'Copy-on-select is controlled by your terminal settings'],
|
|
101
|
-
['Queue / /queue', 'Pending receipt; /queue opens full text, PgUp/PgDn pages, Esc closes'],
|
|
102
|
-
['/bg / /todo status', 'Show full service and TODO counts when status fields are hidden'],
|
|
103
|
-
['Queue paused', 'Unreceived messages persist after interruption until accepted or cancelled'],
|
|
104
|
-
['Up / Down', 'Prompt history (empty input)'],
|
|
105
|
-
// Pasting is the one affordance here with no key of its own, so the only
|
|
106
|
-
// place a user can learn what happened to their 218 lines is this row.
|
|
107
|
-
['Paste', 'Inserted as-is up to 6 lines; larger becomes [Pasted text #N] (--no-paste)'],
|
|
108
|
-
];
|
|
109
|
-
}
|
|
110
|
-
const COMMANDS = [
|
|
111
|
-
['/help', 'Show this help'],
|
|
112
|
-
// THE DRAWER'S COMMAND-SIDE ENTRY (tui-shortcut-drawer-and-task-summary §4.7).
|
|
113
|
-
// Listed here as well as behind Ctrl+G, because a key is unreachable in a script
|
|
114
|
-
// and `/keys` is how a paste or a screen reader gets to the same list.
|
|
115
|
-
['/keys [query]', 'List every shortcut in the drawer; a query pre-filters it'],
|
|
116
|
-
['/task', 'Show the header task summary: what it says, where it came from'],
|
|
117
|
-
['/task refresh', 'Regenerate the header task summary from the last prompt'],
|
|
118
|
-
['/model', 'Open the model picker'],
|
|
119
|
-
['/settings', 'Open the settings screen'],
|
|
120
|
-
['/plan [on|off|status]', 'Toggle plan mode (leaves GOVERN)'],
|
|
121
|
-
['/gov [on|plan|off|board|status]', 'Governed team: enter, leave, the board, the run status'],
|
|
122
|
-
['/theme <name>', 'auto | warm | cool | light'],
|
|
123
|
-
['/thinking <level>', 'Set thinking level'],
|
|
124
|
-
['/max-tokens [n|auto]', 'Output token cap; no argument reports the effective one'],
|
|
125
|
-
['/team [on|off|<brief>]', 'Force team mode and start now: /team <brief> fans out'],
|
|
126
|
-
['/fast [on|off|model|review]', 'Fast model tier: status, switch, model, review cadence'],
|
|
127
|
-
['/kit [list|use <name>]', 'Agent kits: what is in effect, list them, use one for this session'],
|
|
128
|
-
[
|
|
129
|
-
'/todo [on|off|panel|follow|clear|continue]',
|
|
130
|
-
'Todo planning: status, switches, the rail, follow-through',
|
|
131
|
-
],
|
|
132
|
-
['/tools', 'List active tools'],
|
|
133
|
-
// `/clear` IS NOT "CLEAR THE SCREEN" ANY MORE (clear-command-context-reset D-1).
|
|
134
|
-
// Two rows, not one, because the intentions differ: `/clear` starts a NEW
|
|
135
|
-
// CONVERSATION (interrupt the run, archive the old one, drop the history), while
|
|
136
|
-
// `/clear screen` only wipes what is on screen. A user who wants the second has
|
|
137
|
-
// to be able to see that it exists before reaching for the first.
|
|
138
|
-
['/clear', 'Start a new conversation: archive, then clear context and transcript'],
|
|
139
|
-
['/clear screen', 'Clear the visible transcript only; keeps the conversation'],
|
|
140
|
-
['/reset', 'Alias of /clear'],
|
|
141
|
-
['/cwd [dir]', 'Show or change the tool working directory'],
|
|
142
|
-
['/save [file]', 'Export the session to JSON (a file you keep)'],
|
|
143
|
-
['/resume [file]', 'Load a saved session; this session moves to a new id'],
|
|
144
|
-
['/session [copy|pin]', 'Show this session id and file; copy the resume command; pin it'],
|
|
145
|
-
['/branch', 'Same as Ctrl+L: branch into a new terminal'],
|
|
146
|
-
['/copy', 'Copy last answer; native completion confirmed, OSC 52 request unconfirmed'],
|
|
147
|
-
['/queue', 'Read every pending message in full; no replay or queue mutation'],
|
|
148
|
-
['/prompts', 'Quick prompt library: pick one and fill the draft (Enter fills)'],
|
|
149
|
-
['/agents', 'Open the subagent board: every child, its facts and its timeline'],
|
|
150
|
-
['/prompts list | add | edit | rm', 'Manage the library; `add` opens the editor'],
|
|
151
|
-
['/prompts move <n> <to> | sort',
|
|
152
|
-
'Reorder by hand, or rewrite the order by name/recent/favorite'],
|
|
153
|
-
['/mouse [on|off]', 'Release the mouse to your terminal, or take it back'],
|
|
154
|
-
['/terminal-setup', 'Show newline key bindings without changing terminal settings'],
|
|
155
|
-
['/exit', 'Exit'],
|
|
156
|
-
];
|
|
157
|
-
const SKILL_ROWS = [
|
|
158
|
-
['/skills', 'List installed skills'],
|
|
159
|
-
['/skills info <name>', 'Show a skill\'s source, files and status'],
|
|
160
|
-
['/skills install <src>', 'Install from a dir, git repo, or https URL'],
|
|
161
|
-
['/skills enable|disable', 'Turn a skill on or off'],
|
|
162
|
-
['/skills policy [mode]', 'Tool ceiling from allowed-tools: off | warn | enforce'],
|
|
163
|
-
['/skills unload', 'Drop the tool ceiling (does not reclaim context)'],
|
|
164
|
-
['/skills usage [--reset]', 'Show or delete the local skill use counters'],
|
|
165
|
-
['/<skill-name> [args]', 'Run a skill directly ($ARGUMENTS / $1..$9)'],
|
|
166
|
-
['skill / skill_install', 'Tools the model uses to load and install skills'],
|
|
167
|
-
];
|
|
168
|
-
const PLAN_ROWS = [
|
|
169
|
-
['Shift+Tab / /plan', 'Switch BUILD (do it now) and PLAN (research first); Shift+Tab also cycles GOVERN'],
|
|
170
|
-
// A ROW OF ITS OWN, not a third name on the line above: the reader who needs
|
|
171
|
-
// this one is the reader whose `Shift+Tab` does nothing, and what they need is
|
|
172
|
-
// the reason, not another synonym. Listing the key in both places instead just
|
|
173
|
-
// says it twice and explains it nowhere.
|
|
174
|
-
['Ctrl+N', 'The same toggle, for Windows consoles that deliver Shift+Tab as a plain Tab'],
|
|
175
|
-
['In PLAN mode', 'write_file, edit_file, bash, skill_install and skill_create are refused'],
|
|
176
|
-
['bash', 'Refused in full, including git status - use read_file / glob / grep'],
|
|
177
|
-
['ask_user', 'The agent asks 1-5 multiple-choice questions; Enter takes the recommendation'],
|
|
178
|
-
['submit_plan', 'The agent submits a plan: a approve, r revise, Esc dismiss'],
|
|
179
|
-
['--plan / --no-plan', 'Start a session in a given mode (also ARAGON_PLAN=1)'],
|
|
180
|
-
];
|
|
181
|
-
const TEAM_ROWS = [
|
|
182
|
-
['task', 'The tool the agent uses to run 2-5 subagents in parallel'],
|
|
183
|
-
['/team <brief>', 'Force it: arms forced mode and starts that work as a turn'],
|
|
184
|
-
['/team on | off', 'Arm it without starting, or leave it; the capability is untouched'],
|
|
185
|
-
['/team', 'Report the forced state, capacity, the model, and where to change it'],
|
|
186
|
-
['-n <n> / --parts a,b', 'Fix the fan-out, or name the split (narrowing is disclosed)'],
|
|
187
|
-
['--read-only', 'Every child refuses writes and shell, for research-only fan-outs'],
|
|
188
|
-
['Team 4 (T4)', 'The status-bar chip - only while the session is armed'],
|
|
189
|
-
['--team / --no-team', 'Start a session with team mode on or off (also ARAGON_TEAM=0)'],
|
|
190
|
-
['team_send / team_wait', 'How subagents message each other; 6 each, one every 15s'],
|
|
191
|
-
['Ctrl+B / /agents', 'The board: every child, its full facts, its 24-event timeline'],
|
|
192
|
-
['Settings > Team', 'Team mode, width (1-10, 8 by default), concurrency, supervisor'],
|
|
193
|
-
];
|
|
194
|
-
const FAST_ROWS = [
|
|
195
|
-
['/fast', 'Status: on/off, the model, the cadence, and this session\'s totals'],
|
|
196
|
-
['/fast on | off', 'Switch the tier for this session (and save it)'],
|
|
197
|
-
['/fast model <id>', 'Set the fast model; accepts provider:model'],
|
|
198
|
-
['/fast same', 'Run the fast tier on the main model'],
|
|
199
|
-
['/fast review <n> | off', 'Turns between automatic reviews, or turn them off'],
|
|
200
|
-
['--fast / --no-fast', 'Start a session with the tier on or off (also ARAGON_FAST=1)'],
|
|
201
|
-
['<fast_review>', 'An automated second opinion from the fast model - advice, not the user'],
|
|
202
|
-
];
|
|
203
|
-
/** The slash-command table's key column, for the same guard (commands are not keys). */
|
|
204
|
-
export function allCommandRows() {
|
|
205
|
-
return COMMANDS;
|
|
206
|
-
}
|
|
207
|
-
/** Build the overlay's rows. Exported so `app.test.tsx` can count them. */
|
|
208
|
-
export function helpRows(theme, caps, native = false) {
|
|
209
|
-
const glyphs = pickGlyphs(caps);
|
|
210
|
-
const rows = [];
|
|
211
|
-
const section = (title) => (_jsx(Text, { wrap: "truncate", color: theme.accent, bold: true, children: title }, `s-${title}`));
|
|
212
|
-
const pair = (k, d) => (_jsxs(Text, { wrap: "truncate", children: [_jsx(Text, { color: theme.primary, children: k.padEnd(KEY_PAD) }), _jsx(Text, { color: theme.muted, children: d })] }, `r-${k}`));
|
|
213
|
-
rows.push(section('Keybindings'));
|
|
214
|
-
for (const [k, d] of keyRows(glyphs.times, native))
|
|
215
|
-
rows.push(pair(k, d));
|
|
216
|
-
rows.push(section('Slash commands'));
|
|
217
|
-
for (const [c, d] of COMMANDS)
|
|
218
|
-
rows.push(pair(c, d));
|
|
219
|
-
rows.push(section('Plan mode'));
|
|
220
|
-
for (const [c, d] of PLAN_ROWS)
|
|
221
|
-
rows.push(pair(c, d));
|
|
222
|
-
rows.push(section('Team subagents'));
|
|
223
|
-
for (const [c, d] of TEAM_ROWS)
|
|
224
|
-
rows.push(pair(c, d));
|
|
225
|
-
rows.push(section('Fast model tier'));
|
|
226
|
-
for (const [c, d] of FAST_ROWS)
|
|
227
|
-
rows.push(pair(c, d));
|
|
228
|
-
rows.push(section('Skills'));
|
|
229
|
-
for (const [c, d] of SKILL_ROWS)
|
|
230
|
-
rows.push(pair(c, d));
|
|
231
|
-
return rows;
|
|
232
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Settings > Kit pack > editor (agent-model-kits §4.5).
|
|
3
|
-
*
|
|
4
|
-
* ASCII ONLY - `src/ui/**` is inside `glyphs.test.ts::inScope`.
|
|
5
|
-
*
|
|
6
|
-
* FOUR ROWS AND TWO ACTIONS, and every slot is an explicit decision (D-8): the
|
|
7
|
-
* Main slot is required, the Fast slot is a two-state choice (`off` is a
|
|
8
|
-
* decision, not an omission), and the Subagent slot reuses the existing
|
|
9
|
-
* `Same as main` / `Fast tier model` vocabulary so the summary sentence the root
|
|
10
|
-
* page already prints (`Fast tier (off - falls back to main)`) needs no second
|
|
11
|
-
* wording. Nothing is written until the ROOT page's Save.
|
|
12
|
-
*/
|
|
13
|
-
import React from 'react';
|
|
14
|
-
import type { ModelProfileState } from './model-profile-state.js';
|
|
15
|
-
import type { KitAction, KitDraft } from './kit-settings-state.js';
|
|
16
|
-
import { type ProfileFrameProps } from './ModelProfilePicker.js';
|
|
17
|
-
interface KitEditorProps extends ProfileFrameProps {
|
|
18
|
-
draft: KitDraft;
|
|
19
|
-
state: ModelProfileState;
|
|
20
|
-
dispatch: React.Dispatch<KitAction>;
|
|
21
|
-
}
|
|
22
|
-
export declare function KitEditor(props: KitEditorProps): React.ReactElement;
|
|
23
|
-
export {};
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
/**
|
|
3
|
-
* Settings > Kit pack > editor (agent-model-kits §4.5).
|
|
4
|
-
*
|
|
5
|
-
* ASCII ONLY - `src/ui/**` is inside `glyphs.test.ts::inScope`.
|
|
6
|
-
*
|
|
7
|
-
* FOUR ROWS AND TWO ACTIONS, and every slot is an explicit decision (D-8): the
|
|
8
|
-
* Main slot is required, the Fast slot is a two-state choice (`off` is a
|
|
9
|
-
* decision, not an omission), and the Subagent slot reuses the existing
|
|
10
|
-
* `Same as main` / `Fast tier model` vocabulary so the summary sentence the root
|
|
11
|
-
* page already prints (`Fast tier (off - falls back to main)`) needs no second
|
|
12
|
-
* wording. Nothing is written until the ROOT page's Save.
|
|
13
|
-
*/
|
|
14
|
-
import { useState } from 'react';
|
|
15
|
-
import { Text, useInput } from 'ink';
|
|
16
|
-
import { pickGlyphs } from '../glyphs.js';
|
|
17
|
-
import { OverlayFrame } from '../layout/OverlayFrame.js';
|
|
18
|
-
import { stripPasteFrames } from '../paste-frames.js';
|
|
19
|
-
import { stripEnterFrames } from '../enter-frames.js';
|
|
20
|
-
import { clipProfileText, useProfileScroll } from './ModelProfilePicker.js';
|
|
21
|
-
const ROWS = ['name', 'main', 'subagent', 'fast', 'save', 'cancel'];
|
|
22
|
-
function slotLabel(draft, state) {
|
|
23
|
-
const entries = state.draft.profiles?.entries ?? [];
|
|
24
|
-
const name = (id) => {
|
|
25
|
-
const entry = id ? entries.find((item) => item.id === id) : undefined;
|
|
26
|
-
// `Profile missing` rather than a blank: a kit can be pointed at a profile
|
|
27
|
-
// that was removed on disk, and the editor is where that gets fixed.
|
|
28
|
-
return entry ? `${entry.provider}:${entry.model} (${entry.name})` : id ? 'Profile missing'
|
|
29
|
-
: '(not set)';
|
|
30
|
-
};
|
|
31
|
-
const subagent = draft.subagent.model === 'main' ? 'Same as main'
|
|
32
|
-
: draft.subagent.model === 'fast' ? 'Fast tier model'
|
|
33
|
-
: name(draft.subagent.modelProfileId);
|
|
34
|
-
return { main: name(draft.mainProfileId), fast: name(draft.fastProfileId),
|
|
35
|
-
subagent };
|
|
36
|
-
}
|
|
37
|
-
export function KitEditor(props) {
|
|
38
|
-
const glyphs = pickGlyphs(props.caps);
|
|
39
|
-
const { draft, dispatch } = props;
|
|
40
|
-
const [index, setIndex] = useState(0);
|
|
41
|
-
const row = ROWS[index];
|
|
42
|
-
const offset = useProfileScroll(props, index);
|
|
43
|
-
const labels = slotLabel(draft, props.state);
|
|
44
|
-
const filled = [draft.mainProfileId, draft.fastProfileId,
|
|
45
|
-
draft.subagent.model !== 'profile' || draft.subagent.modelProfileId]
|
|
46
|
-
.filter(Boolean).length;
|
|
47
|
-
function activate(target) {
|
|
48
|
-
if (target === 'main')
|
|
49
|
-
dispatch({ type: 'kit-slot', slot: 'main' });
|
|
50
|
-
if (target === 'fast')
|
|
51
|
-
dispatch({ type: 'kit-slot', slot: 'fast' });
|
|
52
|
-
if (target === 'subagent')
|
|
53
|
-
dispatch({ type: 'kit-slot', slot: 'subagent' });
|
|
54
|
-
if (target === 'save')
|
|
55
|
-
dispatch({ type: 'kit-save' });
|
|
56
|
-
if (target === 'cancel')
|
|
57
|
-
dispatch({ type: 'kit-cancel' });
|
|
58
|
-
}
|
|
59
|
-
useInput((input, key) => {
|
|
60
|
-
if (props.isActive === false)
|
|
61
|
-
return;
|
|
62
|
-
if (key.escape) {
|
|
63
|
-
dispatch({ type: 'kit-cancel' });
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
if (key.upArrow || (key.tab && key.shift)) {
|
|
67
|
-
setIndex((index - 1 + ROWS.length) % ROWS.length);
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
if (key.downArrow || key.tab) {
|
|
71
|
-
setIndex((index + 1) % ROWS.length);
|
|
72
|
-
return;
|
|
73
|
-
}
|
|
74
|
-
if (key.return) {
|
|
75
|
-
activate(row);
|
|
76
|
-
return;
|
|
77
|
-
}
|
|
78
|
-
if (row !== 'name' || key.ctrl || key.meta)
|
|
79
|
-
return;
|
|
80
|
-
// THE NAME IS THE ONLY TEXT FIELD, and control characters are stripped by the
|
|
81
|
-
// reducer rather than refused here - a pasted name with a newline should
|
|
82
|
-
// become a name, not an error the user cannot see.
|
|
83
|
-
const text = stripPasteFrames(stripEnterFrames(input));
|
|
84
|
-
if (key.backspace || key.delete) {
|
|
85
|
-
dispatch({ type: 'kit-name', value: [...draft.name].slice(0, -1).join('') });
|
|
86
|
-
return;
|
|
87
|
-
}
|
|
88
|
-
if (text)
|
|
89
|
-
dispatch({ type: 'kit-name', value: `${draft.name}${text}` });
|
|
90
|
-
});
|
|
91
|
-
const lines = [`Name ${draft.name}`,
|
|
92
|
-
`Main profile ${labels.main}`,
|
|
93
|
-
`Subagent ${labels.subagent}`,
|
|
94
|
-
`Fast tier ${draft.fastProfileId ? labels.fast : 'off (this kit turns it off)'}`,
|
|
95
|
-
`Save (${filled} slots set)`, 'Cancel'];
|
|
96
|
-
const rows = lines.map((line, at) => (_jsx(Text, { wrap: "truncate", color: at === index ? props.theme.accent : props.theme.muted, children: `${at === index ? glyphs.caret : ' '} ${clipProfileText(line, props.cols - 8)}` }, at)));
|
|
97
|
-
if (draft.error) {
|
|
98
|
-
rows.push(_jsx(Text, { wrap: "truncate", color: props.theme.noticeError, children: clipProfileText(draft.error, props.cols - 8) }, "error"));
|
|
99
|
-
}
|
|
100
|
-
return _jsx(OverlayFrame, { ...props, title: draft.id ? 'Edit kit' : 'New kit', hint: "Enter choose | type to rename | Esc back", rows: rows, scrollOffset: offset });
|
|
101
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Settings > Kit pack: the manager page (agent-model-kits §4.5 / D-9).
|
|
3
|
-
*
|
|
4
|
-
* ASCII ONLY - `src/ui/**` is inside `glyphs.test.ts::inScope`.
|
|
5
|
-
*
|
|
6
|
-
* CRUD LIVES HERE AND NOWHERE ELSE: `New kit` and `e` open the editor, `d` asks
|
|
7
|
-
* a confirmation that NAMES the consequences, `s` runs exit A (three slots plus
|
|
8
|
-
* the persisted pointer, because a default that only moved a pointer would not
|
|
9
|
-
* be in effect at the next launch - RV-P0-3), and `Enter` applies a kit to the
|
|
10
|
-
* transaction draft. Nothing on this page writes the config file.
|
|
11
|
-
*/
|
|
12
|
-
import React from 'react';
|
|
13
|
-
import { type ProfileFrameProps } from './ModelProfilePicker.js';
|
|
14
|
-
import type { KitAction, KitManagerRow } from './kit-settings-state.js';
|
|
15
|
-
interface KitManagerProps extends ProfileFrameProps {
|
|
16
|
-
rows: KitManagerRow[];
|
|
17
|
-
error?: string;
|
|
18
|
-
dispatch: React.Dispatch<KitAction>;
|
|
19
|
-
/** Leave the kit pages entirely: `Esc` here means "back to Settings". */
|
|
20
|
-
onBack: () => void;
|
|
21
|
-
}
|
|
22
|
-
export declare function KitManager(props: KitManagerProps): React.ReactElement;
|
|
23
|
-
export {};
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
/**
|
|
3
|
-
* Settings > Kit pack: the manager page (agent-model-kits §4.5 / D-9).
|
|
4
|
-
*
|
|
5
|
-
* ASCII ONLY - `src/ui/**` is inside `glyphs.test.ts::inScope`.
|
|
6
|
-
*
|
|
7
|
-
* CRUD LIVES HERE AND NOWHERE ELSE: `New kit` and `e` open the editor, `d` asks
|
|
8
|
-
* a confirmation that NAMES the consequences, `s` runs exit A (three slots plus
|
|
9
|
-
* the persisted pointer, because a default that only moved a pointer would not
|
|
10
|
-
* be in effect at the next launch - RV-P0-3), and `Enter` applies a kit to the
|
|
11
|
-
* transaction draft. Nothing on this page writes the config file.
|
|
12
|
-
*/
|
|
13
|
-
import { useState } from 'react';
|
|
14
|
-
import { Text, useInput } from 'ink';
|
|
15
|
-
import { pickGlyphs } from '../glyphs.js';
|
|
16
|
-
import { OverlayFrame } from '../layout/OverlayFrame.js';
|
|
17
|
-
import { clipProfileText, useProfileScroll } from './ModelProfilePicker.js';
|
|
18
|
-
/** `New kit` first, then one row per kit, then the three actions. */
|
|
19
|
-
const NEW_KIT = 'New kit';
|
|
20
|
-
const ACTIONS = ['Duplicate', 'Delete', 'Set default'];
|
|
21
|
-
export function KitManager(props) {
|
|
22
|
-
const glyphs = pickGlyphs(props.caps);
|
|
23
|
-
const [index, setIndex] = useState(0);
|
|
24
|
-
// NULL, NOT THE FIRST KIT: `selected` is "the last kit the cursor was on", and
|
|
25
|
-
// starting it at `rows[0]` would let `d` on the `New kit` row delete a kit the
|
|
26
|
-
// user never pointed at.
|
|
27
|
-
const [selected, setSelected] = useState(null);
|
|
28
|
-
const count = props.rows.length + 1 + ACTIONS.length;
|
|
29
|
-
const cursor = Math.min(index, count - 1);
|
|
30
|
-
const focused = props.rows[cursor - 1];
|
|
31
|
-
const offset = useProfileScroll(props, cursor);
|
|
32
|
-
const current = focused?.id ?? selected;
|
|
33
|
-
function action(name) {
|
|
34
|
-
if (!current)
|
|
35
|
-
return;
|
|
36
|
-
if (name === 'Duplicate')
|
|
37
|
-
props.dispatch({ type: 'kit-duplicate', id: current });
|
|
38
|
-
if (name === 'Delete')
|
|
39
|
-
props.dispatch({ type: 'kit-delete', id: current });
|
|
40
|
-
// EXIT A, NOT A POINTER WRITE (RV-P0-3): the three slots and the pointer move
|
|
41
|
-
// together, because "the default" IS the disk binding (D-13).
|
|
42
|
-
if (name === 'Set default')
|
|
43
|
-
props.dispatch({ type: 'kit-default', id: current });
|
|
44
|
-
}
|
|
45
|
-
useInput((input, key) => {
|
|
46
|
-
if (props.isActive === false)
|
|
47
|
-
return;
|
|
48
|
-
if (key.escape) {
|
|
49
|
-
props.onBack();
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
if (key.upArrow || (key.tab && key.shift)) {
|
|
53
|
-
const next = (cursor - 1 + count) % count;
|
|
54
|
-
setIndex(next);
|
|
55
|
-
if (props.rows[next - 1])
|
|
56
|
-
setSelected(props.rows[next - 1].id);
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
if (key.downArrow || key.tab) {
|
|
60
|
-
const next = (cursor + 1) % count;
|
|
61
|
-
setIndex(next);
|
|
62
|
-
if (props.rows[next - 1])
|
|
63
|
-
setSelected(props.rows[next - 1].id);
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
if (key.return) {
|
|
67
|
-
if (cursor === 0) {
|
|
68
|
-
props.dispatch({ type: 'kit-open', id: null });
|
|
69
|
-
return;
|
|
70
|
-
}
|
|
71
|
-
if (focused) {
|
|
72
|
-
props.dispatch({ type: 'kit-apply', id: focused.id });
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
action(ACTIONS[cursor - 1 - props.rows.length]);
|
|
76
|
-
return;
|
|
77
|
-
}
|
|
78
|
-
if (key.ctrl || key.meta)
|
|
79
|
-
return;
|
|
80
|
-
const letter = input.toLowerCase();
|
|
81
|
-
// `e` opens the focused kit; `d` and `s` are the two destructive/intent-bearing
|
|
82
|
-
// single keys. ALL THREE require a focused KIT ROW, so none of them can fire
|
|
83
|
-
// from `New kit` or from the action rows at the bottom.
|
|
84
|
-
if (!focused)
|
|
85
|
-
return;
|
|
86
|
-
if (letter === 'e') {
|
|
87
|
-
props.dispatch({ type: 'kit-open', id: focused.id });
|
|
88
|
-
return;
|
|
89
|
-
}
|
|
90
|
-
if (letter === 'd') {
|
|
91
|
-
props.dispatch({ type: 'kit-delete', id: focused.id });
|
|
92
|
-
return;
|
|
93
|
-
}
|
|
94
|
-
if (letter === 's')
|
|
95
|
-
action('Set default');
|
|
96
|
-
});
|
|
97
|
-
const lines = [NEW_KIT, ...props.rows.map((row) => `${row.label} ${row.summary}`),
|
|
98
|
-
...ACTIONS];
|
|
99
|
-
const rows = lines.map((line, at) => (_jsx(Text, { wrap: "truncate", color: at === cursor ? props.theme.accent : props.theme.muted, children: `${at === cursor ? glyphs.caret : ' '} ${clipProfileText(line, props.cols - 8)}` }, at)));
|
|
100
|
-
if (!props.rows.length) {
|
|
101
|
-
rows.push(_jsx(Text, { wrap: "truncate", color: props.theme.muted, children: clipProfileText('No kits yet. Press Enter on New kit to build one from this setup.', props.cols - 8) }, "empty"));
|
|
102
|
-
}
|
|
103
|
-
return _jsx(OverlayFrame, { ...props, title: props.error ?? 'Agent kits', hint: "Enter apply | e edit | d delete | s set default | Esc back", rows: rows, scrollOffset: offset });
|
|
104
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The Agent-kit picker: `ctrl+K` (agent-model-kits §4.6 / D-10 / D-11).
|
|
3
|
-
*
|
|
4
|
-
* ASCII ONLY - `src/ui/**` is inside `glyphs.test.ts::inScope`.
|
|
5
|
-
*
|
|
6
|
-
* A LIST PLUS A DETAIL BLOCK, not one row per kit with three columns: three
|
|
7
|
-
* connections never fit on a 72-column terminal, and the `OverlayFrame` detail
|
|
8
|
-
* idiom is how this package already says everything that does not fit in a row
|
|
9
|
-
* (`ModelProfilePicker`, the compaction card). The list carries names and
|
|
10
|
-
* markers only, so the choice stays scannable at any width.
|
|
11
|
-
*
|
|
12
|
-
* THE OVERLAY IS READ-ONLY (R-11): Enter applies for this session, Esc leaves
|
|
13
|
-
* everything as it was. That is what makes moving `killToEnd` off `Ctrl+K`
|
|
14
|
-
* (D-15) a one-time surprise instead of a risk - a user who presses the old
|
|
15
|
-
* key gets a reversible screen, not a deleted line.
|
|
16
|
-
*/
|
|
17
|
-
import React from 'react';
|
|
18
|
-
import type { ModelProfilesConfig } from '../../config/model-profiles.js';
|
|
19
|
-
import type { CliConfig } from '../../config/schema.js';
|
|
20
|
-
import type { ActiveKit } from '../../config/kit-resolution.js';
|
|
21
|
-
import type { Theme } from '../theme.js';
|
|
22
|
-
import type { TermCapabilities } from '../capabilities.js';
|
|
23
|
-
import { type KitConnectionsSource } from './kit-picker-state.js';
|
|
24
|
-
export interface KitPickerProps {
|
|
25
|
-
isActive?: boolean;
|
|
26
|
-
theme: Theme;
|
|
27
|
-
caps: TermCapabilities;
|
|
28
|
-
cols: number;
|
|
29
|
-
maxRows: number;
|
|
30
|
-
scrollOffset: number;
|
|
31
|
-
onScrollClamp?: (offset: number) => void;
|
|
32
|
-
library?: ModelProfilesConfig | undefined;
|
|
33
|
-
config: CliConfig;
|
|
34
|
-
/**
|
|
35
|
-
* The config file's bindings, for the `Current setup` detail block (§4.6).
|
|
36
|
-
*
|
|
37
|
-
* OMITTED BY EMBEDDED HOSTS AND TESTS, in which case the block falls back to
|
|
38
|
-
* `config` - which is exactly right when no kit is in effect, since the live
|
|
39
|
-
* config then IS the file.
|
|
40
|
-
*/
|
|
41
|
-
diskConfig?: KitConnectionsSource | undefined;
|
|
42
|
-
active: ActiveKit;
|
|
43
|
-
/** Only the APPLY is refused while work is in flight; browsing still works. */
|
|
44
|
-
busy: boolean;
|
|
45
|
-
/** `null` = `Current setup`, i.e. release the session kit. */
|
|
46
|
-
onChoose: (kitId: string | null) => void;
|
|
47
|
-
onClose: () => void;
|
|
48
|
-
}
|
|
49
|
-
export declare function KitPicker(props: KitPickerProps): React.ReactElement;
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
/**
|
|
3
|
-
* The Agent-kit picker: `ctrl+K` (agent-model-kits §4.6 / D-10 / D-11).
|
|
4
|
-
*
|
|
5
|
-
* ASCII ONLY - `src/ui/**` is inside `glyphs.test.ts::inScope`.
|
|
6
|
-
*
|
|
7
|
-
* A LIST PLUS A DETAIL BLOCK, not one row per kit with three columns: three
|
|
8
|
-
* connections never fit on a 72-column terminal, and the `OverlayFrame` detail
|
|
9
|
-
* idiom is how this package already says everything that does not fit in a row
|
|
10
|
-
* (`ModelProfilePicker`, the compaction card). The list carries names and
|
|
11
|
-
* markers only, so the choice stays scannable at any width.
|
|
12
|
-
*
|
|
13
|
-
* THE OVERLAY IS READ-ONLY (R-11): Enter applies for this session, Esc leaves
|
|
14
|
-
* everything as it was. That is what makes moving `killToEnd` off `Ctrl+K`
|
|
15
|
-
* (D-15) a one-time surprise instead of a risk - a user who presses the old
|
|
16
|
-
* key gets a reversible screen, not a deleted line.
|
|
17
|
-
*/
|
|
18
|
-
import { useState } from 'react';
|
|
19
|
-
import { Text, useInput } from 'ink';
|
|
20
|
-
import { pickGlyphs } from '../glyphs.js';
|
|
21
|
-
import { OverlayFrame } from '../layout/OverlayFrame.js';
|
|
22
|
-
import { clipProfileText, useProfileScroll } from './ModelProfilePicker.js';
|
|
23
|
-
import { kitDetail, kitPickHint, kitRows, NO_KITS_HINT } from './kit-picker-state.js';
|
|
24
|
-
export function KitPicker(props) {
|
|
25
|
-
const rows = kitRows({ library: props.library, active: props.active });
|
|
26
|
-
const glyphs = pickGlyphs(props.caps);
|
|
27
|
-
const [index, setIndex] = useState(0);
|
|
28
|
-
const count = rows.length;
|
|
29
|
-
const cursor = Math.min(index, count - 1);
|
|
30
|
-
const focused = rows[cursor];
|
|
31
|
-
const offset = useProfileScroll(props, cursor);
|
|
32
|
-
const hasKits = (props.library?.kits ?? []).length > 0;
|
|
33
|
-
const body = rows.map((row, at) => (_jsx(Text, { wrap: "truncate", color: at === cursor ? props.theme.accent : props.theme.muted, children: `${at === cursor ? glyphs.caret : ' '} ${clipProfileText(row.label, props.cols - 8)}` }, row.id ?? 'current')));
|
|
34
|
-
if (!hasKits) {
|
|
35
|
-
body.push(_jsx(Text, { wrap: "truncate", color: props.theme.muted, children: clipProfileText(NO_KITS_HINT, props.cols - 8) }, "empty"));
|
|
36
|
-
}
|
|
37
|
-
// THE DETAIL BLOCK DESCRIBES THE FOCUSED ROW ONLY. Shown last so a narrow
|
|
38
|
-
// terminal clips the detail, never the choice.
|
|
39
|
-
for (const [at, line] of kitDetail({ row: focused, library: props.library,
|
|
40
|
-
config: props.config, diskConfig: props.diskConfig }).entries()) {
|
|
41
|
-
body.push(_jsx(Text, { wrap: "truncate", color: props.theme.muted, children: clipProfileText(` ${line}`, props.cols - 8) }, `detail-${at}`));
|
|
42
|
-
}
|
|
43
|
-
useInput((_input, key) => {
|
|
44
|
-
if (props.isActive === false)
|
|
45
|
-
return;
|
|
46
|
-
if (key.escape) {
|
|
47
|
-
props.onClose();
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
if (key.upArrow || (key.tab && key.shift))
|
|
51
|
-
setIndex((cursor - 1 + count) % count);
|
|
52
|
-
else if (key.downArrow || key.tab)
|
|
53
|
-
setIndex((cursor + 1) % count);
|
|
54
|
-
else if (key.return)
|
|
55
|
-
props.onChoose(focused.id);
|
|
56
|
-
});
|
|
57
|
-
return _jsx(OverlayFrame, { title: props.busy ? 'Agent kits (running)' : 'Agent kits', hint: kitPickHint({ busy: props.busy, hasKits }), rows: body, scrollOffset: offset, onScrollClamp: props.onScrollClamp, maxRows: props.maxRows, cols: props.cols, theme: props.theme, caps: props.caps });
|
|
58
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { type ProfileFrameProps } from './ModelProfilePicker.js';
|
|
3
|
-
import { type DiscoveryView } from './model-probe-view.js';
|
|
4
|
-
interface ModelDiscoveryListProps extends ProfileFrameProps {
|
|
5
|
-
provider: string;
|
|
6
|
-
/** The draft's current model: the cursor starts on it when the list has it. */
|
|
7
|
-
currentModel: string;
|
|
8
|
-
view: DiscoveryView;
|
|
9
|
-
busy: boolean;
|
|
10
|
-
onChoose: (model: string) => void;
|
|
11
|
-
onRetry: () => void;
|
|
12
|
-
onBack: () => void;
|
|
13
|
-
onCancelProbe?: () => void;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* The discovered-model page (model-profile-connection-test §3.5).
|
|
17
|
-
*
|
|
18
|
-
* Pure display plus input: it receives the discovery outcome and three intents and
|
|
19
|
-
* issues no request itself. No spinner - the census of animated sites is a closed
|
|
20
|
-
* list, and this overlay can be open while a run is in flight.
|
|
21
|
-
*/
|
|
22
|
-
export declare function ModelDiscoveryList(props: ModelDiscoveryListProps): React.ReactElement;
|
|
23
|
-
export {};
|