简体中文 | English
A Windows desktop companion for WorkBuddy. It stays on top of the desktop, shows the current task lifecycle, and displays the credits available to the signed-in WorkBuddy account.
This is an independent community project. It is not affiliated with, endorsed by, or supported by WorkBuddy or Tencent.
Keywords: WorkBuddy, Windows desktop pet, desktop widget, Tauri, Rust, TypeScript, real-time task status, credit monitor, system tray.
- Transparent, click-through, always-on-top desktop pet with tray controls.
- Live task states: idle, thinking, running a tool, generating, waiting for input, completed, and failed.
- Credit panel with sensible refresh intervals and an explicit stale-data/error state.
- Four selectable looks: WorkBuddy, KittyBuddy, Prismatic Blade, and Ember Sage. Right-click the pet to switch.
- One-click setup for the bundled status-only WorkBuddy plugin.
- Reproducible Windows build, verification, archive, and checksum scripts.
- Windows 10 or later.
- WorkBuddy installed and signed in.
- Microsoft Edge WebView2 Runtime (usually already present on current Windows installations).
- Download the
Agent-Buddy-WorkBuddy-Windows-v*.zipasset from Releases. - Extract it and run the contained
.exe. - Hover the pet to open the panel, then choose 启用实时状态.
- Restart WorkBuddy and begin a new task.
Unsigned binaries can cause a Microsoft SmartScreen warning. Verify the published .sha256 file before running a download from an untrusted mirror.
The bundled plugin projects only the following structural lifecycle fields to a local file at ~/.workbuddy-buddy/events.spool:
event, ts, session_id, tool_name, permission_mode, notification_type, ends_with_question
It does not write prompts, generated text, tool input/output, files, or approval decisions. The desktop app reads the existing local WorkBuddy login session only to query WorkBuddy's billing endpoint; credentials are not sent to this repository or any Agent Buddy service.
Install Node.js 22, Rust/Cargo, and the Tauri Windows prerequisites. Then run:
npm ci
npm run build
cargo test --manifest-path src-tauri/Cargo.toml --features custom-protocol
npm run devFor a release-quality client build, use the repository scripts:
npm run build:desktop-client
npm run package:desktop-clientpackage:desktop-client builds, tests, verifies the Windows GUI binary and embedded frontend, then creates the EXE, ZIP, and SHA-256 file. Do not use bare cargo build --release or tauri build for a distributable client; see the packaging guide.
Pushes and pull requests to main run the Windows build and test pipeline. To publish a release:
npm run version:desktop-client -- -Version 0.1.5
git commit -am "Release v0.1.5"
git tag v0.1.5
git push origin main --tagsThe v<version> tag must match package.json. GitHub Actions builds the verified portable package and creates the public GitHub Release. Local release files and build output are intentionally ignored by Git.
| Path | Purpose |
|---|---|
src/ |
Vite/TypeScript desktop UI |
src-tauri/src/ |
Tauri app and WorkBuddy integration |
src-tauri/resources/ |
Bundled status-only WorkBuddy plugin |
scripts/ |
Build, packaging, and versioning utilities |
docs/ |
Packaging and engineering notes |
Start with AGENTS.md. It contains the short operational map: architecture, verified commands, change boundaries, privacy rules, and the definition of done for this repository. For AI-oriented documentation discovery, use llms.txt and the task index.
Please read CONTRIBUTING.md before opening a pull request. Security-sensitive reports should follow SECURITY.md, not public issues.
This project is available under the MIT License. Attribution for the bundled community plugin is in THIRD_PARTY_NOTICES.md.