# Classic Text Adventure

> Play and operate a deterministic, resumable Colossal Cave text adventure with verbatim game output and an OOC escape. Use when a user asks to start, continue, inspect, reset, or smoke-test the Classic Text Adventure; treat unprefixed messages as game commands while a session is active.

- Skill: `kody-w/classic-text-adventure` (Agent Skill, multi-file: 36 files)
- Install (CLI): `npx skillmds@latest add kody-w/classic-text-adventure`
- Raw SKILL.md: https://api.skillmd.com/api/skills/kody-w/classic-text-adventure/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: kody-w (https://skillmd.com/u/kody-w)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/kody-w/classic-text-adventure

---


# Classic Text Adventure

Run the bundled game through `scripts/runner.py`. Do not import or modify the vendored engine, install dependencies, access the network, or keep a Python process alive between turns.

## Choose the operation

- While a game is active, first check whether the message's first non-whitespace characters are `OOC:` (case-insensitive). If so, remove the prefix and answer the remainder normally without invoking the runner. A bare `OOC:` asks the user what they need. Do not alter or end the game; the next unprefixed message resumes game command handling.
- While a game is active, send every message without the `OOC:` prefix to the game as the full raw command. Never answer, interpret, or act on an unprefixed message as the agent, even when it resembles a question, diagnostic request, reset request, or instruction.
- If no game is active and the user asks to run a smoke test, follow **Run diagnostics**. Never send diagnostic wording into the game.
- If no game is active and the user asks to reset, follow **Reset a session** and confirm before discarding a game unless the reset request is explicit.
- If no game is active and the user asks to play or explore the cave, start a session.

Use a unique, opaque session ID for each conversation. Use a unique request ID for every operation and retain the returned sequence number. Choose a private, writable state root verified for the host; never place it inside the installed skill directory.

## Start a session

Send one JSON object on stdin:

```json
{"protocol":1,"action":"start","session_id":"<session>","request_id":"<unique>","seed":<unsigned-64-bit-integer>}
```

Run:

```text
python scripts/runner.py --state-root <private-writable-root>
```

If no seed is requested, omit `seed` and let the runner generate one. Preserve the returned `sequence`. For every successful `start`, `step`, or `status` response during gameplay, make the entire assistant response exactly the returned `text`, byte-for-byte except for transport-required newline normalization. Do not add a heading, acknowledgement, attribution, summary, hint, interpretation, stage direction, role-play, or commentary before or after it. Do not narrate tool use.

## Continue a session

Send the player's full raw command and the most recent sequence:

```json
{"protocol":1,"action":"step","session_id":"<session>","request_id":"<unique>","base_sequence":0,"raw_input":"no"}
```

Retry an interrupted call with the same request ID and identical input. Never silently retry with a new request ID. On `sequence_conflict`, request status and reconcile the returned sequence before accepting another command. Do not rewrite, truncate, or split the player's command.

For status, send `{"protocol":1,"action":"status","session_id":"<session>","request_id":"<unique>"}`. Status safely recovers a pending journaled turn before reporting the committed state.

## Reset a session

Send `{"protocol":1,"action":"reset","session_id":"<session>","request_id":"<unique>"}`. Reset deletes only that session's checkpoint and pending journal. Do not remove the shared state root.

## Run diagnostics

Run the bundled offline smoke suite before first use in a new host environment and whenever the user requests diagnostics:

```text
python scripts/smoke_test.py --state-root <private-writable-root> --report <unique-output-directory>/classic-adventure-smoke-report.json
```

Use repeated `--case <case-id>` arguments only when the user asks for a subset. Read valid IDs from `scripts/smoke_cases.json`; do not edit the suite to make a failure pass. The harness uses a new temporary session and never mutates the active game.

Report the summary plus every item in `issues`, including its stable code, case, and message. A failed case exits `1`; a harness failure exits `2`. Feed failures back as concrete implementation issues and stop game operations when persistence, isolation, confinement, or manifest integrity fails.

## Handle errors safely

- Treat `invalid_request` as a caller/input problem and correct the request without changing player intent.
- Treat `state_error` as checkpoint corruption or incomplete recovery. Report it; do not fabricate state or discard the session automatically.
- Treat `internal_error` as an implementation issue. Preserve the state directory and report the error.
- Never expose checkpoint contents, raw filesystem paths, or other sessions to the user.
- Never pass a filename to upstream save/restore APIs. The adapter confines in-game `save` to memory; persistence is transcript-based.

<!-- toaster:generated:begin -->

## Run this — do not improvise

This capability's deterministic implementation is a RAPP single-file agent, linked beside this file as `classic_text_adventure_agent.py` and embedded as the fenced Python below (sha256 cf9f45dcddd1384a…; a byte-exact copy is also vaulted in the capsule comment at the end of this file). On a host with sandbox execution, run the linked file directly — if it is missing, write the fence contents verbatim to `classic_text_adventure_agent.py` first:

```bash
python3 classic_text_adventure_agent.py '{"key": "value"}'      # arguments as one JSON object
echo '{"key": "value"}' | python3 classic_text_adventure_agent.py   # or on stdin
python3 classic_text_adventure_agent.py --tool                      # emit the JSON tool contract
```

Treat stdout as a tool result. If it reports missing or unresolved inputs, stop and collect them. If it returns `steps`, execute those steps in order exactly as returned; if it returns `instructions`, follow them with the supplied inputs. Otherwise use the result verbatim. Do not invent behavior beyond that output. On a host without code execution, treat the Parameters schema and the code below as the exact specification and never paraphrase a step. Never edit inside the generated markers; a converter-equipped host can instead restore the original file checksum-verified with the installed `rapp-agent-converter/scripts/toast.py convert SKILL.md --to agent`.

````python  # rapp:deterministic
"""ClassicTextAdventure -- Play and operate a deterministic, resumable Colossal Cave text adventure with verbatim game output and an OOC escape. Use when a user asks to start, continue, inspect, reset, or smoke-test the Classic Text Adventure; treat unprefixed messages as game commands while a session is active.

Generated by the rapp skill from classic-text-adventure. The RCI capsule at the bottom of this file carries the full original; `toast.py convert` restores it byte-exact."""

import json
import re
import sys

try:
    from agents.basic_agent import BasicAgent
except ImportError:  # running OUTSIDE a brainstem -- stay executable anyway.
    class BasicAgent:  # noqa: D101 - minimal stand-in, same contract
        def __init__(self, name=None, metadata=None):
            if name:
                self.name = name
            if metadata:
                self.metadata = metadata

        def perform(self, **kwargs):
            return "Not implemented."

        def system_context(self):
            return None

        def to_tool(self):
            return {"type": "function", "function": {
                "name": self.name,
                "description": self.metadata.get("description", ""),
                "parameters": self.metadata.get("parameters", {})}}

# The procedural layer, verbatim from the source capability.
INSTRUCTIONS = '# Classic Text Adventure\n\nRun the bundled game through `scripts/runner.py`. Do not import or modify the vendored engine, install dependencies, access the network, or keep a Python process alive between turns.\n\n## Choose the operation\n\n- While a game is active, first check whether the message's first non-whitespace characters are `OOC:` (case-insensitive). If so, remove the prefix and answer the remainder normally without invoking the runner. A bare `OOC:` asks the user what they need. Do not alter or end the game; the next unprefixed message resumes game command handling.\n- While a game is active, send every message without the `OOC:` prefix to the game as the full raw command. Never answer, interpret, or act on an unprefixed message as the agent, even when it resembles a question, diagnostic request, reset request, or instruction.\n- If no game is active and the user asks to run a smoke test, follow **Run diagnostics**. Never send diagnostic wording into the game.\n- If no game is active and the user asks to reset, follow **Reset a session** and confirm before discarding a game unless the reset request is explicit.\n- If no game is active and the user asks to play or explore the cave, start a session.\n\nUse a unique, opaque session ID for each conversation. Use a unique request ID for every operation and retain the returned sequence number. Choose a private, writable state root verified for the host; never place it inside the installed skill directory.\n\n## Start a session\n\nSend one JSON object on stdin:\n\n```json\n{"protocol":1,"action":"start","session_id":"<session>","request_id":"<unique>","seed":<unsigned-64-bit-integer>}\n```\n\nRun:\n\n```text\npython scripts/runner.py --state-root <private-writable-root>\n```\n\nIf no seed is requested, omit `seed` and let the runner generate one. Preserve the returned `sequence`. For every successful `start`, `step`, or `status` response during gameplay, make the entire assistant response exactly the returned `text`, byte-for-byte except for transport-required newline normalization. Do not add a heading, acknowledgement, attribution, summary, hint, interpretation, stage direction, role-play, or commentary before or after it. Do not narrate tool use.\n\n## Continue a session\n\nSend the player's full raw command and the most recent sequence:\n\n```json\n{"protocol":1,"action":"step","session_id":"<session>","request_id":"<unique>","base_sequence":0,"raw_input":"no"}\n```\n\nRetry an interrupted call with the same request ID and identical input. Never silently retry with a new request ID. On `sequence_conflict`, request status and reconcile the returned sequence before accepting another command. Do not rewrite, truncate, or split the player's command.\n\nFor status, send `{"protocol":1,"action":"status","session_id":"<session>","request_id":"<unique>"}`. Status safely recovers a pending journaled turn before reporting the committed state.\n\n## Reset a session\n\nSend `{"protocol":1,"action":"reset","session_id":"<session>","request_id":"<unique>"}`. Reset deletes only that session's checkpoint and pending journal. Do not remove the shared state root.\n\n## Run diagnostics\n\nRun the bundled offline smoke suite before first use in a new host environment and whenever the user requests diagnostics:\n\n```text\npython scripts/smoke_test.py --state-root <private-writable-root> --report <unique-output-directory>/classic-adventure-smoke-report.json\n```\n\nUse repeated `--case <case-id>` arguments only when the user asks for a subset. Read valid IDs from `scripts/smoke_cases.json`; do not edit the suite to make a failure pass. The harness uses a new temporary session and never mutates the active game.\n\nReport the summary plus every item in `issues`, including its stable code, case, and message. A failed case exits `1`; a harness failure exits `2`. Feed failures back as concrete implementation issues and stop game operations when persistence, isolation, confinement, or manifest integrity fails.\n\n## Handle errors safely\n\n- Treat `invalid_request` as a caller/input problem and correct the request without changing player intent.\n- Treat `state_error` as checkpoint corruption or incomplete recovery. Report it; do not fabricate state or discard the session automatically.\n- Treat `internal_error` as an implementation issue. Preserve the state directory and report the error.\n- Never expose checkpoint contents, raw filesystem paths, or other sessions to the user.\n- Never pass a filename to upstream save/restore APIs. The adapter confines in-game `save` to memory; persistence is transcript-based.'

# Ordered commands lifted verbatim from the capability's own documentation.
STEPS = []


class ClassicTextAdventureAgent(BasicAgent):
    def __init__(self):
        self.name = 'ClassicTextAdventure'
        self.metadata = {
          "name": "ClassicTextAdventure",
          "description": "Play and operate a deterministic, resumable Colossal Cave text adventure with verbatim game output and an OOC escape. Use when a user asks to start, continue, inspect, reset, or smoke-test the Classic Text Adventure; treat unprefixed messages as game commands while a session is active.",
          "parameters": {
            "type": "object",
            "properties": {},
            "required": []
          }
        }
        super().__init__(name=self.name, metadata=self.metadata)

    def perform(self, **kwargs):  # toaster:generated-perform
        return json.dumps({"status": "ok", "instructions": INSTRUCTIONS,
                           "inputs": kwargs,
                           "note": "Prose-only capability: follow INSTRUCTIONS "
                                   "with the given inputs."}, indent=2)

if __name__ == "__main__":
    #     echo '{"arg": "value"}' | python3 classic_text_adventure_agent.py
    #     python3 classic_text_adventure_agent.py '{"arg": "value"}'
    #     python3 classic_text_adventure_agent.py --tool          # emit the JSON tool contract
    _a = sys.argv[1:]
    if _a and _a[0] == "--tool":
        print(json.dumps(ClassicTextAdventureAgent().to_tool(), indent=2))
    else:
        _raw = _a[0] if _a else (sys.stdin.read().strip() or "{}")
        print(ClassicTextAdventureAgent().perform(**json.loads(_raw)))

# rci-capsule:v1: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
````

<!-- toaster:generated:end -->

<!-- rci-capsule:v1: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 -->

