All modules:
This module owns command-line tokenization, semantic context resolution, structured source evaluation, deterministic ranking, and bounded in-memory learning. It depends on Kotlin coroutines and has no terminal-module dependencies; source evaluation does not require a terminal session or UI. The README.md supplies the consumer entry point.
Local filesystem support for host-composed completion sources. The package io.github.ketraterm.completion.host contains:
The headless state engine. Semantic writer, cursor, and mode operations mutate primary or alternate screen state; readers expose that state through public core roles and primitive render frames.
Parser-to-core command mapping and host-control policy for the terminal pipeline. The public package is io.github.ketraterm.host.
Host-bound encoding for platform-neutral input events. The public facade reads core input modes and writes through TerminalHostOutput; the module neither parses terminal output nor owns a connector.
Converts ordered terminal host bytes into semantic commands. The public entry points are io.github.ketraterm.parser.api.TerminalParsers and io.github.ketraterm.parser.api.TerminalOutputParser; the destination is io.github.ketraterm.parser.spi.TerminalCommandSink. This module depends only on ketraterm-protocol.
Shared protocol vocabulary. Its only production dependency is the Kotlin standard library. The module contains identifiers, semantic values, small validation helpers, and a host-bound byte sink; parsing and terminal behavior remain in their owning layers.
Local PTY process and connector lifecycle, with convenience construction of the shared session runtime. Public APIs live in io.github.ketraterm.pty; the README.md covers host assembly.
Primitive renderer-facing contracts in io.github.ketraterm.render.api. Its only production dependency is the Kotlin standard library.
Renderer-owned primitive storage and leased publication of copied terminal frames. Its sole production dependency is ketraterm-render-api; synchronization with terminal mutation belongs to the source reader.
The runtime boundary joining transport, parser, core, host mapping, input encoding, and render publication. Public contracts live in io.github.ketraterm.session; the README.md covers consumer assembly.
Optional OSC-based producer for the shell metadata contracts in ketraterm-session. The public package io.github.ketraterm.shell.integration exposes OscShellIntegration and its configuration factory. Session, PTY, and Swing do not depend on this module.
Transport-neutral byte-stream contracts. The only production dependency is the Kotlin standard library. The package io.github.ketraterm.transport contains TerminalConnector, TerminalConnectorListener, and byte-range validation.
Reusable Swing rendering and interaction for a host-owned TerminalSession. The public component is io.github.ketraterm.ui.swing.api.SwingTerminal. See the README.md#how-to-use for construction and lifecycle.
Optional host-facing Swing helpers in io.github.ketraterm.ui.swing.host. The source module's README.md describes consumer wiring and lifecycle.