Releases: bhengubv/CircleAI
Release list
v3.5.0 — The Neuron
[3.5.0] — 2026-07-18 — The Neuron — on-device concierge, ported to all 8 languages + multilingual docs
Adds the Neuron: a private, on-device second brain that decides, per turn,
whether an always-warm generalist answers or a capability-matched specialist is
hot-loaded to answer — grounded in one shared memory and persona, host-neutral,
and durable across restarts. Built on the C# reference and ported to all seven
sister languages (Python, TypeScript, Go, Kotlin, Swift, Rust, C), each adapted
to its substrate and covered by its own tests. HarmonyOS remains the single
documented gap. Also ships a multilingual README set — the Neuron explained in
17 languages, including six new African-language translations.
Added — the Neuron (CircleAI.Hosting, mirrored to all 7 ports)
- Concierge router + gate —
INeuronRouter/HeuristicNeuronRouter/
NeuronGate. Per-turn keyword/length heuristics (never a model) route each
turn to the generalist or a specialist (vision / long-context / reasoning);
a gate can veto a specialist, and the generalist floor always answers. - Two-slot residency —
ResidentSlotManager, a RAM admission gate that
keeps the generalist warm and hot-loads at most one specialist beside it,
reserving RAM before loading and evicting the specialist first under
memory pressure so the generalist never drops. Wired intoAIServiceat the
chat / stream / agentic call sites, gated onAIOptions.Router— with no
router the path is byte-identical to before. - Host-neutral seam + facade —
IChatRuntime/IPersistableChatRuntimeNeuronNode, so any harness can drive the node without touching engine
internals;AddNeuron(...)DI; generalist-floor KV session save/load for
OOM/restart survival.
- Voice — the "Hey B" voice loop drives the Neuron (
NeuronVoice). - Ported to all seven sister languages — Python, TypeScript, Go, Kotlin,
Swift, Rust, C. Each adapts to its substrate (rich ports mirror the two-slot
path directly; thinner ports inject a specialist selector + factory; C ships
a self-contained module over its callback substrate) and carries its own
Neuron test suite.
Added — documentation + internationalisation
- Plain-language Neuron section in the root README — what it is, and how a
network of Neurons composes (clearly marked as not-yet-built vision). - 17-language README set under
docs/i18n/: a new English source, the
Neuron section added to the 10 existing translations (Arabic, German,
Spanish, Persian, French, Japanese, Korean, Portuguese-BR, Russian, Chinese),
and six new African-language READMEs — Afrikaans, Kiswahili, isiZulu,
Sesotho, Hausa, Amharic — matching the product's own language support. A
language bar links them all from the root README.
Notes
- Neuron unit tests verified green per language: C# (net9 and net10),
Python, Go, Rust (16/16), TypeScript (17/17), Kotlin (17/17), Swift (17/17 on
macOS), C (full CMake library build + ctest).AIOptions.Routernull keeps
every existingAIServicepath byte-identical. - The
docs/i18ntranslations are AI-assisted starting points; native-speaker
review is welcome, isiZulu especially.
v3.4.0 — Cross-language test parity
v3.4.0 — Cross-language test parity + StubGuard package completions
All eight language surfaces — the C# reference plus the Go, Rust, Python, TypeScript, Kotlin, Swift and C ports — are verified green on their unit-test suites with full public-API parity. HarmonyOS remains the single documented gap (no ArkTS toolchain to compile-gate it).
Highlights
- 15 concise
CircleAI.*packages completed to genuine depth (clearing theStubGuardTests≥60-real-line gate) — Media, Safety, the Networking transports (Bluetooth/NearLink/Grpc), Integration in-memory connectors, and 9 vertical-domain packs. Every addition was mirrored across all 7 ports and re-verified. - Cross-language determinism + port bugs fixed by the test pass: FP contraction in C (
-ffp-contract=off),tags:regex backtracking in Python, CalDAV ICS date parsing in Kotlin, a biosignals aggregator task-group race in Swift, async-subscriber handling in TypeScript, and serde/fixture mismatches in Rust. All ports converged on round-half-to-even forMath.Roundbyte-parity.
Verified green
C# (15 projects incl. StubGuardTests), Go, Rust (1,396), Python (2,276), TypeScript (1,413), Kotlin (1,447), Swift (2,140), C (130).
NuGet (GitHub Packages)
CircleAI.Security, CircleAI.Orchestration, CircleAI.Simulation @ 3.4.0.
See CHANGELOG.md for the full entry.
CircleAI 3.3.0 — HER/JARVIS parity
[3.3.0] — 2026-06-25 — HER / JARVIS parity — always-on, world-aware, embodied, learns-you, reasoner
Closes the gap between the 3.2.0 substrate ("real backends for 24 HER/Jarvis
contracts") and a companion that actually behaves like HER / JARVIS: always
listens, sees what you see, knows your day, controls your home, learns your
voice over years, and reaches you across devices. 28 deliverables across
5 phases (A=always-on, B=world-aware, C=embodied, D=learns-you, E=reasoner)
landed against existing HER/Jarvis interfaces — no new contract surfaces
introduced.
Added — Phase A · Always-on persona
CircleAI.Voice.KwsWakeWordDetector— low-latency ONNX keyword-spotter
on a sliding 1 s window every 100 ms. Replaces the ASR-based
EnergyWakeWordDetectorfor production wake-on-"Hey B". Mel-spectrogram
feature extraction (Hamming + DFT + mel filterbank) or raw-waveform input,
configurable threshold + cooldown.CircleAI.Maui.AlwaysOnService—IHostedServiceper platform:
Android stickyForegroundServicewithmicrophonetype +
circleai-always-onnotification channel; iOSAVAudioSession
PlayAndRecordwithMixWithOthers+AllowBluetooth+
interruption observer.CircleAI.Memory.Sync.CompanionConversationSyncBridge—
ConversationStateDelta(session id, partial transcript, in-flight turn
flag, timestamps) cross-device via the existingSyncableEntrypipeline.
Move a call phone → laptop mid-stream.- End-to-end episodic pipeline wired in
CompanionSession: every
user/assistant turn is jointly embedded viaITextEmbedderbefore
EpisodicMemory.RecordAsyncsoLoadRecentMemoriesAsynccan do
embedding-based recall.
Added — Phase B · World-aware
CircleAI.Integration— base contracts:ICalendarConnector,
IEmailConnector,INewsSource,IWeatherProvider,IRoutingProvider,
IHomeAutomationConnector.CircleAI.Integration.Calendar— Google Calendar v3 (OAuth),
Microsoft Graph v1.0, generic CalDAV (REPORTverb + ICS parser).CircleAI.Integration.Email— IMAP (MailKit), Gmail API v1
(base64url), Microsoft Graph mail.CircleAI.Integration.News— RSS 2.0 + Atom 1.0 dual parser,
NewsAPI / GNews, Bluesky AT-protosearchPosts, Mastodon public /
hashtag timeline.CircleAI.Integration.Geo— Open-Meteo current + hourly with full
WMO weather-code decoder; OSRM driving/bike/foot routing with polyline.CircleAI.Companion.ProactiveBriefingService—IHostedService
with a configurable fire-times schedule that pulls calendar + email +
news + weather, runs an LLM summary, and dispatches via
IBriefingNotifier. InternalTimeUntilNextFirehelper.
Added — Phase C · Embodied
CircleAI.Integration.HomeAssistant.HomeAssistantConnector— REST
bridge over/api/states+/api/services/{domain}/{service}POST
with a Long-Lived Access Token.TurnOnAsync/TurnOffAsync
convenience surface.CircleAI.Vision.IVideoCapture+CircleAI.Maui.MauiCameraCapture—
platform-conditional camera capture mirroringMauiAudioCapture:
Android Camera2 withImageReader+ Y-plane extraction, iOS
AVCaptureSessionwithVideoDataOutputdelegate, Windows
MediaCapturewithMediaFrameReader+ SoftwareBitmap → JPEG.
BoundedChannel-backedFrameQueuefor cross-thread frame hand-off.CircleAI.Vision.OnnxFaceDetector/OnnxFaceEmbedder/
OnnxPlateRecognizer— YOLO-family face detection with letterbox +
NMS, ArcFace 112×112 BGR mean-subtracted 512-D embedder (L2 normalised),
plate-region detector. SixLabors.ImageSharp for cross-platform decode.CircleAI.Maui.HealthBoardBridge—IHostedServicethat polls
Android Health Connect (ContentResolver fallback) or iOS HealthKit
(HKHealthStore) and records intoIWearableBoard.CircleAI.Maui.LocationBridge— AndroidLocationManager
(GpsProvider preferred) / iOSCLLocationManagerwith
RequestWhenInUseAuthorization, feedsIChildSafetyBoard.RecordCheckIn.
Added — Phase D · Learns you
native/mnn-bridge1.4.0 — addsmnn_llm_train_lora_step+
mnn_llm_save_loraC ABI surface. Implementation is gated by
#ifdef MNN_BUILD_TRAIN; when MNN is built without the training
subsystem (the upstream binary release), both functions return the new
MNNBRIDGE_ERR_TRAINING_DISABLED(-12). Bundledlibmnnbridge.dylib
forosx-arm64(built on the Mac with brew cmake + Xcode 26 / AppleClang
17, linked against the macOS framework).CircleAI.Inference.LoRAAdapterManager.TrainStep / SaveAdapter—
managed P/Invoke for the new native surface.NotSupportedException
with the explicit "rebuild MNN with-DMNN_BUILD_TRAIN=ON" guidance
when -12 returns.CircleAI.Inference.FeedbackTrainingQueue— line-delimited JSON
file-backed queue (TrainingSamplerecords) with atomic drain.CircleAI.Inference.NightlyAdapterTrainer—IHostedService
withNightlyAdapterTrainerOptions(MinBatchSize,
MaxSamplesPerRun,LearningRate,LoRARank,AdapterPath,
Interval,ShouldFireNow,Tokenizer). Drains the queue, runs
TrainStepper sample, atomicallySaveAdapter+Apply. Char-level
fallback tokenizer. Re-queues on training-disabled.CircleAI.Memory.Sync.LoraAdapterSyncBridge— base64-encoded
adapter bytes propagate across devices asLoraAdapterSnapshot
syncable entries.
Added — Phase E · Reasoner
CircleAI.Companion.ReasoningLoopInnerMonologue— real o1 /
DeepSeek-R1 style inner monologue using
IChatGenerator.StreamFragmentsAsyncwithIncludeReasoning = true.
CapturesReasoning-kind fragments as the thought;Content
fragments form the visible answer. ReplacesTemplateInnerMonologue.CircleAI.Companion.SqliteKnowledgeGraph+
LlmKnowledgeGraphExtractor—kg_nodes+kg_triplesSQLite
triple store with indexes; LLM-driven entity / relation extractor with
JSON-strict prompt + defensive bracket-finding parser. Replaces
AdjacencyPersonalKnowledgeGraph.CircleAI.Companion.SqliteHippoRagStore— real
Personalised PageRank walk over the personal KG (damping 0.85, 32
iterations) seeded from query terms. Multi-hop recall returns top-K
nodes asMemoryHitwith PR mass as score.CircleAI.Companion.BayesianWorldModel— online-learning Naive
Bayes classifier over (observations → outcome) pairs with Laplace
smoothing. Softmax-normalised posteriors. Replaces
FrequencyWorldModel.CircleAI.Companion.SequencePredictiveEngine— variable-order
(default 3-gram) Markov chain over the user's event timeline with
back-off weighting and per-event inter-arrival forecasting. Replaces
the slot-of-weekHistogramPredictiveEngine.CircleAI.Voice.OnnxSpeakerIdentity+
CircleAI.Companion.OnnxSpeakerIdentityAdapter— ECAPA-TDNN-style
speaker embedder (log-mel or raw waveform input) with JSON
enrollment store, running-mean centroid update, cosine-similarity
match. Replaces the MFCCEnergyBandVoiceIdentity.CircleAI.Voice.OnnxSpeechEmotionDetector+
CircleAI.Companion.OnnxSpeechEmotionSensor— wav2vec2-style speech
emotion ONNX with Russell-circumplex arousal / valence mapping per
label. Plugs intoIEmotionSensorvia a base64-audio key in the
fused-signal JSON.CircleAI.SelfBench— new project:BenchTask/BenchResult/
BenchSummaryrecords,BuiltInScorers(exact / substring / regex /
numeric-tolerance),BenchRunner,AbBenchRunnerwith
RegressionGateConfig(mean-score threshold, p95 latency cap,
critical-task regression cap),BenchSuiteRegistrywith a built-in
10-task default suite (math, factual, format, refusal, reasoning).CircleAI.Companion.SelfBenchSelfImprovementLoop— implements
ISelfImprovementLoopby orchestrating SelfBench: baseline vs
candidateIAIService, regression-gated promotion.
Changed
- Version-aligned every 3.x runtime package from 3.2.0 → 3.3.0 (49
packages), seven new packages join the runtime tier at 3.3.0
(CircleAI.Integration,…Calendar,…Email,…News,…Geo,
…HomeAssistant,CircleAI.SelfBench). Touched 1.x packages bumped
one minor:CircleAI.Companion1.2.0 → 1.3.0,
CircleAI.Voice1.2.0 → 1.3.0,CircleAI.Memory1.3.0 → 1.4.0. native/mnn-bridge/CMakeLists.txt— macOS framework search path
(-F${MNN_FRAMEWORK_PARENT}) so<MNN/...>includes inside
MNN.framework headers resolve via the framework name; needed because
MNN/expr/Expr.hppis referenced from MNN's ownllm/llm.hppand
the bundle's Headers directory has noMNN/subfolder.
Fixed
CircleAI.Voice.KwsWakeWordDetector—ReadOnlyMemory<byte>.AsSpan(...)
doesn't exist; replaced with.Span.Slice(...).CircleAI.Inference.csproj— added
Microsoft.Extensions.Hosting.Abstractions+
Microsoft.Extensions.Logging.Abstractions(required by
NightlyAdapterTrainer : IHostedService).CircleAI.Maui.MauiCameraCapture—Android.Media.ImageFormatType
doesn't exist; corrected toAndroid.Graphics.ImageFormatType.
Build verification
CircleAI.Companion(net9.0) — green; transitively builds
Core / Memory / Embeddings / Integration / Domain / Identity / Sync / Languages / Voice / Tools / Hosting / Networking / Inference / SelfBench.- All five
CircleAI.MauiTFMs —net9.0,net10.0,
net10.0-android,net10.0-ios,net10.0-maccatalyst,
net10.0-windows10.0.19041.0— green. CircleAI.Integration.{Calendar,Email,News,Geo,HomeAssistant}+
CircleAI.Vision— green.- Native
libmnnbridge.dylib(osx-arm64) — built on Mac
(Xcode 26 / AppleClang 17), linked against MNN.framework, copied
intosrc/CircleAI.Inference/runtimes/osx-arm64/native/alongside
the stagedlibMNN.dylib(15.7 MB).
CircleAI 3.2.0 — HER / Jarvis lift, companion substrate
Summary
Seven new packages port working backends from CircleUp + Concierge into the CircleAI substrate so any consumer can light up a HER- / Jarvis-class companion experience without re-deriving the protocol scaffolding.
New packages (all 3.2.0)
- CircleAI.Companion.Proactive — generic proactive scheduler (5-field cron +
IProactiveTaskSource/IProactiveTaskRunner/IProactiveScheduler+IHostedService). 20 tests. - CircleAI.Hosting.CloudFallback — OpenAI / Anthropic / Gemini
IChatGeneratorwith SSE streaming + fail-soft + compositeCloudFallbackChain. 11 tests. - CircleAI.Speech.Cloud — OpenAI Whisper
ISpeechRecognizer(WAV-envelope-wraps PCM input) + OpenAI TTSISpeechSynthesizer(response_format=pcmhonoursAudioPcm16Monocontract) + generic regexKeywordVoiceIntentRouter. 14 tests. - CircleAI.Vision.Cloud — new
IImageGeneratorcontract (the existingCircleAI.Visionis detection-only) + DALL-E + Stability AI +ImageGeneratorFallbackChain. 13 tests. - CircleAI.Plugins — per-plugin collectible
AssemblyLoadContext, JSONPluginRegistry,PluginMarketplace, hot-reloadPluginLifecycleService, declarative permission gating viaPermissionedPluginContext. 18 tests. - CircleAI.Hosting.Mcp — MCP (Model Context Protocol) JSON-RPC 2.0 endpoint. DI-driven
IMcpTool+IMcpResourceProvider. Single + batch requests. Pure-DIDispatchAsyncmakes it testable without ASP.NET Core. 15 tests. - CircleAI.Hosting.Multiplayer — SignalR
MultiplayerHub— per-document rooms, last-writer-wins by rev, live cursor positions, presence. Identity viaIMultiplayerPeerIdentity(default:GuestPeerIdentity). 9 tests.
Changed
- Version-aligned every 3.x package from 3.1.0 → 3.2.0 (50 packages total).
- Fixed a latent DI bug in
CircleAI.Hosting.CloudFallback.ServiceCollectionExtensions: the options factory was being registered asFunc<IServiceProvider, T>instead ofT, soAdd*ChatGeneratorcalls would have failed at resolution time. Same pattern applied toSpeech.CloudandVision.Cloud.
Tests
100 new Circle32* tests pass on both net9.0 and net10.0.
Compatibility
No breaking changes. New surfaces are additive — every new package ships contracts + null + real backends, fail-soft when credentials are absent.
CircleAI 3.1.0 — Video pillar foundation
New CircleAI.Video contract package + the device-fit gates that make the BestFit selector aware of GPU memory. Real backends (CogVideoX-2B, LTX-Video distilled-2B) ship in 3.1.x as ONNX→MNN conversion completes.
Driving use case — txtMe Video Mail
Sender video-calls, no answer, types a message. Recipient's on-device B! (where capable) renders the message as a short styled video — public-domain or original-character voice — and plays it back. On phones that can't honour the GPU budget, the toggle is hidden. On phones with a desktop peer reachable over AetherNet, the work is offloaded via the RT-12 v2 cross-tier path that shipped in 2.7.0.
New package — CircleAI.Video
Three interfaces:
IVideoGenerator— text + style + reference frame + audio → short video (mp4)IStyleScript— rewrite the user's message in the chosen style's voice (uses the existingIChatGenerator; no new model)IStyleReference— registry of registered styles for the picker UI
Plus NullVideoGenerator, NullStyleScript, and InMemoryStyleReference (genuinely production-suitable).
New surface in existing packages
CircleAI.Inference—ChatCapability.Video = 1 << 5CircleAI.Core—ModelEntry.MinVramGb+DeviceProbe.VramGb(both nullable)DeviceProbe.Snapshot(vramGbOverride: ...)— platform adapters wire VRAM in one line
Real backends — shipping in 3.1.x
- CogVideoX-2B (THUDM / Zhipu AI) — 2B params, 6-second clips at 720×480, INT8/FP8 quantisable, lives on ModelScope, Apache-2.0 compatible. Same Chinese-sovereign family as Qwen/MNN.
- LTX-Video distilled-2B (Lightricks) — faster on the same hardware, image-to-video mode built-in.
Versions
All 43 packages bumped to 3.1.0 (the 42 from the 3.0.1 line + the new CircleAI.Video). All net9.0;net10.0.
Tests
13 new contract-surface tests in tests/CircleAI.Tests/Circle31ContractTests.cs. Full suite: 1394 net9.0 pass, 1393/1394 net10.0 (pre-existing HttpListener environmental flake, unrelated to 3.1.0).
Why the gate matters
CogVideoX-2B needs ~6 GB VRAM quantised. A phone has 2-8 GB system RAM total. The MinVramGb gate is what makes the difference between "feature is hidden on this device" and "feature crashes on first tap." Same pattern as MinRamGb did for the text models — different memory axis.
See CHANGELOG.md for the full entry.
CircleAI 3.0.1 — Naming cleanup (MediaHub, ContentPolicy)
Renames + metadata cleanup over 3.0.0:
CircleAI.MediaServer->CircleAI.MediaHub(Plex + beatsync media-server contracts)CircleAI.Guardrails->CircleAI.ContentPolicy(Sponsio refusal / audit / injection contracts)
Both old names existed only as workarounds for the v1.2.0 CircleAI.Media and CircleAI.Safety domain-pack collisions. The 3.0.0 entries stay on nuget.org (API key scope is push-only) but nothing newer ships under those IDs. New consumers: dotnet add package CircleAI.MediaHub, dotnet add package CircleAI.ContentPolicy.
All 41 packages at 3.0.1. Description-prefix drift normalized.
🤖 Generated with Claude Code
CircleAI 3.0.0 — The contingency runtime
The strategic 3.0.0 release. Five new packages close the loop on the doctrine: if Claude Code / Codex / Cursor get banned, CircleAI is what we have left.
CircleAI.Research(the_well + UnifiedFieldTheory + arxiv)CircleAI.Games(flame + Doom.Mobile)CircleAI.AutonomousBiz(show-me-the-money pattern)CircleAI.CodeUnderstanding(Understand-Anything pattern)CircleAI.DevTools— the cornerstone:ICodeEditor+IInlineSuggester+IAgentShell+IPatchPlanner+IRefactorTool. The contract surface a Geek-Network IDE / agent shell binds to.
All 41 packages at 3.0.0. 174 total contract-surface tests across the 2.x → 3.0 line. Pure-additive over 2.9.0; no breaking changes for upgrading consumers. The SemVer major bump signals the doctrine shift from 'mobile runtime' to 'complete sovereign AI stack.'
🤖 Generated with Claude Code
CircleAI 2.9.0 — DevOps + build-farm — FINAL 2.x release
The final 2.x release. Eight new packages: BuildFarm / DepBot / DocAnalytics / Testing / Distribution / MediaServer / WindowsAutomation / MicroAgents. All fail-closed Null impls.
36 packages total across 2.0 → 2.9. CircleAI 2.x is feature-complete as the Western-dev-tools contingency runtime. The contract surface is stable; real backends land in 2.x.1 dot-releases.
🤖 Generated with Claude Code
CircleAI 2.8.0 — Server domain packs
Seven new domain packs bring CircleAI into line-of-business stacks: Banking / Markets / Pipelines / Workflows / Visualization / Collaboration / CRM. All fail-closed Null impls. All 28 packages at 2.8.0. 14 new contract tests.
🤖 Generated with Claude Code
CircleAI 2.7.0 — Server-farm tier
Four new packages: CircleAI.Inference.Server.Enterprise (multi-tenant routing + batch + sharding + RT-12 v2 cross-tier offload), CircleAI.Observability (OTel + Prometheus + Grafana), CircleAI.Operator (kagent k8s pattern), CircleAI.SDD (spec-kit pattern-port). All fail-safe Null impls. All 21 packages at 2.7.0. 12 new contract tests.
🤖 Generated with Claude Code