# magi-code 0.95.0
## New features
### Code Mode
The agent can run sandboxed JavaScript that calls tools in batches and returns only what it needs. Tool calls inside a script keep the usual approvals, hooks, cancellation, and session records. If a script fails or is canceled, changes it already made stay in place.
**How to use:** On by default. To turn it off or change limits, open `/settings` → Tools → Code Mode, then restart. If your settings already have `enabled: false`, it stays off.
### Pinnable header panels
Mission Control has Transcript and Changes tabs, and header panels for Activities, Files, and Summary.
**How to use:** `Alt-1`, `Alt-2`, and `Alt-3` open or close panels. `Alt-A` pins them beside Transcript. The layout is saved and restored after a restart. `interface.tui.show_panel_on_startup` no longer does anything.
### Jev Bash file tracking
Session files can list files that Bash commands probably read, wrote, or edited. These are guesses: they never count as confirmed edits.
**How to use:** Export `TYPESAFE_API_KEY`, then turn on **Jev tooling** and **Bash file tracking** in `/settings` → Internal Tooling, then restart. Off by default.
### Claude subscription compaction controls
Claude subscription runs have their own compaction thresholds and token reserve.
**How to use:** Open `/settings` → Agent settings.
## Fixes
- Claude subscription requests no longer stop after five minutes while output is still arriving.
- All `claude-subscription` models allow up to 202,000 input tokens. Sessions compact and continue on their own when Claude CLI rejects a prompt as too long.
- Anthropic tool results stay in order, and provider errors are no longer hidden.
- Completion threshold in `/settings` accepts decimals such as `0.85`.
- A slow or stuck `git` no longer freezes session events.
- Compaction cards show the full summary.
- `rustls` updated to 0.23.45 for RUSTSEC-2026-0285.
## Other changes
- `/tools` is removed; use `/settings` → Tools.
- The optional `jev` agent tool is removed.
- The `{{has_ripgrep}}` prompt variable is removed, and custom prompts that use it fail to load.
- Bash tool timeout: default and maximum are now 600 seconds.
- `logo.png` is no longer included in the published crate.
- Internal refactoring and test cleanup.