Gessa Context for Claude Code
Operational guide for Claude Code and Claude agents building in Gessa at engine version v1 — whether working directly in this repo or driving the engine through MCP. It mirrors the Codex guide and adds the repo-aware workflows (generated-docs and contract gates) that apply when you have the source tree.
Read llms-full.md once for the full model. This page is the short operational checklist plus the repo gates.
Operating loop
Discover read-only, build through canonical surfaces, author behavior semantically, then capture proof. When you also have the source tree, the repo gates below are part of "done."
- Discover first (read-only). Learn the live contract before mutating:
agent_get_project_context,agent_get_semantic_operation_catalog.engine_list_component_types/engine_get_component_schema— read fields before you set them.engine_list_script_nodes/engine_list_script_patterns.- Full list: the MCP Tool Reference.
- Prefer MCP + canonical actions. Build worlds with
world.build.from_prompt/world.build.from_spatial_asset; edit through catalogedproject.*actions —project.world.create,project.entity.create,project.entity.component.set(see the Action Catalog); generate assets viageneration_quote_jobthengeneration_create_job. - Never hand-write full Script IR. Author behavior with Script Semantic Patch (
project_apply_script_semantic_patch);project_create_scriptyields only an empty IR shell. See Script Semantic Patch. - Require proof before claiming done. Use
qa_capture_observer_frame,qa_capture_renderer_viewport,simulation_run. Playable acceptance needs a collision proxy, a nav/query proxy, a semantic anchor, andplayability.acceptedreceipts (see the World Build Contract). Missing proof isnot_run, not pass — never synthesize a receipt.
Repo-aware workflows (when you have the source tree)
- Generated reference is Tier 2 — never hand-edit it. Files under
docs/spec/generated/anddocs/creator/mcp/carry the headerGENERATED FILE: do not edit by hand.To change them, change the Tier-1 source and regenerate withnpm run gen-docs; verify withnpm run gen-docs:check(which is part of the globalnpm run check). - Respect the gates. Documentation is guarded like code. The docs guards run via
npm run check:docs—check:docs-contract-scaffold(structure),check:docs-links(every relative link resolves),check:docs-markdoc(every prose Markdoc tag is well-formed and resolves to its generated reference),check:docs-examples(every ts/tsx/js/json example carries a conceptual or verbatim marker), andcheck:docs-claims(no page asserts an unaccepted capability). Engine contracts are guarded bynpm run check:contract-freeze(withcontracts:bump),npm run check:version-coordinates, and the forbidden vocabulary gatenpm run check:no-2d-references. Run the relevantcheck:*gates before relying on a contract claim or considering a change complete. - Edit hand-authored prose in place at v1. Tier-3 pages (this folder and
docs/product/v1/) link to Tier-2 generated tables and must not restate them. - Cross-reference, do not duplicate. When a page needs a canonical table, link to the generated file rather than copying it. Copying a generated table creates a second, un-versioned source of truth that silently rots.
Hard rules
- Do not invent component, action, or MCP tool names — if it is not in the generated reference or a discovery tool's output, it does not exist at v1. There are 24 built-in ECS components; gameplay concepts are script patterns, not components.
- Do not mutate the raw Project Graph in normal paths;
project_apply_transactionis a low-level escape hatch. - Do not write raw shader/pass fields; reference cataloged capability ids.
- Do not forward your MCP bearer token to downstream tools or services.
- Do not synthesize proof; report degraded captures as degraded.
See also: Codex guide, MCP tool use, Common failures and repairs, Documentation Contract Architecture.
Status: stable — v1 Claude Code operating guide, pinned to engine v1.