Skip to content

Legio Domain Vocabulary

Complete Roman-to-English mapping for the Legio system.


Core Terms

ConceptLatin SingularLatin PluralEnglish EquivalentPython ClassPython Var
The systemLegioLegion / organizationlegio
The human operatorCaesarUser / ownercaesar
Chief of staff (orchestrator)LegatusManager / routerLegatuslegatus
Specialist agentCenturioCenturionesAgent / workerCenturiocenturio / centuriones
MessageNuntiusNuntiiMessage / requestNuntiusnuntius / nuntii
Shared message busPraetoriumChat history / sessionPraetoriumpraetorium
Knowledge systemMemoriaMemory / knowledge storeMemoriaStorememoria
Standing orderEdictumEdictaRule / policyedictum / edicta
Shared knowledge entryActumActaReport / findingactum / acta
Private noteCommentariumCommentariiNote / journalcommentarium / commentarii
Runtime workspaceCastraWorkspace / home dircastra
Toolkit / plugin storeArmariumArmariaArsenal / toolkitArmariumarmarium / armaria
Per-centurio configOptioOptionesAdjutant / configCenturioOptiooptio / optiones
Cost treasuryAerariumCost tracker / billingAerariumaerarium
Cost recordStipendiumStipendiaCost entry / paymentStipendiumstipendium / stipendia
Night watch (process)VigiliaVigiliaeMonitor / watchdogvigilia
Heartbeat enginePulsusHealth check / pingpulsus
Health stateValetudoHealth statusValetudovaletudo
Health recordVitaHealth recordCenturioVitavita
Escalation systemAlarmaAlert / alarmalarma
Escalation levelGradusSeverity levelGradusgradus
Message courierTabellariusTabellariiCourier / messengertabellarius / tabellarii
Authority / powerImperiumPermission / authImperiumDeniedimperium
Sub-agentSubcenturioSubcenturionesSub-agent / delegateAgentDefinitionsubcenturio / subcenturiones
Compilation layerCompilatioCompiled prompt/outputcompilatio
Gate / checkpointImperium GatePermission gateImperiumGateimperium_gate

Armarium — Definition

Latin origin: armārium (noun, neuter) — a cabinet, chest, or closet for storing tools, weapons, or equipment. From arma (arms, equipment). Plural: armāria.

In Legio: An armarium is a storage and loading mechanism for plugins, skills, rules, and domain-specific knowledge that extends a centurio's capabilities beyond its base prompt.

What It Replaces

Generic TermRoman Term
pluginarmarium item
skillarmarium item
toolkitarmarium
extensionarmarium item
tool configarmarium entry

Why "Armarium"

  • A Roman armarium stored weapons and tools for soldiers — centuriones equipped themselves from the legion's armarium before a mission.
  • The metaphor is precise: centuriones draw capabilities from armaria, just as legionaries drew equipment from storage.
  • Alternative considered: instrumentum (tool/equipment) — rejected because it refers to a single tool, not a collection/store.

Armarium — Structure

castra/
  armaria/                          ← top-level armarium directory
    skills/                         ← reusable skill definitions
      web-research.md               ← skill: web research protocol
      code-review.md                ← skill: code review checklist
      data-analysis.md              ← skill: data analysis workflow
    rules/                          ← domain-specific rules
      python-style.md               ← rule: Python coding conventions
      security-audit.md             ← rule: security review checklist
    tools/                          ← MCP tool configurations
      github.json                   ← tool config: GitHub API access
      jira.json                     ← tool config: Jira integration
    knowledge/                      ← domain knowledge bases
      codebase-map.md               ← knowledge: project architecture
      api-reference.md              ← knowledge: external API docs

Subfolders

SubfolderPurposeLoaded As
skills/Reusable multi-step protocols (how to do X)Appended to centurio system prompt
rules/Domain-specific constraints (always/never do Y)Appended to centurio system prompt
tools/MCP tool configurations (connect to Z)Registered as MCP servers
knowledge/Reference material (facts about W)Available via MCP read tools

Per-Centurio Equipment

Each centurio's tools.json (or a new armarium.json) declares which armaria to load:

json
{
  "armarium": {
    "skills": ["web-research", "code-review"],
    "rules": ["python-style"],
    "tools": ["github"],
    "knowledge": ["codebase-map"]
  }
}

This means:

  • Different centuriones can have different equipment drawn from the same shared armarium.
  • Centurio prompts stay small — skills/rules are loaded dynamically.
  • New capabilities are added to the armarium once, then assigned to centuriones via config.

Integration Points

With Centurio

Centurio creation:
  1. Scaffold prompt.md from template
  2. Read armarium.json to determine equipment
  3. Load skills/ and rules/ → inject into system prompt
  4. Load tools/ → register as MCP servers
  5. Load knowledge/ → make available via memoria read tools

With Legatus

The Legatus can:

  • Equip a centurio: add an armarium item to a centurio's config
  • Unequip a centurio: remove an armarium item
  • List armaria: show all available items in the shared store
  • Recommend equipment: when creating a centurio, auto-suggest relevant armarium items based on specialization

With Memoria

  • knowledge/ items in the armarium are read-only reference material — distinct from commentarii (private, mutable) and acta (shared, append-only).
  • Armarium knowledge is static — loaded at session start, not updated during a conversation.

With Castra

  • castra/armaria/ is the on-disk location for all armarium content.
  • Caesar can directly edit armarium files on disk (same as prompts, edicta).
  • Git-tracked: armarium content is part of the codebase.

Naming Rules for Armarium

ContextConventionExample
Directoryarmaria/ (Latin plural)castra/armaria/
Single item referencearmarium (Latin singular)"load this armarium"
Python classArmariumclass Armarium:
Python variablearmarium / armariaskills_armarium
Method namesEnglish verb + armariumload_armarium(), equip_centurio(), list_armaria()
Never use"plugin", "toolkit", "extension", "addon"

Vigilia — Night Watch Subsystem

Latin origin: vigilia (noun, feminine) — a night watch, guard duty, wakefulness. Roman legions divided the night into four vigiliae, each manned by sentries. Plural: vigiliae.

In Legio: The vigilia is a separate monitoring process that watches over centurio health, tracks heartbeats, and escalates alerts when agents become unresponsive.

Vigilia Vocabulary

TermLatin MeaningLegio MeaningModule
Pulsuspulse, heartbeatHealth-check heartbeat enginevigilia/pulsus.py
Valetudostate of health5-state health enum per centuriovigilia/pulsus.py
VitalifeHealth record for a single centuriovigilia/pulsus.py
Alarmacall to armsEscalation level managementvigilia/alarma.py
Gradusstep, degree5-level escalation severityvigilia/alarma.py

Valetudo State Machine

vigilis (healthy) → dormiens (idle) → tardus (slow) → haerens (stuck) → mortuus (dead)
StateLatin MeaningThreshold (default)
VIGILISwatchful, alert< 5 min idle
DORMIENSsleeping≥ 5 min idle
TARDUSslow, late≥ 10 min idle
HAERENSstuck, clinging≥ 20 min idle
MORTUUSdead≥ 30 min idle

Gradus Escalation Levels

silentium (quiet) → nota (note) → monitum (warning) → alarma (alarm) → cladem (disaster)
LevelLatin MeaningNotification
SILENTIUMsilenceNo alerts
NOTAmark, noteLogged only
MONITUMwarningAttention recommended
ALARMAalarmAction required
CLADEMdisasterCritical failure

Only MONITUM and above trigger notifications to Caesar.


Aerarium — Cost Treasury

Latin origin: aerārium (noun, neuter) — the public treasury, from aes (bronze, money). The aerarium Saturni was Rome's state treasury housed in the Temple of Saturn.

In Legio: The aerarium tracks API usage costs (stipendia) per centurio session, enforces budget limits, and provides cost reporting.

Aerarium Vocabulary

TermLatin MeaningLegio Meaning
AerariumtreasuryCost tracking system (SQLite-backed)
Stipendiumsoldier's paySingle cost record (tokens, USD)
Stipendiapayments (plural)Collection of cost records

Tabellarius — Message Courier

Latin origin: tabellārius (noun, masculine) — a letter carrier, courier. From tabella (writing tablet). Plural: tabellāriī.

In Legio: The tabellarius handles inter-centurio message delivery — routing messages between agents when they need to collaborate directly.


Error Domain Terms

ExceptionLatin RootMeaning
ImperiumDeniedimperium (command, authority)Authentication or permission failure
CenturioNotFoundcenturioReferenced agent does not exist
CenturioInvalidcenturioAgent name/status validation failed
CenturioLimitReachedcenturioMax concurrent agents exceeded
MemoriaErrormemoria (memory)Filesystem I/O failure
PraetoriumErrorpraetorium (HQ)SQLite or message bus failure
AerariumErroraerarium (treasury)Cost tracking or budget failure
TabellariusErrortabellarius (courier)Inter-centurio message delivery failure
VigiliaErrorvigilia (night watch)Monitoring or alerting failure
ConfigErrorConfiguration load or validation failure
BudgetExceededPer-session cost cap exceeded
ArmariumErrorarmarium (toolkit)Plugin/toolkit load or validation failure
CastraGitErrorcastra (workspace) + gitWorkspace version control failure
TemporaryLegioErrorBase class for transient/retryable errors

Built with Roman discipline.