bee-ai 1.1.3

dotnet tool install --global bee-ai --version 1.1.3
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local bee-ai --version 1.1.3
                    
This package contains a .NET tool you can call from the shell/command line.
#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 CHECKOUT safely installs Bee-owned instructions in AGENTS.md and CLAUDE.md. --dry-run previews and top-level bee doctor --root CHECKOUT --json diagnoses missing, stale or modified blocks without MongoDB. Interactive bee init offers 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 --json lists installed routes; bee guide task gives 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 --json executes reviewed declared checks, records output hashes and compares source identity. Verification covers the declared criteria-to-check mapping with in_process_only trust; 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 --json preserves 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 --json includes 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_packet supports 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 analyze adds 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-evidence to 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.

There are no supported framework assets in this package.

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
Loading failed