Skip to main content
TENET is a CLI that gives AI agents persistent memory, a learning loop, and coordination. Here’s what you can do with it.

Context Hub

A daemon that runs alongside your agent sessions. Every agent connects to it via MCP. It serves journals, memory, knowledge docs, and events.
What it enables:
  • Agents start sessions with full context from every previous session
  • Semantic search across decisions, code patterns, and experiments
  • MCP server — works with Claude Code, Pi, Cursor, any MCP-compatible agent

Peter Parker (Agent Orchestrator)

The meta-orchestrator that decides which agents to run, in what order, and with what context. Named after Andrej Karpathy’s autoresearch pattern.
Each round:
  1. Eval before — measure the metric (coverage, quality, speed)
  2. Agent changes code — in an isolated worktree
  3. Eval after — did the metric improve?
  4. Keep or revertgit reset --hard if it regressed
  5. Record tuple — (state, action, reward) → training buffer

RL Learning Loop

Every agent action produces training data. The policy head learns what works in YOUR codebase.
The loop:
  • Training buffer — append-only JSONL of (state, action, reward) tuples
  • Policy head — neural network that predicts which actions improve metrics
  • Build evals — write a spec, the eval checks if it’s built. Agents iterate from 0% to 100%.

Memory System

Persistent memory with semantic search, graph edges, and knowledge lifecycle.
What’s stored:
  • Journals — structured entries (decisions, features, fixes, discoveries) from every session
  • Knowledge docs — VISION.md, THESIS.md, ARCHITECTURE.md — living documents
  • Code headers@purpose annotations indexed from source files
  • Graph edges — structured relationships (updates, contradicts, related_to)
  • Embeddings — semantic vectors for similarity search

Event Bus (MAP)

The nervous system. Events flow between agents, flows, and the hub.
Events trigger flows automatically:

Flows (YAML Automation)

Declarative event-driven workflows. Cron triggers, event patterns, agent spawns, approval gates.

Services (Multi-Repo Coordination)

Register services, declare what they produce and consume. Cross-repo impact detection.
Scopes enable cascade:

IDE (Terminal Workspace)

Multi-pane tmux workspace with smart surface detection.

Browser (Agent Eyes)

Terminal browser (Carbonyl) with CDP bridge. Agents get DOM, humans see pages.
Human interactions broadcast on browser.events — agents can respond to what you’re looking at.

Subway Mesh (Agent Coordination)

P2P network for agent-to-agent communication across machines and sessions.

Migrating from JFL

If you have the older jfl CLI installed:
The jfl command and JFL_* env vars continue to work — no rush to migrate.