Skip to content

Releases: femtomc/mu

v26.3.7

06 Mar 00:40

Choose a tag to compare

Highlights

  • Upgraded mu's pi runtime dependencies to 0.56.2 across agent and CLI packages.
  • Released synchronized workspace version 26.3.7 for all publishable mu packages.

User-visible changes (features/fixes)

  • @femtomc/mu-agent now depends on:
    • @mariozechner/pi-agent-core@^0.56.2
    • @mariozechner/pi-ai@^0.56.2
    • @mariozechner/pi-coding-agent@^0.56.2
    • @mariozechner/pi-tui@^0.56.2
  • @femtomc/mu (CLI) now depends on:
    • @mariozechner/pi-ai@^0.56.2
    • @mariozechner/pi-coding-agent@^0.56.2

Operational/tooling changes

  • Refreshed bun.lock to capture [email protected] and resulting transitive dependency updates.
  • Bumped release version to 26.3.7 in root and all publishable manifests.
  • Validation completed via bun run check before release.

Docs/branding updates

  • Synced periodic logo version marker from 26.3.6 to 26.3.7 in assets/mu-periodic-logo.svg.

v26.3.6

02 Mar 15:53

Choose a tag to compare

Highlights

  • Enforced progressive-disclosure defaults across high-volume CLI read surfaces to reduce accidental context blowups in agent/operator sessions.
  • Added explicit escape hatches (--json, --raw, --all) where full payloads are required.

User-visible changes

  • mu replay
    • bounded preview by default (tail preview)
    • full dump now requires explicit --all --raw
    • added --raw for exact tail lines
  • mu store tail
    • compact preview by default
    • added --raw for exact row output
    • reduced max --limit to 500
  • mu issues list and mu issues ready
    • default bounded output (--limit 20)
    • explicit unbounded mode via --all
  • mu forum read and mu forum topics
    • bounded defaults and max caps
    • forum topics supports explicit --all
  • mu issues get
    • compact mode now shows body preview instead of full body dump
  • mu control identities
    • compact table by default, full records via --json
  • mu control operator models / mu control operator thinking <provider>
    • compact summaries by default
    • full per-model detail via --verbose/--debug (or --json)

Operational/tooling changes

  • Added CLI regression tests covering bounded defaults and explicit full-output pathways.
  • Updated command help and guide text to steer toward compact-first workflows.

Docs/branding

  • Synced periodic logo embedded version to 26.3.6.
  • Updated CLI docs/examples to reflect progressive-disclosure defaults.

Compare

v26.3.5

02 Mar 01:31

Choose a tag to compare

Highlights

  • Renamed the starter writing skill from writing to technical-writing.
  • Replaced the old generic writing guidance with a stronger systems/technical writing playbook focused on argument quality, design rationale, and evidence-backed claims.
  • Added migration cleanup so legacy top-level writing skill directories are pruned during starter-skill bootstrap.

User-visible changes

  • New starter skill path and name:
    • skills/technical-writing/SKILL.md
  • Removed legacy starter skill file:
    • skills/writing/SKILL.md
  • Updated operator-facing references so skill handoff now points to technical-writing.
  • Expanded technical-writing guidance to include:
    • problem/insight/evidence/limits argument spine
    • phase-based paper workflow (outline → sentence skeleton → polish → feedback)
    • checklists for intro/related work/design/evaluation/discussion
    • common systems-paper failure modes and review passes

Operational and tooling changes

  • Starter skill bootstrap now hard-prunes legacy top-level writing directory entries to avoid stale local installations.
  • CLI starter-skill bootstrap tests updated to assert technical-writing seeding and prompt injection.

Docs and branding

  • @femtomc/mu-agent README starter-skill list updated to technical-writing.
  • Versioned logo asset synced to 26.3.5.

Validation

  • bun run check passed before release.

v26.3.4

02 Mar 00:55

Choose a tag to compare

Highlights

  • Added durable programmable-UI persistence so mu_ui state survives session resume/switch/fork/tree navigation.
  • Introduced a new control-plane UiDoc state journal (ui_docs_state.jsonl) with scope/revision semantics for async multi-actor coordination.
  • Added a new CLI surface: mu control ui-state for listing/inspecting persisted UiDoc scope snapshots.

User-visible changes

  • mu_ui extension now stores snapshot state via session custom entries (mu-ui-state/v1) and restores latest valid snapshot on session lifecycle events.
  • New control command group:
    • mu control ui-state
    • mu control ui-state list ...
    • mu control ui-state get ...
  • CLI README/help updated with ui-state command usage.

Operational / tooling changes

  • Control-plane runtime now loads and serves UiDocsStateStore from:
    • <workspace>/control-plane/ui_docs_state.jsonl
  • Command pipeline now journals normalized ui_docs from operator responses into scope-specific state records.
  • Added test coverage for:
    • ui extension persistence/restore
    • ui docs state store behavior
    • pipeline-to-store integration
    • CLI control ui-state behavior

Docs / branding updates

  • Updated @femtomc/mu-agent and @femtomc/mu-control-plane READMEs for new persistence behavior and store semantics.
  • Synced periodic logo version marker to 26.3.4.

v26.3.3

02 Mar 00:09

Choose a tag to compare

Highlights

  • Hardened autonomous operator wake failure handling so provider-side failures are classified and surfaced explicitly instead of collapsing into generic operator_empty_response outcomes.
  • Heartbeat wake decisions now treat fallback-coded operator replies (for example provider quota/context failures) as failed wake outcomes, which correctly marks heartbeat ticks as failed instead of ok.
  • Added focused regression coverage across agent runtime/backend and server wake/tick telemetry paths.

User-visible changes

  • New operator fallback/error codes are now emitted when upstream provider failures are detected from assistant error payloads:
    • operator_provider_usage_limit
    • operator_provider_context_length_exceeded
  • Fallback safe-response messages now include these provider failure codes and clearer explanations.
  • Heartbeat-triggered wakes that return fallback-coded provider errors now produce failure semantics in scheduler state (last_result: "failed" with explicit last_error) rather than reporting successful dispatch.

Operational/tooling changes

  • Strengthened wake decision classification in mu-server so non-busy fallback codes are tracked as fallback failures while preserving no-spam/coalescing behavior.
  • Regression tests added/updated:
    • packages/agent/test/operator_runtime.test.ts
    • packages/agent/test/operator_backend.test.ts
    • packages/server/test/server.test.ts

Docs/branding

  • Versioned periodic logo asset synchronized to 26.3.3.

Compare

v26.3.2

01 Mar 22:12

Choose a tag to compare

Highlights

  • Heartbeat programs can now route autonomous turns through per-program provider/model/thinking overrides.
  • Heartbeat programs can now pin autonomous turns to explicit context checkpoints (session_id, session_file, session_dir).
  • Autonomous operator runtime/backend now honors wake-scoped session/model overrides with profile-aware session recreation.

User-visible changes

Heartbeats: per-program model routing

You can now configure heartbeat-local routing without changing workspace-global operator defaults.

  • operator_provider
  • operator_model
  • operator_thinking

CLI additions:

  • mu heartbeats create --provider <id> --model <id> [--thinking <level>]
  • mu heartbeats update --provider <id> --model <id> [--thinking <level>]

Validation guardrails:

  • --provider and --model must be provided together.
  • --thinking requires provider+model.

Heartbeats: context checkpoints

Heartbeat programs can now target stable autonomous session checkpoints:

  • context_session_id
  • context_session_file
  • context_session_dir

CLI additions:

  • mu heartbeats create --session-id <id> [--session-file <path>] [--session-dir <path>]
  • mu heartbeats update --session-id <id> [--session-file <path>] [--session-dir <path>]

Behavioral details:

  • Wake metadata carries routing/checkpoint fields through autonomous ingress.
  • For heartbeat wakes without explicit context_session_id, server defaults to heartbeat-program:<program_id>.

Output/rendering

Compact heartbeat rendering now includes configured model/checkpoint context when present.

Operational/tooling changes

  • API surface updated for /api/heartbeats/create and /api/heartbeats/update to accept routing/checkpoint fields.
  • Server wake dispatch path now includes routing/checkpoint metadata in wake payloads and autonomous ingress metadata.
  • Regression coverage expanded across server/agent/cli to verify end-to-end routing/checkpoint behavior and validation.

Docs/branding updates

  • CLI README updated with heartbeat model-routing and checkpoint examples.
  • Versioned periodic logo synced to 26.3.2.

Compare

v26.3.1

01 Mar 20:25

Choose a tag to compare

Highlights

  • Hardened heartbeat/cron wake behavior to reduce race conditions and confusing timeout/busy outcomes.
  • Added heartbeat ownership guardrails for mu issues mutations, with explicit override when human intervention is intended.
  • Fixed memory index rebuild failures caused by duplicate item_id collisions in control-plane sources.

User-visible changes

  • Scheduling / wake reliability:

    • Manual trigger commands now use a longer request timeout:
      • mu heartbeats trigger ...
      • mu cron trigger ...
    • Heartbeat program registry now coalesces concurrent in-flight ticks per program.
    • operator_busy wake-turn outcomes are treated as coalesced wake results instead of hard failures.
  • Heartbeat ownership guardrails for issue DAG mutation:

    • mu issues mutation commands now block changes targeting heartbeat-managed roots unless explicitly overridden.
    • New override flag:
      • --allow-heartbeat-managed
    • Applies across create/update/claim/open/close/dep/undep mutation paths.
    • Autonomous heartbeat-owned turns are allowed when wake context matches the owning heartbeat program.
  • Memory index stability:

    • Rebuild path now prevents duplicate memory_items.item_id collisions for control-plane-derived rows.
    • Added defensive unique-id normalization before index writes.

Operational / tooling changes

  • Expanded regression coverage for:
    • concurrent heartbeat trigger coalescing,
    • heartbeat ownership mutation blocking and autonomous ownership allowance,
    • memory index rebuild with repeated control-plane IDs.
  • Release manifests updated to 26.3.1 across publishable packages.

Docs / branding

  • CLI docs updated with heartbeat-ownership override guidance.
  • Versioned logo asset synchronized to 26.3.1.

Compare

  • v26.2.120...v26.3.1

v26.2.120

28 Feb 00:43

Choose a tag to compare

Highlights

  • CLI startup and command dispatch paths were tightened to reduce cold-start overhead for common invocations (mu, mu serve, help paths).
  • mu serve startup-related extension refreshes continue to run in a non-blocking/coalesced mode, improving perceived attach responsiveness.

User-visible changes

  • Faster command startup for lightweight and help invocations:
    • command handlers are now loaded lazily per command path rather than eagerly as a full CLI graph.
    • help requests avoid store/bootstrap setup.
    • runtime context selection is stricter so only store-heavy commands materialize full issue/forum/event stores.
  • mu serve / operator-session orchestration now benefits from reduced up-front command-load cost.
  • Running-server detection remains behaviorally compatible, with a shorter health probe timeout for stale/unresponsive server discovery.

Operational and tooling changes

  • @femtomc/mu* workspace packages bumped to 26.2.120.
  • Lockfile refreshed for release packaging.
  • Versioned logo metadata synced to 26.2.120.

Docs / branding updates

  • No user-facing docs changes in this release.
  • Periodic logo version stamp updated as part of release synchronization.

v26.2.119

28 Feb 00:09

Choose a tag to compare

Highlights

  • Improved responsiveness across both CLI startup/store initialization and terminal UI refresh paths.
  • Reduced redundant UI status/widget writes and avoided startup blocking on branding status refresh.

User-visible changes

  • Terminal mu_ui refresh path now skips duplicate status/widget updates when visible content is unchanged.
  • Branding status refresh no longer blocks initial session start/switch rendering and is coalesced when polling overlaps.
  • Branding status fetch timeout reduced to improve perceived responsiveness under slow server conditions.

Operational / tooling changes

  • CLI workspace context setup now parallelizes module/repo-root resolution.
  • Bundled starter-skill bootstrap now avoids unnecessary file reads for existing files and caches bundled skill metadata lookups in-process.
  • Release cut for v26.2.119 with synchronized manifests, logo version, and lockfile refresh.

Docs / branding updates

  • Versioned logo text updated to 26.2.119.

Compare

v26.2.118

27 Feb 17:44

Choose a tag to compare

Highlights

  • Added a tmux-friendly programmable-UI interaction shortcut fallback in terminal operator sessions.
  • Preserved existing ctrl+shift+u behavior while adding alt+u for environments that drop Shift on Ctrl+letter chords.

User-visible changes

  • Terminal programmable-UI modal can now be opened with either:
    • ctrl+shift+u (primary)
    • alt+u (fallback)
  • Auto-prompt notification copy now references both shortcuts.
  • Updated UI extension tests to validate both shortcut registrations.

Operational / tooling changes

  • Release cut for v26.2.118.
  • Version bump across publishable manifests and lockfile refresh.

Docs / branding updates

  • Updated docs/mu-ui.md to document the fallback shortcut and tmux/remote-terminal caveat.
  • Updated packages/agent/README.md shortcut guidance to include fallback behavior.
  • Synced versioned logo text to 26.2.118.

Compare