wsc-chronicle
Emit and query WSC chronicle events. Use when recording world events, checking event history, tracing causality chains, or finding events by type, location, or participants.
When & Why to Use This Skill
The WSC Chronicle skill is a sophisticated event-logging and retrieval system designed for complex world simulations. It enables agents to maintain a persistent, append-only history of events using a hierarchical time system that spans from galactic scales down to individual actions. By supporting causality tracing, importance scoring, and multi-dimensional queries (type, location, participants), it provides a robust framework for managing long-term world state and narrative consistency.
Use Cases
- World Simulation & History Tracking: Record and maintain a detailed, consistent timeline of socio-political, economic, and military events within a simulated environment.
- Causality & Impact Analysis: Trace the 'causes' and 'effects' of specific events to understand how high-level decisions influence granular outcomes or vice versa.
- Narrative & Report Generation: Utilize importance scores and narrative summaries to automatically generate historical chronicles, news feeds, or briefing documents for users.
- Multi-Scale Context Retrieval: Query specific historical data across different simulation depths (e.g., galactic, city, or scene level) to inform agent decision-making based on past context.
- Debugging Simulation Logic: Use the event log and causality chains to identify where simulation rules or agent behaviors led to unexpected world states.
| name | wsc-chronicle |
|---|---|
| description | Emit and query WSC chronicle events. Use when recording world events, checking event history, tracing causality chains, or finding events by type, location, or participants. |
| allowed-tools | Read, Write, Bash, Glob |
WSC Chronicle Management
The chronicle is an append-only event log that records everything that happens in the world. Events are stored in NDJSON format (one JSON object per line).
Event Structure
{
"id": "evt_10001",
"t_world": 1042,
"t_scale": "galactic",
"t_local": 8.0,
"t_parent": null,
"t_depth": 0,
"t_stream": "02:14:33",
"type": "battle.resolved",
"where": "region.vega",
"who": ["force.7th_fleet", "force.raiders"],
"data": { /* event-specific payload */ },
"causes": ["evt_10000"],
"source": "lens.galactic",
"confidence": 0.95,
"importance": 0.8,
"narrative_summary": "Human-readable description..."
}
Hierarchical Time System
Events use hierarchical time to support recursive drill-downs across simulation scales:
| Field | Description |
|---|---|
t_world |
Parent tick at the top simulation level (integer) |
t_scale |
Which simulation scale generated this event: galactic, continental, city, scene, action |
t_local |
Local time within the current scale's context (optional) |
t_parent |
Event ID that triggered this drill-down (for sub-scale events) |
t_depth |
Nesting depth: 0 = top level, 1 = first drill-down, 2 = drill-down within drill-down, etc. |
Example Flow
- Galactic tick 1000: galactic-4x creates opportunity
evt_10500 - Scene drill-down: party-rpg resolves scene, emits
evt_10501:{ "t_world": 1000, "t_scale": "scene", "t_local": 15.5, "t_parent": "evt_10500", "t_depth": 1 } - Action drill-down: action-sim resolves combat within scene, emits
evt_10502:{ "t_world": 1000, "t_scale": "action", "t_local": 47.2, "t_parent": "evt_10501", "t_depth": 2 }
Event Types
| Family | Types | Description |
|---|---|---|
| Governance | treaty.signed, control.changed, election.held |
Political events |
| Economy | shortage.started, route.established, trade.completed |
Economic events |
| Conflict | conflict.started, battle.resolved, asset.captured |
Military events |
| Discovery | anomaly.discovered, artifact.recovered |
Exploration events |
| Character | agent.promoted, agent.killed, agent.defected |
Character events |
| Settlement | infrastructure.completed, unrest.spike |
City/locale events |
| Scene | dialogue.occurred, skill_check.attempted, secret.revealed |
RPG events |
| Opportunity | opportunity.created, opportunity.resolved |
Drill-down hooks |
Commands
Emit an Event
# Top-level galactic event
npx tsx .claude/skills/wsc-chronicle/scripts/emit.ts \
--type battle.resolved \
--where region.vega \
--who force.7th_fleet,force.raiders \
--data '{"outcome": "raider_victory"}' \
--scale galactic \
--importance 0.8 \
--summary "Raiders ambushed the 7th Fleet..."
# Scene drill-down event
npx tsx .claude/skills/wsc-chronicle/scripts/emit.ts \
--type dialogue.occurred \
--where locale.port_nexus \
--who agent.reva,agent.zara \
--scale scene \
--parent evt_10500 \
--t-local 15.5 \
--depth 1 \
--importance 0.5
# Action drill-down within scene
npx tsx .claude/skills/wsc-chronicle/scripts/emit.ts \
--type combat.round \
--where locale.port_nexus \
--who agent.reva,agent.assassin \
--scale action \
--parent evt_10501 \
--t-local 47.2 \
--depth 2 \
--importance 0.6
Query Events
# Recent events
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --last 10
# By type
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --type battle.resolved
# By location
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --where region.vega
# By participant
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --who agent.captain_reva
# By importance threshold
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --min-importance 0.7
# Time range
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --after 1040 --before 1050
Query by Scale
# Only top-level galactic events
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --scale galactic
# Only scene-level events
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --scale scene
# Events drilled down from a specific event
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --parent evt_10500
# Only top-level events (depth 0)
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --depth 0
# Show event tree (event and all descendants)
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --tree evt_10500
Trace Causality
# Find what caused an event
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --causes-of evt_10492
# Find what an event caused
npx tsx .claude/skills/wsc-chronicle/scripts/query.ts --caused-by evt_10311
Importance Scores
Events carry an importance score (0-1) used for artifact generation:
| Score | Meaning | Examples |
|---|---|---|
| 0.9+ | Major turning point | War declared, leader killed |
| 0.7-0.9 | Significant | Battle won, alliance formed |
| 0.5-0.7 | Notable | Skirmish, trade deal |
| 0.3-0.5 | Minor | Patrol, routine event |
| <0.3 | Background | Ambient events |
File Location
- Chronicle:
src/worlds/{active_world}/chronicle.ndjson - Example events:
src/examples/events/