From 57e92abe72e1a4c546e67fdfb4ac1ec54e6843e6 Mon Sep 17 00:00:00 2001 From: slaguru666 <111923774+slaguru666@users.noreply.github.com> Date: Sun, 19 Jul 2026 12:17:52 +0100 Subject: [PATCH] add rpg-skill memory --- CLAUDE.md | 7 +----- memory/MEMORY.md | 1 + memory/afterimage-scenario.md | 15 ++++++------ memory/rpg-skill.md | 17 +++++++++++++ settings.json | 46 +++++++++++------------------------ 5 files changed, 41 insertions(+), 45 deletions(-) create mode 100644 memory/rpg-skill.md diff --git a/CLAUDE.md b/CLAUDE.md index fc53abb..594f989 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -27,12 +27,7 @@ Discard: ## Available Tools & Integrations - **GitHub MCP** — use for repo operations, PRs, issues, code search. Always prefer this over manual `gh` CLI when available. - **Graphiti MCP** — knowledge graph memory at `graphiti.timevans.uk`. Use `search_memory_facts` at session start to recall prior context. Use `add_memory` to persist important decisions, discoveries, and project state. -- **Codex CLI** — `@openai/codex` (binary `codex`). The binary and its auth are per-machine and not synced, so verify rather than assume — check `codex --version` and `codex login status`. - - Binary: `install.sh` installs it only when `npm` is already present, so a machine without Node gets nothing but a warning. Install Node first, then `npm install -g @openai/codex`. - - Auth: ChatGPT login, creds in `~/.codex/auth.json`. Only run `codex login --device-auth` (SSH-friendly) if `codex login status` says you are logged out — a valid `auth.json` may already exist even when the binary is missing. - - Config: `~/.codex/config.toml` plus `.config.toml` per profile, generated by the `codex-ops-kit` repo (`~/codex-ops-kit`, `slaguru666/codex-ops-kit`) — edit the templates there, not the live files, or the next install overwrites them. Profiles: `codex --profile economy|balanced|deep`; plain `codex` uses balanced defaults. - - Use via the `codex@openai-codex` plugin (`/codex:*` commands) or directly: `codex exec ""` (add `--skip-git-repo-check` outside a git repo). -- The user runs Claude Code on multiple machines: `timevans-MINI-S` (Linux, Zorin OS 18.1; static LAN IP `192.168.1.6`, key-only SSH — see the `infra-minis-remote-access` memory) and a Mac Mini (`tims-mac-mini-local`). Check the hostname to know which one you're on. +- The user's machine is a Mac Mini (`tims-mac-mini-local`). - The user adds `$HOME/bin` to PATH in `.bashrc`. ## Memory Protocol diff --git a/memory/MEMORY.md b/memory/MEMORY.md index 109030c..8455da2 100644 --- a/memory/MEMORY.md +++ b/memory/MEMORY.md @@ -14,3 +14,4 @@ - [MINI-S browser automation](infra_minis_browser_automation.md) — Playwright MCP (headless Chromium) lets Claude view/control web pages on the LAN incl. the Zyxel router; restart Claude after adding to load tools - [Local LLM agent stack](local-llm-agent-stack.md) — Hermes Agent + Ollama + Gemma 4 12B on the user's Mac; install gotchas (64K ctx, uv-managed Python 3.11) - [NotebookLM CLI setup](notebooklm-cli-setup.md) — notebooklm-py on the Mac; pin --python 3.12 (else silent 0.1.1 downgrade), browser login, launchd auth-refresh keepalive +- [RPG skill](rpg-skill.md) — house scenario-writing skill at ~/.claude/skills/rpg, shared via claude-config; pull+install before sync, sync.sh after RPG work. diff --git a/memory/afterimage-scenario.md b/memory/afterimage-scenario.md index 2dab5bd..20602f8 100644 --- a/memory/afterimage-scenario.md +++ b/memory/afterimage-scenario.md @@ -1,20 +1,21 @@ --- name: afterimage-scenario -description: AFTERIMAGE — new 4-player Blade Runner scenario for Contingency 2026 Wed Slot 3; repo slaguru666/Contingency26 (private); playtest fixes pending review +description: AFTERIMAGE — 4-player Blade Runner scenario for CONTINUUM 2026, Friday 24 July, Slot 2 (20:00–00:00); repo slaguru666/Continuum2026 (private) metadata: node_type: memory type: project originSessionId: 445b61b6-6e68-4f8e-8caa-28bf213400e9 + modified: 2026-07-19T10:56:54.351Z --- -AFTERIMAGE is the new Blade Runner RPG scenario for Contingency 2026, Wednesday 28 Jan 2026, Slot 3 (4 players, replaces the 6-player Shattered Nexus plan). Chamber-noir: memory designer Elias Kade dead; three replicant copies of his estranged daughter Aris; the real Aris may or may not have killed him — ambiguity is by design and must not be resolved by dice. Foot chase in Act Two (night market); duplicated key-memory monologue handout (print W3-H02-A twice) is the core reveal. +AFTERIMAGE is the Blade Runner RPG scenario for **Continuum 2026** (continuumconvention.co.uk, Cranfield), **Friday 24 July 2026, Slot 2 = 20:00–00:00**, 4 players. *(Corrected 2026-07-19: it was originally mis-filed under Contingency 2026 Wed Slot 3 — the old repo `Contingency26` is now a pointer stub.)* Chamber-noir: memory designer Elias Kade dead; three replicant copies of his estranged daughter Aris; the real Aris may or may not have killed him — ambiguity is by design and must not be resolved by dice. Foot chase in Act Two (night market); duplicated key-memory monologue handout (print F2-H02-A twice) is the core reveal. -Locations: private GitHub repo `slaguru666/Contingency26`; local copy in the con folder under `.../Slot 3 Evening Blade Runner/AFTERIMAGE/`. +Locations: private GitHub repo `slaguru666/Continuum2026` (full history); local copy at `.../RPGS/Conventions/Continuum 2026/01 Friday/Slot 2 Evening Blade Runner/AFTERIMAGE/`. Asset IDs are `F2-*`; scenario file is `scenarios/fri-slot2-blade-runner-afterimage.md`. -Also in the repo: **REP-DETECT GM Console** (`gm-utility/index.html`) — Tim's touch-screen Blade Runner GM app; offline single-file HTML, localStorage per module + JSON export, scenario modules via `BRGM.registerModule()` in `gm-utility/modules/` (AFTERIMAGE included). To add a scenario: new module JS + a script tag in index.html. +Also in the repo: **REP-DETECT GM Console** (`gm-utility/index.html`) — Tim's touch-screen Blade Runner GM app; offline single-file HTML, localStorage per module + JSON export, animated idle screen (film-style Spinner + live rain), scenario modules via `BRGM.registerModule()` in `gm-utility/modules/` (AFTERIMAGE included). To add a scenario: new module JS + a script tag in index.html. -Status (2026-07-18, v2.2): **convention-ready** — three desk playtests (GM chair, Act Two stress, player chair), three endings, all inside 3:30; art complete; only physical prep remains (print sheets/handouts — monologue card ×2 — and Tim's read-through). Earlier v2.1 detail: Fixes 1–5 applied (field-scan `IDENT CONFLICT` spoof, idle players voice chase obstacles capped at 30s cameos, monologue recital staging, Esper facial search sanctioned, dawn-pressure throttle + partial-wipe ending). Act Two stress re-run done (split path + no-split/chase-escape variant); patches 10–12 added — notably Lark is now the backup carrier of Clue 7 so the trail has no single point of failure. Jax Miller confirmed as Fixer. Open: cosmetic findings 6–9. Remaining prep: print handouts (monologue card ×2), generate art via `mj-gen` from the scenario's prompts table, GM read-through. +Status (v2.3+, convention-ready): three desk playtests (GM chair, Act Two stress, player chair), three endings, all inside 3:30; art complete (F2-ART-01..06 + app art); PDFs exported with Continuum branding; only physical prep remains (print sheets/handouts — monologue card ×2 — and Tim's read-through). Cosmetic playtest findings 6–9 still open. -v2.3 continuity audit (Tim-requested; he's had date/name errors in past scenario work — always audit these): Aris b. 1998, pier memory 2007 (age 9), adult (33) at the 2031 callout, off-grid 2031 (= six years in 2037); Kade at Tyrell 2009–2022, gap, Wallace 2028–2031; death Wed 23:40, found Fri 10:15 (~35 hrs); **Sloane is a Nexus-9, serial SN9-1.11, 12 months** (not N8/SN8-1.11); Kael's examiner is Dr. Imani Okafor, Sloane's bakery is Castellano & Sons (renamed to avoid collision). +Continuity anchors (Tim-requested audit; he's had date/name errors in past scenario work — always audit these): Aris b. 1998, pier memory 2007 (age 9), adult (33) at the 2031 callout, off-grid 2031 (= six years in 2037); Kade at Tyrell 2009–2022, gap, Wallace 2028–2031; death Wed 23:40, found Fri 10:15 (~35 hrs); **Sloane is a Nexus-9, serial SN9-1.11, 12 months** (not N8); Kael's examiner is Dr. Imani Okafor; Sloane's bakery is Castellano & Sons. -Portrait art mapping in the con folder: true portraits are `Rick.png`, `JAX copy ZOOM.png`, `KAEL copy.png`, `SLONE Zoom.png`; the `* Trans` PNGs are sheet scans, not portraits. Related: [[mapwright-module]], [[user_github]]. +Portrait art mapping (art also copied into the repo): true portraits are `Rick.png`, `JAX copy ZOOM.png`, `KAEL copy.png`, `SLONE Zoom.png`; the `* Trans` PNGs are sheet scans, not portraits. Related: [[mapwright-module]], [[user_github]]. diff --git a/memory/rpg-skill.md b/memory/rpg-skill.md new file mode 100644 index 0000000..2a93571 --- /dev/null +++ b/memory/rpg-skill.md @@ -0,0 +1,17 @@ +--- +name: rpg-skill +description: "The \"rpg\" Claude Code skill — house scenario-writing system, shared via claude-config repo, self-updating lessons log" +metadata: + node_type: memory + type: project + originSessionId: 063192d8-013b-4c4f-9d0b-ad355d9ae7c1 + modified: 2026-07-19T11:17:43.964Z +--- + +The **rpg** skill at `~/.claude/skills/rpg/` (created 2026-07-19) auto-triggers on any tabletop RPG scenario work and encodes the house system: 3h30 convention structure with 2:45 hard rule, three-route clue standard, pregen private seams, desk playtest protocol, mj-gen art pipeline. + +**Live loop:** transferable lessons are appended to `references/lessons.md` (promotion rule: delete once encoded into a reference); scenario-specific facts go to Graphiti; sync across machines with `cd ~/Git/claude-config && ./sync.sh`. + +**Sync ordering matters:** `sync.sh` copies live state over the repo with deletes — always `git pull && ./install.sh` before working on a machine, `./sync.sh` after, or machines clobber each other's memory/skill files (this happened once; fixed by union merge 2026-07-19). + +Related: [[afterimage-scenario]] (the exemplar scenario the skill was distilled from). diff --git a/settings.json b/settings.json index abcb4f0..381f339 100644 --- a/settings.json +++ b/settings.json @@ -14,18 +14,9 @@ "Bash(/Users/timevans/bin/mj-capture-command *)" ] }, - "model": "opus", "enabledPlugins": { "codex@openai-codex": true, - "warp@claude-code-warp": true, - "superpowers@claude-plugins-official": true, - "claude-md-management@claude-plugins-official": true, - "aws-agents@claude-plugins-official": true, - "feature-dev@claude-plugins-official": true, - "huggingface-skills@claude-plugins-official": true, - "amazon-location-service@claude-plugins-official": true, - "ui-ux-pro-max@ui-ux-pro-max-skill": true, - "impeccable@impeccable": true + "warp@claude-code-warp": true }, "extraKnownMarketplaces": { "claude-code-warp": { @@ -33,30 +24,21 @@ "source": "github", "repo": "warpdotdev/claude-code-warp" } - }, - "openai-codex": { - "source": { - "source": "github", - "repo": "openai/codex-plugin-cc" - } - }, - "ui-ux-pro-max-skill": { - "source": { - "source": "github", - "repo": "nextlevelbuilder/ui-ux-pro-max-skill" - } - }, - "impeccable": { - "source": { - "source": "github", - "repo": "pbakaus/impeccable" - } } }, - "autoUpdatesChannel": "latest", - "tui": "fullscreen", - "theme": "dark", "verbose": false, "preferredNotifChannel": "terminal_bell", - "autoUpdaterStatus": "enabled" + "autoUpdaterStatus": "enabled", + "mcpServers": { + "obsidian": { + "command": "npx", + "args": [ + "-y", + "obsidian-mcp", + "/Users/timevans/Obsidian/TimsVault" + ] + } + }, + "agentPushNotifEnabled": true, + "inputNeededNotifEnabled": true }