Fujimod
Try your camera firmware in the browser and build Fujimod SD boot files.
A free robot duck that lives on your Mac. Walks, climbs your windows, falls over, talks back.
LifestyleJavaScript · HTMLGitHub @gurmundi7OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
A robot duck that lives on your Mac. Unofficial desktop pet inspired by Pollen's Microduck. Free, open source.
Taken from the repository README
Loading the full README.
Read the full README ↗A 25 cm robot duck walks along the bottom of your screen. It climbs your windows, falls over and gets back up, and talks back. Free and open source.
It is Pollen Robotics' Microduck in simulation: their MuJoCo model and their trained walking policies, from the open source Microduck simulator by Pollen Robotics and Hugging Face. Every step is a trained robot policy driving physics, not an animation.
It also talks back through Claude, keeps your Mac awake when you ask, naps, sulks when ignored, likes being petted and chases a beach ball.
Download the .dmg from Releases, drag Digital Duck to Applications, and open it. Apple Silicon and Intel builds are both there.
A 🦆 appears in the menu bar. That is the whole setup.
brew install media-control; volume works without it. It pauses the music while you talk to it and plays it again after its answer.Right-click the duck, or click 🦆 in the menu bar, for everything else. Settings… (⌘,) has every option in one window.
Chat needs a Claude brain. Either works:
claude CLI is installed and logged in, the duck uses it. Nothing to set up. Replies use your Claude account.Without either, the duck still walks, climbs and plays. It just can't talk back.
Settings → Model picks Haiku (quickest), Sonnet or Opus.
A new duck can only talk. Settings → What the duck can do has four levels (they need Claude Code; the API key brain only chats):
Advanced: flags in extraArgs in the config go to the claude CLI as they are.
Each of these is a switch in Settings:
Alt+D and talk. Needs brew install whisper.cpp and a speech model in models/ inside the config folder (ggml-base.en.bin from whisper.cpp). Transcribed on your Mac.{"message", "source"} object per line).gh CLI to tell you when checks go red or green, or a review lands.mcpServers in the config, so the duck can answer from them. Needs Claude Code.Everything is saved to ~/Library/Application Support/Digital Duck/config.json. Edit raw config… at the bottom of Settings opens it.
What it reads, all on your Mac:
media-control installed: the title, artist and play state of whatever the Mac shows as Now Playing. Without it: whether Music or Spotify is playing, and macOS asks first.gh, only with pull request watch on.What it sends:
No analytics, no telemetry, no accounts. Its notebook, reminders and chat history stay in the config folder. So does app.log, a log of what the app did, kept under about 4 MB. It can include reminder and nudge text, song titles and app names, and never leaves your Mac.
A see-through Electron window covers the screen. Inside, Pollen's MuJoCo model runs in WebAssembly and their trained policies run through ONNX Runtime, 50 times a second, drawn with three.js. A small Swift helper lists your windows, and the top edge of each becomes a ledge in the physics. Chat goes to Claude, and macOS say gives it a voice.
Needs Node 20+, macOS and Xcode command line tools.
git clone https://github.com/gurmundi7/digital-duck
cd digital-duck
npm install
npm start
npm test runs the tests. npm run dist builds the .dmg files into release/. Signing and notarizing use the Apple Developer ID in your Keychain and a notarytool profile set in APPLE_KEYCHAIN_PROFILE.
Debugging: kill -USR2 <pid> writes snap.png (the duck's own render) to the config folder and logs its pose. kill -USR1 <pid> runs debug.js from that folder inside the renderer (duck.sim, duck.behaviour, duck.bubble are global).
electron/ window, menu, brain, speech, helpers (Swift)
renderer/ physics and policy loop, behaviour, bubble, audio
sim/ Pollen's simulator source and assets, unchanged (Apache 2.0)
electron/winlist.swift, the window list that becomes ledges (CoreGraphics)electron/agenda.swift, meeting reminders (EventKit)electron/micwatch.swift, whether a microphone is in use, for call detection (CoreAudio)say voicesbrew install whisper.cppmedia-control, and the Mac volumeBug reports, "can it do X?" ideas and pull requests are welcome. See CONTRIBUTING.md.
The robot, its model, policies, meshes, voices and the simulator are by Pollen Robotics and Hugging Face, under Apache 2.0 (sim/LICENSE-pollen-simulator). The model and the walking policies come from pollen-robotics/microduck and pollen-robotics/microduck_rl. Physics by MuJoCo, rendering by three.js, policies run on ONNX Runtime Web, all inside Electron. Microduck is Pollen Robotics' robot. Digital Duck is not affiliated with or endorsed by Pollen Robotics or Hugging Face. If you like the duck, get the real one.
Digital Duck is Apache 2.0. See LICENSE and NOTICE.