個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Wigglet: a floating pixel companion for Claude Code on macOS. One Wigglet per session, 80+ animations. Unofficial fan project.
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
One Wigglet for every Claude Code session. A tiny pixel companion that floats on your Mac and shows what each session is doing. wigglet.vercel.app
• See every session at a glance. Each Wigglet acts out what its session is doing. The one that needs you steps to the front.
• Never miss an approval. The menu-bar icon shows how many sessions are waiting on you.
• Local by default. Hooks write small JSON files on your disk. There are no accounts and no analytics.
First release lands today. The download link appears here when v1.0.0 is published. Until then, build from source.檢視完整 README ↗Download Wigglet.dmg · macOS 13+ · Apple silicon and Intel
xattr -dr com.apple.quarantine /Applications/Wigglet.app
~/.claude/settings.json (with a backup), shows a check mark, and waits until your first Claude Code session appears.Every clip is listed in docs/ANIMATIONS.md, which is generated from the app's catalog.
| A team of Wigglets | One per session you're working in, including ones already open before you connected. Six side by side, then a +N badge, or switch to One Wigglet for all of them. Sessions you haven't touched for a while (30 min to a day, your pick) step aside. |
| Live activity | Each Wigglet shows what its session is doing: reading, editing, tests, builds, git, installs, web, sub-agents, plans or compaction. |
| 56 readable animations | Hand-timed 12 fps pixel art with real props and faces: a deploy rocket, a tea break on long commands, a check mark when tests pass, high-fives and pass-the-parcel between sessions. |
| Live hover card | Hover over a Wigglet: project, turn timer, last actions and the session's latest message as it arrives. Jump takes you to that session's window. |
| Chat with Claude | Click a Wigglet or press ⌃⌥Space. Uses your Claude Code login by default, or your own Anthropic, OpenAI, OpenRouter or Gemini key, or a local Ollama model. Keys live in the macOS Keychain. |
| Private by default | No accounts and no analytics. The network is used only for chat and signed updates. |
| Signed updates | New versions arrive only when they are published, and install only if their signature checks out. |
Home walks you through setup with live checks. Sessions lists every session with a Jump button. Animations plays any clip. Settings holds the connection, size, sounds, launch at login and chat.
Claude Code runs Wigglet --hook on session and tool events. The hook updates one small JSON file per session in ~/.claude/wigglet/sessions/. The app watches that folder and picks an animation for each session. Details are in docs/HOW_IT_WORKS.md.
~/.claude/wigglet/sessions/.claude CLI with no tools, so it can't read or change files.The full list is in docs/PRIVACY.md.
Requires macOS 13+ and the Xcode command line tools.
cd app && ./build.sh # universal Wigglet.app (arm64 + x86_64)
./package.sh # also writes Wigglet.zip and Wigglet.dmg
Checks, run from the repo root with a throwaway HOME:
HOME=/tmp/wigglet-test app/Wigglet.app/Contents/MacOS/Wigglet --selftest
HOME=/tmp/wigglet-test app/Wigglet.app/Contents/MacOS/Wigglet --pixel-audit
HOME=/tmp/wigglet-test app/Wigglet.app/Contents/MacOS/Wigglet --frame-audit
rm -rf ~/.claude/wigglet
for p in anthropic openai openrouter gemini; do security delete-generic-password -s dev.wigglet.app -a $p; done # keys, if you added any
defaults delete dev.wigglet.app
If you've already deleted the app, remove the hooks first with Wigglet.app/Contents/MacOS/Wigglet --remove-hooks, or delete the entries that contain Wigglet --hook from ~/.claude/settings.json.
Does it use my Claude usage?
The animations never do, because they come from local files. Chat uses Claude Code by default, which runs claude -p and counts toward your plan (with tools off, so each message is small). To keep chat off your plan, pick Anthropic, OpenAI, OpenRouter or Gemini with your own key, or a local Ollama model, in Settings → Chat.
Does it work with the Claude desktop app? Yes. Sessions in the desktop app's Code tab run the same hooks as the terminal, so they get a Wigglet too. Plain chats in the Claude app aren't Claude Code sessions, so they don't.
Does it work with several sessions? Yes, that's what it's for. Each session gets its own Wigglet, name tag and scarf colour.
Is it safe to connect?
Connect adds hook entries that call the app with --hook, after saving a backup to ~/.claude/settings.json.wigglet-backup. If your settings.json isn't valid JSON, it leaves the file alone. The hook only writes metadata, and the source is here if you want to check.
Can it jump to the right window?
Terminal: the exact tab (macOS asks once for permission). iTerm2 uses the same approach, and VS Code and Cursor open the session's folder in that editor, but those three are untested so far. Claude desktop app: Jump opens that session with the same claude://resume link Claude Code's /desktop command uses (not tested live yet). Anything else: the app comes forward and a note says it couldn't pick the session.
How do I disconnect? Click Disconnect in Settings, or use the menu-bar icon. Hooks you added yourself stay.
xattr line above. (Right-click → Open no longer skips this on macOS 15 and later.)~/.claude/settings.json probably isn't valid JSON. Fix it, then connect again.Wigglet is a fan tribute to the Claude mascot. Claude, Claude Code and the original mascot design are by Anthropic. Thank you for building Claude Code and its hooks, which make Wigglet possible.
Unofficial fan project. Not affiliated with, sponsored by, or endorsed by Anthropic. "Claude", "Claude Code" and "Anthropic" are trademarks of Anthropic, PBC, used here only to describe compatibility. Free, no ads, no data collection. Anthropic: if you'd like anything changed or removed, see TRADEMARKS.md and we'll comply within 48 hours.