domain-knowledge
Scannednpx machina-cli add skill bofrese/bob/domain-knowledge --openclawFiles (1)
SKILL.md
1.8 KB
Process
- Read index:
docs/domain/README.md— scan to check if concept is already documented - If exists: load that file, check whether the current session adds new nuance
- If new: extract from recent conversation — what was clarified, corrected, or explained
- Draft nugget using the format below
- Verify: present draft to user — "I picked up on [concept]. Here's my understanding: [draft]. Correct? Should I save this?"
- Save: update existing file or create
docs/domain/<slug>.md, then update the index
Nugget Format
Keep under 10 lines. Brevity is correctness here.
## [Concept Name]
#[category] #[tag]
[What it means in this project — 1–3 sentences. Not general knowledge; project-specific interpretation.]
- **Key**: [non-obvious fact or distinction]
- **Not**: [common misconception to avoid]
Index Format (docs/domain/README.md)
# Domain Knowledge Index
| File | Concepts Covered |
|------|-----------------|
| orders.md | order lifecycle, fulfillment states, cancellation rules |
Rules
- One concept per invocation — don't batch
- Always verify before saving — domain knowledge is opinionated, not factual
- Project-specific meaning only — skip what any informed developer would know
- If uncertain whether something belongs here, ask: "Would I need to re-explain this next session?"
- Create
docs/domain/anddocs/domain/README.mdif they don't exist
Source
git clone https://github.com/bofrese/bob/blob/master/skills/domain-knowledge/SKILL.mdView on GitHub Overview
Captures and saves project-specific terms, definitions, and nuanced distinctions that arise in conversation. It focuses on what terms mean in this project's context, not general language or tooling. Nuggets are stored under docs/domain and verified with the user before saving.
How This Skill Works
Process: read docs/domain/README.md to see if the concept exists; if not, draft a nugget in the required format using the current conversation; verify with the user before saving; then create docs/domain/<slug>.md and update the index.
When to Use It
- When a user corrects a misunderstanding about a term in this project
- When a term needs a project-specific definition or nuance
- When clarifying nuances an informed developer wouldn't assume
- When encountering a term that isn't documented in docs/domain
- Before saving to ensure the nugget reflects the user's intent
Quick Start
- Step 1: Read docs/domain/README.md to check if the concept exists
- Step 2: Draft a nugget in the required format based on the current conversation
- Step 3: Verify with the user and, if approved, save to docs/domain and update the index
Best Practices
- Verify the nugget with the user before saving; domain knowledge is opinionated, not factual
- Document one concept per invocation; don't batch multiple terms
- Capture only project-specific meaning; skip general knowledge
- If unsure whether something belongs here, ask: 'Would I need to re-explain this next session?'
- Create docs/domain/ and update docs/domain/README.md index if the concept is new
Example Use Cases
- ## Fulfillment States #[domain] #[terminology] In this project, 'fulfillment' means the completed handoff to the carrier, not just packing.
- ## Project-Specific Term: Order #[domain] #[definitions] In this project, an 'Order' triggers downstream services and isn't simply a customer cart.
- ## Edge Nuance: SLA by Region #[domain] #[invariant] Some regions have different SLAs; assume regional variance unless stated otherwise.
- ## Documentation Linkage #[domain] #[docs] New terms should be added to docs/domain/<slug>.md and indexed in docs/domain/README.md.
- ## Correction Handling #[domain] #[process] If a term is corrected, draft a nugget with the corrected meaning and propose saving.
Frequently Asked Questions
Add this skill to your agents