/
Alex_Ural
/
opencode
Обзор
Документация
Войти
/
Alex_Ural
/
opencode
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
packages/cli/src/tui.ts
37 строк
1 KB
James Long
refactor(core): remove infrastructure layer exports (#34624)
30 июн 2026, 19:17
Не верифицирован
30 июн 2026, 19:17
472d0f3
Код
Авторство
О чём код?
import { run } from "@opencode-ai/tui" import { TuiConfig } from "@opencode-ai/tui/config" import { Effect } from "effect" import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" import { Global } from "@opencode-ai/core/global" export function runTui(transport: { url: string; headers: RequestInit["headers"] }) { const config = TuiConfig.resolve({}, { terminalSuspend: false }) return run({ ...transport, args: {}, config, fetch: gracefulFetch, pluginHost: { async start() {}, async dispose() {}, }, }).pipe(Effect.provide(AppNodeBuilder.build(Global.node))) } const legacyDefaults: Record<string, unknown> = { "/config/providers": { providers: [], default: {} }, "/provider": { all: [], default: {}, connected: [] }, "/agent": [], "/config": {}, } const gracefulFetch = Object.assign( async (input: RequestInfo | URL, init?: RequestInit) => { const response = await fetch(input, init) if (response.status !== 404) return response const fallback = legacyDefaults[new URL(input instanceof Request ? input.url : input).pathname] if (fallback === undefined) return response return Response.json(fallback) }, { preconnect: fetch.preconnect }, )