From f39529f83dd3d41475b1011aa8629586d629b93e Mon Sep 17 00:00:00 2001 From: YiJie Date: Mon, 7 Sep 2026 00:41:03 +0800 Subject: [PATCH 1/4] feat: extract CLIProxy renderer ownership --- README.md | 20 +- README.zh-Hans.md | 14 +- package-lock.json | 9 +- package.json | 1 + src/icon.ts | 9 + src/index.ts | 248 +++++++++++++++++++++++- src/provider-fleet-page.css | 119 ++++++++++++ src/provider-fleet-page.tsx | 373 ++++++++++++++++++++++++++++++++++++ test/artifact.mjs | 21 ++ test/manifest.mjs | 89 ++++++++- test/public-boundary.mjs | 27 +++ 11 files changed, 896 insertions(+), 34 deletions(-) create mode 100644 src/icon.ts create mode 100644 src/provider-fleet-page.css create mode 100644 src/provider-fleet-page.tsx create mode 100644 test/artifact.mjs create mode 100644 test/public-boundary.mjs diff --git a/README.md b/README.md index 728b235..09beb4e 100644 --- a/README.md +++ b/README.md @@ -5,19 +5,19 @@ CLIProxyAPI provider sessions plugin. ## Migration status -The repository currently contains an inert, private-package scaffold. It does -not yet provide the Provider sessions UI or provider configuration. The active -implementation remains in `cordisx/cordisx` until the migration is complete. - -The renderer can move to the existing public `cordisx/contracts`, -`cordisx/react`, and `cordisx/ui` entries. Provider configuration requires a -new versioned Protocol service declaration and a matching Host-owned Provider -Fleet adapter. Until both are formally merged, this repository will not copy +This feature branch contains the extracted Provider sessions renderer. It uses +only `cordisx/contracts`, `cordisx/react`, `cordisx/ui`, and the public +permission-brokered `ctx.platform` service. The package remains private and the +branch must not merge until the backend migration is complete. + +Provider configuration requires a new versioned Protocol service declaration +and a matching Host-owned Provider Fleet adapter. Until both are formally +merged, this repository will not copy Host launcher configuration, credentials, persistence, app-server transport, or private service APIs. -The planned plugin will preserve composite provider identity and use only the -permission-brokered `ctx.platform` service. It will not create a second Provider +The renderer preserves `(providerId, modelId)` and +`(providerId, remoteSessionId)` identity. It does not create a second Provider Fleet, replace the native Codex Desktop connection, or fall back to it. ## Development diff --git a/README.zh-Hans.md b/README.zh-Hans.md index e918866..1ce3bc6 100644 --- a/README.zh-Hans.md +++ b/README.zh-Hans.md @@ -4,17 +4,17 @@ ## 迁移状态 -仓库目前只有惰性的私有 package scaffold,尚未提供 Provider 会话界面或 -Provider 配置。迁移完成前,正在生效的实现仍位于 `cordisx/cordisx`。 +此功能分支已经抽出 Provider 会话 renderer。它只使用 `cordisx/contracts`、 +`cordisx/react`、`cordisx/ui` 和经过权限 broker 的公开 `ctx.platform` 服务。 +package 继续保持 private;backend 迁移完成前,此分支不得合并。 -renderer 可迁移到现有公开入口 `cordisx/contracts`、`cordisx/react` 和 -`cordisx/ui`。Provider 配置还需要新的 versioned Protocol service declaration +Provider 配置还需要新的 versioned Protocol service declaration 以及对应的 Host-owned Provider Fleet adapter。在二者正式合并前,本仓不会复制 Host launcher 配置、凭据、持久化、app-server transport 或 private service API。 -计划中的插件会保留复合 Provider 身份,并且只使用经过权限 broker 的 -`ctx.platform` 服务。它不会创建第二个 Provider Fleet、替换 Codex Desktop -原生连接,或在失败时回退到原生连接。 +renderer 保留 `(providerId, modelId)` 和 `(providerId, remoteSessionId)` +复合身份。它不会创建第二个 Provider Fleet、替换 Codex Desktop 原生连接,或在 +失败时回退到原生连接。 ## 开发 diff --git a/package-lock.json b/package-lock.json index 17b8907..d358a96 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,6 +12,7 @@ "@cordisx/eslint-config": "github:cordisx/cordisxmono#c63c2e8c2ba7e11502934a52ad2ce3734e804cdc", "@cordisx/protocol": "github:cordisx/cordisx-protocol#703a3d03f1b533c4d54bf51e5c8818b53bdda4f5", "@deepseek-ai/cordis": "4.0.1", + "@deepseek-ai/schemastery": "3.18.1", "@projectwallace/stylelint-plugin": "0.7.0", "@typescript-eslint/parser": "8.69.0", "@vitejs/plugin-react": "6.1.0", @@ -343,13 +344,13 @@ "license": "MIT" }, "node_modules/@deepseek-ai/schemastery": { - "version": "3.18.2", - "resolved": "https://registry.npmjs.org/@deepseek-ai/schemastery/-/schemastery-3.18.2.tgz", - "integrity": "sha512-njDtZsznjYxok7KLLlHOPyuv2efdWVbSflAHgztSfbMsg+CVraEoRe2DjOCgClYv3ZCSm7WXoaUkbB/+RY7tWQ==", + "version": "3.18.1", + "resolved": "https://registry.npmjs.org/@deepseek-ai/schemastery/-/schemastery-3.18.1.tgz", + "integrity": "sha512-Qn0FCSwCQnpnj6SB31I6i2sIKgKWnkbJM8O0EU91Gv2UsYVvtZTl6IA0sCwk2e2MZf5S8w5hpq9QkeVvK9qwxg==", "dev": true, "license": "MIT", "dependencies": { - "@deepseek-ai/cosmokit": "^1.8.3", + "@deepseek-ai/cosmokit": "^1.8.2", "@standard-schema/spec": "^1.1.0" } }, diff --git a/package.json b/package.json index 9a3632a..91f1d84 100644 --- a/package.json +++ b/package.json @@ -37,6 +37,7 @@ "@cordisx/eslint-config": "github:cordisx/cordisxmono#c63c2e8c2ba7e11502934a52ad2ce3734e804cdc", "@cordisx/protocol": "github:cordisx/cordisx-protocol#703a3d03f1b533c4d54bf51e5c8818b53bdda4f5", "@deepseek-ai/cordis": "4.0.1", + "@deepseek-ai/schemastery": "3.18.1", "@projectwallace/stylelint-plugin": "0.7.0", "@typescript-eslint/parser": "8.69.0", "@vitejs/plugin-react": "6.1.0", diff --git a/src/icon.ts b/src/icon.ts new file mode 100644 index 0000000..a178011 --- /dev/null +++ b/src/icon.ts @@ -0,0 +1,9 @@ +import type { CordisXPluginBrandIcon } from 'cordisx/contracts' + +// Pinned from router-for-me/Cli-Proxy-API-Management-Center at d249ff008e0bc2803deb23fb3e2c62418a1e8d17. +// Kept inline so the bundled plugin renders offline without a remote image request. +export const CLI_PROXY_ICON: CordisXPluginBrandIcon = { + mediaType: 'image/png', + data: + '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', +} diff --git a/src/index.ts b/src/index.ts index 55e9deb..6569d2c 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,15 +1,253 @@ -import { CORDISX_PLUGIN_MANIFEST_SCHEMA_V1, type CordisXPluginManifestV1 } from 'cordisx/contracts' +import type { Context } from '@deepseek-ai/cordis' +import Schema from '@deepseek-ai/schemastery' +import { defineReactPage } from 'cordisx/react' +import { + CORDISX_PAGE_SCHEMA_V3, + CORDISX_PLUGIN_MANIFEST_SCHEMA_V1, + CORDISX_ROUTE_SCHEMA_V2, + type CordisXLocalizedText, + type CordisXMessageParams, + type CordisXPageMetadataV3, + type CordisXPluginManifestV1, + type CordisXPluginPresentation, + type CordisXRouteDefinitionV2, +} from 'cordisx/contracts' +import { createProviderFleetPage } from './provider-fleet-page.js' +import { CLI_PROXY_ICON } from './icon.js' export const name = 'cli-proxy-api' -export const inject: readonly string[] = [] +export const inject = ['i18n', 'slots', 'pages', 'routes', 'platform'] +export const icon = CLI_PROXY_ICON + +const capabilities = [ + 'models.read', + 'tasks.catalog.read', + 'tasks.content.read', + 'tasks.create', + 'tasks.control', + 'turns.submit', + 'turns.control', +] as const export const manifest = { $schema: CORDISX_PLUGIN_MANIFEST_SCHEMA_V1, schemaVersion: 1, id: 'cli-proxy-api', name: 'CLIProxy Providers', - capabilities: [], + capabilities: capabilities.map(capability => ({ + name: capability, + required: false, + reason: { + namespace: 'cli-proxy-api', + key: `permission.${capability}`, + fallback: `Use ${capability} for explicitly configured external providers`, + }, + scope: {}, + })), } satisfies CordisXPluginManifestV1 -/** The public main branch is an inert migration scaffold until the external plugin is admitted. */ -export function apply(): void {} +interface Messages { + 'plugin.name': undefined + 'plugin.description': undefined + 'navigation.title': undefined + 'navigation.description': undefined + 'route.title': undefined + 'route.description': undefined + 'page.title': undefined + 'page.description': undefined + 'page.subtitle': undefined + 'field.provider': undefined + 'field.model': undefined + 'field.cwd': undefined + 'field.initial-message': undefined + 'field.search': undefined + 'action.refresh': undefined + 'action.create': undefined + 'action.load-more': undefined + 'action.continue': undefined + 'action.fork': undefined + 'action.archive': undefined + 'action.restore': undefined + 'action.delete': undefined + 'action.send': undefined + 'action.steer': undefined + 'action.interrupt': undefined + 'state.loading': undefined + 'state.empty': undefined + 'state.no-models': undefined + 'state.select-session': undefined + 'state.error': { readonly message: string } + 'session.provider': { readonly provider: string } + 'session.model': { readonly model: string } + 'permission.models.read': undefined + 'permission.tasks.catalog.read': undefined + 'permission.tasks.content.read': undefined + 'permission.tasks.create': undefined + 'permission.tasks.control': undefined + 'permission.turns.submit': undefined + 'permission.turns.control': undefined +} + +export interface Config { + readonly providerIds: readonly string[] + readonly defaultCwd: string +} + +export const Config = Schema.object({ + providerIds: Schema.array( + Schema.string().required().pattern(/^[a-z0-9][a-z0-9._-]{0,95}$/), + ).default([]).max(64) + .extra('extra', { label: { 'zh-CN': 'Provider 过滤范围', en: 'Provider filter' } }) + .extra('description', { + 'zh-CN': '选择要显示的 Provider;留空表示全部。', + en: 'Choose the providers to show; leave empty for all.', + }), + defaultCwd: Schema.string().default('').max(4096).pattern(/^[^\u0000]*$/) + .extra('extra', { label: { 'zh-CN': '默认工作目录', en: 'Default working directory' } }) + .extra('description', { + 'zh-CN': '新会话的默认工作目录。', + en: 'Default working directory for new sessions.', + }), +}) + +export const configApplies = 'plugin-restart' + +function configuredProviderIds(config: Config): readonly string[] | undefined { + const providerIds = [...new Set(config.providerIds)] + return providerIds.length === 0 ? undefined : providerIds +} + +function message( + key: Key, + ...args: Messages[Key] extends CordisXMessageParams ? [params: Messages[Key]] : [params?: undefined] +): CordisXLocalizedText { + return { namespace: 'cli-proxy-api', key, ...(args[0] === undefined ? {} : { params: args[0] }) } +} + +export const presentation = { + name: message('plugin.name'), + description: message('plugin.description'), +} satisfies CordisXPluginPresentation + +const providerSessionsPage = { + $schema: CORDISX_PAGE_SCHEMA_V3, + schemaVersion: 3, + id: 'providers.sessions', + title: message('page.title'), + description: message('page.description'), + icon: 'host:layers', +} satisfies CordisXPageMetadataV3 + +const providerSessionsRoute = { + $schema: CORDISX_ROUTE_SCHEMA_V2, + schemaVersion: 2, + id: 'providers.sessions', + path: '/main/providers/sessions', + outlet: 'main', + page: 'providers.sessions', + title: message('route.title'), + description: message('route.description'), +} satisfies CordisXRouteDefinitionV2<'main'> + +export function apply(ctx: Context, config: Config = Config({})): void { + ctx.i18n.define({ + namespace: 'cli-proxy-api', + locale: 'en', + default: true, + messages: { + 'plugin.name': 'CLIProxy Providers', + 'plugin.description': 'Manage configured CLIProxy providers, models, and sessions.', + 'navigation.title': 'Providers', + 'navigation.description': 'Manage provider models and sessions', + 'route.title': 'Open Provider sessions', + 'route.description': + 'Enter the external Provider sessions fleet from CordisX navigation or the Manager route catalog.', + 'page.title': 'Provider sessions', + 'page.description': 'Create, search, resume, and manage sessions for configured Providers in the main workspace.', + 'page.subtitle': 'Choose a model and manage its sessions.', + 'field.provider': 'Provider', + 'field.model': 'Model', + 'field.cwd': 'Working directory', + 'field.search': 'Search sessions', + 'field.initial-message': 'Initial message (recommended for persistence)', + 'action.refresh': 'Refresh', + 'action.create': 'New session', + 'action.load-more': 'Load more', + 'action.continue': 'Continue', + 'action.fork': 'Fork', + 'action.archive': 'Archive', + 'action.restore': 'Restore', + 'action.delete': 'Delete', + 'action.send': 'Send message', + 'action.steer': 'Steer active turn', + 'action.interrupt': 'Interrupt', + 'state.loading': 'Loading providers…', + 'state.empty': 'No matching sessions.', + 'state.no-models': 'No provider models are available.', + 'state.select-session': 'Select a provider session to inspect its content.', + 'state.error': 'Provider request failed: {message}', + 'session.provider': 'Provider {provider}', + 'session.model': 'Model {model}', + 'permission.models.read': 'List models from configured external providers', + 'permission.tasks.catalog.read': 'List and search external provider sessions', + 'permission.tasks.content.read': 'Read selected external provider session content', + 'permission.tasks.create': 'Create a session for the selected provider model', + 'permission.tasks.control': 'Continue, fork, archive, restore, or delete selected sessions', + 'permission.turns.submit': 'Send messages to selected sessions', + 'permission.turns.control': 'Steer or interrupt selected turns', + }, + }) + ctx.i18n.define({ + namespace: 'cli-proxy-api', + locale: 'zh-CN', + messages: { + 'plugin.name': 'CLIProxy 提供方', + 'plugin.description': '管理已配置的 CLIProxy 提供方、模型和会话。', + 'navigation.title': 'Providers', + 'navigation.description': '管理 Provider 模型和会话', + 'route.title': '打开 Provider 会话', + 'route.description': '从 CordisX 导航或 Manager 路由目录进入外部 Provider 会话 Fleet。', + 'page.title': 'Provider 会话', + 'page.description': '在主工作区为已配置的 Provider 创建、搜索、续聊和管理会话。', + 'page.subtitle': '选择模型并管理会话。', + 'field.provider': 'Provider', + 'field.model': '模型', + 'field.cwd': '工作目录', + 'field.search': '搜索会话', + 'field.initial-message': '首条消息(建议填写以立即持久化)', + 'action.refresh': '刷新', + 'action.create': '新建会话', + 'action.load-more': '加载更多', + 'action.continue': '继续', + 'action.fork': '分叉', + 'action.archive': '归档', + 'action.restore': '恢复', + 'action.delete': '删除', + 'action.send': '发送消息', + 'action.steer': '引导进行中的 turn', + 'action.interrupt': '中断', + 'state.loading': '正在加载 Provider…', + 'state.empty': '没有匹配的会话。', + 'state.no-models': '没有可用的 Provider 模型。', + 'state.select-session': '选择一个 Provider 会话以查看内容。', + 'state.error': 'Provider 请求失败:{message}', + 'session.provider': 'Provider {provider}', + 'session.model': '模型 {model}', + 'permission.models.read': '读取已配置外部 Provider 的模型', + 'permission.tasks.catalog.read': '列出并搜索外部 Provider 会话', + 'permission.tasks.content.read': '读取所选外部 Provider 会话内容', + 'permission.tasks.create': '用所选 Provider 模型创建会话', + 'permission.tasks.control': '继续、分叉、归档、恢复或删除所选会话', + 'permission.turns.submit': '向所选会话发送消息', + 'permission.turns.control': '引导或中断所选 turn', + }, + }) + ctx.pages.register(providerSessionsPage, defineReactPage(createProviderFleetPage(ctx, config))) + ctx.routes.register(providerSessionsRoute) + ctx.slots.register({ name: 'sidebar.navigation.items', id: 'providers', order: -100 }, { + label: message('navigation.title'), + description: message('navigation.description'), + icon: 'host:layers', + route: { id: 'providers.sessions' }, + }) +} diff --git a/src/provider-fleet-page.css b/src/provider-fleet-page.css new file mode 100644 index 0000000..bf34afe --- /dev/null +++ b/src/provider-fleet-page.css @@ -0,0 +1,119 @@ +.cxp-fleet { + display: grid; + grid-template-columns: minmax(300px, 42%) minmax(360px, 1fr); + min-height: calc(100vh - 86px); + margin: -16px; +} + +.cxp-catalog, +.cxp-detail { + min-width: 0; + padding: 18px; + overflow: auto; +} + +.cxp-catalog { + border-inline-end: 1px solid var(--cx-border); +} + +.cxp-toolbar { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + overflow: hidden; + background: var(--cx-surface-raised); + border: 1px solid var(--cx-border); + border-radius: 10px; +} + +.cxp-toolbar input, +.cxp-toolbar select { + min-width: 0; + min-height: 38px; + padding: 7px 10px; + color: var(--cx-text); + font: inherit; + background: transparent; + border: 0; + border-inline-end: 1px solid var(--cx-border); + border-block-end: 1px solid var(--cx-border); +} + +.cxp-toolbar .cxp-toolbar-action { + border: 0; + border-inline-end: 1px solid var(--cx-border); + border-radius: 0; +} + +.cxp-sessions { + display: grid; + margin-top: 10px; +} + +.cxp-session { + display: grid; + gap: 3px; + padding: 11px 4px; + color: var(--cx-text); + font: inherit; + text-align: start; + cursor: pointer; + background: transparent; + border: 0; + border-block-end: 1px solid var(--cx-border); +} + +.cxp-session:hover { + background: var(--cx-hover); +} + +.cxp-meta { + overflow: hidden; + color: var(--cx-muted); + font-size: 12px; + text-overflow: ellipsis; +} + +.cxp-turns { + display: grid; + gap: 14px; +} + +.cxp-turn { + display: grid; + gap: 6px; + padding: 12px; +} + +.cxp-composer { + width: 100%; + min-height: 86px; + padding: 9px; + color: var(--cx-text); + font: inherit; + resize: vertical; + background: var(--cx-surface-raised); + border: 1px solid var(--cx-border); + border-radius: 9px; +} + +.cxp-note { + min-height: 20px; + color: var(--cx-muted); + font-size: 12px; +} + +@media (width <= 760px) { + .cxp-fleet { + grid-template-columns: 1fr; + margin: 0; + } + + .cxp-catalog { + border-inline-end: 0; + border-block-end: 1px solid var(--cx-border); + } + + .cxp-toolbar { + grid-template-columns: 1fr; + } +} diff --git a/src/provider-fleet-page.tsx b/src/provider-fleet-page.tsx new file mode 100644 index 0000000..5b0137a --- /dev/null +++ b/src/provider-fleet-page.tsx @@ -0,0 +1,373 @@ +import type { Context } from '@deepseek-ai/cordis' +import { type KeyboardEvent, useCallback, useEffect, useMemo, useState } from 'cordisx/react' +import { Button, Card, EmptyState, Heading, Stack, Text } from 'cordisx/ui' +import type { + CordisXModelDescriptor, + CordisXPlatformModelRef, + CordisXPlatformSessionRef, + CordisXReactPageProps, + CordisXSessionProjection, + CordisXSessionSummary, +} from 'cordisx/contracts' +import './provider-fleet-page.css' + +interface Config { + readonly providerIds: readonly string[] + readonly defaultCwd: string +} +interface Messages { + 'page.subtitle': undefined + 'field.provider': undefined + 'field.model': undefined + 'field.cwd': undefined + 'field.initial-message': undefined + 'field.search': undefined + 'action.refresh': undefined + 'action.create': undefined + 'action.load-more': undefined + 'action.continue': undefined + 'action.fork': undefined + 'action.archive': undefined + 'action.restore': undefined + 'action.delete': undefined + 'action.send': undefined + 'action.steer': undefined + 'action.interrupt': undefined + 'state.loading': undefined + 'state.empty': undefined + 'state.no-models': undefined + 'state.select-session': undefined + 'state.error': { readonly message: string } + 'session.provider': { readonly provider: string } + 'session.model': { readonly model: string } +} + +function modelKey(ref: CordisXPlatformModelRef): string { + return JSON.stringify([ref.providerId, ref.modelId]) +} +function parsedModel(value: string): CordisXPlatformModelRef | undefined { + try { + const parsed = JSON.parse(value) as unknown + return Array.isArray(parsed) && parsed.length === 2 && parsed.every(item => typeof item === 'string') + ? { providerId: parsed[0] as string, modelId: parsed[1] as string } + : undefined + } catch { + return undefined + } +} +function sessionKey(ref: CordisXPlatformSessionRef): string { + return JSON.stringify([ref.providerId, ref.remoteSessionId]) +} + +export function createProviderFleetPage(ctx: Context, config: Config) { + return function ProviderFleetPage(props: CordisXReactPageProps) { + const configuredProviders = useMemo( + () => config.providerIds.length === 0 ? undefined : [...new Set(config.providerIds)], + [], + ) + const [models, setModels] = useState([]) + const [sessions, setSessions] = useState([]) + const [nextCursor, setNextCursor] = useState() + const [selected, setSelected] = useState() + const [provider, setProvider] = useState('') + const [model, setModel] = useState('') + const [cwd, setCwd] = useState(config.defaultCwd) + const [search, setSearch] = useState('') + const [initialMessage, setInitialMessage] = useState('') + const [composer, setComposer] = useState('') + const [steer, setSteer] = useState('') + const [status, setStatus] = useState('') + + const showError = (error: { readonly message: string }) => + setStatus(props.t('state.error', { message: error.message })) + const providerIds = provider === '' + ? configuredProviders ?? [...new Set(models.map(item => item.ref.providerId))].sort() + : [provider] + const visibleModels = models.filter(item => provider === '' || item.ref.providerId === provider) + + const refreshSessions = useCallback( + async (cursor?: string, append = false, requestedProviderIds?: readonly string[]) => { + setStatus(props.t('state.loading')) + const result = await ctx.platform.tasks.list({ + ...((requestedProviderIds ?? providerIds).length === 0 + ? {} + : { providerIds: requestedProviderIds ?? providerIds }), + ...(cwd.trim() === '' ? {} : { cwd: cwd.trim() }), + ...(search.trim() === '' ? {} : { searchTerm: search.trim() }), + ...(cursor === undefined ? {} : { cursor }), + limit: 50, + }) + if (!result.ok) { + showError(result.error) + return + } + setSessions(current => + append + ? [ + ...current, + ...result.value.sessions.filter(item => + !new Set(current.map(entry => sessionKey(entry.ref))).has(sessionKey(item.ref)) + ), + ] + : result.value.sessions + ) + setNextCursor(result.value.nextCursor) + setStatus(models.length === 0 ? props.t('state.no-models') : '') + }, + [provider, cwd, search, models, props.t], + ) + + const refreshAll = useCallback(async () => { + setStatus(props.t('state.loading')) + const result = await ctx.platform.models.list( + configuredProviders === undefined ? {} : { providerIds: configuredProviders }, + ) + if (!result.ok) { + showError(result.error) + return + } + setModels(result.value.models) + const nextVisible = result.value.models.filter(item => provider === '' || item.ref.providerId === provider) + setModel(current => + nextVisible.some(item => modelKey(item.ref) === current) + ? current + : modelKey( + (nextVisible.find(item => item.isDefault) ?? nextVisible[0])?.ref ?? { providerId: '', modelId: '' }, + ) + ) + const discoveredProviders = configuredProviders + ?? [...new Set(result.value.models.map(item => item.ref.providerId))].sort() + await refreshSessions(undefined, false, provider === '' ? discoveredProviders : [provider]) + }, [provider, refreshSessions, props.t]) + + useEffect(() => { + void refreshAll() + }, []) + + const read = async (ref: CordisXPlatformSessionRef) => { + const result = await ctx.platform.tasks.read({ session: ref }) + if (!result.ok) showError(result.error) + else setSelected(result.value) + } + const create = async () => { + const selectedModel = parsedModel(model) + if (selectedModel === undefined || cwd.trim() === '') return + const result = await ctx.platform.tasks.create({ + model: selectedModel, + cwd: cwd.trim(), + ...(initialMessage.trim() === '' ? {} : { initialMessage: initialMessage.trim() }), + }) + if (!result.ok) { + showError(result.error) + return + } + setSelected(result.value.session) + setInitialMessage('') + if (result.value.status === 'created-initial-turn-failed') showError(result.value.error) + await refreshSessions() + if (result.value.status === 'created' && result.value.initialTurn !== undefined) { + await read(result.value.session.ref) + } + } + const controlSession = async (action: 'continue' | 'fork' | 'archive' | 'restore' | 'delete') => { + if (selected === undefined) return + const result = await ctx.platform.tasks.control( + { action, session: selected.ref } as Parameters[0], + ) + if (!result.ok) { + showError(result.error) + return + } + setSelected(result.value.action === 'delete' ? undefined : result.value.session) + await refreshSessions() + } + const submit = async () => { + if (selected === undefined || composer.trim() === '') return + const result = await ctx.platform.turns.submit({ session: selected.ref, message: composer.trim() }) + if (!result.ok) showError(result.error) + else { + setComposer('') + await read(selected.ref) + } + } + const activeTurn = selected !== undefined && 'turns' in selected + ? [...selected.turns].reverse().find(turn => turn.state === 'in-progress') + : undefined + const controlTurn = async (action: 'steer' | 'interrupt') => { + if (selected === undefined || activeTurn === undefined) return + const result = await ctx.platform.turns.control( + action === 'steer' + ? { action, session: selected.ref, turnId: activeTurn.id, message: steer.trim() } + : { action, session: selected.ref, turnId: activeTurn.id }, + ) + if (!result.ok) showError(result.error) + else await read(selected.ref) + } + const searchKey = (event: KeyboardEvent) => { + if (event.key === 'Enter') void refreshSessions() + } + const sessionActions: readonly ('continue' | 'fork' | 'archive' | 'restore' | 'delete')[] = + selected?.state === 'archived' + ? ['restore', 'delete'] + : ['continue', 'fork', 'archive', 'delete'] + + return ( +
+
+ + {props.t('page.subtitle')} +
+ + + setCwd(event.currentTarget.value)} + /> + setSearch(event.currentTarget.value)} + onKeyDown={searchKey} + /> + setInitialMessage(event.currentTarget.value)} + /> + + +
+
{status}
+ {sessions.length === 0 + ? + : ( +
+ {sessions.map(session => ( + + ))} +
+ )} + {nextCursor === undefined + ? null + : } +
+
+
+ {selected === undefined ? : ( + +
+ {selected.title ?? selected.ref.remoteSessionId} + {selected.ref.providerId} / {selected.ref.remoteSessionId} +
+ + {sessionActions.map(action => ( + + ))} + + {'turns' in selected + ? ( +
+ {selected.turns.map(turn => ( + + {turn.state} · {turn.id} + {turn.items.map(item => {item.text ?? `[${item.kind}]`})} + + ))} +
+ ) + : null} + {selected.state === 'active' + ? ( + <> +