# 01 Agent System

_Last updated: 2026-05-14_

## Purpose
Operational map for local assistant systems, agents, tools, and model routing.

## Load when
- Any system architecture, agent routing, cron, MCP, skill, or model decision
- Telegram topic routing or JARVIS Command Center structure
- When debugging Hermes/OpenClaw/JARVIS behaviour

## Stable facts
- Hermes/JARVIS is the sole primary assistant, router, memory-governor, and final decision layer.
- Hermes has local state under ~/.hermes.
- OpenClaw workspace is under ~/.openclaw/workspace, but OpenClaw is no longer the default executor.
- OpenClaw gateway service was disabled on 2026-05-13; its config is hardened to loopback, Telegram disabled, and plugin allowlist limited.
- Qwen read-only endpoint is reachable via Tailscale/OpenAI-compatible port 11435 alias qwen-3.6-agent when available.
- Direct Qwen helper: ~/.hermes/scripts/qwen_readonly.py.

## Operating rules
- Use native Hermes tools first for file, terminal, web, cron, messaging, and system operations.
- Use OpenClaw only if Sir explicitly requests it or in a justified emergency/special case; scope narrowly and prefer read-only.
- Local file operations are safe; external sends require care/confirmation unless explicitly requested.
- Do not print secrets.
- For complex or risky work, verify with evidence before reporting success.

## Data sources
- ~/.hermes/config.yaml
- ~/.hermes/auth.json (redacted only)
- ~/.hermes/cron/
- ~/jarvis_memory/
- ~/jarvis_memory/02_telegram_topics.md
- ~/.hermes/skills/jarvis-routing-policy/
- ~/.hermes/scripts/qwen_readonly.py
- ~/.openclaw/workspace/ (legacy/manual only)
- Local docs and skills

## Do-not-store
- API keys, OAuth tokens, raw auth.json values, gateway tokens
- Unredacted logs containing credentials

## Open questions
- Final canonical agent names and responsibilities?
- Should Hermes/JARVIS/FRIDAY share one memory store or maintain mirrored domain cards?


## Telegram Topic Routing — canonical map 2026-05-14
- Canonical Telegram topic mapping is maintained in `02_telegram_topics.md` and mirrored to `gateway.telegram.channel_prompts` in `~/.hermes/config.yaml`.
- Topics are treated as separate sessions; cross-topic answers require explicit routing or an obvious target.
- `compression.protect_last_n` is set to 24 for topic-local continuity without excessive token cost.
