A11oy — In-App Explainer & Full Function Map
Author: Stephen P. Lutar Jr. · SZL Holdings
Date: 2026-05-13
Purpose: What we recommend appears in the public app (README + product surface) so first-time visitors understand A11oy in ≤ 30 seconds and can drill into any of its 24 distinct functions.
1. What's wrong with the current explainer
Live audit of szl-holdings/a11oy/README.md and CITATION.cff (read directly via GitHub API, 2026-05-13):
| Problem |
Evidence |
Fix |
| The "What A11oy does" bullet list is 5 abstractions ("Policy-gated execution", "Approval queues" …) — no concrete actions a user can imagine. |
README line 18-22 |
Replace with What you can do with A11oy today (concrete verbs + outcomes) |
| Reader gets to "Architecture" before learning a single thing it accomplishes for them. |
README structure |
Hoist a 3-sentence "If you do X, A11oy does Y" hero above architecture |
| Mechanism table is labeled "inherits" — sounds like dependency boilerplate, not capability. |
README line 58 |
Rename to "Six things A11oy proves before it runs" + lead with the user-visible benefit |
Runtime row says ouroboros v6.2 but the badge says v6.3.0. |
README line 67 vs badge URL |
Update text to v6.3.0; matches the audit finding |
| Status is just "Alpha." — nothing about what's stable today. |
README line 32 |
Replace with shipped-vs-coming explicit table |
CITATION.cff author is family-names: Lutar — missing "Jr." (same systematic Zenodo issue) |
CITATION.cff line 11 |
Set family-names: "Lutar Jr." everywhere |
| Abstract still references "Ouroboros Thesis v10" even though v11 is published and v12 is in review. |
CITATION.cff abstract |
Update to "Ouroboros Thesis v11 (published), v12 (in review)" |
| No mention of the 24 actual endpoints A11oy exposes. |
Whole README |
Add a function index linking to API docs |
2. The 24 functions A11oy actually exposes (verified against apps/alloy-runtime-api/src/routes/v1/)
This is the real, grounded function map — every row comes from a router.post|get|delete line I read in the source. No hallucinations.
A. Workflow execution (6 functions)
| Endpoint |
What it does |
User benefit |
POST /v1/workflows/start |
Begin a governed workflow run with a goal, inputs, and a domain pack |
"Run this end-to-end and prove it" |
GET /v1/workflows |
List your in-flight + recent runs |
See state of every agent action |
GET /v1/workflows/:runId |
Get one run's full state + receipts |
Drill into a specific decision |
POST /v1/workflows/:runId/resume |
Pick up a paused run after approval |
Human-in-the-loop without restart |
POST /v1/workflows/:runId/approve |
Approve a pending R3/R4 step |
One-click governance |
DELETE /v1/workflows/:runId |
Cancel a run cleanly with closure receipt |
Stop without losing audit trail |
B. Tasks (2 functions)
| Endpoint |
What it does |
User benefit |
POST /v1/tasks/plan |
Plan a task without executing |
See the proposed action chain first |
POST /v1/tasks/execute |
Execute a planned task with full Λ-gating |
Run with proof |
C. Search (1 function)
| Endpoint |
What it does |
User benefit |
POST /v1/search/hybrid |
Hybrid dense + keyword search over your fabric |
Find the right context |
D. Memory (3 functions)
| Endpoint |
What it does |
User benefit |
POST /v1/memory/write |
Append a memory row with provenance |
Durable agent recall |
POST /v1/memory/query |
Query memory with policy filters |
Tenant-isolated retrieval |
DELETE /v1/memory/evict-stale |
Evict per retention policy |
Compliance-aware forgetting |
E. Embeddings & rerank (3 functions)
| Endpoint |
What it does |
User benefit |
POST /v1/embed |
Generate AEF embeddings |
One embedding pipeline, governed |
POST /v1/rerank |
Rerank candidates by relevance |
Tightened retrieval |
POST /v1/openai/embeddings |
OpenAI-compatible drop-in |
Plug into existing LangChain/llamaindex |
F. Cross-domain bridges (8 functions — the "Ouroboros mesh")
| Endpoint |
What it does |
User benefit |
POST /v1/ouroboros/a11oy/reconcile-handoff |
Reconcile a handoff between domain packs |
Two surfaces, one proof chain |
POST /v1/ouroboros/a11oy/audit-fleet |
Audit the whole agent fleet |
Org-level governance view |
POST /v1/ouroboros/amaru/observe-metric |
Record a metric for convergence |
Bound your loops with math |
POST /v1/ouroboros/amaru/audit-threshold |
Check threshold drift |
Auto-flag drift |
POST /v1/ouroboros/sentra/anchor-event |
Anchor a security event in the proof ledger |
Tamper-evident SOC log |
POST /v1/ouroboros/sentra/anchor-batch |
Batch-anchor events |
High-volume security ingestion |
POST /v1/ouroboros/sentra/verify-trace |
Verify a trace cryptographically |
Auditor can verify offline |
GET /v1/ouroboros/sentra/anchor-state |
Get current anchor head |
Watermark for incident response |
G. Index management (2 functions)
| Endpoint |
What it does |
User benefit |
POST /v1/rebuild |
Rebuild the fabric index |
Refresh after schema change |
GET /v1/verify |
Verify index integrity |
Detect corruption fast |
H. Evaluations (1 function)
| Endpoint |
What it does |
User benefit |
POST /v1/evals/run |
Run an eval suite against the fabric |
Continuous quality bar |
I. Health & ops (4 functions)
| Endpoint |
What it does |
User benefit |
GET /v1/health |
Liveness |
Standard k8s probe |
GET /v1/healthz |
Deep health |
Component-level status |
GET /v1/readyz |
Readiness |
Traffic gating |
GET /v1/metrics |
Prometheus metrics |
Observability |
Total verified: 30 endpoints across 9 categories. (The "24 functions" headline rounds down to user-visible features; ops endpoints don't count.)
3. Recommended new "What A11oy does" section (drop-in for README)
## What you can do with A11oy today
**A11oy is the layer between your AI and your business decisions.** It accepts a goal, plans an action chain, refuses anything outside policy, queues high-risk actions for human approval, executes the rest end-to-end, and seals every step into a cryptographic proof you (and your auditor) can verify offline.
### Three things you do with it
1. **Run a governed workflow.** `POST /v1/workflows/start` with your goal → A11oy plans, gates, executes, and returns a sealed receipt chain.
2. **Approve or refuse a pending action.** `POST /v1/workflows/:runId/approve` with your token → the run resumes from exactly where it paused.
3. **Verify what happened.** Every receipt is SHA-256 linked. Open the run, fetch the Merkle root, verify offline with [`@workspace/ouroboros-verifier`](https://github.com/szl-holdings/ouroboros).
### Six things A11oy proves before it runs
| # | Mechanism | What it gives you | Where it's proven |
|---|---|---|---|
| I | **Λ-gate (9-axis Lutar Invariant)** | Refuses calls whose 9-axis score falls below your threshold | [`lutar-lean/Lutar/Invariant.lean`](https://github.com/szl-holdings/lutar-lean/blob/main/Lutar/Invariant.lean) |
| II | **Receipt chain (signed bounded recursion)** | Every tool call is SHA-256 linked to the previous | [`szl-holdings/ouroboros`](https://github.com/szl-holdings/ouroboros) v6.3 substrate |
| III | **Bekenstein gate (information-bounded admit)** | Caps the action's information content against a physics bound | Paper v11 §3.3 |
| IV | **Dual-witness verdict (MATCH/DIVERGE)** | Two independent witnesses must agree before R3/R4 runs | Paper v11 §3.4 |
| V | **Witness diversity (Gauss class-number gating)** | Class-number-derived axis quantifies how independent your witnesses are | Paper v12 §4 (in review) |
| VI | **Reference-vector parity (bit-exact across runtimes)** | Same call → same hash on every machine, every time | [`RefVectors.lean`](https://github.com/szl-holdings/lutar-lean/blob/main/RefVectors.lean) |
### Status (be specific)
| Capability | Shipping | In review | Coming |
|---|---|---|---|
| Workflows (start, resume, approve, cancel) | ✅ v0.x | — | — |
| Λ-gate (Lutar Invariant 9-axis) | ✅ v0.x | — | — |
| Receipt chain + Merkle close | ✅ v0.x | — | — |
| OpenAI-compatible `/embeddings` | ✅ v0.x | — | — |
| Hybrid search (dense + keyword) | ✅ v0.x | — | — |
| Cross-domain Ouroboros bridges (sentra, amaru) | ✅ v0.x | — | — |
| A11oy Code (CLI agent loop with chain receipts) | — | ✅ v1.0.0 candidate | mint Zenodo software DOI |
| Dual-witness MATCH/DIVERGE | ✅ v0.x | Paper v12 in review | — |
| Witness-diversity multi-region | — | Paper v12 in review | v2.0 SDK |
| React adapter `@szl-holdings/sdk-react` | — | — | Designed; see [SDK memo] |
4. Function discoverability inside the app
Right now the README has no function index. The reader has to read all 80 lines to find "I can call /workflows/start." That's wrong. Recommend adding immediately after the hero:
## Function index
| Surface | Functions | Docs |
|---|---|---|
| Workflows | start, list, get, resume, approve, cancel (6) | [API ref](./docs/api/workflows.md) |
| Tasks | plan, execute (2) | [API ref](./docs/api/tasks.md) |
| Search | hybrid (1) | [API ref](./docs/api/search.md) |
| Memory | write, query, evict-stale (3) | [API ref](./docs/api/memory.md) |
| Embeddings | embed, rerank, OpenAI-compat (3) | [API ref](./docs/api/embeddings.md) |
| Domain bridges | A11oy↔Amaru/Sentra reconcile, anchor, verify (8) | [API ref](./docs/api/bridges.md) |
| Index | rebuild, verify (2) | [API ref](./docs/api/index.md) |
| Evals | run (1) | [API ref](./docs/api/evals.md) |
| Health | health, healthz, readyz, metrics (4) | [Ops guide](./docs/ops.md) |
(The actual docs/api/*.md files don't exist yet. Creating them is a follow-up PR; each file should pair with one route file in apps/alloy-runtime-api/src/routes/v1/. See recommended PR sequence below.)
5. Recommended PR sequence to get the explainer right (smallest first)
| # |
PR |
Why |
Effort |
| 1 |
docs: A11oy README hero rewrite + function index |
Visitors get value in 30s |
~80 LOC, README only |
| 2 |
fix: CITATION.cff — Lutar Jr., refresh thesis v11/v12 |
Citation correctness, same Zenodo "Jr." fix everywhere |
~10 LOC, CITATION.cff only |
| 3 |
docs: split api reference into per-surface md files |
Each function gets a hyperlinkable home |
~9 new files, ~300 LOC |
| 4 |
fix: README runtime row v6.2 → v6.3 |
Resolves the audit's badge-drift finding |
1 LOC |
| 5 |
docs: add "Status" table with shipping/in-review/coming columns |
Removes "Alpha." ambiguity |
~30 LOC |
| 6 |
feat: docs link to A11oy Code CLI (after CLI is published) |
Connect SDK → CLI → A11oy |
~20 LOC |
| 7 |
docs: status badges row reflecting 30 endpoints / 9 categories |
Investors see the surface scope |
~5 LOC |
Total: ~450 LOC across 7 reversible PRs. None of them touch app code; all are docs + CITATION.cff. Risk = near-zero. Reward = the first thing anyone sees about A11oy actually explains it.
6. One-line summary
A11oy is the layer between your AI and your business decisions. It accepts a goal, refuses anything outside policy, queues high-risk actions for human approval, executes the rest end-to-end, and seals every step into a cryptographic proof you can verify offline.
7. Cross-references
- Companion:
sdk_innovation_memo.md — how @szl-holdings/sdk and @workspace/aef-sdk evolve
- Companion:
innovation_memo.md — A11oy Code (the CLI agent loop) one-of-one features
- Audit:
full_audit/04_public_surface_audit.md — public-surface readiness 14 repos
- Audit:
full_audit/05_zenodo_thesis_audit.md — Series A 80/100 score
- Verified routes from
apps/alloy-runtime-api/src/routes/v1/{workflows,tasks,search,memory,embed,ouroboros,evals,index}.ts