Reference
Templates
Ready scaffolds for every file a bundle contains.
These four scaffolds ship inside the gem (lib/okf/skill/templates/) and install with the agent skill, so an agent authors from the same shapes you read here. They are quoted verbatim.
Concept
The everyday file. Only type is mandatory; keep the rest honest rather than complete (bundle anatomy explains each field's job):
---
type: <Concept type, e.g. Service, BigQuery Table, Metric, Playbook, Decision>
title: <Human-readable display name>
description: <Single sentence summarizing the concept.>
resource: <Canonical URI of the underlying asset — omit for abstract concepts>
tags: [<tag>, <tag>]
timestamp: <ISO 8601, e.g. 2026-06-14T10:00:00Z>
---
# Overview
<What this concept is and why it matters.>
# Schema
<Use for assets with fields/columns; otherwise replace with relevant sections.>
| Field | Type | Description |
|-------|------|-------------|
| | | |
# Citations
[1] [<source title>](<url>)
Nested index.md
A directory's map. No frontmatter, just group headings and listings:
# <Directory / Group Heading>
* [<Title>](<relative-url>) - <short description from the concept's frontmatter>
* [<Title>](<relative-url>) - <short description>
# <Another Group>
* [<Subdirectory>](<subdir>/) - <short description of the subdirectory>
Root index.md
Identical, except the bundle root carries the format version and nothing else in frontmatter:
---
okf_version: "0.1"
---
# <Directory / Group Heading>
* [<Title>](<relative-url>) - <short description from the concept's frontmatter>
* [<Title>](<relative-url>) - <short description>
log.md
The bundle's own history, newest first, ISO-dated:
# Update Log
## <YYYY-MM-DD>
* **Creation**: <what was created> — [<concept>](<bundle-relative-path>).
* **Update**: <what changed> — [<concept>](<bundle-relative-path>).
* **Deprecation**: <what was retired> — [<concept>](<bundle-relative-path>).
okf validate enforces the reserved-file rules these scaffolds encode, so starting from them keeps a bundle conformant by construction.