← Plugin catalog
Entertainment
AI-DM 4 Engine
Simen Midtun Hansen v0.3.1
Validates, reads, transacts, checkpoints, and exports campaign-agnostic AI-DM 4 Campaign packages without embedding mutable campaign canon.
Language: English · Automatically detected from descriptions.
Package details
Publisher declarations from the archived package. These are separate from our research and the live service's terms.
- Package license
- Proprietary
- Package author
- Simen Midtun Hansen
- Keywords
- ai-dm, text-rpg, campaign, roleplaying
Declared capabilities
- Interactive
- Write
Package observed Sep 30, 2026.
Files & skills
File archives
Plugin package24 files · 88.3 KBBrowse files →
Skill instructions
run-ai-dm-4-engine4.56 KB
--- name: run-ai-dm-4-engine description: Run, validate, inspect, transact, checkpoint, or export campaign-agnostic AI-DM 4 text campaigns bound through a Contract-1.1 CAMPAIGN_MANIFEST.json. Use for AI-DM gameplay and slash commands when the user supplies or explicitly selects a Campaign directory or ZIP, and for synthetic campaign/package validation. Never use chat memory as campaign storage or infer authority from filenames. --- # AI-DM 4 Engine Treat the Engine as immutable reusable software, the Campaign package as mutable canon/state, and this Skill as the adapter between them. ## Mandatory boot sequence 1. Resolve the Campaign package the user explicitly supplied or selected. 2. Read `CAMPAIGN_MANIFEST.json` before any other Campaign artifact. 3. Run: ```bash python3 scripts/aidm_campaign.py validate --campaign <path> ``` 4. Stop before gameplay or current-state claims when validation fails. 5. Read the Campaign-owned `AI_DM_RUNTIME_PRIMER.md`, then `STORY_SO_FAR.md`, then only relevant current records/books. 6. Never select authority by `CURRENT`, `MASTER`, `FINAL`, recency, file size, or semantic similarity. If the surface cannot execute the bundled script or cannot return a changed Campaign/checkpoint file, state the write limitation before adjudicating. Do not claim a turn committed when only chat context changed. Read [ENGINE_CAMPAIGN_CONTRACT_v1.1.md](references/ENGINE_CAMPAIGN_CONTRACT_v1.1.md) for authority and transaction invariants. Read [CAMPAIGN_BINDING.md](references/CAMPAIGN_BINDING.md) for directory/ZIP handling. ## Commands Run visible commands through one manifest-selected projection head: ```bash python3 scripts/aidm_campaign.py command \ --campaign <path> --name /status ``` Supported commands are `/status`, `/ledger`, `/projects`, `/timeline`, `/recap`, and `/save`. For `/save`, provide `--output <checkpoint.zip>`. Commands do not advance gameplay. Never reveal data marked `SEALED`. ## Substantive turns Preserve the user's declaration byte-for-byte. Never invent the player character's voluntary action, dialogue, tactics, power use, beliefs, conclusions, emotions, priorities, allocations, or acceptance of a bargain. Before committing: 1. identify phase and Campaign time; 2. retrieve only relevant current authority; 3. adjudicate fair consequences; 4. draft a domain delta; 5. audit arithmetic, chronology, NPC knowledge, correction scope, provenance, sealed leakage, and player sovereignty; 6. use one stable unique `turn_id`. Commit with: ```bash python3 scripts/aidm_campaign.py turn \ --campaign <path> \ --turn-id <stable-id> \ --declaration '<exact declaration>' \ --delta-file <delta.json> ``` For a ZIP Campaign, also pass `--output <changed-campaign.zip>`. A directory Campaign is updated in place and may additionally be exported with `--output`. Same `turn_id` plus the same exact declaration is an idempotent replay. The same `turn_id` with different text must be rejected. The delta grammar and examples are in [TRANSACTION_INTERFACE.md](references/TRANSACTION_INTERFACE.md). ## Checkpoints and persistence Commit internal Campaign state after each substantive turn. Create an external checkpoint on `/save`, explicit request, major boundary, migration, or major milestone: ```bash python3 scripts/aidm_campaign.py checkpoint \ --campaign <path> --output <checkpoint.zip> ``` A checkpoint must not advance the gameplay state head or transaction hash. Return the changed Campaign/checkpoint file to the user. Chat memory is never a save mechanism. ## Provenance and progress Use only these material provenance classes: - `EXACT` - `DERIVED` - `GENERATED_CANON` - `NORMALIZED` - `BOUNDED` - `FUTURE_UNKNOWN` - `SEALED` - `NOT_TRACKED` Use the typed Progress Models in [PROGRESS_MODEL_1.0.md](references/PROGRESS_MODEL_1.0.md). Do not flatten every unfinished fact into one generic X/Y clock. ## First Establishment and corrections Generate a previously undefined world fact only when fair live simulation requires it and the in-world method can establish it. Never use First Establishment to excuse impossible knowledge, arithmetic errors, retroactive precision, hidden-interface leakage, or post-hoc counters. Keep corrections narrow unless the user explicitly generalizes them. Record what changed, why, what remains preserved, and the affected projections. ## Refusal boundary Do not resume gameplay without a valid bound Campaign and explicit gameplay authorization. Do not embed Campaign state in this Skill. Do not mutate a production Campaign during engine development; use synthetic fixtures or an explicit disposable copy.
Referenced files: 18
Technical details
- First seen
- Sep 30, 2026 · 22:02 UTC
- Last seen
- Oct 1, 2026 · 12:00 UTC
- Collection status
- Collected
plugins_6a690ee33ddc819185a57c208dcf0711
Download listing JSON