Our review
Manages the project knowledge base: list, search, add entries, run memory audits, and generate progress reports.
Strengths
- Centralizes patterns, conventions, and entities in a structured JSON file.
- Quick search across names, descriptions, and tags.
- Automated memory audit to detect duplicates and suggest pruning.
- Generates daily or weekly progress reports from git history.
Limitations
- Tied to Claude Code's .claude folder structure and scripts.
- Adding and editing is interactive, not batch or API-driven.
- Knowledge base is manually maintained; no automatic extraction from code.
When you need to persistently capture and retrieve project-specific patterns, conventions, and entities during development.
For general project documentation or version-controlled specs, use a dedicated wiki or markdown files in the repo.
Security analysis
SafeThe skill only reads/writes local project files (knowledge.json, notes.md) and runs git log for reports. No network, destructive commands, or credential handling. The node script call is safe and within the project’s own scripts.
No concerns found
Examples
/knowledge list/knowledge search database connection/knowledge addname: mustard-knowledge description: Manage the project knowledge base — list entries, search by term, add new patterns/conventions/entities, run memory audit, or generate progress reports. Use when asked about /knowledge, project knowledge, or pipeline-captured patterns.
<!-- mustard:generated -->/knowledge - Knowledge Management
Notes, memory audit, reports, and project knowledge base.
Trigger
/knowledge <action> [args]
Actions
| Action | Description |
|--------|-------------|
| list | List all knowledge entries grouped by type |
| search <term> | Search entries by name, description, or tags |
| add | Interactively add a knowledge entry |
| notes [target] | Manage project observations |
| audit | Audit memory for duplicates |
| report <period> | Generate progress report (daily/weekly) |
list
Reads .claude/knowledge.json and displays all entries grouped by type.
Flow
- Read
.claude/knowledge.json(if missing: "No knowledge base found. Run a pipeline or use/knowledge addto start one.") - Group entries by
type(pattern / convention / entity) - Display formatted:
=== KNOWLEDGE BASE ({total} entries) === PATTERNS ({n}) - {name}: {description} [source: {source}] CONVENTIONS ({n}) - {name}: {description} [source: {source}] ENTITIES ({n}) - {name}: {description} [source: {source}] - Show last updated timestamp from newest
updatedAt
search
Filters knowledge entries matching the search term across name, description, and tags.
Usage
/knowledge search <term>
Flow
- Read
.claude/knowledge.json - Lowercase-match
termagainstname,description, and each tag - Display matching entries grouped by type (same format as
list) - If no matches: "No entries matching '{term}' found."
add
Interactively adds a knowledge entry by prompting the user, then calls knowledge-update.js.
Flow
- Prompt: "Type? (pattern / convention / entity)"
- Prompt: "Name?"
- Prompt: "Description?"
- Prompt: "Tags? (comma-separated, optional)"
- Build JSON payload and pipe to script:
echo '{"type":"...","name":"...","description":"...","source":"manual","tags":[...]}' \ | node .claude/scripts/knowledge-update.js - Confirm: "Knowledge entry '{name}' saved."
notes
Manages persistent project observations injected into agent context during pipelines. These files are NOT overwritten by /scan.
Targets
| Target | File | Scope |
|--------|------|-------|
| (no argument) | — | Lists all notes files |
| {subproject} | {subproject}/.claude/commands/notes.md | Subproject agent context |
Monorepo: discover targets from pipeline-config.md Agents table or Glob */.claude/commands/notes.md.
Single repo: target is root → .claude/commands/notes.md.
Flow — List (/knowledge notes)
- Read each notes file
- Show summary: which exists, number of observations
- Ask: "Which notes do you want to edit?"
Flow — Edit (/knowledge notes <target>)
- Resolve target to file
- Show current content
- Ask: "What do you want to add, change, or remove?"
- Apply edits
Rules
- NEVER add
<!-- mustard:generated -->to these files - Keep language consistent
- Observations = concise and actionable
audit
Compares auto-memory against CLAUDE.md and skills to detect duplicated information. Outputs report — NEVER auto-edits.
Flow
- Read user's MEMORY.md
- Read all
{subproject}/CLAUDE.md+{subproject}/.claude/commands/guards.md - Present report:
=== MEMORY AUDIT === Total sections: {n} Unique (KEEP): {n} Duplicate: {n} DUPLICATES FOUND: - "{section}" <-> {source_file}: {similarity}% RECOMMENDED PRUNED VERSION: {pruned content} === - NEVER auto-edit — user decides
report
Generates progress reports from git data.
Usage
/knowledge report daily or /knowledge report weekly
Daily Report
git log --oneline --since="00:00" --until="23:59"
git diff --stat HEAD~10
Output: Summary, commits by type (feat/fix/chore), modified files by project, highlights, pending items.
Weekly Report
git log --oneline --since="1 week ago"
git diff --stat @{1.week.ago}
git shortlog -sn --since="1 week ago"
Output: Executive summary, metrics table, implemented features, bugs fixed, changes by project, next week planning.
Rules
- Use real git data only — do not invent commits
- Categorize commits by type and project
Rules
- knowledge.json is persistent — never deleted by session-cleanup
addand pipeline capture both call the sameknowledge-update.jsscriptsearchis case-insensitive- Always show entry count in list/search output
ULTRATHINK
API Documentation Generator
Documentation
Automatically generates OpenAPI/Swagger API documentation.
Technical Writer
Documentation
Writes clear technical documentation following top style guides.
Create log entries with timestamps
Documentation
Creates timestamped log entries to document discoveries, meetings, code reviews, articles, or significant events. Structures information with a summary, event type, sources, and tags, then saves the file to `docs/log/` with a date-based filename and descriptive slug.