bee-ai
1.1.3
dotnet tool install --global bee-ai --version 1.1.3
dotnet new tool-manifest
dotnet tool install --local bee-ai --version 1.1.3
#tool dotnet:?package=bee-ai&version=1.1.3
nuke :add-package bee-ai --version 1.1.3
bee ๐
A config-driven AI dev CLI for .NET 10 โ the layer that keeps an AI coding agent oriented over a long run: persistent memory, behavioural rules, and per-file guidance delivered into the agent's context instead of its transcript.
Works with Claude Code, Codex and Hermes. Every integration in the table below was produced by running the real runtime, not by reading its docs.
No secret is ever baked into the binary. The shipped tool contains zero credentials. Provider keys, endpoints and connection strings live in a shared MongoDB config store. The only thing stored locally is one Mongo bootstrap connection (
~/.bee/config.json,0600).
๐ Full documentation: bee.fusapp.com ยท Release notes
New in 1.1.3
- Project agent guidance:
bee setup agents --root CHECKOUTsafely installs Bee-owned instructions in AGENTS.md and CLAUDE.md.--dry-runpreviews and top-levelbee doctor --root CHECKOUT --jsondiagnoses missing, stale or modified blocks without MongoDB. Interactivebee initoffers setup; headless init accepts explicit--setup-agents. - Focused tool choice and acceptance: the embedded workflow caches a Bee capability route choice per session/checkout, asks for real code analysis and declared QA checks, and binds approved design revision/hash to frontend and backend evidence. Guidance remains advisory; a config file does not prove host activation or task acceptance.
See the 1.1.3 release notes for upgrade instructions and limits.
New in 1.1.2
- Offline discovery:
bee guide capabilities --jsonlists installed routes;bee guide taskgives recipes for source, change, test, coverage and design work. Guidance does not execute checks or establish readiness. - Public opening guidance: session-start hooks can deliver the public task guide when optional memory is not configured or is unavailable. Native host hook setup and trust still apply.
- Explicit change checks:
bee qa run --root CHECKOUT --spec task.json --jsonexecutes reviewed declared checks, records output hashes and compares source identity. Verification covers the declared criteria-to-check mapping within_process_onlytrust; subjective criteria still need judgment.
See the 1.1.2 release notes for upgrade instructions and limits. Commands in a task specification can write files and start processes; this execution feature is not a sandbox.
New in 1.1.1
- Focused TRX evidence:
bee test summarize REPORT.trx --failures --jsonpreserves declared/observed totals, failure class counts and first error lines, with explicit completeness and hash-bound continuation. - Declaration source:
bee graph explain TARGET --source --compact --jsonincludes exact verified source ranges. Missing, stale or oversized evidence is explicit; default graph and report output remain compatible. - Task guidance: use relevant evidence and stop once requested facts are
complete. Existing
bee_context_packetsupports bounded MCP source selections; the new graph and TRX modes are CLI features.
See the 1.1.1 release notes for upgrade instructions and compatibility limits.
New in 1.1.0
- Local context tools: query and recover retained artifacts, select bounded source packets, recover verified command output and use explicit provider profiles.
- Task workflow: one public contract guides relevant Bee operations. Managed Codex profiles with typed requirements check actual command evidence after a run; free-form and unsupported routes remain guidance-only.
- Coverage projection: select files and uncovered lines with explicit completeness and omission metadata.
- Collaboration: MQTT QoS 2 hints and bounded persistent worker sessions retain at-most-once context delivery through the existing Mongo claim.
See the 1.1.0 release notes for upgrade instructions and compatibility limits.
Capabilities
bee code analyze runs explicit TypeScript, Vue, Dart, Swift/iOS,
Kotlin/Android and Roslyn-backed C# (--engine roslyn) engines with real
compiler/analyzer diagnostics, source locations and versioned schema 2
reports. Use existing trusted tools and declared project inputs. Swift iOS
needs macOS/Xcode; native mobile contexts describe selected sources and SDK
dependencies, not a full app build or device test. Flutter projects and
custom compiler plugins are outside this slice. Missing/unsupported contexts
remain incomplete. Language setup and limits.
Bee notifies people and AI tools when a newer release is available.
bee update check --json returns version status and installation instructions
without MongoDB. A verified global installation receives an exact update command;
run it from a new empty temporary directory, preserving HOME and
DOTNET_CLI_HOME. Normal commands do not install updates themselves.
Notices use stderr or existing session-start AI context. Offline analysis only
reads the cache, keeping JSON/SARIF reports and exit codes compatible.
Set BEE_NO_UPDATE_CHECK=1 to disable all checks and notices.
See Installation and updates.
- Mechanical lint: offline C# naming checks, strict versioned rulesets, rule catalog and executable self-tests. The existing project-linter mode stays.
- Code analysis:
bee code analyzeadds method length and complexity with JSON/SARIF reports, fingerprints and explicit analysis coverage. Initial native rules cover C#; multi-language and security analysis remain future work. - Memory evidence: append-only source captures, read-only audit and explicit
supersede/retract history. Old memories remain intact; unchanged source bytes
do not establish truth. Use
remember context --with-evidenceto opt in. - Collaborate: MQTT topics, peer messages, questions and replies addressed to existing Codex, Claude Code Channel and Hermes CLI conversations. Worker and native harness setup are required; delivery states distinguish transport from model acknowledgement.
bee lint --catalog --json
bee lint --self-test --json
bee code analyze src --scope source --json
Read Code analysis, Memory evidence and Collaborate for setup and limits. The entity registry and C#/Vue/TypeScript code graph remain available. Codex automatic wake currently supports macOS/Linux; Windows wake is not implemented.
Install
dotnet tool install --global bee-ai
dotnet tool update --global bee-ai # later
Installing without a version resolves to the latest published stable release.
After 1.1.3 is published, add --version 1.1.3 to either command to pin it
(recommended for reproducible CI).
Ships as RID-specific tool packages (bee-ai.osx-arm64, bee-ai.linux-x64, โฆ).
.NET selects the package for your platform; download sizes vary by runtime.
First run
bee init # asks for the one Mongo connection, tests it live, saves 0600
bee config set DEEPSEEK_API_KEY sk-... --secret
bee config set BRAIN_PROVIDER deepseek
bee config show # secrets masked
Any MongoDB reachable from your machine will do โ a local container is enough to try it.
In builds that expose setup agents, add Bee's public workflow to the intended
project checkout and check it without MongoDB:
bee setup agents --root . --dry-run --json
bee setup agents --root .
bee doctor --root . --json
Interactive bee init offers the same setup after bootstrap. Headless init
requires --setup-agents or the standalone command. Setup preserves existing
AGENTS.md and CLAUDE.md text outside its marked block, refuses modified blocks
and symlinks, and does not edit agent host settings. Doctor diagnoses the blocks
and offers repair guidance; hook trust and fresh-session activation remain
unverified. Read bee doctor --help for the installed command contract.
What bee does for an agent
bee hook install --harness claude --scope project # or codex, or hermes
| when | what arrives in the agent's context |
|---|---|
| session start | who it is (SOUL), the standing rules, the last few facts |
| every prompt | rules + the memories that match what was just asked |
| on a file write | the rules that govern that file |
The third one saves tokens rather than spending them. A rule can name the files it is about, and a rule that names files is excluded from the per-turn block entirely โ so the fifty turns that touch nothing relevant stop paying for it, and the one that does gets it unburied:
bee hook rule add "a DataSource never calls GetCollection" --path '*DataSource.cs'
bee lint src/Catalog/Data/ProductDataSource.cs --rules
# bee โ rules for src/Catalog/Data/ProductDataSource.cs
# - a DataSource never calls GetCollection
# โณ matched: *DataSource.cs
hook install prints configuration with the flags for the selected runtime.
Apply that configuration to the runtime's settings; the command does not edit
those files. The runtimes support different hook events:
| runtime | session start | per prompt | before a write |
|---|---|---|---|
| Claude Code | โ | โ | โ
โ needs --emit claude-pretool; plain stdout is DISCARDED at this event |
| Codex | โ | โ | not wired โ Codex has no Write tool, so the hook never sees a file path |
| Hermes | rides the first prompt | โ
--emit context-json |
not wired โ Hermes cannot carry context at that event |
Codex additionally needs hook trust, granted interactively once and separate
from project trust; without it Codex silently runs no hooks at all, and
bee hook install says so.
Memory that survives the session
bee remember "Redis caches session tokens" --type decision --reason "..."
bee remember search "caching user sessions" --semantic # cosine, ranked in the database
bee remember search "redis" --all-projects --since 30d
Search is a union of two halves โ most recent and most relevant โ because either alone loses things. Measured on 50,001 memories: the date-ordered half never reached a two-year-old fact; the relevance-ordered half returned it first, in 27 ms.
Semantic ranking uses a local multilingual ONNX model by default (50+ languages, no API key, no call out). The cosine is computed inside MongoDB โ ranking in the client meant downloading every stored vector per query, 96.5 MB at ten thousand memories; it is now 1.5 KB.
Local embeddings remain unavailable on Intel Macs because the osx-x64
package has no compatible ONNX Runtime library. Graph and registry commands do
not require embeddings. See Memory
for the Gemini embedding option and shared-store compatibility guidance.
Over a long run
bee handover --session # what THIS run did โ decisions, then fixes, then the rest
bee budget # what the steering costs per turn, by component
bee compact # which memories are costing recall rather than adding to it
bee compact --archive # act on it โ reversible, and there is no delete
bee worker # background maintenance; nothing heavy on the way to a prompt
--session reads the id the harness already exports (CLAUDE_CODE_SESSION_ID,
CODEX_SESSION_ID); BEE_SESSION overrides it for anything bee has not been
taught. With no id in the environment it refuses rather than quietly falling back
to a time window โ that would answer a different question while looking like it
answered this one.
Documentation: bee.fusapp.com ยท License: MIT
Read only the context you need
bee graph outline src/App.vue --json
bee test summarize TestResults/results.trx --limit 10 --budget 8000 --json
bee hook rule list --json
bee hook rule archive <id> --reason "No longer applicable" --json
bee hook rule restore <id> --json
graph outline reads a previously built graph and returns declaration ranges for C# and Vue/TypeScript. It checks source identity and freshness without refreshing the graph. test summarize reads one existing flat UTF-8 TRX report without initialization or a database; it preserves failure identities and distinguishes incomplete input from test success. Both expose omitted results and character budgets; token estimates are heuristics, not provider billing measurements.
Rule archive and restore are explicit, reversible operations on the current project's rules (--global selects global rules). Archived rules stop reaching hooks and lint; restoring preserves their original scope, paths and enabled state. See the context tools, code graph and rules documentation for limits and exit codes.
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.1.3 | 85 | 9/28/2026 |
| 1.1.2 | 86 | 9/27/2026 |
| 1.1.1 | 80 | 9/27/2026 |
| 1.1.0 | 88 | 9/26/2026 |
| 1.0.0 | 84 | 9/26/2026 |
| 1.0.0-beta.18 | 54 | 9/25/2026 |
| 1.0.0-beta.17 | 68 | 9/25/2026 |
| 1.0.0-beta.16 | 58 | 9/24/2026 |
| 1.0.0-beta.15 | 61 | 9/24/2026 |
| 1.0.0-beta.14 | 61 | 9/24/2026 |
| 1.0.0-beta.13 | 66 | 9/23/2026 |
| 1.0.0-beta.12 | 60 | 9/22/2026 |
| 1.0.0-beta.11 | 67 | 9/22/2026 |
| 1.0.0-beta.10 | 64 | 9/21/2026 |
| 1.0.0-beta.9 | 64 | 9/21/2026 |
| 1.0.0-beta.8 | 64 | 9/21/2026 |
| 1.0.0-beta.7 | 67 | 9/21/2026 |
| 1.0.0-beta.6 | 72 | 9/20/2026 |
| 1.0.0-beta.5 | 63 | 9/20/2026 |
| 1.0.0-beta.4 | 83 | 9/20/2026 |