neuron-explorer
Qwen3.5‑4B 전용 조향형 뉴런 탐색기, 모든 MLP 뉴런을 밀어 결과를 보관·탐색
Cognithor · Agent OS: Local-first autonomous agent operating system. 19 LLM providers, 18 channels, 145 MCP tools, 6-tier memory, Agent Packs marketplace, zero telemetry. Python 3.12+, Apache 2.0.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
A local-first, autonomous agent operating system for AI experimentation and personal automation.
Cognition + Thor — Intelligence with Power
Pre-v1.0 Beta — Cognithor is under active development. APIs may change between releases. Not recommended for production customer-facing deployments. Bug reports and feedback welcome via Issues.README 전문 보기 ↗Pre-v1.0 Beta — Cognithor is under active development. APIs may change between releases. Not recommended for production customer-facing deployments. Bug reports and feedback welcome via Issues.
While the test suite is extensive (17,000+ test functions, 89% coverage gate), the project has not been battle-tested in production environments. Expect rough edges, breaking changes between versions, and some German-language strings in system prompts and error messages. See Status & Maturity for details. For non-technical users, wait until version 1.0.0 for stable long-term support.
Vibe-Engineered, not vibe-coded. Cognithor is not a weekend hack held together by AI-generated spaghetti. Every module follows a deliberate architecture (PGE-Trinity, 6-phase gateway init, 3-layer security, TRUST-1..10 operational-trust stack), backed by 17,000+ test functions, structured plans, spec compliance reviews, and code quality gates. The AI writes the code — but a human engineers the system. There's a difference.
Most AI assistants send your data to the cloud. Cognithor runs entirely on your machine — with Ollama or LM Studio, no API keys required. Cloud providers are optional, not mandatory.
It replaces a patchwork of tools with one integrated system: 17 channels, 141 MCP tools across 30 modules, 6-tier memory with 4-channel hybrid search, knowledge vault, voice, browser automation, Computer Use, cross-platform social listening, signed audit receipts (TRUST-1..10), resumable batch workflows (CRWE), TUF-Light-signed pack registry, and more — all wired together from day one. The test suite is extensive (17,000+ test functions, 89% coverage gate). See Status & Maturity for what that does and does not guarantee.
In plain terms: Cognithor is an AI assistant that lives entirely on your computer. You talk to it through your terminal, a web UI, Telegram, Discord, or any of 18 supported channels — and it talks back, remembers what you said last week, and acts on your behalf. It can search the web, write and edit files, run shell commands, control your browser, automate your desktop (clicking, typing, reading windows), manage your calendar, and learn new skills over time. Think of it as a local, private, self-improving Jarvis.
Unlike cloud-based assistants, Cognithor keeps all your data on your machine. Your conversations, memories, documents, and credentials never leave your hardware unless you explicitly configure a cloud LLM provider. It works fully offline with Ollama or LM Studio, and it encrypts everything at rest with SQLCipher (AES-256). If privacy matters to you — and it should — this is the architecture you want.
What makes it different from other local AI tools is that Cognithor is not just a chatbot. It is an agent operating system: it plans multi-step tasks, evaluates its own results, learns from mistakes, and improves autonomously. It can control your desktop through Computer Use (screenshots, clicks, keystrokes, window automation), compete in ARC-AGI-3 reasoning benchmarks, and manage a marketplace of community-contributed skills. It is built to grow with you.
Cognithor is Beta / Experimental software. It is under rapid, active development.
| Aspect | Status |
|---|---|
| Core agent loop (PGE) | Stable — well-tested and functional |
| Memory system | Stable — 6-tier architecture works reliably |
| CLI channel | Stable — primary development interface |
| Flutter Command Center | Beta — Sci-Fi aesthetic, cross-platform, GEPA pipeline visualization, Robot Office pathfinding, 20+ config pages, chat, voice, learning dashboard |
| Messaging channels (Telegram, Discord, etc.) | Beta — basic flows work, edge cases may break |
| Voice mode / TTS | Alpha — experimental, hardware-dependent |
| Browser automation | Stable — Playwright-based, CAPTCHA solving, stealth mode |
| Computer Use | Stable — 6 phases (Vision, Agent Loop, Planner Intelligence, Security, Robustness, UI Automation) |
| ARC-AGI-3 Benchmark | Beta — 13/25 games solved (24 levels), 4 solver families incl. SmartExplorer |
| Skill Marketplace | Stable — GitHub registry, 5-check validation, publisher verification |
| Windows UI Automation | Beta — pywinauto UIA for exact element coordinates |
| Deployment (Docker, bare-metal) | Beta — tested on limited configurations |
| SSH Remote Execution | Beta — tested against Docker containers, key-based auth |
| Evolution Engine | Stable — all 6 phases complete, autonomous deep learning with quality self-examination, GDPR-compliant |
| Autonomous Task Framework | Beta — task decomposition, self-evaluation, recurring scheduling |
| Background Process Manager | Beta — 6 MCP tools, 5-method ProcessMonitor, SQLite persistence |
| Multi-Agent System | Beta — 5 specialized agents with model/temperature/top_p overrides |
| Audit & Compliance | Beta — HMAC + Ed25519 signatures, RFC 3161 TSA, GDPR Art. 15/33, WORM-ready, hash-chained prev_hash over canonical NFC-JSON, dedicated channel for autonomous learning (Compliance-Spring v0.98.0) |
What the test suite covers: Unit tests, integration tests, property-based tests (Hypothesis), audit-completeness burn-ins (nightly CI), real-life scenario tests, and live Ollama tests for all modules. The 17,000+ test functions verify code correctness in controlled environments.
What the test suite does NOT cover: Real-world deployment scenarios, network edge cases, long-running stability, multi-user load, hardware-specific voice/GPU issues, or actual LLM response quality.
Important notes for users:
config.yaml. See Language & Internationalization.Cognithor is a fully local, Ollama/LM Studio-powered, autonomous agent operating system that acts as your personal AI assistant. All data stays on your machine — no cloud, no mandatory API keys, full GDPR compliance. It supports tasks ranging from research, project management, and knowledge organization to file management and automated workflows. Optional cloud LLM providers (OpenAI, Anthropic, Gemini, and 12 more) can be enabled with a single API key. Users can add custom skills and rules to tailor the agent to their needs.
from cognithor import Crew, CrewAgent, CrewTask) on top of PGE-Trinity. Async kickoff with parallel fan-out, idempotent replay, guardrails, 5 templates (research, customer-support, data-analyst, content, versicherungs-vergleich).docs/quickstart/ — from pip install to your first Crew in under 10 minutes, bilingual (DE primary + EN). Includes runnable examples for first-crew, first-tool, first-skill, guardrails, and PKV report.ast.NodeVisitor + bashlex parser), SHA-256 audit chain, credential vault, runtime token encryption (Fernet AES-256), Gatekeeper policy engine with GREEN/YELLOW/ORANGE/RED risk classification (not independently audited — see Status & Maturity)[[backlinks]], full-text search.mp4 / .webm / .mov / .mkv / ) or paste direct video URLs; Qwen3.6-27B (or any video-capable VLM) analyzes them end-to-end via vLLM's native content type. Adaptive frame sampling (fps=3 for short clips, for long) via . Single video per turn, served from a 127.0.0.1-only HTTP file server, 24h auto-cleanup. Requires vLLM backend — Windows installer bundles LGPL ffmpeg. See .flowchart TB
%% ===== ENTRY POINTS =====
subgraph ENTRY["Entry Points"]
UI["Flutter UI / Web UI
(Mobile app available)"]
API["REST API"]
CHANNELS["Messaging Channels
(17 channels — chat, voice, REST)"]
end
%% ===== CORE LOOP =====
subgraph CORE["Autonomous Agent Loop"]
GATEWAY["Gateway
Session + Routing + State"]
CONTEXT["Context Pipeline
Memory + Vault + Episodes"]
subgraph PGE["PGE Core Engine"]
direction LR
PLANNER["Planner
Task Understanding
+ Planning"]
GATEKEEPER["Gatekeeper
Policy + Risk Validation"]
EXECUTOR["Executer
Sandbox + Action"]
end
MEMORY["Cognitive Memory
6-Tier Learning System"]
end
%% ===== EXECUTION =====
subgraph EXEC["Execution Stack"]
WORKFLOW["DAG Engine
Parallel + Retry Logic"]
TOOLS["MCP Tools
(141 tools / 30 modules)"]
LLM["LLM Backends
Local + Cloud Models
(22 API endpoints)"]
end
%% ===== FLOW =====
%% Entry into loop
UI --> GATEWAY
API --> GATEWAY
CHANNELS --> GATEWAY
%% Core loop
GATEWAY --> CONTEXT
CONTEXT --> PLANNER
PLANNER --> GATEKEEPER --> EXECUTOR
%% Execution path
EXECUTOR --> WORKFLOW --> TOOLS --> LLM --> MEMORY
%% Feedback loop
MEMORY --> CONTEXT
%% Visibility (important fix)
EXECUTOR --> UI
Every user request passes through three stages:
| Tier | Name | Persistence | Purpose |
|---|---|---|---|
| 1 | Core | CORE.md | Identity, rules, personality |
| 2 | Episodic | Daily log files | What happened today/yesterday |
| 3 | Semantic | Knowledge graph + SQLite | Customers, products, facts, relations |
| 4 | Procedural | Markdown + frontmatter | Learned skills and workflows |
| 5 | Working | RAM (volatile) | Active session context |
| 6 | Tactical | SQLite | Active goals, pending actions, rollback |
Memory search uses a 4-channel hybrid approach: BM25 (full-text search with FTS5, optimized for German compound words) + Vector Search (Ollama embeddings, cosine similarity) + Graph Traversal (entity relations) + Hierarchical Document Reasoning (tree-based section navigation for long documents). Score fusion with configurable weights and recency decay.
In addition to the 6-tier memory, Cognithor includes an Obsidian-compatible Knowledge Vault (~/.cognithor/vault/) for persistent, human-readable notes:
recherchen/, meetings/, wissen/, projekte/, daily/[[backlinks]]vault_save, vault_search, vault_list, vault_read, vault_update, vault_linkAfter completed sessions, the Reflector evaluates results, extracts facts for semantic memory, and identifies repeatable patterns as procedure candidates. Learned procedures are automatically suggested for future similar requests.
User Goal → CUTaskDecomposer → Sub-Tasks
→ UIA (exact coords) / Vision (fallback)
→ 3-Layer Tool Enforcement
→ Adaptive Wait → Next Iteration
Cognithor can control your desktop like a human: take screenshots, analyze them with a vision model, click at pixel coordinates, type text, scroll, and drag. Phase 3 adds Windows UI Automation via pywinauto, which reads the OS accessibility tree to get exact element coordinates without relying on vision alone. A 3-layer security model (allowlist + gatekeeper + tool enforcer) ensures destructive operations require explicit approval.
docs/adr/0001-pge-trinity-vs-group-chat.md
— Why Cognithor uses Planner/Gatekeeper/Executor instead of conversational
GroupChat patterns.docs/competitive-analysis/ —
Cognithor vs AutoGen, Microsoft Agent Framework, LangGraph, CrewAI.Cognithor auto-detects your backend from API keys. Set one key and models are configured automatically:
| Provider | Backend Type | Config Key | Models (Planner / Executor) |
|---|---|---|---|
| Ollama (local) | ollama | (none needed) | qwen3:32b / qwen3:8b |
| LM Studio (local) | lmstudio | (none needed) | (your loaded models) |
| vLLM (local, NVIDIA GPU) | vllm | (none needed) | qwen3.6:27b NVFP4 (RTX 5090 / 32 GB VRAM target) |
| llama-cpp-python (local) | llama_cpp | llama_cpp_base_url | (GGUF model loaded by llama.cpp server) |
| OpenAI | openai | openai_api_key | gpt-5.2 / gpt-5-mini |
| Anthropic | anthropic | anthropic_api_key | claude-opus-4-6 / claude-haiku-4-5 |
| Google Gemini | gemini | gemini_api_key | gemini-2.5-pro / gemini-2.5-flash |
| Groq | groq | groq_api_key | llama-4-maverick / llama-3.1-8b-instant |
| DeepSeek | deepseek | deepseek_api_key | deepseek-chat (V3.2) |
| Mistral | mistral | mistral_api_key | mistral-large-latest / mistral-small-latest |
| Together AI | together | together_api_key | Llama-4-Maverick / Llama-4-Scout |
| OpenRouter | openrouter | openrouter_api_key | claude-opus-4.6 / gemini-2.5-flash |
| xAI (Grok) | xai | xai_api_key |
# ~/.cognithor/config.yaml — just set one key, everything else is auto-configured
gemini_api_key: "AIza..."
# That's it. Backend, models, and operation mode are auto-detected.
# Or use LM Studio (local, no API key needed):
llm_backend_type: "lmstudio"
# lmstudio_base_url: "http://localhost:1234/v1" # default
| Channel | Protocol | Features |
|---|---|---|
| CLI | Terminal REPL | Rich formatting, streaming, /commands, status feedback |
| Web UI | WebSocket | Real-time streaming, voice recording, file upload, dark theme, status events |
| REST API | FastAPI + SSE | Programmatic access, server-sent events |
| Telegram | Bot API (poll + webhook) | Text, voice messages (Whisper STT), photos, documents, webhook mode (<100ms), typing indicator |
| Discord | Gateway + REST | Embeds, reactions, thread support, typing indicator |
| Slack | Socket Mode | Block Kit, interactive buttons, thread support |
| Meta Cloud API | Text, media, location, contacts | |
| Signal | signal-cli bridge | Encrypted messaging, attachments |
| iMessage | PyObjC (macOS) | Native macOS integration |
| Microsoft Teams | Bot Framework v4 | Adaptive cards, approvals |
| Matrix | matrix-nio | Federated, encrypted rooms |
| Google Chat | Chat API | Workspace integration |
| Mattermost | REST API | Self-hosted team chat |
| Feishu/Lark | Bot API | ByteDance enterprise messaging |
| IRC | IRC protocol | Classic internet relay chat |
| Twitch | TwitchIO | Live stream chat integration |
| Voice | Whisper + Piper + ElevenLabs | STT, TTS, wake word (Levenshtein), Konversationsmodus, Piper TTS (Thorsten Emotional) |
Under 5 minutes from download to running agent.
CognithorSetup-{version}.exe from the latest releasehttp://localhost:8741The installer auto-detects your GPU, downloads the right models, and runs a health check. No prerequisites needed.
# Clone
git clone https://github.com/Alex8791-cyber/cognithor.git
cd cognithor
# Linux/macOS: Interactive installer (venv, Ollama, models, systemd)
chmod +x install.sh && ./install.sh
# Windows (from source): Double-click install.bat
# Or manual: pip install
pip install -e ".[all,dev]"
pip install cognithor # Core only: PGE, CLI, Ollama
pip install cognithor[telegram] # + Telegram channel
pip install cognithor[web] # + Web UI (Flutter Command Center)
pip install cognithor[all] # Everything (large install)
ollama pull qwen3:8b # Pull a model
cognithor # Start
# Upgrade to a specific version:
pip install cognithor[all]==0.99.0
# Upgrade to latest:
pip install --upgrade cognithor[all]
ollama pull qwen3:32b # Planner (20 GB VRAM)
ollama pull qwen3:8b # Executor (6 GB VRAM)
ollama pull qwen3-embedding:0.6b # Embeddings (500 MB VRAM)
No GPU? Use qwen3:8b for both, or set a cloud API key — models are auto-configured.
Uninstall: Windows: run
uninstall.bat. Linux:./install.sh --uninstall. PyPI:pip uninstall cognithor.
Option A: One-Click (Windows) — includes a pre-built Web UI, no Node.js needed
Double-click start_cognithor.bat -> Browser opens -> Click "Power On" -> Done.
The launcher auto-installs Python and Ollama via winget if missing. Node.js is only needed for UI development (
npm run dev).
Option B: CLI
cognithor # Interactive CLI
python -m cognithor # Same thing (always works, no PATH needed)
python -m cognithor --lite # Lite mode: qwen3:8b only (6 GB VRAM)
python -m cognithor --no-cli # Headless mode (API only)
COGNITHOR_HOME=~/my-cognithor cognithor # Custom home directory
Windows: If
cognithoris not recognized afterpip install, usepython -m cognithorinstead — this always works regardless of PATH configuration. Alternatively, add Python'sScriptsdirectory to your PATH (typically%APPDATA%\Python\PythonXY\Scriptsor theScriptsfolder inside your venv).
Option C: Flutter Command Center (Development)
cd flutter_app
flutter pub get
flutter run # Desktop, or:
flutter run -d chrome # Web
The Flutter Command Center connects to the Python backend on port 8741. Start the backend first (python -m cognithor --no-cli), then launch the Flutter app. The Chat page opens as the default start page — start talking to Cognithor immediately, or activate Voice Mode for hands-free conversation. The Sci-Fi aesthetic features dark translucent panels, neon accents, and GEPA pipeline visualization.
All configuration — agents, prompts, cron jobs, MCP servers, A2A settings — can be edited and saved through the dashboard. Changes persist to YAML files under ~/.cognithor/.
Legacy React UI (deprecated): The old React + Vite UI in
ui/is deprecated and will be removed in a future release. Use the Flutter Command Center instead.
Windows users: A desktop shortcut named Cognithor is included for convenience.
Channels start automatically when their tokens are found in ~/.cognithor/.env:
# ~/.cognithor/.env — just add your tokens, channels activate automatically
COGNITHOR_TELEGRAM_TOKEN=your-bot-token
COGNITHOR_TELEGRAM_ALLOWED_USERS=123456789
COGNITHOR_DISCORD_TOKEN=your-discord-token
COGNITHOR_SLACK_TOKEN=xoxb-your-slack-token
No need to set telegram_enabled: true in the config — the presence of the token is sufficient.
~/.cognithor/
├── config.yaml # User configuration
├── CORE.md # Identity and rules
├── memory/
│ ├── episodes/ # Daily log files
│ ├── knowledge/ # Knowledge graph files
│ ├── procedures/ # Learned skills
│ └── sessions/ # Session snapshots
├── vault/ # Knowledge Vault (Obsidian-compatible)
│ ├── recherchen/ # Web research results
│ ├── meetings/ # Meeting notes
│ ├── wissen/ # Knowledge articles
│ ├── projekte/ # Project notes
│ ├── daily/ # Daily notes
│ └── _index.json # Quick lookup index
├── index/
│ └── cognithor.db # SQLite index (FTS5 + vectors + entities)
├── hierarchical/
│ └── trees.db # Hierarchical document trees (SQLite)
├── cag/
│ └── cache.db # CAG prefix cache (SQLite)
├── mcp/
│ └── config.yaml # MCP server configuration
├── queue/
│ └── messages.db # Durable message queue (SQLite)
└── logs/
└── cognithor.log # Structured logs (JSON)
Once Cognithor is running, you can use these slash commands in the chat:
| Command | Description |
|---|---|
/help | Show available commands |
/status | Show system status |
/version | Show version |
/config | Open interactive config editor |
/ui | Open web UI in browser |
/clear | Clear screen |
/quit | Exit Cognithor |
| Flag | Description |
|---|---|
cognithor | Start with CLI chat |
cognithor --ui | Start headless + auto-open browser |
cognithor --no-cli | Headless backend only |
cognithor config | Open config editor (one-shot) |
cognithor config set KEY VAL | Set a config value |
cognithor --lite | Lite mode (6GB VRAM) |
cognithor --log-level DEBUG | Verbose logging |
Cognithor is configured via ~/.cognithor/config.yaml. All values can be overridden with environment variables using the COGNITHOR_ prefix (JARVIS_* still accepted as legacy alias).
# Example: ~/.cognithor/config.yaml
owner_name: "Alex"
language: "de" # "de" (German, default) or "en" (English)
# LLM Backend — set a key, backend is auto-detected
# openai_api_key: "sk-..."
# anthropic_api_key: "sk-ant-..."
# gemini_api_key: "AIza..."
# groq_api_key: "gsk_..."
# xai_api_key: "xai-..."
# Or: llm_backend_type: "lmstudio" # Local, no key needed
ollama:
base_url: "http://localhost:11434"
timeout_seconds: 120
web:
# Search providers (all optional, fallback chain: SearXNG -> Brave -> Google CSE -> DDG)
# searxng_url: "http://localhost:8888"
# brave_api_key: "BSA..."
# google_cse_api_key: "AIza..."
# google_cse_cx: "a1b2c3..."
# jina_api_key: "" # Optional, free tier works without key
# domain_blocklist: [] # Blocked domains
# domain_allowlist: [] # If set, ONLY these domains allowed
vault:
enabled: true
path: "~/.cognithor/vault"
# auto_save_research: false # Auto-save web research results
channels:
cli_enabled: true
# Channels auto-detect from tokens in ~/.cognithor/.env
# Set to false only to explicitly disable a channel:
# telegram_enabled: false
security:
allowed_paths:
- "~/.cognithor"
- "~/Documents"
# Personality
personality:
warmth: 0.7 # 0.0 = sachlich, 1.0 = sehr warm
humor: 0.3 # 0.0 = kein Humor, 1.0 = viel Humor
greeting_enabled: true # Tageszeit-Grüße
follow_up_questions: true # Rückfragen anbieten
success_celebration: true # Erfolge feiern
# Scaling
distributed_lock:
backend: "file" # "redis" or "file"
# redis_url: "redis://localhost:6379/0"
message_queue:
enabled: true
# max_retries: 3
# dlq_enabled: true
telemetry:
prometheus_enabled: true
# metrics_port: 9090
Cognithor implements multi-layered security (not independently audited):
| Feature | Description |
|---|---|
| Gatekeeper | Deterministic policy engine (no LLM). 4 risk levels: GREEN (auto) -> YELLOW (inform) -> ORANGE (approve) -> RED (block) |
| Sandbox | 4 isolation levels: Process -> Linux Namespaces (nsjail) -> Docker -> Windows Job Objects |
| Audit Trail | Append-only JSONL with SHA-256 chain. Tamper-evident. Credentials masked before logging |
| Credential Vault | Fernet-encrypted, per-agent secret storage |
| Runtime Token Encryption | All channel tokens (Telegram, Discord, Slack, ...) encrypted in memory with ephemeral Fernet keys (AES-256). Never stored as plaintext in RAM |
| TLS Support | Optional SSL/TLS for all webhook servers (Teams, WhatsApp, API, WebUI). Minimum TLS 1.2 enforced. Warning logged for non-localhost without TLS |
| File-Size Limits | Upload/processing limits on all paths: 50 MB documents, 100 MB audio, 1 MB code execution, 50 MB WebUI uploads |
| Session Persistence | Channel-to-session mappings stored in SQLite (WAL mode). Survives restarts — no lost Telegram/Discord sessions |
| Input Sanitization | Injection protection for shell commands and file paths |
| Sub-Agent Depth Guard | Configurable max_sub_agent_depth (default 3) prevents infinite handle_message() recursion |
| SSRF Protection | Private IP blocking for http_request and web_fetch tools |
| EU AI Act | Compliance module, impact assessments, transparency reports |
| Red-Teaming | Automated offensive security tests (1,425 LOC) |
Cognithor implements GDPR compliance at the architecture level with full coverage of all user rights:
PATCH /api/v1/user/data for entities, preferences, vault notes.DELETE /api/v1/user/data with 7 erasure handlers covering all data tiers including vault notes.cognithor_portable + POST /api/v1/user/data/import.Since v0.97.0, every audit-relevant decision the agent makes is captured as a
structured, queryable, signed receipt rather than a free-form log string. The
canonical reference is docs/operational_trust.md.
cognithor receipt show <run_id> --include-trust --sign-key $KEY # full bundle
cognithor receipt verify path/to/bundle.json --sign-key $KEY # round-trip check
cognithor receipt list --since 2026-05-01 # enumerate run-ids
cognithor receipt export-all --since 2026-05-01 --out ./bundles/ # batch export
cognithor receipt diff bundle-A.json bundle-B.json # structural diff
The same bundle is also reachable via REST (owner-token gated):
curl -H "X-Cognithor-User: $COGNITHOR_OWNER_USER_ID" \
"http://localhost:8741/api/crew/trace/<trace_id>/receipt?include_trust=true"
| Tier | Module | What it captures |
|---|---|---|
| TRUST-1 | cognithor.audit.AuditLogger.run_receipt() | Deterministic per-run JSON bundle; optional HMAC-SHA-256 signature |
| TRUST-2 | DecisionExplanation (in core/gatekeeper.py) | rule_id, rule_source, matched_pattern for every block decision (12 sites) |
| TRUST-3 | FailureMode (15 values) + failure_mode_summary() | Canonical taxonomy across runs |
| TRUST-4 | cognithor pack rollback | Restores a pack to a prior cached version; seals into audit chain |
| TRUST-5 | cognithor.memory.provenance.ProvenanceLedger | 9 memory-tier capture sites; source_type + source_id + expiry_policy |
| TRUST-6 | cognithor.security.permission_scope.ScopeRegistry | Least-privilege per axis (filesystem / network / llm / tool) |
| TRUST-7 | cognithor.security.fingerprint.FingerprintLedger | 4 of 5 kinds: TOOL, PACK, MODEL, SCHEMA (BINARY feature-flagged) |
| TRUST-8 | cognithor.security.cloud_escalation | Metadata-only: ledger never stores prompt or response payloads |
| TRUST-9 | cognithor.security.cost_ledger.CostEntry | Integer micro-USD canonical unit (no float rounding drift) |
| TRUST-10 | cognithor.security.migration_ledger | Per-domain chain integrity; corruption in one domain doesn't poison others |
All six TRUST-5..10 ledgers are append-only frozen-dataclass + StrEnum +
JSON-serialisable. Capture is best-effort (contextlib.suppress(Exception)),
so a ledger fault cannot brick the calling tier. The composer
cognithor.security.trust_bundle.build_trust_bundle(run_id) folds all six
into a single canonical block under bundle["trust"].
Status: in-memory persistence only this release. Disk persistence (SQLCipher) + retention windows + TRUST-7
BINARYcapture + TRUST-8 backend-dispatch wiring + a FlutterTrustBundlePanelship in 0.98.x. See Sprint-27 IDE-Integration plan for the consuming-extension roadmap.
The community-skill marketplace uses a self-managed Ed25519 + TUF-Light signing scheme — no third-party witness, no Sigstore dependency, EU- sovereign by design.
root.json, which delegates to a rotating
online Targets key. root.json carries a monotonic version and
a valid_until window so a stale-replay attacker cannot freeze a
recall mid-flight.root.json, signed by the offline Root. Clients pick it up on
next sync.--accept-unsigned-registry runtime flag (would be a downgrade
vector). REQUIRE_SIGNED_REGISTRY is a build-time constant.| Doc | Purpose |
|---|---|
docs/superpowers/specs/2026-05-05-pack4-registry-signing.md | Full spec |
SECURITY.md | Threat-model summary |
docs/runbooks/registry_key_rotation.md | Operator runbook |
scripts/registry_signing/ | CLI tooling |
| Tool Server | Tools | Description |
|---|---|---|
| Filesystem | read, write, edit, list, delete | Path-sandboxed file operations |
| Shell | exec_command | Sandboxed command execution with timeout |
| Memory | search, save, get_entity, add_entity, ... | 10 memory tools across all 6 tiers |
| Web | web_search, web_fetch, search_and_read, web_news_search, http_request | 4-provider search (SearXNG -> Brave -> Google CSE -> DDG), Jina Reader fallback, domain filtering, cross-check, full HTTP method support (POST/PUT/PATCH/DELETE) |
| Browser | navigate, screenshot, click, fill_form, execute_js, get_page_content | Playwright-based browser automation |
| Media | transcribe_audio, analyze_image, extract_text, analyze_document, convert_audio, resize_image, tts, document_export | Multimodal pipeline + LLM-powered document analysis (all local) |
| Vault | vault_save, vault_search, vault_list, vault_read, vault_update, vault_link | Obsidian-compatible Knowledge Vault with frontmatter, tags, backlinks |
| Synthesis | knowledge_synthesize, knowledge_contradictions, knowledge_timeline, knowledge_gaps | Meta-analysis across Memory + Vault + Web with LLM fusion, confidence scoring, fact-checking |
# All tests
make test
# With coverage report
make test-cov
# Specific areas
python -m pytest tests/test_core/ -v
python -m pytest tests/test_memory/ -v
python -m pytest tests/test_channels/ -v
Current status: 17,000+ test functions · 100% pass rate on main · 89% coverage gate · ~257,000 LOC Python source · ~224,000 LOC Python tests · ~66,000 LOC Flutter (Dart)
Test breakdown counts below are historical snapshots and may lag behind the live tree — pytest --collect-only -q tests/ | tail -5 is the authoritative figure.
Notable test suites: 183 Computer Use tests, 176 ARC tests, 136 Hierarchical Retrieval tests, 71 CAG tests.
| Area | Tests | Description |
|---|---|---|
| Core | 1,893 | Planner, Gatekeeper, Executor, Config, Models, Reflector, Distributed Lock, Model Router, DAG Engine, Delegation, Collaboration, Agent SDK, Workers, Personality, Sentiment |
| Integration | 1,314 | End-to-end tests, phase wiring, entrypoint, A2A protocol |
| Channels | 1,360 | CLI, Telegram (incl. Webhook), Discord, Slack, WhatsApp, API, WebUI, Voice, iMessage, Signal, Teams |
| MCP | 825 | Client, filesystem, shell, memory server, web, media, synthesis, vault, browser, bridge, resources |
| Memory | 658 | All 6 tiers, indexer, hybrid search, chunker, watcher, token estimation, integrity, hygiene |
| Skills | 534 | Skill registry, generator, marketplace, persistence, API, CLI tools, scaffolder, linter, BaseSkill, remote registry |
| Security | 469 | Audit, credentials, token store, TLS, policies, sandbox, sanitizer, agent vault, resource limits, GDPR |
| Gateway | 252 | Session management, agent loop, context pipeline, phase init, approval flow |
| A2A | 158 | Agent-to-Agent protocol, client, HTTP handler, streaming |
| Telemetry | 175 | Cost tracking, metrics, tracing, Prometheus export, instrumentation, recorder, replay |
| Other | 247 | HITL, governance, learning, proactive, config manager |
| Tools | 103 | Refactoring agent, code analyzer, skill CLI developer tools |
| Utils | 126 | Logging, helper functions, error messages, installer |
| Cron | 63 | Engine, job store, scheduling |
| UI API | 55 | Command Center endpoints (config, agents, prompts, cron, MCP, A2A) |
Caution: Cognithor is Beta software. Test thoroughly in your environment before relying on it for important workflows. Back up your data regularly. See Status & Maturity.
Double-click start_cognithor.bat -> browser opens -> click Power On -> done.
docker compose up -d # Core backend
docker compose --profile webui up -d # + Web UI
cp .env.example .env # Edit: set COGNITHOR_API_TOKEN, etc.
docker compose -f docker-compose.prod.yml up -d
# With optional services
docker compose -f docker-compose.prod.yml --profile postgres up -d # + PostgreSQL
docker compose -f docker-compose.prod.yml --profile nginx up -d # + Nginx TLS
docker compose -f docker-compose.prod.yml --profile monitoring up -d # + Prometheus + Grafana
Services: Cognithor (headless) + WebUI + Ollama + optional PostgreSQL (pgvector) + optional Nginx reverse proxy + optional Prometheus/Grafana monitoring. GPU support via nvidia-container-toolkit (uncomment in compose file).
sudo bash deploy/install-server.sh --domain cognithor.example.com --email [email protected]
# Or with self-signed cert:
sudo bash deploy/install-server.sh --domain test.local --self-signed
Installs to /opt/cognithor/, data in /var/lib/cognithor/, systemd services cognithor + cognithor-webui.
./install.sh --systemd
systemctl --user enable --now cognithor
journalctl --user -u cognithor -f # Logs
curl http://localhost:8741/api/v1/health # Command Center API
curl http://localhost:8080/api/v1/health # WebUI (standalone)
curl http://localhost:9090/metrics # Prometheus metrics
./scripts/backup.sh # Create backup
./scripts/backup.sh --list # List backups
./scripts/backup.sh --restore latest # Restore
See deploy/README.md for full deployment documentation (Docker profiles, TLS, Nginx/Caddy, bare-metal install, monitoring, troubleshooting).
Cognithor ships with a JSON-based i18n language pack system (since v0.33.0). The default language is English, switchable via the Flutter Command Center or config.yaml.
from cognithor.i18n import t, set_locale
set_locale("en") # or "de"
print(t("error.timeout")) # "The operation timed out..."
src/cognithor/i18n/locales/ (e.g., en.json, de.json){"error": {"timeout": "..."}} → t("error.timeout").sha256 sidecar files for community pack verificationset_locale() is thread-safelanguage: en in ~/.cognithor/config.yamlCOGNITHOR_LANGUAGE=en| Area | i18n Status | Notes |
|---|---|---|
| Error messages | Fully i18n | utils/error_messages.py uses t() |
| Tool names | Fully i18n | All 20 MCP tools have translated names |
| Personality / Greetings | Fully i18n | Greetings, empathy, success messages |
| System prompts (Planner) | i18n keys | Prompt templates in language packs |
| Flutter Command Center | Partial | Config labels still hardcoded (planned) |
| Log messages | English only | structlog keys are not translated |
src/cognithor/i18n/locales/en.json to <locale>.json (e.g., zh.json, fr.json)python -c "from cognithor.i18n import generate_pack_hash; generate_pack_hash('<locale>')"Metrics: ~257,000 LOC Python source · ~224,000 LOC Python tests · ~66,000 LOC Flutter (Dart) · 17,000+ test functions · 89% coverage gate · 0 lint errors · Status: Beta
| Contributor | Role | Focus |
|---|---|---|
| @Alex8791-cyber | Creator & Maintainer | Architecture, Core Development |
| @TomiWebPro | Core Contributor & QA Lead | Real world Deployment & Marketing & Testing |
@TomiWebPro — Now a core member of the development team and Head of Marketing. Helped with early testing and debugging, contributed security suggestions, and supports community Q&A.
u/D4rk4 — Provided valuable feedback about non-solidified features between releases. Highlighted the need for more stable, well tested releases.
Apache 2.0 — see LICENSE
Copyright 2026 Alexander Soellner
A single-feature release: the Cognithor Resilient Workflow Engine (CRWE) — a transactional batch task runner with crash-recovery, signal-safety, and audit-chain integration. PR #499 — ~1,030 LOC core + 885 LOC tests, 28 tests (26 pass + 2 POSIX-only-skipped on Windows), crash-recovery integration test PASSES on Windows under SIGKILL.
cognithor task <manifest.jsonl> — new CLI subcommand for batch
task execution. Streams JSONL line-by-line (no full-file load), per-task
fsync() on results.jsonl (max 1 task lost on power-fail), modulo-N
atomic .checkpoint.json writes for fast resume.--resume — picks up where it left off. Validates manifest sha256
(gap-injection detection), results sha256, line count, schema version.
Mismatch raises explicit error with observed + expected hashes — never
silent corruption..checkpoint.lock (POSIX fcntl.flock / Windows
msvcrt.locking); second runner raises WorkflowAlreadyRunning(pid)
instead of fighting over results.jsonl.SIGINT/SIGTERM flag-and-finish: in-flight task
completes cleanly, then emergency-checkpoint, then exit. Async-
cancellation-safe.system_checkpoint_created and
workflow_resumed events route via AuditLogger.log_system,
hash-chained per SEC-HIGH-5. Closes the gap-injection attack vector:
operator can prove cryptographically that no results.jsonl tampering
happened while the workflow was offline.--checkpoint-every N (default 12), --workflow-id
override, --handler MODULE:FUNCTION for both sync and async handlers,
auto-workflow_id from {manifest_stem}_{sha8}_{YYYYMMDD} so re-runs
resume deterministically.A four-PR audit-completeness suite plus a nightly regression-protection workflow, riding on top of 12 test-coverage PRs that closed long-standing gaps. Builds on v0.97.0 "Operational Trust" by transforming the reflective learning path of the agent from "best-effort prose into a free-form log" into "every autonomous memory write produces a structured, hash-chained, encrypted-at-rest audit event". 5 PRs (#494, #496, #495, #497, #498) + 12 test-coverage PRs (~545 new tests), 0 regressions, mypy --strict + ruff clean.
AuditCategory.REFLECTION
AuditLogger.log_reflection_event(...) domain channel. Helper computes
NFC-normalised SHA-256 over canonical-JSON payloads.
CausalAnalyzer.record_sequence is now atomic-with-audit-emit via
with conn: — no DB INSERT lands without its audit event. (#494).fernet files (content-addressed by
SHA-256) + plaintext .meta.json sidecars at
~/.cognithor/weight_snapshots/. Closes the inference-side-channel.
Hardcoded channel_contributions workaround replaced by real per-channel
shares from MemorySearchResult scores. (#496)_write_episodic, _write_semantic, _write_procedural) emit
REFLECTION events. procedure_auto_created includes
learned_text_sha256 provenance hash — every auto-created procedure
is cryptographically tied to its source session (closes the
"Geister-Prozeduren" gap for regulators). MIGRATION_LEDGER advances
to v2-reflection-completeness. (#497)$RUNNER_TEMP/cognithor-burnin/, fails on any RED
metric verdict (storage / audit-emit / atomic-rollback). (#498)A reviewer-feedback-driven release that closes Cognithor's "post-mortem reconstruction" gap. Every audit-relevant decision the agent makes is now captured as a structured, queryable, signed receipt — not a free-form log string. 42 PRs (#395–#437), ~10,500 LOC, ~330 new tests, 0 regressions, mypy --strict + ruff clean across the new surface.
The canonical reference for the stack is docs/operational_trust.md.
AuditLogger.run_receipt(run_id, *, include_trust, signing_key)
aggregates every audit entry for a run into a deterministic JSON bundle
with optional HMAC-SHA-256 signature. Five new CLI subcommands
(cognithor receipt show / verify / list / export-all / diff) and a
REST endpoint GET /api/crew/trace/{trace_id}/receipt?include_trust=true
give operators a single front door for post-mortems.DecisionExplanation (rule_id, rule_source,
matched_pattern) so downstream tools can render a precise "why we said no"
instead of parsing prose.FailureMode StrEnum with 15 canonical
values; aggregated per-run via AuditLogger.failure_mode_summary(run_id).cognithor pack rollback <id> [--to-version VER]
restores a pack to a prior version and seals the rollback into the audit chain.build_trust_bundle(run_id) folds all six into a single receipt block.docs/superpowers/plans/2026-05-04-sprint27-ide-integration.md)
— forward-looking VS-Code / JetBrains / Cursor extension plan that
consumes the new receipt API.Disk persistence of the TRUST ledgers (SQLCipher), TRUST-7
BINARY-kind capture, and TRUST-8 backend-dispatch wiring are scaffolded but ship in 0.98.x — the CLI + REST surfaces above are the supported entry points today.
cognithor_bench/arc_agi3 corpus (20 tasks: train + held-out + hard).
Up from 75 % in v0.95.0. Reproduce with:
python -m cognithor.channels.program_synthesis.synthesis.arc_baseline_runner --subset hardtile_3x, remove_singletons,
count_components, recolor_by_component_size, unique_colors_diagonal.WiredPhase2Engine glues Phase-1 EnumerativeSearch
with the Sprint-1 Refiner pipeline. New CLI flags --phase2 --arc-corpus PATH --arc-subset NAME for A/B benchmarking.test_tls_config.py no longer uses openssl subprocess (eliminates 11
occasional Win-py3.12 failures in 16k-test full-repo runs).cognithor.crew.trace_bus.TraceBus — in-process pub/sub hooked into
compiler.append_audit(); broadcasts crew lifecycle + per-trace events to
WebSocket subscribers without changing the Hashline-Guard JSONL persistence./api/crew/traces, /trace/{id}, /trace/{id}/stats — read
the existing audit chain for replay + history. Corruption-tolerant; surfaces
skipped-line counts via meta.crew_lifecycle_subscribe / crew_subscribe /
crew_unsubscribe for live event streaming. Disconnect auto-cleans.cognithor.compat.autogen.AssistantAgent.run()
routes through cognithor.crew.Crew so AutoGen-shim runs surface in Trace-UI.cognithor.security.owner.require_owner reads
COGNITHOR_OWNER_USER_ID env (fallback: pyproject.toml author name).cognithor.compat.autogen — source-compat shim for autogen-agentchat==0.7.5.
Search-and-replace migration path for AutoGen-AgentChat code onto Cognithor's
PGE-Trinity. See migration guide.cognithor_bench/ — reproducible Multi-Agent benchmark scaffold with
cognithor-bench run|tabulate console tool and Cognithor / AutoGen adapters.examples/insurance-agent-pack/ — standalone-installable DACH insurance
pre-advisory reference pack with visible ComplianceGatekeeper PGE-demo.docs/competitive-analysis/..mp4/.webm/.mov/.mkv/.avi URL. Adaptive frame sampling via ffprobe (short clips: fps=3, long clips: num_frames=32), 500 MB per-file cap + 5 GB quota with LRU eviction, session-lifetime + 24 h TTL cleanup, no silent fallback to Ollama (Ollama has no vision). Windows installer now bundles LGPL ffmpeg + CI verifies the GPL-free build. See docs/vllm-user-guide.md.cu130-nightly — the tagged v0.19.1 crashes Qwen3.6-27B-NVFP4 at warmup on SM120 (Blackwell / RTX 50xx). The nightly ships the FlashInferCutlassNvFp4LinearKernel fix. Day-1 spike findings at docs/superpowers/spikes/2026-04-23-video-input-vllm-spike-findings.md.backends_api and Gateway now share a single VLLMOrchestrator instance via app.state, so media_url wired after the media server starts actually reaches the docker run command.Cognithor.exe (the .NET tray app) no longer vanishes silently on startup. All exceptions in the AppShell constructor are now caught, logged to %LOCALAPPDATA%\Cognithor\launcher-crash.log, and shown via MessageBox. Previously a missing python\python.exe (e.g. AV quarantine) would throw FileNotFoundException before Application.Run() started the message loop, making the process disappear from Task Manager with no trace.Cognithor.exe and the installer-generated cognithor.bat now resolve Python in this order: (1) bundled <install>\python\python.exe, (2) python/py on PATH, (3) well-known install paths (%LOCALAPPDATA%\Programs\Python\Python313|312, %ProgramFiles%\Python313|312, C:\Python313|312). Users who installed Python without ticking "Add to PATH" (the default since Python 3.9) are no longer broken.Mutex in Program.cs is no longer scoped with using, which previously disposed it at first return and defeated the guard. Now released explicitly in finally.ProcessManager.StartPython no longer throws when Python is missing. Instead it sets PythonMissing = true, and the tray icon shows "Backend not installed" with a balloon tip explaining what's wrong.flutter_app/assets/logo.png and assets/cognithor_logo.png were 1536×1024 non-square and got cropped in every UI that used BoxFit.cover. Regenerated as 1024×1024 square from Icon-512.png. cognithor_banner.png rebuilt as 1920×640 dark-theme banner with the logo centered. cognithor-logo.png bumped from 52×52 to 192×192 (PWA standard).index.html branding — replaced leftover jarvis_ui title + apple-touch-title and the default "A new Flutter project." description with real Cognithor branding.generate_release_notes: true. The old setup prepended a fresh **Full Changelog**: ... line on every workflow re-run; append_body: false now guarantees idempotent re-runs.zh.json JSON syntax error (unescaped ASCII quotes inside Chinese text, line 458-460) — Chinese locale silently fell back to English until now. Fixed with 「」 corner brackets.test_enhanced_integration.py passed jarvis_dir= (unknown field, silently ignored by Pydantic), causing MemoryManager to hit the real ~/.cognithor/db/ and fail with "database disk image is malformed". Now uses jarvis_home= + all 52 Config classes have model_config = ConfigDict(extra="forbid") so unknown kwargs fail loudly.@cognithor_tool(risk_level="green"|"yellow"|"orange"|"red") + PackManifest.tool_risks field. PackLoader pushes declared risks into mcp_client._tool_registry on load. Previously 15/18 pack tools defaulted to ORANGE (user approval required for read-only scans); now every pack tool gets its declared level.scripts job runs verify_all.py and smoke_test.py so these stop rotting outside CI. New flutter job runs dart analyze and flutter test. Lint job gains full ruff check + ruff format --check.PYTHONIOENCODING=utf-8 + PYTHONUTF8=1 added to start_cognithor.bat and install.bat. _DEFAULT_CORE_MEMORY template now ships real umlauts ("Identität") instead of ASCII fallback ("Identitaet").smoke_test.py cp1252-crash fixed (box-drawing + checkmark chars → ASCII [OK]/[WARN]/[FAIL]); live_smoke_test.py stdout UTF-8 + legacy jarvis.config import + list_models() API signature; verify_all.py completely rewritten for v0.92.x architecture (was checking deleted cognithor.social module and stale src/jarvis/ paths).app_zh.arb + app_ar.arb (connectionLost, actionApproved, errorWithDetail, …).ruff format --check now clean.cognithor.packs module: PackManifest (Pydantic v2), PackLoader (importlib isolation), PackInstaller (zip/URL + EULA click-through), CLI (cognithor pack install|list|remove|update|accept-eula). Packs live in ~/.cognithor/packs/ and register at startup.cognithor.leads replaces the old cognithor.social module. Source-agnostic LeadSource ABC, SourceRegistry, LeadService orchestrator, LeadStore with source_id column. Any pack can register a lead source — Reddit, HN, Discord, RSS, or future custom sources.cognithor-packs repo. Includes: Reddit scanner, 50 reply templates, Playwright auto-poster, style learner, subreddit discovery. Core retains zero Reddit-specific code.PackPreviewOverlay shows real pack UI greyed out with unlock CTA. LockedPackCard for free packs. SourcesProvider polls /api/v1/leads/sources. Leads tab gated on registered sources. Settings → Social shows Reddit config disabled with "Get this Pack" overlay when pack not installed./promise page: Core stays free forever, packs add but never subtract, zero telemetry. "This isn't marketing copy. It's a contract. If we ever break it, fork the repo."eula.md with SHA-256 pinned in manifest. Installer prompts click-through, persists acceptance. Loader rejects packs with hash mismatch or missing acceptance.src/cognithor/social/ DELETED — 15 Python files (~4000 LOC) extracted to agent packs. Gateway rewritten for source-agnostic LeadService. No backward compatibility shim remains.xml.etree, no new deps), configurable per-source in Flutter Settings → Social. Sidebar Leads tab gated on leads_engine_enabled — hidden when all sources disabled.install_language.txt marker from installer → bootstrap_windows.py reads before OS-locale fallback. first_run.py skips the language question when marker present.OLLAMA_HOST=0.0.0.0 no longer crashes httpx (#115). _normalize_ollama_url() helper accepts bare hosts, host:port, full URLs. Wired as default_factory + before validator on OllamaConfig.base_url.social_scan and social_leads MCP tools. Per-platform config: intervals, min scores, categories/channels. Flutter config UI with HN + Discord sections.TreeBuilder + NodeSelector (LLM-navigated) + TreeStore (SQLite). No embeddings required — structural understanding through heading hierarchy.PrefixBuilder (Ollama-compatible) + NativeLlamaCppBuilder, ContentNormalizer, CacheStore, hit-rate metrics. Hooks into Planner for automatic prefix injection.cognithor --config-tui. Dynamic model discovery from live LLM providers, section navigation, validation, rich formatting.ast.NodeVisitor guard (40 tests) + bashlex shell parser (48 tests) replace regex-based code analysis. Detects dangerous imports, subprocess calls, eval, network access at syntax tree level._safe_call() Pattern — Unified error handling replacing 79 silent except Exception: pass across codebase. Per-function failure registry, async variant, structured logging.jarvis → cognithor across 1,265 files (5,770 replacements). Both cognithor and jarvis entry points preserved for compatibility.install.bat + install.sh rewritten with GPU detection, model auto-pull, health checks, auto-upgrade system syncing source tree to installed version on every launch.ARC-AGI-3: 13/25 Games Solved (24 Levels) — SmartExplorer Breakthrough
Inspired by the 3rd-place ARC-AGI-3 Preview solution, the new SmartExplorer uses systematic state-action graph exploration to solve 7 previously unsolvable games in a single session.
smart_explorer.py): Tracks tested/untested actions per state, navigates to nearest frontier via BFS on known transitions, prunes no-effect actions, detects click targets via connected components. No ML — pure graph search with smart prioritizationvision_agent.py): Prototype for qwen3-vl guided step-by-step gameplayARC-AGI-3: 7/25 Games Solved — ClickSequenceSolver + KeyboardSolver — Three solver families covering click, keyboard, and mixed game types.
ARC-AGI-3: GameAnalyzer + Smart Solver — Fully automated game analysis and solving pipeline for click-based ARC-AGI-3 games.
game_analyzer.py): Sacrifices one level to learn game mechanics, 2 vision calls (qwen3-vl:32b) for strategy guidance, persistent GameProfile cacheper_game_solver.py): Budget-based strategy mix, smart elimination search with poison-cluster removalenv.reset() (0.5ms) replaces arcade.make() (380ms)Computer Use: Complete Desktop Automation Pipeline
ARC-AGI-3: Complete Redesign
Skill Lifecycle Fix
Bug Fixes
Document Powerhouse — Cognithor can now create, read, and manage all major document formats:
read_pdf, read_docx, read_ppt, read_xlsx (new), document_export, document_create (new), typst_render (new)template_list + template_render — fill Typst templates (Brief, Rechnung, Bericht) and compile to PDFSkill Lifecycle — Skills created by Cognithor are now immediately usable:
Tactical Memory (Tier 6) — Tool outcome tracking across sessions:
Autonomous Thinking Loop (ATL) — Cognithor now thinks proactively without user input:
learning_goals automatically.search_and_read with automatic parameter normalization.atl_status, atl_goals, atl_journalCAPTCHA Solver — Browser automation can now detect and solve CAPTCHAs:
navigator.webdriver=false, realistic user-agent, plugin spoofingbrowser_solve_captchaAACS Phase 1 — Capability Tokens — Cryptographic access control foundation:
log_only mode for gradual rollout (Phases 2-6 coming)Dead Path Fixes — Critical wiring issues found and fixed via deep audit:
Production Fixes:
SetProcessWorkingSetSize expands Windows memory quota; encrypted_connect() respects encryption_enabled config126 new tests (45 ATL + 45 CAPTCHA + 36 AACS), 125+ MCP tools (was 122).
ARC-AGI-3 Benchmark Integration — Cognithor can now compete in the ARC Prize 2026 ($2M+ prize pool). New src/cognithor/arc/ module with 14 files implements a hybrid agent (algorithmic exploration + optional LLM planning + optional CNN prediction) for interactive reasoning benchmarks.
arc_play, arc_status, arc_replay — playable from any Cognithor channelpython -m cognithor.arc --game ls20 [--mode benchmark|swarm]pip install cognithor[arc] or cognithor[arc-gpu]computer_click_element: Click UI elements by description (e.g., "Login button")computer_wait_for_change: Detect screen changes after actionsEncryption at Rest — Full Disk Clone Protection
Vault Dual-Backend
GDPR User Rights — 100% Coverage
122 MCP tools, 11,769+ total tests (was 11,779+). 12 bug fixes including SQLCipher compatibility, cron consent, and tool timeouts.
GDPR Compliance Layer
DELETE /api/v1/user/data deletes across all data tiers (memory, vault, sessions, episodes).GET /api/v1/user/data exports all personal data as JSON.OSINT / HIM Module
investigate_person, investigate_project, investigate_org.Evolution Engine — Stable
122 MCP tools (was 106), 11,769+ total tests.
Per-Agent Budget + Resource Monitor (Phase 3)
Checkpoint/Resume Engine (Phase 4)
Full Evolution Engine (Phases 1-4 complete)
Computer Use (GPT-5.4-style)
computer_screenshot, computer_click, computer_type, computer_hotkey, computer_scroll, computer_dragstart_cognithor.batDeep Research v2 (Perplexity-style)
VS Code Extension
POST /api/v1/chat/completions backend endpointAutonomous Coding
Autonomous Task Execution
deep_research or search_and_read for deeper analysis.SSH Remote Shell Backend
remote_exec, remote_list_hosts, remote_test_connection for executing commands on remote servers via SSH.Session Management
Flutter UI
Infrastructure
Sci-Fi Flutter Command Center
GEPA (Goal-Evaluate-Plan-Act)
Tool Expansion
World-Class Flutter UI
BackdropFilter frosted glass with gradient highlight edgesStaggeredList (cascading entrance, 50ms/item), AnimatedCounter (smooth number tweens), ShimmerLoading (gradient sweep skeleton), AnimatedIndexedStack (fade+slide page transitions)cardColor/dividerColor — light mode fully usablejarvis_theme.dart: entity colors, phase colors, code block colors, Hermes-style semi-transparent accents, Google Fonts Inter typographyComplete Learning System (Issue #36)
/api/v1/learning/* — stats, gaps, Q&A CRUD, lineage, explorationIssue #35 Bug Fixes
start_cognithor.bat and install.shCode Quality
ruff check src/cognithor/ — 0 errors (was 204)flutter analyze — 0 issuesFlutter Command Center — Full Feature Parity (React UI now deprecated)
Active Learning System (Issue #36)
/api/v1/learning/stats, /gaps, /gaps/{id}/dismiss, /confidence/history, /confidence/{id}/feedback, /queue, /exploreIssue #35 Bug Fixes
orchestrator (extended thinking, can spawn), worker (full MCP tool access), monitor (read-only). Default: worker for backward compatdirection field: remember (memory-write), act (execute task), notes (fire-and-forget log). Role-based send permissions~/.jarvis/checkpoints/). Sessions can be resumed from last checkpoint via cognithor_resumeContextWindow with time-weighted trimming. System messages and tool results are never trimmedasyncio.gather(). Write tools remain sequential. Per-tool timeout (30s default)TabContextBridge. Tab state persists through checkpointsjarvis.utils.platform module: get_platform_name(), get_user_data_dir(), get_max_concurrent_agents(), supports_curses()--bg3 for proper contrast in both light and dark themes (#26)prompt_presets.py (de/en/zh) instead of falling back to hardcoded German. Priority chain: Disk file -> i18n Preset -> Hardcoded (#33)ToolRegistryDB (#29)locked column on tools table + post-evolution validation rejects variants that remove {tools_section} (#29)list_remote_agents, delegate_to_remote_agent) let the Planner autonomously discover and delegate tasks to remote A2A agents. Auto-discovery via /.well-known/agent.jsonmax_memory_mb, max_cpu_seconds, and network_access now actually propagate to the execution sandbox (were previously ignored)max_iterations setting now scales coding task caps proportionally (80% for iteration cap, 30% for success threshold) instead of hardcoded limitsplugins.auto_update and marketplace.auto_update now trigger community registry sync at gateway startuptool(param: type *)) instead of bare namestimeout_seconds instead of hardcoded values. LLM timeout is now visible on the Executor page for all backendssend_json() calls in the WebSocket handler are now protected against disconnection errors via _ws_safe_send(). No more "Cannot call send" crashesread_pdf (PyMuPDF), read_ppt (python-pptx), read_docx (python-docx) with structured output, formatting, tables, images, metadatasecurity.mtls.enabled)Previous Releases
v0.29.1 — CI sandbox test fix, pysqlcipher3 dependency fix, encryption extras fix
v0.29.0 — QA fixes: UI wiggle, unsaved changes, keyboard shortcuts, token tracking, SQLite encryption
UI Stability — Layout wiggle fixed (scrollbar-gutter: stable), unsaved-changes false positives eliminated, keyboard shortcuts made sequential (Cmd+1..0)
Token Tracking — WorkingMemory.add_message() now updates token_count live (was always 0)
SQLite Encryption — Optional SQLCipher support with OS keyring key storage (pip install cognithor[encryption])
Speed field removed — Was a metadata-only field with no runtime effect; removed from Models UI
Previous Releases
--init-only hang fixAuditCategory.REFLECTION| Resilient Workflow Engine (CRWE) | Stable — cognithor task <manifest> with JSONL streaming, atomic checkpoint, file-lock, SIGINT/SIGTERM emergency-checkpoint between tasks, manifest-tamper detection on --resume, audit-chain integration. Crash-recovery integration test passes on Windows under SIGKILL (v0.99.0). |
| Pack Registry Signing | Beta — TUF-Light Ed25519 (offline Root + online Targets) + SHA-256 verifier; marketplace dormant by default until owner mints Root keypair |
| Video Composition & Rendering | Beta — cognithor.video package with pluggable RendererABC; default HyperFrames backend (Apache-2.0); 5 MCP tools (video_compose GREEN, video_render ORANGE, raw HTML RED at Gatekeeper); render-receipt linked to TRUST-1 via run_id; composer prompts + skill templates ship in cognithor.video.skills |
| Enterprise features (GDPR, A2A, Governance) | Stable — GDPR 100% user rights, consent management, SQLCipher encryption, audit trail |
| Encryption at Rest | Stable — SQLCipher (AES-256) for all databases, Fernet for files, OS Keyring key management |
| Cross-Platform Social Listening | Beta — Reddit + Hacker News + Discord scanning, LLM-scored leads, unified MCP tools |
| Hierarchical Document Reasoning | Beta — Tree-based retrieval for PDF/DOCX/HTML/Markdown, LLM-navigated section selection |
| CAG Layer (Cache-Augmented Generation) | Beta — Deterministic prefix generation for LLM KV-cache reuse, prefix + native builders |
| CLI Config TUI | Stable — Interactive terminal config editor (rich + prompt_toolkit), model discovery |
| AST-Based Security | Stable — Python AST + bashlex shell analysis replacing regex-based guards |
| OSINT / HIM Module | Beta — person/project/org investigation with trust scoring |
| Observer Audit Layer | Stable — post-response LLM quality check across 4 dimensions (hallucinations, sycophancy, laziness, tool-ignorance); triggers regeneration or full PGE re-loop; fails open |
.avivideo_urlnum_frames=32ffprobefast / balanced / premium) for video and image understanding. Heuristic classifier inspects the user's prompt and clip metadata, picks the right VLM (Qwen3-VL-8B-Instruct → Qwen3-VL-8B-Thinking → Qwen3.6-27B-NVFP4), exposes the routing decision via TRUST-2 (rule_id + matched_pattern) so a receipt reviewer can replay why a particular model was chosen. Override via with router.quality_scope("premium"): or config.vllm.quality_default. ContextVar-isolated for async safety. See src/cognithor/core/vlm_router.py.cognithor.video package ships a thin RendererABC abstraction with HyperFrames (Apache-2.0) as the default backend; future renderers (Remotion, cloud) can be swapped without touching the MCP-tool layer. Five MCP tools cover the workflow: video_compose (GREEN — pure-function, builds a self-contained HTML composition from a structured spec, no subprocess, no FS write), video_compose_explainer (16:9 title-card + body + CTA preset), video_compose_social_cut (vertical 9:16 hook + fast-cut beats + outro), video_caption_overlay (parallel caption track), and video_render (ORANGE — renders composition HTML to MP4 / MOV / WebM under ~/.cognithor/render/<run_id>/). Raw user-supplied HTML is RED at the Gatekeeper — only structured specs reach the renderer. Render output is linked to the agent run via the same run_id the streaming EventEmitter and TRUST-1 receipt API use, so every frame is provenance-attributable end-to-end. Composer prompts + reusable templates live in cognithor.video.skills (HF-5). VLM video-read can drive composition directly — see VLM-4 smoke at tests/test_video/.docs/integrations/catalog.json on every release.env — no manual config flags neededknowledge_synthesize (full synthesis with confidence ratings), knowledge_contradictions (fact-checking), knowledge_timeline (causal chains), knowledge_gaps (completeness score + research suggestions)start_cognithor.bat -> browser opens -> click Power On -> donearc/ module: hybrid agent (algorithmic + LLM + CNN), 3 MCP tools (arc_play, arc_status, arc_replay), CLI mode, swarm mode. pip install cognithor[arc]cognithor_bench/ package: own pyproject.toml, cognithor-bench CLI, Cognithor + AutoGen adapters@agent, @tool, @hook), project scaffoldingsocial_scan, social_leads), configurable per-platform intervals, auto-post opt-inast.NodeVisitor + bashlex shell parser replacing regex-based code analysis. Detects imports, subprocess calls, eval, network access, file operations at the syntax tree level_safe_call() Pattern — Unified error handling replacing silent except Exception: pass. Failure registry with per-function tracking, async variant, circuit-breaker integrationcognithor receipt show / verify / list / export-all / diff), structured Gatekeeper decision-explanations (rule_id + rule_source + matched_pattern), 15-value FailureMode taxonomy, pack rollback, six append-only ledgers (Provenance, Permission-Scopes, Tool-Fingerprints, Cloud-Escalation, Cost in micro-USD, Migration). REST: GET /api/crew/trace/{trace_id}/receipt. See Operational Trust and docs/operational_trust.mdcognithor task <manifest.json> runs declarative batch workflows with JSONL streaming, per-task flush() + os.fsync(), atomic modulo-N .checkpoint.json, .checkpoint.lock (POSIX fcntl.flock / Windows msvcrt.locking), SIGINT/SIGTERM emergency-checkpoint between tasks, manifest-tamper detection on --resume, and audit-chain integration (workflow_resumed / system_checkpoint_created events). Crash-recovery uses results.jsonl line count as source-of-truth.prev_hash over canonical NFC-normalized JSON. The Reflector ships through a dedicated AuditCategory.REFLECTION channel (Compliance-Spring v0.98.0) with nine event types covering causal sequences, weight snapshots, episodic appends, semantic facts, and procedure auto-creation — verifiable end-to-end with cognithor audit verify. Property-based Hypothesis tests + a nightly burn-in CI keep the chain intact.docs/runbooks/registry_key_rotation.md. Marketplace dormant by default until owner mints Root keypair.src/cognithor/mcp/ — see docs/integrations/catalog.json. DACH-specific: sevDesk REST connector (accounting).docs/competitive-analysis/ — Cognithor vs AutoGen / MAF / LangGraph / CrewAI.| grok-4-1-fast-reasoning / grok-4-1-fast |
| Cerebras | cerebras | cerebras_api_key | gpt-oss-120b / llama3.1-8b |
| GitHub Models | github | github_api_key | gpt-4.1 / gpt-4.1-mini |
| AWS Bedrock | bedrock | bedrock_api_key | claude-opus-4-6 / claude-haiku-4-5 |
| Hugging Face | huggingface | huggingface_api_key | Llama-3.3-70B / Llama-3.1-8B |
| Moonshot/Kimi | moonshot | moonshot_api_key | kimi-k2.5 / kimi-k2-turbo |
| Claude Code | claude-code | (uses Claude Code CLI) | (Claude Code model) |
subprocess.run(["flutter",...])shutil.which.batflutter build windowsstep_inno_setupjarvis_ui.exe fallback removed from ProcessManager.FindDesktopUi — the only accepted name is cognithor_ui.exe (v0.42.0 rename).