This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Summary
AI summaryUpdates Highlights, Packages published this cycle, and https://www.npmjs.com/package/mulmoclaude/v/0.3.0 across a mixed release.
Full changelog
Highlights
🚀 npx mulmoclaude one-command launch (#533, #535)
Self-contained npm package ships server TypeScript + Vite client; runs via tsx, opens the browser automatically, auto-falls back to the next free port if 3001 is busy. Prints a ready banner once the HTTP endpoint actually responds. --port validation blocks NaN / out-of-range / decimal values; explicit --port is honoured strictly, default port walks forward.
npm install -g @anthropic-ai/claude-code && claude auth login
npx mulmoclaude
🔌 MulmoBridge Relay (#456)
Cloudflare Workers + Durable Object webhook proxy with a platform plugin architecture (LINE / Telegram). Server-side WebSocket client with hibernation recovery (getWebSockets()), response queue + URL builder hardening, try/catch around dispatch. Interactive setup via the /setup-relay skill.
🌉 Bridge session switching (#489)
/sessions, /switch, and /history commands from inside a messaging bridge. Session list scales to 200 with pagination.
🏷️ Session origin tracking (#486)
Sessions tagged human / scheduler / skill / bridge. Origin icons + filter UI in the history sidebar. isSessionOrigin type guard for validation; backfill for existing sessions.
📅 Scheduler Phase 3+
Task dependencies (dependsOn for ordered execution, #465 Phase 3). System task schedule overrides via config file (#493) with a live-update API so changes take effect without restart. System prompt now includes scheduling frequency guidance.
📰 Source auto-discovery
arXiv pipeline keyed off user interests (#469). News notification + concierge prompt (#466).
Added
npx mulmoclaudelauncher — ready-banner probe (polls/until the server responds), port fallback, graceful shutdown,--portvalidation, version string embedded in the CLI- Port conflict handling — default port walks forward up to 20 slots; explicit
--port Nis a hard error if taken /publish-mulmoclaudeskill — dep audit + workspace drift check + tarball test + cascade publish flow; baked-in lessons from the first publish cycle/setup-relayskill — interactive Cloudflare Workers deploy + MulmoClaude connection/setup-wizardskill (#474) — conversational automation setup viamanageScheduler/manageSkills/manageSource@mulmobridge/relaypackage — Workers webhook proxy, platform plugin architecture (LINE / Telegram verified)- Bridge commands —
/sessions,/switch,/history; bridge session pagination - Session origin field +
isSessionOriginguard; origin icons + history filter UI - Dynamic favicon reflecting agent state (#470)
- MulmoClaude logo in top-left header
- Canvas entry timestamps (time-only for today, date+time otherwise)
- File tree Name / Recent sort toggle
- Browse reference directories in file explorer (#472)
- User-configurable read-only reference directories (#455)
manageSourcetool in General + Office roles- Background generation for MulmoScript image / audio / movie
- Create + rename custom roles directly from the
manageRolesview presentDocumentrequires sanitizedfilenamePrefix/historycommand; session list limit raised to 200
Changed
- App.vue split into 10+ composables (
useChatScroll,useSessionSync,useSessionDerived,useMergedSessions,useFaviconState,useViewLayout,useDebugBeat,useFileTree,useFileSelection,useMarkdownMode,useContentDisplay,useMarkdownLinkHandler) - 50+ inline type checks migrated to shared guards in
src/utils/types.ts(#504) - FilesView extracted into
FileTreePane+FileContentHeader+FileContentRenderer(#507) id-lengthlint enabled aswarnrepo-wide; short identifiers renamed acrosssrc//server//packages/- Defer new session tab creation until first message
mulmoclaudenpm package layout — shipsserver/TS +client/dist +src/shared;prepublishOnlyhook runsprepare-dist.js- CI — Windows runner pinned to
windows-2022, node_modules caching enabled, job-level timeouts
Fixed
- Express 5 wildcard route (
app.get("*")→/{*splat}) — previously crashed only inNODE_ENV=production - Session store — gate storeless publish to generation events only; type-guard generation payloads; await
persistHasUnreadin storeless drain - StackView auto-scroll during assistant text streaming
- Role selector reverting to prior session's role on tab switch
manageRolesrename now deletes the built-in-id override file; hardened against two hostile payload shapes- Relay client — survive Durable Object hibernation via
getWebSockets(); response queue + URL builder hardening; try/catch around dispatch - Generation map key collision fix (delimiter hardening)
- Merge sessions — OR
live.isRunninginto merged summary so active bridge sessions surface correctly
Packages published this cycle
- 📦 npm:
[email protected](initial npm publish — aligned to this app version) - 📦 npm:
@mulmobridge/[email protected](addsGENERATION_KINDSexport chain) - 📦 npm:
@mulmobridge/[email protected](catches up with protocol 0.1.3) - 📦 npm:
@mulmobridge/[email protected](new)
Full Changelog
194 non-merge commits since v0.2.0. See CHANGELOG.md for the complete list.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About MulmoClaude
All releases →Related context
Related tools
Earlier breaking changes
- v0.6.4 `General` role split into lean `General` and new `Personal` role; Encore seed role pinned to Personal.
Beta — feedback welcome: [email protected]