Technology
What it is built with, and why
Every major choice is written down in an architecture decision record (ADR) with its reasons and alternatives. The short versions are below.
01 · Stack
| Area | Choice | ADR | Why |
|---|---|---|---|
| Core language | Python 3.12 | 0001 | The heavy work already runs in C/C++ engines (llama.cpp, faster-whisper, Piper); Python ties them together. |
| Local LLM | Ollama | 0002 | A 3–4B model with tool calling over HTTP; qwen2.5:3b, good at Turkish, is the default. |
| Modularity | Skill eklentileri | 0003 | Each capability is a skill given to the model as a tool; triggers skip the model. |
| Self-extension | Onaylı skill üretimi | 0004 | The core never changes; static check, isolated test, L4 approval, git versions. |
| Mobile | İnce Android istemci | 0005 | The phone is only an interface; TLS on the LAN, a device token from QR pairing. |
| Storage | SQLite | 0006 | One file; vectors as BLOBs in the same database, compared in Python. |
| Packaging | PyInstaller + Inno Setup | 0007 | --onedir (onefile starts slowly); per-user install, no admin rights. |
| Desktop | Tauri 2 + Svelte | 0008 | Connects to the local API and manages the core as a sidecar; small and native. |
| Cloud clients | anthropic SDK + httpx REST | 0009 | The official SDK for Claude's thinking and effort features; plain REST elsewhere, one class for the OpenAI-compatible ones. |
| Memory | embeddinggemma + SQLite | 0010 | 768-dimension multilingual vectors, threshold 0.45, falls back to word matching. |
| Voice | VAD + Whisper + Piper | 0011 | An energy VAD with no extra dependencies; Whisper small has the best speed/accuracy on CPU; dfki is the clearest Turkish voice. |
| Generated code | Önce onay, sonra test | 0012 | No part of model-written code runs before approval; in-process layers are only an extra safety net. |
| Companion | Olay tabanlı zihin | 0013 | One brain process, a priority event queue, a 2-worker hand, a fixed constitution and persona. |
- APIFastAPI · REST + WebSocket /v1/events
- AndroidKotlin · Jetpack Compose (Material 3) · OkHttp · kotlinx.serialization · ZXing · Android Keystore · minSdk 26
- Desktop bridgeRust; only allows /v1/ paths, the token never reaches the web UI
- Secretskeyring → Windows Credential Manager
- Speech recognitionfaster-whisper; turbo and cuBLAS with an NVIDIA GPU
03 · Repository
BigOne/ ├── core/bigone/ Python core: api, brain, llm, skills, memory, │ security, voice, mind, trust, evals, cli ├── core/bigone/skills/builtin/ 28 built-in skills ├── apps/desktop/ Tauri 2 + Svelte desktop app ├── apps/android/ Kotlin + Compose phone app ├── docs/ user and technical docs, diagrams, ADRs ├── installer/ PyInstaller spec, Inno Setup script ├── scripts/ installer, release notes, icons ├── tests/ pytest └── web/site/ this site (Astro)
04 · Tests and measurement
- Pythonpytest; over 1,200 tests in 94 files (count of 2026-11-13)
- Desktopvitest, svelte-check, cargo test
- Scenariosbigone eval attention (35) and bigone eval learner (15), with real models
- CIlint + tests on every push and pull request (GitHub Actions)
- Workflowdesign first, then a plan, test-first code, an independent review at the end
05 · Packaging and release
- CorePyInstaller --onedir, ~315 MB without CUDA libraries; bigone-core.exe and bigone-sandbox.exe
- InstallerInno Setup, one command: python scripts/build_installer.py → BigOne-Setup-x.y.z.exe (~108 MB)
- Install location%LOCALAPPDATA%\Programs\BigOne, no admin rights; option to start with Windows
- Ollamaif missing, the wizard explains and offers to open its download page; without it BigOne runs cloud-only
- Uninstallasks "delete your data too?", default No
- ReleasevX.Y.Z tag → GitHub Actions: lint + test → build → SHA256SUMS.txt → release notes; 0.x releases are pre-releases
- Signingnone (0.1.0 decision); SmartScreen says "unknown publisher"
06 · Command line
| bigone "…" | one command |
| bigone serve [--voice] | the single brain, API and mind |
| bigone doctor | setup and provider check |
| bigone key set|list|remove | API keys |
| bigone approvals · approve · reject | pending approvals |
| bigone audit · memory · notes | audit log, memory, observation notes |
| bigone skills · skill drafts|rollback|remove | skill management |
| bigone grant add · tasks · watches | grants, tasks, watches |
| bigone voice setup|status|test | voice models |
| bigone pair · devices [revoke] | phone pairing |
| bigone eval attention|learner | scenario evals |