GolemBot — Prompts
CLAUDE.md — Hard Architectural Constraints
## Architecture Hard Constraints
When modifying code under `src/`, the following constraints must not be violated.
### Things You Must Never Do
1. **Don't do what the Agent should do** — GolemBot does not manage context window, dispatch
tools, reason, or set session TTL. All "intelligent" behavior is delegated to the
underlying Coding Agent.
2. **Don't add new core concepts** — The framework has only two concepts: assistant directory
+ Skill. Do not introduce Tool, Blueprint, Registry, Pipeline, or other abstractions.
3. **Don't put CLI logic in the core library** — `cli.ts` is a thin shell; it only parses
arguments and formats output. All business logic must live in `index.ts` / `workspace.ts`
/ `engine.ts` / `session.ts` / `server.ts`.
4. **Don't declare Skills in config** — The `skills/` directory is the single source of
truth. `golem.yaml` only configures engine, name, and infrastructure settings.
5. **Process invocation is engine-owned** — All engines use `child_process.spawn`. Do not
assume invocation style outside the engine.
Prompting technique: Hard negation list (anti-patterns). This is an unusual pattern — the CLAUDE.md enforces architectural invariants by listing what must never be added. It's a "negative specification" — defining the framework by what it refuses to be.
Engine Notes — Claude Code
From CLAUDE.md (verbatim):
### Claude Code
- Binary: `~/.local/bin/claude`
- Flags: `-p <prompt> --output-format stream-json --verbose --dangerously-skip-permissions`
- `--verbose` is required for intermediate stream events
- Auth: `claude auth login` or `ANTHROPIC_API_KEY` env var
Prompting technique: Exact CLI invocation spec with rationale. Prevents agents from guessing flags.
Engine Notes — Codex
From CLAUDE.md (verbatim):
### Codex
- Binary: `codex` (npm: `@openai/codex`)
- Flags: `exec --json --full-auto --skip-git-repo-check [--model X] <prompt>`
- Resume: `exec resume --json --full-auto --skip-git-repo-check [--model X] <thread_id> <prompt>`
Prompting technique: Separate invocation pattern for new session vs resume — the agent learns both paths.
AGENTS.md (Auto-generated by workspace.ts)
GolemBot auto-generates an AGENTS.md file in the assistant directory by scanning the skills/ folder. This file lists all available skills and their descriptions, giving the underlying coding agent awareness of its skill inventory. The agent is expected to read this at session start.
Prompting technique: Auto-generated capability manifest — the agent learns what it can do from a file, not from hardcoded instructions. This keeps the skill inventory dynamic.