Your personal AI, on your own computer.
A free desktop assistant for macOS and Windows. It follows the news around your goals, suggests
what to do next, and does the work with the files and tools on your machine, using the models
you already have.
No account. No ClawMuse server. No analytics.
Mac (Intel) · Windows on ARM · All releases and checksums
⭐ If ClawMuse is useful, a star helps others find it.
- Local-first. The app and the agent runtime run on your computer. Your chats, goals, Feed, skills and settings are files in one folder you can open, back up or delete.
- Your own models. Use the Claude Code sign-in already on your computer, your own Anthropic, OpenAI, OpenRouter, OpenCode Zen or Z.ai key, or a local model through Ollama or LM Studio. On first launch it looks for a credential this computer already has and tells you which file it found it in before using it.
- Free and open. MIT licensed, no subscription, no ClawMuse account. You pay your model provider directly, or nothing if the model runs locally.
- It does things. Not only answers: it reads and writes files, runs commands, drives a managed browser, runs skills and scheduled tasks, and asks before anything irreversible.
| ClawMuse | |
|---|---|
| Where it runs | On your Mac or PC: an Electron app plus a local OpenClaw gateway |
| Account | None |
| Model | Yours: Claude Code, an API key, or a local model |
| Where your data lives | ~/.openclaw-clawmuse on your computer |
| Telemetry in the app | None: no analytics, no crash reporting |
| Price | Free (MIT) |
| What it can act on | Files, shell, a managed browser, skills, scheduled tasks, MCP connectors, with approvals |
And:
- Weekly Recap. Every Sunday evening, a short look back at your week with ClawMuse at the top of the Feed. It only states numbers the app actually recorded.
- A ClawMuse avatar that reacts. A 3D character that shows when it is thinking, talking or working. Ask it to change its look and it restyles itself.
- Share cards and clips. Turn a Feed story, an idea, an answer or your Weekly Recap into an image card, or a short clip of the avatar celebrating beside it.
- Skills and routines. Write or edit skills (
SKILL.md) in the built-in studio. Anything done more than once can become a scheduled task that reports back into the same conversation. - Teach a task. Record your own browsing; a bot turns the trail into a draft skill you review before it goes live.
- Approvals. A bot stops and asks before anything irreversible. Per-bot tool limits are enforced by the runtime.
- Channels. Reach your assistant from Telegram or Discord as well as the app.
macOS — paste into Terminal:
curl -fsSL https://clawmuse.app/install.sh | shIt downloads the latest release for your Mac from this repository's
Releases page, checks it against that
release's SHA256SUMS.txt, installs ClawMuse in Applications and opens it — with no security
prompt. Run it again at any time to update. The script is
scripts/install-mac.sh; read it first if you like.
Or download an installer:
| Platform | Download |
|---|---|
| macOS 12+, Apple silicon (M1 and later) | ClawMuse for Mac (Apple silicon) |
| macOS 12+, Intel | ClawMuse for Mac (Intel) |
| Windows 10/11, x64 | ClawMuse for Windows (x64) |
| Windows 10/11, ARM64 | ClawMuse for Windows on ARM |
Every release is also on the Releases page
with a SHA256SUMS.txt. To check a download: shasum -a 256 <file> on macOS,
Get-FileHash <file> in PowerShell, and compare with the line in SHA256SUMS.txt.
First open of a downloaded installer.
- macOS: the app is signed with an Apple Developer ID and notarized by Apple. macOS asks once whether to open an app downloaded from the internet; click Open.
- Windows: the installer is not code-signed yet, so if SmartScreen appears, click More info → Run anyway. The installer is per-user and needs no administrator rights.
After that it opens like any other app.
What happens on first launch
The OpenClaw runtime ClawMuse runs on (a pinned release) ships inside the installer, already installed for your platform, and the first launch unpacks it with no network. Only if that fails does the app download it instead, using the Node.js built into the app and an npm that ships inside it. No Node, Homebrew or terminal is needed on your side. Then it looks for a model you already have and offers it with one button, and asks what you are working toward.
ClawMuse is an Electron app that drives a local OpenClaw gateway. It
does not reimplement the agent runtime: it installs a pinned openclaw CLI into a private prefix,
writes the gateway configuration, and talks to the gateway over a loopback WebSocket.
┌──────────────────────── ClawMuse (Electron) ────────────────────────┐
│ renderer React 19 · Zustand · TanStack Query · three.js │
│ │ window.clawmuse.* (contextBridge; typed in src/shared/ipc) │
│ preload │
│ │ ipcMain │
│ main runtime manager · built-in assistant (Feed, Ideas, │
│ check-ins, recap) · secure store (OS keychain) · tray · │
│ shortcuts · notifications · deep links (clawmuse://) │
└─────┬───────────────────────────────────────────────────────────────┘
│ ws://127.0.0.1:<port> (gateway token + Ed25519 device identity)
▼
openclaw gateway profile "clawmuse", state in ~/.openclaw-clawmuse
macOS: a launchd LaunchAgent, so agents keep working after you quit the app
Windows: `openclaw gateway run`, supervised by the app with restart backoff
├── agents one per bot: own memory, instructions and tool limits
├── cron scheduled tasks
├── skills SKILL.md files
└── tools files, shell (exec), a managed browser profile, MCP connectors
Where things live
| Concept | Where it lives |
|---|---|
| A bot | an OpenClaw agent in agents.list[] of ~/.openclaw-clawmuse/openclaw.json |
| Its guidelines | AGENTS.md in the bot's private workspace, ~/.openclaw-clawmuse/bots/<id> |
| Memory, auth, transcripts | its own agentDir, ~/.openclaw-clawmuse/agents/<id> |
| What it may do | a per-agent tools.deny list, enforced by the gateway |
| Provider keys | ~/.openclaw-clawmuse/.env (never inside the app bundle) |
| App secrets | encrypted with Electron safeStorage (the macOS Keychain, DPAPI on Windows) |
| Path | Contents |
|---|---|
src/main |
Electron main process; services/local-runtime installs, configures and supervises the gateway |
src/preload |
the window.clawmuse bridge |
src/renderer |
the React UI (routes/, features/, stores/, design/) |
src/shared |
the IPC contract shared by main and renderer (docs/IPC.md) |
native |
the macOS key monitor used by push-to-talk (Swift, built by scripts/build-native.mjs) |
scripts |
packaging hooks, smoke and end-to-end tests |
- Your messages go to the model provider you chose, under your own key and their terms, and so does dictated audio when you use dictation. If the model runs locally, nothing leaves.
- When a bot browses or calls a connector, it reaches that site the way your browser would.
- The Feed looks up headlines: short search terms drawn from your goals go to Bing News (Google News as the fallback), and story pictures load from where the source hosts them.
- Release builds check GitHub Releases for updates, 30 seconds after launch and then every six hours. Builds from source do not check.
- The OpenClaw runtime ships in the installer. Only if unpacking it fails does first launch download it from the npm registry, at the same pinned version.
There is no analytics and no crash reporting. Deleting ~/.openclaw-clawmuse deletes everything,
and Settings → Data controls → Remove ClawMuse does that for you.
Limits, stated plainly. The agents run on your real machine: approvals and per-bot tool limits are real, but a bot with file and shell access has file and shell access, so give each bot the narrowest permissions that let it do its job. An approval covers the action being proposed; there is no undo for what is already done. Teach a task records a trail of pages, not clicks, and the draft skill says what it inferred.
Requirements: Node.js 22 and npm. Development, tests and npm run build work on macOS,
Windows and Linux. Packaging the Mac app needs a Mac (the Command Line Tools are enough; Xcode 26
adds the layered macOS 26 icon). The release workflow builds the Windows installers on Windows
runners.
git clone https://github.com/PSA-Team-source/clawmuse.git
cd clawmuse
npm ci
npm run dev # run the app with hot reload
npm run typecheck # TypeScript, main and renderer
npm run lint # ESLint
npm test # Vitest unit tests
npm run build # production bundle in out/Packaging:
npm run pack:dir # unpacked app in dist/ (fastest way to try a packaged build)
npm run dist:mac # DMG + ZIP, arm64 and x64
npm run dist:win # NSIS installers, x64 and arm64A build without a Developer ID is ad-hoc signed by scripts/after-sign.mjs, so it opens through
Open Anyway instead of being reported as damaged. Signed and notarized releases are produced by
the release workflow; see CONTRIBUTING.md.
Near-term, and tracked in the open:
- Signed Windows builds. macOS releases are Developer ID-signed and notarized; a Windows code-signing certificate would remove the SmartScreen confirmation. The release workflow signs both when the certificates are configured (signing secrets).
- Updates in place. The app already checks GitHub Releases for a newer version. Releases built by the release workflow attach the update manifests it reads; on macOS, installing an update in place also needs the signed build above.
- Linux. Development already runs on Linux; packaging does not yet. What blocks it is listed in #15 and #14. Help wanted.
Issues and pull requests are welcome, and there are good first issues with file pointers and acceptance criteria. Read CONTRIBUTING.md first, ask questions in Discussions, and report security problems privately as described in SECURITY.md. Everyone taking part is expected to follow the Code of Conduct.
MIT, see LICENSE.
ClawMuse is built on OpenClaw (MIT), which provides the
agent runtime: the gateway, agents, tools, skills, cron and channels. ClawMuse is the desktop app
around it. It also stands on Electron, React,
three.js and the other open-source packages listed in
package.json.






