magi-code 0.96.1

Repository-aware CLI coding agent for terminal work
Documentation
# magi-code 0.91.0

## New features

### Fold provider groups in model settings

The Models list in `/settings` can collapse and expand provider groups. Group headers show how many models each group has.

**How to use:** Open `/settings` → Models. Press Left to fold the selected row's group, or Right to unfold it. You can also click a header's `▸`/`▾` arrow. Fold state resets when the settings modal closes.

### Jev skill suggestion

When a typed prompt clearly fits one of your installed skills, Jev adds a short note naming that skill. The agent can ignore it if it doesn't fit. The note is saved with the session and restored on reload.

**How to use:** Export `TYPESAFE_API_KEY`, open `/settings` → **Internal Tooling**, then enable **Jev tooling** and **Skill suggestion**. It's off by default. There's no note for steering messages, subagents, prompts that already name a `$skill`, or projects with fewer than two skills. Each typed prompt waits for up to two Jev requests.

### Jev compaction timing

Once context passes a soft threshold but is still under the automatic compaction limit, Jev checks whether a new prompt starts unrelated work. If it does, the session compacts before the turn.

**How to use:** Enable **Jev tooling** and **Compaction timing** in `/settings` → **Internal Tooling**. The soft threshold defaults to 60% of the context window, and the early-compaction threshold defaults to `0.7`. The automatic limit still applies, and a failed Jev request leaves compaction unchanged.

## Fixes

- Claude subscription turns now start Claude CLI in the workspace folder instead of a temporary folder that was deleted after each turn.
- File checkpoint snapshots are now owner-only (`0600` files, `0700` folders). Before, other local users could read snapshots, which can include `.env` files and credentials.
- The Models tab's scrolling and click targets now line up with the rows shown. They were off by one line.
- `hash_edit` `.BLK` operations now support JavaScript and JSX.
- Atomic-write errors now name the file and the step that failed.

## Other changes

- Jev bash protection now scores risk against structured criteria. Routine `git commit` and `git push` need approval less often under `cautious` and `strict`. High-risk gating is unchanged.
- Token-triggered streaming reminders and the `agent.reminders` setting are removed. The setting was off by default. If you turned it on, that guardrail now stops without a warning, and existing `agent.reminders` blocks load but do nothing.
- Internal refactoring. Behavior is unchanged.