Claude-skill-registry kirby-headless-api
Exposes Kirby content to headless clients using the API, KQL, and JSON representations. Use when building API endpoints, KQL queries, or headless frontends.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/kirby-headless-api" ~/.claude/skills/majiayu000-claude-skill-registry-kirby-headless-api && rm -rf "$T"
manifest:
skills/data/kirby-headless-api/SKILL.mdsource content
Kirby Headless API
KB entry points
kirby://kb/scenarios/44-headless-api-with-kqlkirby://kb/scenarios/02-json-content-representation-ajax-load-morekirby://kb/scenarios/45-headless-kiosk-applicationkirby://kb/scenarios/28-figma-auto-populate
Required inputs
- Consumers and auth requirements.
- Public vs private content boundaries.
- Response shape and caching policy.
- Preferred approach (KQL, representations, or routes).
Default delivery choices
- Use
representations for page-backed responses..json - Use KQL for cross-collection queries and filtered datasets.
- Use routes for non-page or composite endpoints.
Default response envelope
{ "status": "ok", "data": {} }
Caching rule
- Public endpoints: set
with a short max-age.Cache-Control - Authenticated endpoints: disable caching.
Common pitfalls
- Exposing private fields or drafts in JSON output.
- Caching authenticated responses.
Verification checklist
- Confirm auth requirements and public/private boundaries.
- Validate JSON output for required fields.
Workflow
- Clarify consumers, authentication, and which content is public vs private.
- Call
and readkirby:kirby_init
to confirm API settings.kirby://config/api - Check plugin availability for KQL:
.kirby:kirby_plugins_index - If you need custom endpoints, inspect existing routes with
(install runtime if needed).kirby:kirby_routes_index - Search the KB with
(examples: "headless api with kql", "json content representation", "figma auto populate", "headless kiosk").kirby:kirby_search - Use
to fetch official API/KQL docs when KB coverage is insufficient.kirby:kirby_online - Implement:
- enable API auth (
) when requiredapi.basicAuth - create or update KQL queries for
/api/query - add
representations for template-backed JSON.json
- enable API auth (
- Verify:
- request
with Basic Auth/api/query - render
representations with.jsonkirby:kirby_render_page(contentType: json)
- request