# The API reference of the kits Every kit has a complete, generated API reference. It is the first thing to read before configuring a kit, writing a mod for it, or writing its presentation module. ## Where to read it | Who | How | |---|---| | AI agent (MCP) | `gripforge_gamekit_api { id, sections? }` (compact Markdown), or `gripforge_gamekit_get { id, section: "api" }` (JSON) | | CLI | `grip-forge kit api [--section config,hooks] [--json] [--full]` | | HTTP | `GET /api/v1/gamekits//api` (JSON), `?format=md`, `&compact=1`, `§ions=config,hooks` | | Catalogue | the **API** tab of a kit page | | Code | `defaultRegistry().apiReference(id)`, `kitApiMarkdown(ref)` (`@gripforge/gamekits`) | ## What it holds | Section | From | Content | |---|---|---| | summary | `kits//api.ts` | 3 to 5 lines: what the kit does, when to use it, with which kits | | config | manifest `configSchema` + notes | every key at every depth: type, default, unit, limits, flags `mod` (a mod may set it), `live` (read again while running), `scene` (a scene may override it) | | hooks | `engine.hooks` | payload fields, mutable fields, cancellable, targets, example tap | | events | `events.emits` / `listens` | when, payload fields, sample payload; for a listened topic, the kits that emit it | | views | `webViews`, `vars` | web interfaces of the kit and its HUD variables | | services | `provides` + runtime | capabilities, the service object (`ctx.services.get`) and its methods | | verbs | `engine.verbs`, `extensions` | script actions and conditions with their arguments | | slots | `assets` | asset slots: kinds, required, creature role and clips | | collections | `data`, `engine.registries` | data collections: fields, example document, mod / live / per scene, registry with `extends` | | inputs | `inputs`, `sticks` | input actions and default keys | | modding | `engine.moddable` | every mod point in one place | | module | the presentation module of the kit | the Bevy presentation module: version, needs, commands to the kit host, ABI command families, WGSL files, web UI (`web/ui.json`) | | parity | adapters, Rust kit host, module | status per target; `(libgfkits)` when the target runs the kit's Rust logic in the native library (Godot, Unity, desktop: derived from the library, never declared by hand), and one line per lack of a target, named (a view to provide by a ui.webui fragment, a fragment not yet released, the network core, a kit that refuses a native project) | | changelog | manifest | versions, breaking changes | | examples | notes, or generated | a config, and a `gripforge.mod/1` mod that adapts the kit | | readme | `docs.ts` | the README of the kit (full form only) |