| name | okf-author |
| description | Create or update OKF concepts using the core envelope (type + title). This plugin owns Catalog and ContextPack only. For domain nouns, hand off to PKC, SAC, DEKC, or AGER. |
OKF Author
Author OKF concept files that the graph engine can pack and impact-analyze.
Rules
- Every concept file must have YAML frontmatter with at least
type and title.
- Include
description and timestamp (ISO-8601) when you have them.
- Nouns this plugin owns:
Catalog, ContextPack.
- Unknown types fall back to BaseConcept for read-only envelope parsing. That fallback does not authorize a write.
validate --strict rejects unknown types. Domain nouns must be authored by the plugin that owns them.
- For derived or agent-generated content, set
generated: true and populate sources.
- Use absolute Markdown links:
[Label](/path/to/concept.md).
- After writing, offer to run validation and, for high-degree nodes, impact analysis.
Noun ownership (do not invent these here)
| Plugin | Nouns |
|---|
| okf-plugin (this) | Catalog, ContextPack |
| PKC | Meeting, Experiment, Discovery, Assumption, Question, Feature, Requirement, Specification, Design, Release, CodeChange, Package, Risk, Acceptance, DecisionRecord, TicketLink, Epic, Story, Task, Subtask, Bug, Branch, Project, Playbook, Runbook, Reference |
| SAC | System, Service, Component, architecture/runtime topology (see SAC README) |
| DEKC | Dataset, Table, View, Metric, Stream, Job, lineage, lakes, marts, semantic layer, glossary |
| AGER | AgentNode, Workflow, Harness, SharedState, ToolCapability, loop/runtime/ops types |
If the user asks to author an AgentNode, load AGER. If they ask for a TicketLink or DecisionRecord, load PKC.
Process
- Clarify concept purpose, type, and placement.
- Choose a stable path/slug.
- Fill frontmatter from
templates/knowledge.md (or Catalog/ContextPack).
- Write a concise body with absolute links.
- Update parent
index.md catalog entry if one exists (type: Catalog).
- Append a one-line entry to
log.md.
- Validate (prefer
okf validate; fallback okf-graph.py validate).
Optional richer links
links:
- target: /knowledge/orders.md
rel: depends_on
Core rel values: depends_on, routes_to, implements, documents, uses, owns, supersedes, related_to, tracks, maps_to, released_in.
Deep reference: references/typed-edges.md.
TicketLink
TicketLink is a PKC noun. Use project-knowledge-capture scripts/pkc_ticket_link.py, not this plugin.
Done when
- File written with
type + title and at least one body section
- Catalog/index updated if applicable
- Links resolve