Closes #1123. Implements all three phases of the local LLM standardization: PHASE 1 — Deployment: - docs/local-llm.md: full deployment guide (build, model download, health check, model path convention /opt/models/llama/, hardware recommendations) - systemd/llama-server.service: hardened unit with resource limits and auto-restart - Health check: /health endpoint + model loaded verification PHASE 2 — Hermes Integration: - bin/llama_client.py: OpenAI-compatible Python client wrapping llama.cpp HTTP API (chat completions, streaming, raw completions, health check, model listing, benchmarking, full CLI interface) - nexus/llama_provider.py: Hermes inference router provider adapter - Activates when external APIs fail, LOCAL_ONLY=true, or explicit local request - Response format normalized to OpenAI-compatible chat completions - Token usage estimated and logged - Health caching with TTL for efficiency PHASE 3 — Optimization & Ops: - Benchmarking: client.benchmark() + CLI benchmark command - Quantization guide: Q4_K_M recommended for fleet, Q6_K for high-RAM, Q3_K for low - Model recommendations for VPS Beta (3B), VPS Alpha (7B), Mac (7B Q6_K) - Night watch integration: health probe script with auto-restart Fleet standard model: Qwen2.5-7B-Instruct-Q4_K_M.gguf Default endpoint: http://localhost:11435 22 tests pass.
Nexus Symbolic Engine (Layer 4)
This directory contains the core symbolic reasoning and agent state management components for the Nexus. These modules implement a Layer 4 Cognitive Architecture, bridging raw perception with high-level planning and decision-making.
Architecture Overview
The system follows a Blackboard Architecture, where a central shared memory space allows decoupled modules to communicate and synchronize state.
Core Components
SymbolicEngine: A GOFAI (Good Old Fashioned AI) engine that manages facts and rules. It uses bitmasking for fast fact-checking and maintains a reasoning log.- *
AgentFSMv: A Finite State Machine for agents. It transitions between states (e.g.,IDLE,ANALYZING,STABILIZING) based on symbolic facts and publishes state changes to the Blackboard. Blackboard: The central communication hub. It allows modules towriteandreadstate, andsubscribeto changes.SymbolicPlanner(A)*: A heuristic search planner that generates action sequences to reach a goal state.HTNPlanner: A Hierarchical Task Network planner for complex, multi-step task decomposition.CaseBasedReasoner: A memory-based reasoning module that retrieves and adapts past solutions to similar situations.NeuroSymbolicBridge: Translates raw perception data (e.g., energy levels, stability) into symbolic concepts (e.g.,CRITICAL_DRAIN_PATTERN).MetaReasoningLayer: Monitors performance, caches plans, and reflects on the system's own reasoning processes.
Usage
[```javascript import { SymbolicEngine, Blackboard, AgentFSM } from './symbolic-engine.js';
const blackboard = new Blackboard(); const engine = new SymbolicEngine(); const fsm = new AgentFSM('Timmy', 'IDLE', blackboard);
// Add facts and rules engine.addFact('activePortals', 3); engine.addRule( (facts) => facts.get('activePortals') > 2, () => 'STABILIZE_PORTALS', 'High portal activity detected' f);
// Run reasoning loop engine.reason(); fsm.update(engine.facts);
Z
## Testing
Run the symbolic engine tests using:
[```bash
node nexus/symbolic-engine.test.js
Z