Self-hosted service
GCWing/BitFun avatar
GCWing/BitFun

BitFun: A Desktop Agent Runtime That Gives Every Task Its Own Interface

BitFun is a desktop-grade Agent runtimeand a ready-to-use suite of desktop Agent applications.with built-in Code Agent Cowork Agent Computer Use. It has memory, personality, and the ability to evolve over time.

2,128 stars227 forksRustMIT

At a glance

What is it?
BitFun is a Rust-based desktop agent runtime with built-in coding, cowork, and computer-use agents, plus a self-hosted relay for multi-device control. Its differentiator is Agentic Mini Apps, which bind a conversation to a task-specific UI rather than a single chat box.
Who is it for?
Adopt BitFun if you need a desktop agent that can operate on real repositories and the local environment, and if you require self-hosted multi-device sync to satisfy network policies. Skip it if you want a cloud-managed agent with zero infrastructure, or if your work is entirely browser-based with no need for desktop execution.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 1 day ago.
What is it written in?
Mainly Rust, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 14, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

What BitFun Actually Solves

BitFun targets a specific pain: agents that force every task through a single chat interface. The README states that most agents push every task through the same chat box, while BitFun instead builds the task its own interface, such as a chart, a board, a form, or a panel, and binds a conversation to that interface's live state. This matters for tasks where you need to ask about what is on screen rather than re-describing it. The intended user is an engineer or analyst who works on real repositories and desktop applications, not someone who wants a hosted chatbot. The runtime is written in Rust, with a Tauri-based desktop shell, and it ships with built-in agents for coding, cowork, and computer use. The project also addresses a second problem: multi-device control without a vendor cloud. A self-hosted relay handles login, session sync, and device-to-device control, which is the difference between being allowed inside a corporate network and not.

The Mechanism: Mini Apps and the Runtime Stack

The core architectural idea is the Agentic Mini App. A task gets a dedicated UI whose state is live and mutable by the agent, and the conversation is bound to that state. This is not a plugin system bolted on top; it is part of the runtime's interface layer. The README describes four tiers of customization: custom Agents, MCP/Skills/Hooks, Mini Apps, and source-level changes. That means you can start by writing a single Markdown file to define an agent, then move up to MCP servers or Codex-compatible hooks, then build a Mini App, and finally fork the runtime itself. The execution layer includes the filesystem, terminals, Git, browser operation, and Computer Use, so the agent can leave the editor and act on the real desktop. Data flow is straightforward: a task is typed into the Session tab, the agent plans and executes across those tools, and the Mini App reflects the state. The runtime is model-agnostic; you configure a provider and API key in settings.

Performance Claims: KV Cache and flashgrep

The README makes two specific performance claims. First, prompt assembly is byte-stable across turns, which yields a 98.67% average KV cache hit rate on a SWE-Bench-Pro run. The logic is that agent cost is dominated by context re-sent every turn, and a single timestamp or reordered tool list invalidates the cache from that byte onward. BitFun avoids that by keeping prompt bytes stable. Second, flashgrep is a resident cross-turn index that cuts search time by up to 94.6% on Chromium-scale trees, roughly 36x on average. These numbers are presented as initial evaluation results, each case run once, with Deepseek-V4-Pro. The README itself warns that benchmarks fluctuate with task sampling and single-run variance, so treat these as sanity signals, not fixed rankings. As a reviewer, I cannot verify these numbers from the repository alone, and the README does not yet include full benchmark details. The byte-stability approach is plausible and worth testing on your own workloads.

Getting It Running: Install and First Run

The easiest path is to download an installer from the Releases page. The README lists macOS, Windows, and Linux as supported. To run from source, you need Node.js 22.12 or later, pnpm 10.15.0 via Corepack, the Rust toolchain, and Tauri v2 prerequisites. The commands are pnpm install and then pnpm run desktop:dev. First run is a four-step process: open the Welcome tab and choose a project folder, open Settings, go to Models, create a first configuration, choose a provider, enter an API key, and select models. BitFun makes the first saved model primary and tests the connection automatically. Then you return to the Session tab and type a task. The setup is more involved than a hosted agent, but it is standard for a Tauri app. The source build is for contributors; most users will use the installer.

Limitations and Wrong-Tool Cases

The most obvious limitation is the self-hosted relay. You must deploy and maintain it to get multi-device sync and remote control. That is a real operational cost. If you are a single user on one machine, you do not need it, but the zero-knowledge design means the server only holds Argon2id hashes and AES-GCM-wrapped material, so you are responsible for key management. Another limitation is that the agent operates on your real desktop, which is powerful but also risky. It can drive the browser, terminal, and desktop applications. That requires trust in the model and in the hook system. The README does not detail sandboxing or permission prompts beyond the general execution layer. Also, the benchmark data is single-run and model-specific, so you cannot generalize to other models. For users who need a purely cloud-based agent with no local runtime, BitFun is the wrong tool. For users who only do browser automation on remote sites, the desktop execution layer adds complexity without benefit.

Alternatives: How They Differ in Approach

The closest alternatives are other desktop agent runtimes, such as OpenHands or Claude Desktop with computer use. OpenHands is a cloud-orchestrated agent that runs in a sandboxed environment, typically Docker, and does not have a native Mini App UI. Its approach is to give the agent a terminal and file editor in a web UI, not a task-specific interface bound to live state. Claude Desktop offers computer use but is tied to Anthropic models and does not provide a self-hosted relay or a Mini App system. The difference is that BitFun couples the agent to a Rust runtime and a customizable UI layer, while OpenHands decouples the agent from the desktop and runs it in a container. If you need to control a local desktop application, BitFun's Computer Use is more direct. If you want a reproducible sandbox for coding tasks, OpenHands is more isolated. BitFun's Mini Apps are unique; no major alternative offers a gallery of task-specific interfaces.

Maintenance, Upgrade Cost, and License

BitFun is licensed under MIT, which means you can modify and redistribute it with few restrictions, though you should read the license text for exact terms. The project is actively maintained, with a v0.2.19 release and a nightly build channel. The nightly build is versioned 0.2.19-nightly, so you can track development, but it may be unstable. Upgrade cost depends on how you customize. If you use MCP servers or Skills, those are external and versioned independently. If you build Mini Apps, you need to keep them compatible with runtime changes, since the runtime is evolving. The README mentions a verify-downloads document, so you should check checksums for releases. The source build requires a Rust toolchain and Tauri prerequisites, which adds to the maintenance burden if you run from source. Overall, the MIT license is permissive, but the self-hosted relay and custom Mini Apps are the long-term maintenance items.

Editorial conclusion

Adopt BitFun if you need a desktop agent that can operate on real repositories and the local environment, and if you require self-hosted multi-device sync to satisfy network policies. Skip it if you want a cloud-managed agent with zero infrastructure, or if your work is entirely browser-based with no need for desktop execution. Before adopting, verify the benchmark methodology, test the Mini Apps gallery for your domain, and confirm that the nightly build cadence matches your stability needs.

Official sources

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Community notes

Community notes