Skip to content

Releases: wlsdks/muse-agent

v0.2.30 — chat starter prompts

Pre-release

Choose a tag to compare

@wlsdks wlsdks released this 08 Jul 23:21

Added

  • Chat starter prompts — the empty chat now shows tappable starter chips grounded in what Muse can do ("오늘 일정 정리 / Summarize my day", "이번 주 할 일 / Tasks this week", "최근 노트 요약 / Summarize my notes", "뭘 도와줄 수 있어? / What can you help with?"). Tapping one fills the input and focuses it — never auto-sends; chips disappear once a conversation starts. Real-browser verified.

Early/experimental, macOS only.

v0.2.29 — web UI polish

Pre-release

Choose a tag to compare

@wlsdks wlsdks released this 08 Jul 23:11

Web/desktop UI polish, verified in a real browser. Early/experimental, macOS only.

Changed

  • Branding matches the product voice — dropped "AI Conductor / AI 지휘자" from the web app; sidebar fallback is the identity line ("Learns you, not the world" / "세상이 아니라, 당신을 배우는 AI"), window title is just "Muse". The live subtitle stays the AI-generated personalized tagline.
  • Connection status, not a raw address — the header's bare 127.0.0.1:3030 is now a connection-status badge (connected / connecting / offline); the URL stays as a tooltip + in Settings.
  • Calmer load errors — dashboard cards no longer surface the raw "Failed to fetch"; they show "Couldn't load / 불러올 수 없어요" with a check-connection hint.

v0.2.28 — onboarding nudge + test coverage

Choose a tag to compare

@wlsdks wlsdks released this 08 Jul 22:57

Onboarding nudge + a big test-coverage pass. Early/experimental, macOS only.

Added

  • First-run points you at real first value — after setup, the wizard suggests muse browsing sync (seed answers from your Chrome history) and muse demo (a cited example) as next steps; bilingual, opt-in (never auto-run), and drops the browsing hint if you already connected it.

Changed

  • ~100 new tests (no source changes) locking in behavior: local tasks/notes providers + weather tool (round-trips, corrupt-store degrade, write-atomicity, injected-fetch degrade paths that never fabricate), and the memory user-store Kysely runtime, file-lock exhaustion, and pattern-detector boundaries. Each mutation-checked.

v0.2.27 — Codex delegation + chat API grounding gate

Choose a tag to compare

@wlsdks wlsdks released this 08 Jul 22:27

Two headline additions plus memory/observability polish. Early/experimental, macOS only.

Added

  • Codex delegation (opt-in). With a ChatGPT Plus/Pro subscription + the official codex CLI installed and logged in, point Muse's chat/ask at it — Muse shells to the official CLI (read-only sandbox, ephemeral, neutral workdir) and never touches your OAuth token. OFF by default (local stays default), selected via --model codex/codex-default or an opt-in setup choice, blocked under MUSE_LOCAL_ONLY=true. Using a ChatGPT subscription to back a third-party app is an unofficial gray-area route (a cloud API key is the clean path) — Muse says so up front. Text answers only; Muse still grounds + cites the result.
  • Compaction failure telemetry — memory-compaction failures classified into bounded reasons instead of opaque strings.
  • muse browsing search --json emits the same grounded block as muse ask --json.

Fixed

  • The chat API is now grounded like everything else. /chat, /api/chat and the streaming variants route through the same deterministic grounding + citation gate as /api/ask: an ungroundable claim is dropped by code (→ "I'm not sure"), a grounded answer passes unchanged, and the response carries the grounding verdict — closing a real hole in Muse's core "every claim cites a real source" guarantee.
  • chat-ink grounding parity (Korean NFC input, pronoun-rewrite) now regression-guarded.

v0.2.26 — CLI naming, error voice, slow-model knob

Choose a tag to compare

@wlsdks wlsdks released this 08 Jul 13:15

The remaining pre-release polish from the deep CLI audit. Early/experimental, macOS only.

Fixed

  • approval vs approvals disambiguated. The two adjacent groups both exposed approve <id>/list; their descriptions now name their distinct domains and cross-reference each other — approval = tool-call trust decisions, approvals = the outbound draft-first action worklist. Names unchanged (no breaking change).
  • Consistent error voice. import, ingest, bg, and approvals print failures through one muse <command>: <message> envelope, with exit codes and stdout/stderr routing unchanged.

Added

  • MUSE_STREAM_IDLE_TIMEOUT_MS makes the streaming idle-timeout tunable — a model that connects but never responds no longer freezes ask/chat for the fixed 3 minutes. Set e.g. =8000 to fail fast. Default 180s unchanged; the value can only shorten a real stall (0/negative/non-numeric fall back to the default, so it can't be disabled).

v0.2.25 — pre-release CLI polish (setup posture, help, robustness)

Choose a tag to compare

@wlsdks wlsdks released this 08 Jul 09:59

A second, deeper pre-release CLI audit (four independent expert passes — no blockers) fixed a handful of real rough edges in setup/onboarding posture, help output, branding, and input robustness. Early/experimental, macOS only.

Fixed

  • muse setup credits the local default model. A fresh local-first box no longer reads "model — not configured" or gets pushed toward cloud; it now agrees with muse doctor (both show the resolved ollama/gemma4:12b local default) with a soft "customize" nudge.
  • muse setup local recommends the model you already have (pinned local default) instead of a 17 GB power-tier download, and persists it so the checklist clears.
  • The "New here?" banner stays on top-level help instead of leaking onto 300+ subcommand --help outputs (and piped stdout).
  • Off-brand "JARVIS" wording removed from remember/brief/status help + the briefing prompt.
  • A giant CLI argument no longer crashes with a raw stack tracemuse note "$(pbpaste)" on ~1 MB prints a clean "input too large — pipe via stdin" message + exit 1.
  • Atomic config writes (temp + rename) so a crash mid-write can't truncate settings.
  • Clean message when a store path is unreadable (config that's a directory / no read perm) instead of a raw EISDIR/EACCES.

v0.2.24 — CLI quality audit fixes

Pre-release

Choose a tag to compare

@wlsdks wlsdks released this 08 Jul 08:46

A CLI-quality follow-up to 0.2.23: an expert audit turned up ten rough edges in help, error handling, and flags — this fixes all of them, each with a test. Early/experimental, macOS only.

Fixed

  • muse help <command> now renders that command's real help; unknown names get a grounded error.
  • Typos in a subcommand are caught (muse setup lcoal → "did you mean 'muse setup local'?", exit 1) instead of silently running the default.
  • -q/--quiet actually suppresses tips/spinners (it was wired but unused).
  • --no-color now wins over an ambient FORCE_COLOR (NO_COLOR > --no-color > FORCE_COLOR > TERM=dumb > TTY).
  • --no-input no longer hangs setup data.
  • Invalid --config/--args JSON and corrupt config.json print a clean fix-it line, not an "internal bug" GitHub link.
  • remind snooze only moves a reminder later (max(now,due)+10min), never earlier.
  • Correct copy-paste hints in setup/today; all 21 previously-orphaned commands grouped in --help; completion in its own candidate list.

Changed

  • Docs: local-only is opt-in (MUSE_LOCAL_ONLY=true), not the enforced default; Muse runs local by default and is provider-neutral.

v0.2.23 — Best-in-class CLI: faster, cleaner, more helpful

Choose a tag to compare

@wlsdks wlsdks released this 08 Jul 08:02

A best-in-class pass on the CLI, grounded in the clig.dev guidelines: it starts faster, reads cleaner, and helps you more.

Added

  • Examples-first help on the daily-driver commands (ask, today, remember, skills, mcp, ingest, setup), safe path first.
  • Global flags --no-color, -q/--quiet, --no-input; a "New here?" hint + docs footer on top-level help.
  • Humane errors — expected failures print one clean line with a next-step hint; genuine bugs print a pre-filled GitHub issue link (version + command).
  • Distinct conversation turns — each exchange gets a dim rule + #N and a bold prompt header.
  • Cleaner answers — proper markdown: framed code blocks with a language label (no raw backticks), aligned/nested lists, highlighted inline code, readable links, spacing.
  • A truthful HUD with a context-usage indicator (ctx N%): a local Ollama model reads 🔒 local (was falsely ⚠ cloud); segments stay customizable.

Changed

  • ~6× faster cold start on light commands via lazy command loading: --help 374→68ms, completion 386→61ms, config-path 384→62ms; heavy commands drop ~40%. --help/completion/did-you-mean unchanged; --version ~20ms.

Fixed

  • Complete colour discipline: NO_COLOR > FORCE_COLOR > --no-color > TERM=dumb > isTTY.

Early / experimental — macOS only, provided as a pre-release.

v0.2.22 — A living bluebird, a shapeable HUD, clearer setup steps

Choose a tag to compare

@wlsdks wlsdks released this 08 Jul 06:52

Terminal polish: the muse chat gets a living bluebird and a HUD you can shape, and the first-run wizard now reads as clearly-numbered steps.

Added

  • An animated bluebird in the terminal chat — a small pixel bluebird that gently bobs and blinks on the chat home screen. Static under NO_COLOR / non-TTY / MUSE_NO_ANIM.
  • A customizable HUDMUSE_HUD_SEGMENTS=model,locality,tools,skills picks and orders segments; MUSE_HUD=minimal / full are preset shortcuts. Unset stays exactly as before.

Changed

  • Clearer first-run setup steps — the wizard now frames its flow as numbered steps with a ruled divider before each (1/3 pick a model → 2/3 connect your data → 3/3 finishing up), instead of one long scroll.

Early / experimental — macOS only, provided as a pre-release.

v0.2.21 — A first run that connects your data and proves its value

Choose a tag to compare

@wlsdks wlsdks released this 08 Jul 06:27

A first-run experience worthy of the app: muse now opens a warm, branded setup wizard, walks you through connecting your data, and proves its value on the first screen — and the app's empty states now guide you to value instead of dead-ending.

Added

  • A premium first-run setup wizard — on first muse (or muse setup start), a branded, bilingual (KO·EN) onboarding: the bluebird banner, a designed "how should Muse think?" picker (Local / Cloud API key / Codex), and a bird success moment. Shows once; --no-setup / MUSE_SKIP_FIRST_RUN bypass it; fail-soft.
  • Connect your data during setup — after picking a model, a multi-select of the safe built-in connectors (Apple Contacts, Chrome browsing history, Reminders/Notes mirrors) so setup ends with real data. Opt-in, skippable.
  • A proof-of-value moment — setup finishes with a personalized, grounded line ("Sam님, 연락처 12명 연결됐어요 — 이제 당신을 배울게요"); an empty install gets a warm content-free welcome. Fabrication = 0.
  • Codex (your ChatGPT subscription) as a setup option — detects your own official codex CLI login and delegates to it (Muse never handles the token), with honest copy up front (unofficial third-party route; the clean path is a Cloud API key). Live routing is a flagged preview.
  • Starter skills scaffolded on a fresh install when the skills folder is empty.
  • Actionable empty states in the app — "No tasks / notes / …" blanks became warm CTAs (add your first task, connect a calendar, start a chat) that move you toward value.

Early / experimental — macOS only, provided as a pre-release.