个人 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.