84 lines
2.9 KiB
Markdown
84 lines
2.9 KiB
Markdown
---
|
|
name: dictionary
|
|
description: "Project dictionary lookup and maintenance. Reads ai-docs/dictionary.md to understand project-specific terms, file mappings, and domain definitions before responding. Updates the dictionary with new discoveries after each session and commits/pushes the change. Capabilities: term lookup, definition enrichment, file mapping, domain context. Actions: read dictionary, update dictionary, commit dictionary. Keywords: dictionary, definition, term, glossary, meaning, what is, where is. Use when: starting any task (proactively load context), user references unfamiliar terms, user asks about project-specific concepts, after discovering new mappings or definitions worth saving."
|
|
---
|
|
|
|
# Dictionary Skill
|
|
|
|
## Purpose
|
|
|
|
Maintain and consult a living project dictionary at `ai-docs/dictionary.md` that accumulates domain knowledge, term definitions, and file mappings across sessions.
|
|
|
|
## Lifecycle — run in this order every session
|
|
|
|
### 1. Bootstrap (always first)
|
|
|
|
Check if `ai-docs/dictionary.md` exists. If not, create it:
|
|
|
|
```markdown
|
|
# Project Dictionary
|
|
|
|
A living reference of project-specific terms, file mappings, and domain definitions.
|
|
|
|
## Terms & Definitions
|
|
|
|
<!-- Add entries below -->
|
|
|
|
## File Mappings
|
|
|
|
<!-- Format: term → file path + description -->
|
|
```
|
|
|
|
### 2. Read & Apply
|
|
|
|
Read `ai-docs/dictionary.md` in full. Extract:
|
|
- **Term definitions** → use to interpret ambiguous words in the user's request
|
|
- **File mappings** → know which files to look at for a given concept
|
|
- **Domain context** → understand project conventions before making decisions
|
|
|
|
If the dictionary contains relevant entries, apply them silently (no need to narrate the lookup unless it resolves an ambiguity).
|
|
|
|
### 3. Update (after helping the user)
|
|
|
|
Add entries discovered during the session:
|
|
- New domain terms with clear definitions
|
|
- File paths tied to specific concepts or features
|
|
- Naming conventions or patterns observed
|
|
- Acronyms or shorthand used in the codebase
|
|
|
|
**Only add entries that are non-obvious and reusable across future sessions.** Do not add ephemeral task details.
|
|
|
|
#### Entry format
|
|
|
|
```markdown
|
|
## Terms & Definitions
|
|
|
|
### <Term>
|
|
<Definition>. Context: <where/how it's used in this project>.
|
|
|
|
## File Mappings
|
|
|
|
- **<concept>** → `<file path>` — <brief description>
|
|
```
|
|
|
|
### 4. Commit & Push
|
|
|
|
After updating the dictionary, commit and push **only** `ai-docs/dictionary.md`:
|
|
|
|
```bash
|
|
git add ai-docs/dictionary.md
|
|
git commit -m "<summary of what was added to the dictionary>"
|
|
git push
|
|
```
|
|
|
|
The commit message should describe the dictionary changes, e.g.:
|
|
- `"dictionary: add POS offline sync terms and file mappings"`
|
|
- `"dictionary: define BukidBounty transaction states"`
|
|
|
|
## Rules
|
|
|
|
- Always read the dictionary before answering, even if the request seems simple.
|
|
- Never commit other files alongside `ai-docs/dictionary.md`.
|
|
- Skip the commit step if nothing new was learned.
|
|
- Keep entries concise — one definition paragraph max per term.
|