# Contributing to SFLabs Knowledge Base Welcome! This is the shared knowledge base for all SFLabs projects. ## How to Contribute ### Adding New Memories 1. **Choose the right type:** - `memories/user/` — About people, roles, expertise - `memories/feedback/` — LLM guidance, preferences - `memories/project/` — Project context, decisions - `memories/reference/` — External resources, tools 2. **Use templates:** ```bash # In Obsidian: Ctrl+P → Templates → Choose type # Or copy from templates/ folder ``` 3. **Follow the structure:** ```yaml --- name: descriptive-name description: One-line summary type: user|feedback|project|reference created: 2026-05-15 --- ``` 4. **Add links:** Connect related memories with `[[wikilinks]]` ### Commit Messages Use descriptive commit messages: - ✅ "Add feedback: no-summary-responses" - ✅ "Update project: tier2-setup - add timeline" - ❌ "fix stuff" ### Syncing **Before starting work:** ```bash sflabs-kdb pull ``` **After completing work:** ```bash git add . git commit -m "Your descriptive message" sflabs-kdb push ``` ## Best Practices 1. **Be specific** — Clear rules, concrete examples 2. **Include why** — Context helps with edge cases 3. **Link generously** — Build the knowledge graph 4. **Keep it current** — Archive outdated memories 5. **One idea per file** — Easier to link and find ## Review Process - All commits are visible to the team - Pull requests welcome for major changes - Resolve conflicts by discussing with team ## Questions? Check the docs: - [QUICKSTART.md](QUICKSTART.md) - [SETUP.md](SETUP.md) - [LLM Memory System.md](LLM%20Memory%20System.md) --- **Repo:** https://teashop.invaliddevice.com/SFLabs/kdb