Skip to content

Interface: TerminalHarness

@termwright/test


@termwright/test / TerminalHarness

Defined in: driver/dist/session-DOkKra9W.d.ts:120

readonly artifactSecurity: ResolvedArtifactSecurityPolicy

Defined in: driver/dist/session-DOkKra9W.d.ts:123

Resolved policy inherited by traces, reports and other artifact sinks.


readonly events: SessionEvents

Defined in: driver/dist/session-DOkKra9W.d.ts:208


readonly exit: Promise<ExitStatus>

Defined in: driver/dist/session-DOkKra9W.d.ts:234


readonly keyboard: Keyboard

Defined in: driver/dist/session-DOkKra9W.d.ts:129

One physical keyboard implementation. Convenience methods delegate here.


readonly mouse: Mouse

Defined in: driver/dist/session-DOkKra9W.d.ts:131

One physical mouse implementation. Locator actions delegate here after planning.


readonly scrollback: ScrollbackApi

Defined in: driver/dist/session-DOkKra9W.d.ts:206


readonly selection: SelectionApi

Defined in: driver/dist/session-DOkKra9W.d.ts:207


readonly sessionId: string

Defined in: driver/dist/session-DOkKra9W.d.ts:121


readonly shell: ShellApi

Defined in: driver/dist/session-DOkKra9W.d.ts:127

Shell command boundaries and prompt state when the child emits OSC 133.


readonly terminalProfile: TerminalProfileId

Defined in: driver/dist/session-DOkKra9W.d.ts:125

Immutable terminal profile used to decode the very first PTY byte.


readonly terminalState: TerminalState

Defined in: driver/dist/session-DOkKra9W.d.ts:135

Emulator facts captured together at the current screen revision.


readonly window: TerminalWindow

Defined in: driver/dist/session-DOkKra9W.d.ts:133

Terminal-window focus reports, distinct from semantic element focus.

appLogs(): readonly AppLogEvent[]

Defined in: driver/dist/session-DOkKra9W.d.ts:220

Bounded, oldest-first application-log history, including entries emitted while launchTerminal() was still starting. Consumers should subscribe to app-log first and then seed from this snapshot to avoid a startup gap.

readonly AppLogEvent[]


optional bindOperationBudget(budget): void

Defined in: driver/dist/session-DOkKra9W.d.ts:137

Binds one attempt-wide budget before any user operation starts.

OperationBudget

void


cell(pos): CellSnapshot

Defined in: driver/dist/session-DOkKra9W.d.ts:160

number

number

CellSnapshot


checkpoint(): ObservationStamp

Defined in: driver/dist/session-DOkKra9W.d.ts:141

Atomic identity of the currently committed terminal/semantic observation.

ObservationStamp


close(): Promise<void>

Defined in: driver/dist/session-DOkKra9W.d.ts:233

Idempotent; bounded physical cleanup. Never sends signals implicitly.

Promise<void>


contract(): EffectiveSessionContract | null

Defined in: driver/dist/session-DOkKra9W.d.ts:139

Frozen negotiated contract, or null until negotiation has completed.

EffectiveSessionContract | null


crashReport(): CrashReport | null

Defined in: driver/dist/session-DOkKra9W.d.ts:226

What the session knew when the program died unexpectedly, or null — for a live session, a clean exit, or one the harness asked for via close() or signal(). Available as soon as the exit event fires.

CrashReport | null


diagnostics(): readonly SessionDiagnostic[]

Defined in: driver/dist/session-DOkKra9W.d.ts:214

Bounded, oldest-first log of what the session decided behind the scenes: dropped or superseded revisions, unverified markers, adapter negotiation, protocol violations. The same entries are emitted as diagnostic events.

readonly SessionDiagnostic[]


getByLabel(text, opts?): SemanticLocator

Defined in: driver/dist/session-DOkKra9W.d.ts:165

string | RegExp

boolean

SemanticLocator


getByRole(role, opts?): SemanticLocator

Defined in: driver/dist/session-DOkKra9W.d.ts:164

"application" | "region" | "dialog" | "alert" | "status" | "list" | "listitem" | "menu" | "menuitem" | "button" | "checkbox" | "radio" | "tab" | "textbox" | "heading" | "text" | "progressbar" | "separator" | "scrollbar" | "table" | "row" | "cell" | "generic"

RoleLocatorOptions

SemanticLocator


getByScreenText(text, opts?): ScreenLocator

Defined in: driver/dist/session-DOkKra9W.d.ts:171

Physical terminal-grid text, optionally narrowed by occurrence or style.

string | RegExp

ScreenTextLocatorOptions

ScreenLocator


getByTestId(testId): SemanticLocator

Defined in: driver/dist/session-DOkKra9W.d.ts:172

string

SemanticLocator


getByText(text, opts?): SemanticLocator

Defined in: driver/dist/session-DOkKra9W.d.ts:169

Semantic text only. Never falls back to the terminal grid.

string | RegExp

TextLocatorOptions

SemanticLocator


locator(selector): SemanticLocator

Defined in: driver/dist/session-DOkKra9W.d.ts:174

Advanced Termwright semantic selector: ‘dialog button.primary:focused’, ‘#id’.

string

SemanticLocator


locatorForRef(ref): SemanticLocator

Defined in: driver/dist/session-DOkKra9W.d.ts:181

Rebuilds a locator from a ref returned by a resolved target. ('semantic:n8@42' for a semantic node, 'screen:r,c,w,h@7' for a grid match). The ref stays bound to its revision: resolving it after that revision was superseded raises stale-snapshot.

`semantic:${string}@${number}`

SemanticLocator

locatorForRef(ref): ScreenLocator

Defined in: driver/dist/session-DOkKra9W.d.ts:182

`screen:${number},${number},${number},${number}@${number}`

ScreenLocator

locatorForRef(ref): SemanticLocator | ScreenLocator

Defined in: driver/dist/session-DOkKra9W.d.ts:183

LocatorRef

SemanticLocator | ScreenLocator


ownedProcessResources(): OwnedProcessResourceUsage | null

Defined in: driver/dist/session-DOkKra9W.d.ts:231

Native whole-tree accounting captured immediately before PTY disposal. Returns null when the backend cannot make an authoritative claim.

OwnedProcessResourceUsage | null


paste(text): Promise<void>

Defined in: driver/dist/session-DOkKra9W.d.ts:186

ExecutableValue

Promise<void>


press(keys): Promise<void>

Defined in: driver/dist/session-DOkKra9W.d.ts:184

string

Promise<void>


resize(size): Promise<ResizeReceipt>

Defined in: driver/dist/session-DOkKra9W.d.ts:188

number

number

Promise<ResizeReceipt>


screen(): ScreenSnapshot

Defined in: driver/dist/session-DOkKra9W.d.ts:158

ScreenSnapshot


semanticTree(): SemanticSnapshot | null

Defined in: driver/dist/session-DOkKra9W.d.ts:159

SemanticSnapshot | null


settled(opts?): Promise<EffectiveSessionContract>

Defined in: driver/dist/session-DOkKra9W.d.ts:157

Waits for the one frozen Effective Session Contract and, for a semantic session, for the first paired tree. There is no provisional capability API.

WaitOptions

Promise<EffectiveSessionContract>


signal(sig): Promise<void>

Defined in: driver/dist/session-DOkKra9W.d.ts:192

"INT" | "TERM" | "KILL" | "HUP"

Promise<void>


title(): string

Defined in: driver/dist/session-DOkKra9W.d.ts:204

string


type(text): Promise<void>

Defined in: driver/dist/session-DOkKra9W.d.ts:185

ExecutableValue

Promise<void>


waitForCheckpointChange(options): Promise<ObservationStamp>

Defined in: driver/dist/session-DOkKra9W.d.ts:143

Wait until a committed observation newer than after is available.

object & WaitOptions

Promise<ObservationStamp>


waitForCommittedObservation(opts?): Promise<ObservationStamp>

Defined in: driver/dist/session-DOkKra9W.d.ts:152

Waits until currently observable parser work, semantic frame pairing and provider-evidence invalidation have committed. This cannot predict a future semantic frame before either of its causal signals reaches the driver, and it is not a quiet/global-idle heuristic.

WaitOptions

Promise<ObservationStamp>


waitForExit(opts?): Promise<ExitStatus>

Defined in: driver/dist/session-DOkKra9W.d.ts:203

WaitOptions

Promise<ExitStatus>


waitForQuiet(opts?): Promise<void>

Defined in: driver/dist/session-DOkKra9W.d.ts:198

Heuristic only: waits for a stated interval with no screen or semantic change.

object & WaitOptions

Promise<void>


waitForRender(opts): Promise<void>

Defined in: driver/dist/session-DOkKra9W.d.ts:194

object & WaitOptions

Promise<void>


waitForShellPrompt(opts?): Promise<void>

Defined in: driver/dist/session-DOkKra9W.d.ts:202

Authoritative: waits for an OSC 133 prompt marker from shell integration.

WaitOptions

Promise<void>


waitForText(text, opts?): Promise<void>

Defined in: driver/dist/session-DOkKra9W.d.ts:193

string | RegExp

WaitOptions

Promise<void>


waitForTitle(text, opts?): Promise<void>

Defined in: driver/dist/session-DOkKra9W.d.ts:205

string | RegExp

WaitOptions

Promise<void>


write(bytes): Promise<void>

Defined in: driver/dist/session-DOkKra9W.d.ts:187

string | Uint8Array<ArrayBufferLike>

Promise<void>