Changelog

What's new, improved, and fixed in each release.

AriCore v0.2 latest April 21, 2026
The phone grows a third tab — Desk (preview)
  • new Desk mode (preview) — a third tab alongside Solo and Linked. Named agents run as host processes on your Mac, each pinned to its own workspace and persistent browser profile, gated by a three-tier approval flow (workspace pin · exec policy · phone petition). The phone is the messaging UI; the Mac is the compute.
  • new Approval flow — any AppleScript or privileged tool call pauses the agent and renders an approval card on the phone. Approve, deny, or check always allow to whitelist the specific script + target.
  • new Agent config from files — each agent is a directory (soul.md, instructions.md, agent.md, memory.md, history.jsonl) under ~/.aricode/desk/agents/. Version-controllable. Hand-editable. Four seeded templates: research, inbox, calendar, shopper.
  • new Capability-gated UI — the Desk tab only appears on the phone when the paired desktop advertises capabilities.desk: true. Older desktops stay on two tabs.
  • improved Scene-phase resync — iOS suspends WebSockets when the app backgrounds, so AriCore now refreshes agent state and re-opens the active chat on every foreground. The relay-client also fires a parallel onDeskStatus hook so the desk store can resync on the closed→open edge without fighting session status.
  • fixed Streaming-delta rendering — the first few tokens of a reply occasionally didn't re-render the bubble until the chat was closed and re-opened. Replaced the compound subscript mutation on streamingTails with an explicit read-modify-write so @Observable always sees the write.
v0.5.3 April 29, 2026
The reliability & performance pass
  • fixed No more chat hangs during tool use — the brief beachball / spinning cursor that appeared each time the agent ran a tool is gone. Git status now runs asynchronously instead of blocking the UI, and the file tree no longer reloads on every sub-turn during multi-step tool runs.
  • improved Faster opening of large repos — the file tree caps absurdly large directories (5000 nodes total, 500 per directory) with a clear "… N more entries" marker, so monorepos with node_modules-shaped subtrees open instantly instead of stalling.
  • improved Smoother streaming — message bubbles are now memoized so unrelated activity (a new tool result landing, status changes) doesn't force every prior message to re-render. Long conversations stay responsive.
  • fixed "Loading…" no longer flashes on every message — the session list refreshes silently in the background. Mid-conversation refreshes update in place.
  • improved Auto-retry on dropped connections — when an upstream provider closes the connection mid-stream (the terminated / UND_ERR_SOCKET errors), aricode now classifies it as transient and retries automatically with backoff instead of failing the whole turn.
  • fixed File edits preserve CRLF, BOM, and trailing newlines — Windows-style line endings, UTF-8 BOM, and missing-or-present trailing newlines all survive the edit pipeline now. No more silent diff churn from line-ending normalization.
  • fixed Multi-hunk edits are all-or-nothing — if any hunk in a batch can't be located, the entire edit is rejected instead of leaving the file half-applied. Same for overlapping hunks. The fuzzy-match safety threshold was also raised so the agent won't accidentally land an edit on a sibling function with similar shape.
  • fixed Detect concurrent file changes — if a file is modified externally (your editor, another tool) between when aricode read it and when it tries to write, the write is rejected with a clear "file changed since you read it" message instead of silently overwriting.
  • improved Atomic session saves — session state writes via tmp+rename so the sidebar list and the saved file can never be observed mid-write. A crash mid-save can't corrupt the session file.
  • improved Stream idle watchdog — if a provider sends the initial response then stops sending data, aricode detects it within 60 seconds and surfaces a clear timeout error instead of hanging indefinitely.
  • new Diagnostic bundle export (Aridesk) — one click in the Diagnostics tab produces a single .json with recent events, redacted config, and the active session — the artifact you'd attach to a bug report. API keys and OAuth tokens are stripped before bundling.
  • new Live diagnostics tab (Aridesk) — see model calls, tool calls, MCP errors, edit conflicts, and crashes as they happen. Recent errors get their own column so you can scan for problems at a glance.
  • new Token meter (Aridesk) — tiny gauge in the top bar showing context-window fill projection from the latest model response. Goes amber at 70%, red at 90%, so you see compaction coming.
  • improved Tighter chat formatting — paragraph, list, and code-block spacing reduced; lists no longer compound margins on every item. Long replies fit more on screen without scrolling.
  • fixed Secrets stay out of error messages — API keys, GitHub tokens, JWTs, and Bearer tokens are stripped from any error text before it reaches the UI or the structured event log.
  • improved Crash handlers — uncaught exceptions and unhandled promise rejections are now captured to the event log so a bug report has the failure context attached, instead of just "the app crashed."
v0.5.2 April 16, 2026
Aricode Desktop & session persistence
  • new Aricode Desktop — a full Electron desktop app with three-panel layout, file tree with git diff badges, streaming conversation, integrated terminal, knowledge graph visualization, and slash command palette.
  • new Session persistence — conversations automatically save to disk and resume on restart. Browse and switch between past sessions from the sidebar.
  • new Provider management — add, edit, switch, and delete model providers from the desktop settings panel. First-launch onboarding wizard walks you through connecting to a backend.
  • new Golden Thread rebrand — new warm amber/gold color palette, labyrinth-wall ASCII art logo, diamond spinner, and redesigned REPL with streaming text in the transcript.
  • improved Streaming display — model output now streams live into the conversation transcript instead of only showing in the status bar. SpinnerMode state machine shows distinct phases (thinking, responding, tool-use).
  • improved Dream mode abort/dream can now be cleanly interrupted with Ctrl+C or the Stop button. The abort signal propagates through all phase runners.
  • new Conversation search — Cmd+F opens a search bar to find text across all messages with match navigation.
  • new Conversation export — export your conversation as Markdown or JSON via File → Export.
  • new Git panel — view branch, changed files, recent commits, and quick-commit from the detail panel.
  • new Inline diff viewer — colored unified diffs with line numbers and per-file revert.
v0.5.1 April 15, 2026
The section-mode feature release
  • new Section Mode: practical by default/sectmode now reliably dispatches real work, with retry behavior when planner output is malformed and safer fallbacks when dispatch blocks are incomplete.
  • improved Section id + alias matching — planner output can resolve canonical ids, normalized ids, and slugified section labels so section routing succeeds more often in real projects.
  • improved Faster section orchestration — master, section, and verifier turn budgets were lowered so typical feature work stays focused instead of over-orchestrating.
  • improved Transcript-first REPL flow — the terminal UI now keeps scrollback and copy behavior stable while section-mode runs stream naturally.
v0.5.0 April 2026
The dreaming release
  • new Autonomous dreaming — phased codebase exploration (Survey, Triage, Deep Dive, Futures, Synthesis) with dream journal output
  • new Node SDKcreateAricode() factory, async iterator event stream, defineTool() and createToolRegistry() for custom tools
  • new Behavioral compilation — test witness extraction from TAP/pytest/unittest, root cause analysis, progress tracking across fix iterations
  • improved Knowledge graph — concept nodes, semantic edges, fact card generation, incremental re-indexing via content hashing
  • new Hooks system — six lifecycle events (post-edit, post-write, pre-command, post-command, session-start, session-end)
  • improved Edit intelligence — convention extraction, blast radius reporting with dependency graph traversal
  • breaking Package renamed from ariadne to aricode. Legacy ARIADNE_* env vars still supported
v0.4.0 February 2026
The memory release
  • new Persistent knowledge graph — file nodes, symbol nodes, structural edges (imports, calls, owns, inherit), JSON storage under .ariadne/graph/
  • new Subagent orchestration — task-specific agents with isolated conversations and read-only tool access
  • new Session memory/memory and /forget commands for persistent per-workspace state
  • improved Context management/ctxsize override, automatic summarization for long conversations
  • fixed Tool calls no longer silently fail when model returns malformed JSON
v0.3.0 December 2025
The safety release
  • new Edit intelligence — post-edit linting pipeline with ESLint, Pyright, clippy integration
  • new Three-tier command policy — readonly (auto), mutating (consent), privileged (opt-in), with blocked commands
  • new Environment sanitization — API keys, tokens, and secrets stripped from subprocess environments
  • improved Hunk-based editing — smarter diff application with conflict detection and recovery
  • fixed Streaming responses no longer truncate on slow model backends
v0.2.0 October 2025
The tools release
  • new Interactive REPL — persistent session with slash commands, history, and tab completion
  • new Tool calling — read_file, write_file, edit_file, run_command, search_files, glob with structured results
  • new Multi-model support — Ollama, OpenAI, Anthropic, DeepSeek, and any OpenAI-compatible endpoint
  • new Profile system — saved backend configurations with /profile switching
  • improved Streaming output with real-time token rendering
v0.1.0 August 2025
Initial release
  • new CLI agent — single-shot and interactive modes for code generation and editing
  • new Ollama integration — native local model support with automatic endpoint discovery
  • new File operations — read, write, and search with workspace-scoped safety
  • new Themed terminal output with configurable color schemes