Gives AI agents persistent terminal sessions, and gives their users a way to watch and share them.
Server has 7 tools with complete input schemas and descriptions. Naming follows verb_noun pattern (it_list, it_new, it_read, it_send, it_kill, it_tail, it_head). Descriptions are present (avg ~80 chars) but lack actionable guidance on when to use each tool vs. alternatives. Parameters are typed and described, but lack constraints (enums, ranges, patterns). Output schemas are not documented in the source. Error handling returns structured errors with hints, which is good, but no recovery guidance for common failure modes. Missing: parameter constraints (e.g., lines 1-5000 for it_tail/it_head should be enforced with min/max), output schema documentation, and tool composition guidance (e.g., when to use it_read vs it_tail).
Read the first N lines of a session's output log.
Terminate a terminal session with an optional signal.
List all terminal sessions with optional pagination and verbose output.
Create a new terminal session with optional command, working directory, environment variables, shell, and terminal dimensions.
Read the current state of a terminal session with optional resize and wait parameters.
Send text input, key sequences, or both to a terminal session.
Read the last N lines of a session's output log.
Output schemas not documented. LLMs cannot plan downstream calls or extract fields without knowing what each tool returns. it_list, it_new, it_read, it_send return screen/list data but structure is not visible in tool definitions.
Parameter constraints missing. it_tail and it_head accept 'lines' (1-5000 range per description) but no min/max schema constraints. it_new accepts 'cols' and 'rows' with no bounds. LLMs may pass invalid values.
Descriptions lack actionable guidance. 'Read the current state of a terminal session' does not explain when to use it_read vs it_tail vs it_head. LLMs must guess which tool fits the user intent.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 52 | 2026-07-28+ | v2 |
it_send description incomplete. States 'Send text input, key sequences, or both' but does not clarify that text and keys are optional (both can be null). The code validates this, but the description should warn LLMs upfront.
it_kill lacks confirmation/dry-run pattern. Terminating a session is destructive and irreversible. No confirmation step or dry-run option to prevent accidental kills.