[add] Openwolf
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
---
|
||||
description: OpenWolf protocol enforcement — active on all files
|
||||
globs: **/*
|
||||
---
|
||||
|
||||
- Check .wolf/anatomy.md before reading any project file
|
||||
- Check .wolf/cerebrum.md Do-Not-Repeat list before generating code
|
||||
- After writing or editing files, update .wolf/anatomy.md and append to .wolf/memory.md
|
||||
- After receiving a user correction, update .wolf/cerebrum.md immediately (Preferences, Learnings, or Do-Not-Repeat)
|
||||
- LEARN from every interaction: if you discover a convention, user preference, or project pattern, add it to .wolf/cerebrum.md. Low threshold — when in doubt, log it.
|
||||
- BEFORE fixing any bug or error: read .wolf/buglog.json for known fixes
|
||||
- AFTER fixing any bug, error, failed test, failed build, or user-reported problem: ALWAYS log to .wolf/buglog.json with error_message, root_cause, fix, and tags
|
||||
- If you edit a file more than twice in a session, that likely indicates a bug — log it to .wolf/buglog.json
|
||||
- When the user asks to check/evaluate UI design: run `openwolf designqc` to capture screenshots, then read them from .wolf/designqc-captures/
|
||||
- When the user asks to change/pick/migrate UI framework: read .wolf/reframe-frameworks.md, ask decision questions, recommend a framework, then execute with the framework's prompt
|
||||
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"hooks": {
|
||||
"SessionStart": [
|
||||
{
|
||||
"matcher": "",
|
||||
"hooks": [
|
||||
{
|
||||
"type": "command",
|
||||
"command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/session-start.js\"",
|
||||
"timeout": 5
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"PreToolUse": [
|
||||
{
|
||||
"matcher": "Read",
|
||||
"hooks": [
|
||||
{
|
||||
"type": "command",
|
||||
"command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/pre-read.js\"",
|
||||
"timeout": 5
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"matcher": "Write|Edit|MultiEdit",
|
||||
"hooks": [
|
||||
{
|
||||
"type": "command",
|
||||
"command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/pre-write.js\"",
|
||||
"timeout": 5
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"PostToolUse": [
|
||||
{
|
||||
"matcher": "Read",
|
||||
"hooks": [
|
||||
{
|
||||
"type": "command",
|
||||
"command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/post-read.js\"",
|
||||
"timeout": 5
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"matcher": "Write|Edit|MultiEdit",
|
||||
"hooks": [
|
||||
{
|
||||
"type": "command",
|
||||
"command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/post-write.js\"",
|
||||
"timeout": 10
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"Stop": [
|
||||
{
|
||||
"matcher": "",
|
||||
"hooks": [
|
||||
{
|
||||
"type": "command",
|
||||
"command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/stop.js\"",
|
||||
"timeout": 10
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -3,3 +3,4 @@ __pycache__/
|
||||
*.pyo
|
||||
save.qzl
|
||||
vosk-model-*/
|
||||
.wolf
|
||||
|
||||
Vendored
+4
@@ -1,6 +1,7 @@
|
||||
{
|
||||
"cSpell.words": [
|
||||
"ACTORBIT",
|
||||
"aplay",
|
||||
"CONTBIT",
|
||||
"DARKBIT",
|
||||
"DOORBIT",
|
||||
@@ -16,11 +17,13 @@
|
||||
"NDESCBIT",
|
||||
"ONBIT",
|
||||
"OPENBIT",
|
||||
"OPENWOLF",
|
||||
"OUTSIDEBIT",
|
||||
"prosser",
|
||||
"prsa",
|
||||
"prsi",
|
||||
"prso",
|
||||
"pycache",
|
||||
"READBIT",
|
||||
"REVISITBIT",
|
||||
"RLANDBIT",
|
||||
@@ -35,6 +38,7 @@
|
||||
"TRYTAKEBIT",
|
||||
"VEHBIT",
|
||||
"vogon",
|
||||
"vosk",
|
||||
"VOWELBIT",
|
||||
"WEARBIT",
|
||||
"WORNBIT"
|
||||
|
||||
@@ -1,3 +1,9 @@
|
||||
# OpenWolf
|
||||
|
||||
@.wolf/OPENWOLF.md
|
||||
|
||||
This project uses OpenWolf for context management. Read and follow .wolf/OPENWOLF.md every session. Check .wolf/cerebrum.md before generating code. Check .wolf/anatomy.md before reading files.
|
||||
|
||||
# CLAUDE.md
|
||||
|
||||
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
||||
@@ -25,18 +31,18 @@ This produces a `.z5` story file playable in any Z-machine interpreter (Frotz, L
|
||||
|
||||
**Source files by function:**
|
||||
|
||||
| File | Purpose |
|
||||
|------|---------|
|
||||
| `s4.zil` | Main file; game title, file includes, property defaults |
|
||||
| File | Purpose |
|
||||
| ------------- | -------------------------------------------------------------------------------------- |
|
||||
| `s4.zil` | Main file; game title, file includes, property defaults |
|
||||
| `globals.zil` | Global variables, directions, meta-objects (ROOMS, IT, NOT-HERE-OBJECT, LOCAL-GLOBALS) |
|
||||
| `parser.zil` | Text parser — tokenizing input, resolving nouns/adjectives, disambiguation |
|
||||
| `syntax.zil` | Vocabulary: BUZZ words, SYNONYMs, direction aliases, verb SYNTAX definitions |
|
||||
| `verbs.zil` | Verb handler routines (`V-TAKE`, `V-DROP`, `V-EXAMINE`, etc.) and game commands |
|
||||
| `misc.zil` | Utility routines, interrupt/clock system, macros |
|
||||
| `earth.zil` | Earth locations — Arthur's bedroom, front of house, pub, country lane |
|
||||
| `vogon.zil` | Vogon ship — hold, guard's room, airlock, poetry appreciation |
|
||||
| `heart.zil` | Heart of Gold — bridge, engine room, corridors, Infinite Improbability Drive |
|
||||
| `unearth.zil` | Off-Earth locations — Traal (Ravenous Bugblatter Beast), Damogran, Magrathea |
|
||||
| `parser.zil` | Text parser — tokenizing input, resolving nouns/adjectives, disambiguation |
|
||||
| `syntax.zil` | Vocabulary: BUZZ words, SYNONYMs, direction aliases, verb SYNTAX definitions |
|
||||
| `verbs.zil` | Verb handler routines (`V-TAKE`, `V-DROP`, `V-EXAMINE`, etc.) and game commands |
|
||||
| `misc.zil` | Utility routines, interrupt/clock system, macros |
|
||||
| `earth.zil` | Earth locations — Arthur's bedroom, front of house, pub, country lane |
|
||||
| `vogon.zil` | Vogon ship — hold, guard's room, airlock, poetry appreciation |
|
||||
| `heart.zil` | Heart of Gold — bridge, engine room, corridors, Infinite Improbability Drive |
|
||||
| `unearth.zil` | Off-Earth locations — Traal (Ravenous Bugblatter Beast), Damogran, Magrathea |
|
||||
|
||||
**Assembly files (`.xzap`):** `s4.xzap` is the assembly include order; `s4freq.xzap` defines frequently-used strings (Huffman-compressed). `s4.errors` is the assembler output log.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user