Sand Table — Protocol Meta Skill
Design new sand tables, scaffold project-local skills, extract agent-ops traces, and validate event streams. This skill knows the protocol and all existing implementations.
When to Use
/sand-table design <use-case>— Design a sand table for a new domain/sand-table scaffold— Generate a project-local skill + domain invariant/sand-table extract <project-path>— Extract agent-ops from Claude session logs/sand-table validate <json-path>— Check event stream against protocol- "How should I build a sand table for X?"
- "What sand table implementations exist?"
What This Skill Knows
-
The Protocol — Read
references/protocol-spec.mdfor the event envelope, temporal models, normalization contract, multi-run comparison, and replay injection patterns. -
Existing Implementations — Read
references/implementations.mdfor the registry of Substack readership, AIEnablement training, and Agent-Ops implementations with their paths, event types, and temporal models. -
Domain Design — Read
references/domain-invariant-template.mdfor the scaffold template. Readreferences/examples.mdfor real annotated events from all three domains.
Commands
design <use-case>
- Read
references/protocol-spec.mdandreferences/domain-invariant-template.md - Recommend: temporal model, persona count, event types, scoring dimensions
- Identify closest existing implementation (from
references/implementations.md) as a reference pattern - Output a filled domain invariant for the proposed domain
- Flag domain-specific drift risks (what will the LLM get wrong?)
scaffold
- Ask which domain invariant to use (or design one first)
- Generate into the current project:
- A project-local skill (
.claude/skills/sand-table.mdor similar) - A
drift-mappings.jsonfor the domain - A replay generator stub
- A project-local skill (
- Register in
references/implementations.md - Optionally generate a
manifest.jsonfor discovery
extract <project-path>
Run the shared extractor:
python ~/Projects/leegonzales/AISkills/SandTable/sand-table/scripts/extract_agent_ops.py \
--project <project-path> --since <date> -o <output.json>
Then validate the output:
python ~/Projects/leegonzales/AISkills/SandTable/sand-table/scripts/validate_stream.py <output.json>
validate <json-path>
python ~/Projects/leegonzales/AISkills/SandTable/sand-table/scripts/validate_stream.py <json-path>
For legacy-format files (pre-protocol), normalize first:
python ~/Projects/leegonzales/AISkills/SandTable/sand-table/scripts/normalize.py \
--wrap-legacy <json-path> -o <output.json>
Key Principle
This meta skill is a guide, not a gatekeeper. Project-local sand tables work standalone. The meta skill adds wisdom when consulted — protocol awareness, cross-domain patterns, and normalization infrastructure.
