KetraTerm
API · DevelopmentAll versions

Package-level declarations

Types

Link copied to clipboard

Clipboard operation bound to the owning session and product lifecycle.

Link copied to clipboard

A platform result; failures may also be thrown and are audited without details.

Link copied to clipboard

Session-issued editing context captured with a selected producer's revision. Retain it from suggestion request through final admission; never recapture it merely to make an old edit pass. It is specific to its issuing session and becomes stale after input, output, resize or a producer update. No writer or frame lease is retained. Acceptance still does not confirm remote execution.

Link copied to clipboard

Resolves primitive render-frame hyperlink ids to their OSC 8 target URI.

Link copied to clipboard

Result of synchronous session input admission, never a write receipt. An accepted operation can still be interrupted or discarded by closure or transport failure. Observe TerminalSession.state for termination and its original failure; response-dependent callers must stop waiting on closure.

Link copied to clipboard

Runtime terminal session that binds core, parser, input encoding, and a transport connector.

Link copied to clipboard
data class TerminalSessionCloseEvent(val exitCode: Int?, val failure: Throwable?, val locallyRequested: Boolean)

Immutable lifecycle event published after TerminalSession cleanup finishes.

Link copied to clipboard
sealed interface TerminalSessionState

Observable lifecycle state of a TerminalSession.

Link copied to clipboard
data class TerminalShellCommandLineSnapshot(val commandText: String, val cursorOffset: Int, val cursorColumn: Int, val cursorRow: Int)

Immutable snapshot of the shell command line currently known to the session.

Link copied to clipboard

Host-owned authoritative command-line projection for conditional editing. Every assignment advances a revision, including equal values and transitions through null. Publish null while the host cannot trust its editing state, including host-managed pending input. Publishing a snapshot does not acknowledge remote processing of session writes; that remains the host shell model's concern.

Link copied to clipboard

Selected producer of a terminal's shell metadata and active editing context.

Primitive column layout for command-block range copies.

Link copied to clipboard

Primitive lifecycle vocabulary for terminal-facing shell command records.

Link copied to clipboard
data class TerminalShellIntegrationCommandMetadata(val recordId: Int, val lifecycle: Int, val commandText: String?, val workingDirectoryUri: String?, val exitCode: Int?, val startedAtEpochMillis: Long, val finishedAtEpochMillis: Long?)

Immutable metadata snapshot for one retained shell command.

Primitive column layout for command-output range copies.

Link copied to clipboard

Primitive command-record id vocabulary used by shell-integration viewport projections.

Link copied to clipboard

Session-scoped, read-only access for a shell producer that derives metadata from terminal output. Frames and published caches are borrowed only for the callback; never mutate or retain them. No callback may block on UI work or close the session.

Link copied to clipboard

Creates one shell producer before a session starts consuming output.

Link copied to clipboard
class TerminalShellIntegrationState(capacity: Int = DEFAULT_CAPACITY, maxCommandTextLength: Int = 4096, epochMillis: () -> Long = System::currentTimeMillis) : TerminalShellIntegrationView

Bounded, protocol-neutral terminal projection of shell commands and prompts.

Link copied to clipboard

Read-only, live projection of the selected shell producer.

Link copied to clipboard
data class TerminalStartupCommand(val text: String)

One shell command line to submit after the first complete interactive prompt.

Link copied to clipboard

Session-local outcome of an explicitly configured startup command.

Link copied to clipboard
data class TerminalViewportResizeResult(val scrollbackOffset: Int, val historySize: Int, val discardedCount: Long)

Viewport anchor and history baseline captured atomically after terminal resize.