Self-Hosted Contextual Bandit in Rust: Syntra & Lycan for Adaptive Decision Systems

Two new open-source projects aim to bring contextual bandit functionality to production systems without a Python ML stack. Lycan is a small graph execution language where strategy nodes are a first-class primitive — you define multiple implementations of the same contract, and the runtime learns weights from outcome feedback. It compiles to a binary graph executed by a Rust runtime with no LLM in the hot path.
Syntra is a self-hosted Docker/API appliance that serves compiled Lycan capsules. Key features:
- Multi-tenant, shadow-mode-first design
- Contextual learning per
contextKey - Persistent filesystem store
- Separated audit, decision, and feedback logs
- MVP YAML authoring layer (no need to write underlying Lisp)
The stated use cases: repeated decisions where the best option depends on context and outcome arrives later — LLM model routing, retry/timeout policy, queue selection, threshold tuning.
Dogfooding against MoEFolio.ai (a public AI stock-debate panel with 30-day market-resolved outcomes) revealed the first surprise: the contextKey schema was collapsing all sectors into unknown because the sector lookup only resolved symbols from one of three input paths. The bandit was nominally 5-dimensional but effectively 2-dimensional, learning a cross-sector average. Fixing the data pipeline, not the algorithm, is most of the work in adaptive systems.
Licensed Apache-2.0, very early stage. The author invites eyes from anyone who's worked on bandits in production.
📖 Read the full source: r/ClaudeAI
👀 See Also

CloudRouter Empowers AI Coding Agents with VM and GPU Management
CloudRouter introduces a CLI tool that allows AI coding agents to autonomously spin up cloud VMs and GPUs, automating tasks like browser verification and GPU-intensive workloads.

OpenProphet: Open-Source Autonomous Trading Agent with Web UI
OpenProphet is an open-source, autonomous trading agent with a web interface that supports multiple Alpaca accounts simultaneously and runs on OpenCode. It allows configuration of agent personas and strategies, with the ability to use any LLM, not just Claude.

I ripped out OpenClaw's default markdown memory and built a Node.js/Postgres API layer instead
A developer disabled OpenClaw's memory-core plugin and built a typed Node.js/Express + PostgreSQL backend. Context drift dropped to zero.

Hollow Agent OS: Local AI workers call Claude as senior architect when stuck
Hollow Agent OS uses local Qwen models that run 24/7, but when they hit logic errors or need major changes, they trigger a Claude call via MCP. Claude reorganizes file structures, reviews code, and acts as a manager for autonomous local workers.