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%
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