Skip to content

Repository files navigation

Ducky

Ducky

A small native desktop AI companion for focused work.

Version Platforms License

Ducky desktop companion

Ducky lives quietly on your desktop, helps you stay focused, and gives AI a simple, personal place to live. It is local-first, cross-platform, and built with Tauri v2, Rust, React, TypeScript, and Vite.

Features

AI companion
Chat with OpenAI, Gemini, Claude, Grok, Ollama, and compatible endpoints.
Smart reminders
One-time and recurring reminders with a focused widget.
Daily planner
See today's schedule at a glance.
Sticky message
Keep one lightweight message visible.
Pomodoro
Run persistent focus sessions beside Ducky.
Model Explorer
Search, favorite, and switch between discovered models.
Native desktop
Tray, Preferences, dragging, and always-on-top support.
Cross-platform
macOS, Windows, and Linux packages.
Native updates
Automatic update checks through the native runtime.

Screenshot gallery

Desktop
Ducky desktop companion
AI conversation
AI conversation
Planner
Daily Planner
Preferences
Preferences
Sticky message
Sticky message
Pomodoro
Pomodoro
Reminders
Reminders
About
About Ducky

AI providers

  • OpenAI, Gemini, Claude, and Grok — cloud providers using your own API credential.
  • Ollama — local models through the loopback Ollama service.
  • OpenRouter and compatible endpoints — OpenAI-compatible model catalogs and chat APIs.

Credentials stay in native secure storage and never enter normal renderer state.

Install

Download the latest release for your platform from GitHub Releases.

  • macOS: open the DMG and drag Ducky to Applications.
  • Windows: run the NSIS or MSI installer.
  • Linux: launch the AppImage or install the DEB package.

Build from source

Install Node.js 22.12+, npm 10+, the Rust toolchain, and the Tauri v2 platform prerequisites.

npm install
npm run tauri:dev

Build native packages with:

npm run tauri:build

Validation

npm run typecheck
npm test
npm run build
cargo fmt --manifest-path src-tauri/Cargo.toml -- --check
cargo test --manifest-path src-tauri/Cargo.toml
cargo build --manifest-path src-tauri/Cargo.toml

Releasing

Stable releases are built for macOS, Windows, and Linux when a matching vX.Y.Z tag is pushed. See the automated release process.

Repository layout

src-tauri · Rust application lifecycle, native domains, persistence, menus, tray, permissions, and packaging
src/desktop · Private Tauri adapters behind the renderer-facing DesktopBridge
src/renderer · Companion and Preferences React applications
src/engine · Runtime-neutral animation and input primitives
src/shared · Typed renderer/native contracts and validation helpers
character · Source artwork and animation frames
website · Next.js landing site and permanent download routes

License

MIT © Aman

About

A modern AI desktop companion with reminders, planners, sticky notes, Pomodoro, and support for OpenAI, Gemini, Ollama, Grok, and OpenRouter.

Topics

Resources

Contributing

Stars

8 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages