/** * cc-tui plugin entry. The TUI implementation lives in `./plugin.tsx` (its * render path is JSX); this module owns the plugin surface (`name`/`inject`/ * `Config`/`apply`) at the canonical `src/index.ts` location and delegates * `apply` through a dynamic import so entry-scanning tooling and the Loader * resolve a plain `.ts` module. * @module @deepseek-ai/dsh-cc-tui */ import type { Context } from '@deepseek-ai/cordis'; import Schema from '@deepseek-ai/schemastery'; export declare const name = "cc-tui"; export declare const inject: string[]; /** * cc-tui plugin configuration: session attachment, model route, working * directory, and display preferences. */ export interface Config { /** Existing session to attach; a fresh session is created when absent. */ sessionId?: string; /** LLM provider route. The route resolves atomically (issue #67): when * cordis.yml names BOTH `provider` and `model`, that pair wins; otherwise * the `/model` choice persisted in `~/.dsh-cc/model.json` wins whole; * otherwise the harness defaults (`deepseek-official`). A provider-only * pin never half-overrides the persisted choice. */ provider?: string; /** Model override passed to the agent; resolved together with `provider` * as one atomic route (see `provider`). Harness default model: * `deepseek-v4-flash`. */ model?: string; /** Session working directory; defaults to the invoking directory. */ cwd?: string; /** Reasoning effort applied to every request, validated against the live * route's adapter levels (an unlisted level is ignored and the adapter * default applies). Wins over the persisted Shift+Tab choice; also seeds * the startup status line until the first request header reports the * live value. */ effort?: string; /** Show the dsh-working-activity live working line on the status bar * (consumes its log-only `activity/status` events; off hides it). */ activity?: boolean; /** Working-activity indicator preset: `claude`/`moon`/`comet`/`dots`/… * or `random` (see activityFrames.ts). When absent, the `/activity` * choice persisted in `~/.dsh-cc/working-activity.json` wins, then the * `claude` default. */ activityFrames?: string; /** Show the segmented context bar (the band under the input with the * `ctx used/window` readout) in the status footer; off hides that row * while the status/mode lines stay (issue #29). */ contextBar?: boolean; /** Run in the terminal's alternate screen (Claude Code fullscreen layout). */ fullscreen?: boolean; /** UI language: `en` / `zh`. When absent, the `CC_TUI_LANG` env var wins, * then the `/lang` choice persisted in `~/.dsh-cc/lang.json`, then `zh`. */ lang?: string; /** Agent preset id new sessions compose from (standard/code/minimal/ * cordis/… when the roster is mounted). When absent, the `/preset` choice * persisted in `~/.dsh-cc/agent-preset.json` wins, then the roster * default (`standard`). */ preset?: string; } export declare const Config: Schema; /** * Start the interactive TUI front door, delegating to the JSX implementation * in `./plugin.tsx` (see its module doc for the full contract). * @param ctx - the plugin context. * @param config - the validated cc-tui configuration. * @returns a promise settling when the TUI teardown completes. */ export declare function apply(ctx: Context, config: Config): Promise; //# sourceMappingURL=index.d.ts.map