- Reset master to upstream/main (16,697 commits) - Overlay 2,271 local-only files (skills, tools, workspace, configs, apps) - Restore IDENTITY.md and USER.md templates - Build verified, gateway running, Discord working Co-Authored-By: Claude Opus 4.6 <[email protected]>
2.4 KiB
2.4 KiB
ARCHITECTURE.md — James (Local-First JARVIS System)
James is a local-first, event-driven AI operations platform with a human-in-the-loop control model. It observes systems, reasons about events, enforces policy, and acts only with explicit authority.
Core principle: Local brain. Cloud voice.
High-Level Topology
Nodes (GPU box, Pi server, main host) run Watcher agents that publish system and service events. Redis acts as the central event bus. Local AI agents analyze and classify events. A policy engine enforces SOUL.md as executable rules. Actions are routed to Discord, Home Assistant, or Voice output.
Nodes → Watchers → Redis → Analyst / Mail Agent → Policy Engine → Action Router
↓
Discord / Home Assistant / Voice
Design Goals
- Zero vendor lock-in for core intelligence
- Minimal cloud token usage
- Full auditability
- Human approval for external actions
- Multi-node awareness
- Policy-first automation
Component Summary
Redis (System Service)
- Role: Event bus and state backbone
- Channels:
james.events.systemjames.events.mailjames.decisionsjames.actionsjames.audit
Watcher Agents
- Run on every node
- Collect:
- CPU / RAM / Disk
- Docker / Podman status
- GPU metrics
- Service health
- Publish structured JSON events
Analyst Agent (Local LLM)
- Model: Qwen (via Ollama)
- Role: Classify, prioritize, and suggest safe actions
- Output: Structured decisions (JSON only)
Mail Agent (Local LLM)
- Role: Daily inbox scan
- Classifies emails and drafts replies
- Never sends messages directly
Policy Engine
- Enforces SOUL.md rules as executable logic
- Determines:
- Auto-allowed actions
- Approval-required actions
- Forbidden actions
Action Router
- Executes approved actions
- Integrates with:
- Discord
- Home Assistant
- Voice Layer (cloud model)
Voice Layer (Cloud Model)
- Role: Human-facing interface
- Produces summaries, briefings, and approval requests
- No system authority
Integration Points
- Home Assistant: Device control, sensors, notifications
- Discord: Approval interface, status updates
- Ollama: Local reasoning (Qwen2.5-coder)
- Git: Workspace state sync
- Docker: Container orchestration awareness