Skip to content

agent-cli / Exports / ISessionOptions

Interface: ISessionOptions

Options for constructing a Session

Table of contents

Properties

Properties

tools

tools: IToolWithEventService<TToolParameters, IToolResult>[]

Pre-constructed tools to register with the agent

Defined in

agent-sessions/dist/node/index.d.ts:193


provider

provider: IAIProvider

Pre-constructed AI provider

Defined in

agent-sessions/dist/node/index.d.ts:195


systemMessage

systemMessage: string

Pre-built system message string

Defined in

agent-sessions/dist/node/index.d.ts:197


terminal

terminal: ITerminalOutput

Terminal I/O for permission prompts

Defined in

agent-sessions/dist/node/index.d.ts:199


permissions

Optional permissions: Object

Permission and hook configuration

Type declaration

NameType
allowstring[]
denystring[]

Defined in

agent-sessions/dist/node/index.d.ts:201


hooks

Optional hooks: Record<string, unknown>

Defined in

agent-sessions/dist/node/index.d.ts:205


permissionMode

Optional permissionMode: TPermissionMode

Initial permission mode

Defined in

agent-sessions/dist/node/index.d.ts:207


defaultTrustLevel

Optional defaultTrustLevel: "safe" | "moderate" | "full"

Default trust level — used to derive permissionMode if not given

Defined in

agent-sessions/dist/node/index.d.ts:209


model

Optional model: string

Model name (for context window sizing and Robota config)

Defined in

agent-sessions/dist/node/index.d.ts:211


maxTurns

Optional maxTurns: number

Maximum number of agentic turns per run() call. Undefined = unlimited.

Defined in

agent-sessions/dist/node/index.d.ts:213


sessionStore

Optional sessionStore: SessionStore

Optional session store for persistence

Defined in

agent-sessions/dist/node/index.d.ts:215


permissionHandler

Optional permissionHandler: TPermissionHandler

Custom permission handler (overrides terminal-based prompts, used by Ink UI)

Defined in

agent-sessions/dist/node/index.d.ts:217


onTextDelta

Optional onTextDelta: (delta: string) => void

Callback for text deltas — enables streaming text to the UI in real-time

Type declaration

▸ (delta): void

Parameters
NameType
deltastring
Returns

void

Defined in

agent-sessions/dist/node/index.d.ts:219


promptForApproval

Optional promptForApproval: (terminal: ITerminalOutput, toolName: string, toolArgs: TToolArgs) => Promise<boolean>

Custom prompt-for-approval function (injected from CLI)

Type declaration

▸ (terminal, toolName, toolArgs): Promise<boolean>

Parameters
NameType
terminalITerminalOutput
toolNamestring
toolArgsTToolArgs
Returns

Promise<boolean>

Defined in

agent-sessions/dist/node/index.d.ts:221


onCompact

Optional onCompact: (summary: string) => void

Callback when context is compacted

Type declaration

▸ (summary): void

Parameters
NameType
summarystring
Returns

void

Defined in

agent-sessions/dist/node/index.d.ts:223


compactInstructions

Optional compactInstructions: string

Instructions to include in the compaction prompt (e.g. from CLAUDE.md)

Defined in

agent-sessions/dist/node/index.d.ts:225


contextMaxTokens

Optional contextMaxTokens: number

Override context max tokens (otherwise derived from model name)

Defined in

agent-sessions/dist/node/index.d.ts:227


sessionLogger

Optional sessionLogger: ISessionLogger

Session logger — injected for pluggable session event logging.

Defined in

agent-sessions/dist/node/index.d.ts:229

Released under the MIT License.