- Surgical edits. A new
edit_filetool replaces an exact string in a file instead of rewriting it, so an edit costs the size of the change rather than the size of the file. Every agent that canwrite_filegetsedit_fileautomatically, and an edit is refused unless the agent has read the current version of the file first. - Windowed reads.
read_filereturns up to 2,000 line-numbered lines per call, withoffsetandlimitto page through large files, and refuses binary files. - Capped tool output. Every tool result, including integration and sub-agent results, is capped. Oversized output is written to a
paradime_scratch/folder in the agentβs checkout and the model gets a head-and-tail preview plus the path, with a hint to page through it or hand it to a sub-agent. Spilled files never end up in a commit or a pull request. - Compaction while the run is live. Context is compacted mid-run once it passes a token threshold, and older tool outputs are pruned from what the model re-reads. The transcript in the session panel keeps the full history.
- Compact integration payloads. The Jira, Confluence, and Linear tools return trimmed Markdown instead of raw JSON or storage-format XHTML.
- A task list and a loop guard.
todo_writeandtodo_readkeep a checklist on the session so multi-step runs stop re-deriving their plan every turn, and an agent that repeats the same tool calls three times in a row now stops with a clear no-progress error instead of spinning to the iteration limit. - Path-scoped code search works.
ripgrep_searchwith a path infile_patterns(for examplemodels/staging/*.sql) returned no matches before; it now matches at any depth.
- Trigger awareness. The agent knows whether a person is present (Slack, Teams, the app, or an MCP client) or not (the API, Bolt, self-healing, or a delegated child run). Unattended runs never wait in plan mode or ask clarifying questions; they make the most spec-faithful assumption, note it, and proceed.
- Warehouse dialect. The agent is told which warehouse it is writing SQL for, so it stops guessing between dialects.
- Repository layout. The repo tree and the location of
dbt_project.ymlare computed once at startup instead of being rediscovered turn by turn.