This commit is contained in:
Dax Raad
2025-12-06 18:21:32 -05:00
parent 2ac8dd6361
commit dfea6780d9
9 changed files with 251 additions and 170 deletions

View File

@@ -11,7 +11,7 @@ import { DialogProvider as DialogProviderList } from "@tui/component/dialog-prov
import { SDKProvider, useSDK } from "@tui/context/sdk"
import { SyncProvider, useSync } from "@tui/context/sync"
import { LocalProvider, useLocal } from "@tui/context/local"
import { DialogModel } from "@tui/component/dialog-model"
import { DialogModel, useConnected } from "@tui/component/dialog-model"
import { DialogStatus } from "@tui/component/dialog-status"
import { DialogThemeList } from "@tui/component/dialog-theme-list"
import { DialogHelp } from "./ui/dialog-help"
@@ -233,18 +233,21 @@ function App() {
),
)
const connected = useConnected()
command.register(() => [
{
title: "Switch session",
value: "session.list",
keybind: "session_list",
category: "Session",
suggested: sync.data.session.length > 0,
onSelect: () => {
dialog.replace(() => <DialogSessionList />)
},
},
{
title: "New session",
suggested: route.data.type === "session",
value: "session.new",
keybind: "session_new",
category: "Session",
@@ -263,6 +266,7 @@ function App() {
title: "Switch model",
value: "model.list",
keybind: "model_list",
suggested: true,
category: "Agent",
onSelect: () => {
dialog.replace(() => <DialogModel />)
@@ -270,6 +274,7 @@ function App() {
},
{
title: "Model cycle",
disabled: true,
value: "model.cycle_recent",
keybind: "model_cycle_recent",
category: "Agent",
@@ -279,6 +284,7 @@ function App() {
},
{
title: "Model cycle reverse",
disabled: true,
value: "model.cycle_recent_reverse",
keybind: "model_cycle_recent_reverse",
category: "Agent",
@@ -315,6 +321,15 @@ function App() {
local.agent.move(-1)
},
},
{
title: "Connect provider",
value: "provider.connect",
suggested: !connected(),
onSelect: () => {
dialog.replace(() => <DialogProviderList />)
},
category: "Provider",
},
{
title: "View status",
keybind: "status_view",
@@ -332,14 +347,6 @@ function App() {
},
category: "System",
},
{
title: "Connect provider",
value: "provider.connect",
onSelect: () => {
dialog.replace(() => <DialogProviderList />)
},
category: "System",
},
{
title: "Toggle appearance",
value: "theme.switch_mode",