mdmanager.ai
CHANGELOG.md

Changelog

mdmanager 0.1.0 — Sep 6, 2026

  • Binary installation — Install verified Linux and macOS binaries for x86_64 and ARM64 from mdmanager.ai/install, with archives and SHA-256 checksums on GitHub Releases.
  • Release checks — Run formatting, Clippy, Rust tests, installer verification, and website builds on Linux and macOS before publishing native release binaries.
  • Pi path aliases — Disable and restore Pi instructions reached through a symlinked parent directory, including macOS temporary paths, without rejecting them as outside the repository.

  • Cross-machine setup — Document how to install a shared personal library on a fresh machine, select its Profile, and pull and apply later changes while keeping ownership state local.

  • Markdown documents — Render headings, lists, emphasis, code, and links in TUI documents and previews. Press m to switch to raw source; the saved UI preference reloads from disk. Source line numbers, line jumps, and search remain aligned; differences always stay raw.

  • Bundled docs — Remove private page-size limits so documentation growth cannot panic when reading a topic in a debug build.

  • Website — Add the mdmanager.ai homepage, with the existing documentation and release changelog rendered as static pages.

  • Workflow demo — Re-record the README and website demo from a scripted Docker session: it now starts at the splash, walks Home, Context, the Library and two Profiles, shows a coding agent editing a Section shared by Claude, Codex and Pi, and reviews and applies the Global difference. The site plays a matching light or dark video with the narration beside it as page text; the README GIF carries the narration below the terminal.
  • TUI metadata and diagnostics — Source About panels account for wrapped paths and compact the displayed path when needed to keep usage metadata and Contents visible. Empty Context views retain configuration warnings and scan failures.
  • Document search navigation — Search reveals matches within wrapped lines and advances past the final match before wrapping, even at the bottom of a document.

  • Collision-safe Global backups — Backup reservations use create-only persistence so overlapping replacements retain every recovery point.

  • Project creation safety — Reviewed creation rejects newly introduced target symlinks and preserves intervening Section replacements when a manifest commit fails.

  • Recovery after source removal — Local status and restore no longer require the disabled source directory to exist. Shared Claude settings can be restored after removing their originating linked worktree, preserving unrelated settings edits.

  • Local recovery and concurrency — Validate owned destinations and Claude settings file types before mutation, serialize linked-worktree writers with an advisory lock, and report partial-write recovery guidance without claiming multi-file atomicity.

  • Context refresh dependencies — Refresh detects main-worktree Claude exclusion settings and additions, edits, and removals in linked Claude and Cursor rule directories, including deeply nested external rules.

  • Reviewed Project writes — Apply retains the displayed review and refuses changed targets or source paths before writing, including when using --yes.

  • Local ownership safety — Managed outputs reject resolving and dangling symlinks. Local writes validate recovery records first; restore prepares settings and owned exclusion edits before changing files, and repeated Apply retains exclusion ownership.
  • Consistent TUI inspection — Pages, search, and difference controls use explicit inspection snapshots, keeping file observations stable between reloads and reporting current refresh errors. Differences follow content comparison independently of deployment status, and Context diagnostics no longer depend on display wording.

  • Claude worktree settings — Context uses the same Git-reported settings worktree as Local disables, including separate Git directories and submodules, and no longer reads settings from Git metadata parents.

  • Malformed rule headers — Claude and Cursor rules with unterminated frontmatter are reported as ambiguous with a reason instead of inferring loading from incomplete metadata.

  • Runtime Context — Inspect persistent Markdown instructions for Claude Code, Codex, Cursor, and Pi. Browse global and project sources with loading order, overrides, conditional rules, imports, exclusions, and truncation explained.

  • Reusable Sections and Global Profiles — Compose shared Markdown into runtime-specific instruction files. Named Profiles let workstations and hosted agent machines use different global setups from a personal Section library.
  • Project and Local instructions — Keep shared project compositions committed with the repository, and private repository instructions in ignored local files. Local compositions can reuse personal Sections across repositories.
  • Agent workflow and TUI review — Point a coding agent to mdmanager docs start for instruction edits and CLI Apply. Use the TUI to browse sources and review differences; it reloads disk changes while preserving selection and scroll position.
  • Adoption and deployment checks — Adopt existing instruction files while preserving their deployed contents. Render and diff before Apply, and check for source changes awaiting deployment or managed targets edited directly on disk.
  • Bundled guides and diagnostics — Read setup, configuration, migration, and runtime guides through mdmanager docs. Use mdmanager doctor to diagnose Global configuration problems and repair invalid generated state.