SPB Git

spb/khaelor Public

KHAELOR — a terminal-native autonomous engineering agent powered by Anthropic.

TypeScript 82.9% HTML 14.9% CSS 1.1% JavaScript 0.7%
3.3 KB · 85 lines typescript
Raw Blame History
1/**2 * KHAELOR3 * File: src/tui/index.ts4 * Description: Public barrel for the TUI module (Layer 2 — imports session, config, shared).5 *6 * Author: Simon-Pierre Boucher7 * Contact: contact@spboucher.ai8 */910export { TuiApp } from "./app.js";11export type {12  TuiAppActions,13  TuiAppOptions,14  ModelPricing,15  PermissionDecision,16} from "./app.js";1718export { CommandRegistry } from "./commands.js";19export type { CommandDef } from "./commands.js";2021export { resolveTheme } from "./theme.js";22export type { Theme, StyleRole, GradientName, LineTint, ResolveThemeOptions } from "./theme.js";2324export { LiveRenderer, streamIo } from "./renderer/renderer.js";25export type { RendererIo, RendererMetrics, LiveRendererOptions } from "./renderer/renderer.js";26export { composeFrame } from "./renderer/frame.js";27export type { LiveFrame, ComposeFrameInput, ComposedFrame } from "./renderer/frame.js";28export {29  detectColorDepth,30  parseDecrqmReply,31  parseOsc11Reply,32  probeTerminal,33} from "./renderer/capabilities.js";34export type { ColorDepth, Background, TerminalCapabilities } from "./renderer/capabilities.js";35export { KeyDecoder } from "./renderer/input.js";36export type { KeyEvent } from "./renderer/input.js";37export { enterTerminal } from "./renderer/terminal.js";38export type { TerminalSession } from "./renderer/terminal.js";39export {40  stripAnsi,41  visibleWidth,42  truncateAnsi,43  wrapText,44  padEndAnsi,45} from "./renderer/ansi.js";4647export { MarkdownStreamScanner } from "./markdown/scanner.js";48export { renderMarkdownBlock, renderTailLine } from "./markdown/render.js";49export { highlightLine } from "./markdown/highlight.js";50export type { SynSpan, SynRole } from "./markdown/highlight.js";5152export { renderStatusLine } from "./components/status-line.js";53export type { AgentStatus, AgentStateKind } from "./components/status-line.js";54export { renderStatusBar } from "./components/status-bar.js";55export type { StatusBarData } from "./components/status-bar.js";56export {57  renderToolLine,58  renderRunningTool,59  renderToolDetailBlock,60  rule,61} from "./components/tool-line.js";62export type { SettledToolLine, RunningToolRow, ToolDetailBlock, ToolOutcome, ToolLineKind } from "./components/tool-line.js";63export { renderComposerBox, COMPOSER_BOX_MIN_WIDTH } from "./components/composer-box.js";64export type { ComposerBoxContent, ComposerBoxOptions, ComposerBoxRender } from "./components/composer-box.js";65export { renderEditSummary, renderDiffBlock } from "./components/diff.js";66export { renderPermissionPanel } from "./components/permission-panel.js";67export type { PermissionPanelData } from "./components/permission-panel.js";68export { renderErrorPanel } from "./components/error-panel.js";69export type { ErrorPanelData } from "./components/error-panel.js";7071export { Composer } from "./composer/composer.js";72export type { ComposerEffect, ComposerProviders, ComposerRender } from "./composer/composer.js";73export {74  createPalette,75  paletteSetQuery,76  paletteSetItems,77  paletteMove,78  paletteSelection,79  renderPalette,80} from "./composer/palette.js";81export type { PaletteItem, PaletteKind, PaletteState } from "./composer/palette.js";82export { fuzzyMatch, fuzzyFilter } from "./composer/fuzzy.js";83export type { FuzzyResult, FuzzyRanked } from "./composer/fuzzy.js";84export * as editor from "./composer/editor.js";85