From ultraship
Manages project learnings across sessions: save debugging insights and decisions, search by keyword or tags, list, prune old entries, and export to Markdown or JSON. Use for recording, recalling, or sharing knowledge.
npx claudepluginhub houseofmvps/ultraship --plugin ultraship<save|search|list|prune|export> [query]This skill is limited to using the following tools:
Learnings are structured knowledge that compounds across sessions. They capture what worked, what didn't, decisions made, and patterns discovered — things that can't be derived from code alone.
Manages project learnings in markdown files: view index, add patterns/pitfalls/operational notes/decisions, search, prune, export for CLAUDE.md persistence across sessions.
Stores and recalls learnings (bugs, patterns, gotchas, perf, config, arch) across sessions locally or shared via GitHub projects. Auto-invokes after non-obvious bug fixes and recall triggers.
Captures insights as markdown files, searches prior learnings, and promotes patterns to CLAUDE.md using tiered backends (local, qmd, agent-fs) for knowledge across projects.
Share bugs, ideas, or general feedback.
Learnings are structured knowledge that compounds across sessions. They capture what worked, what didn't, decisions made, and patterns discovered — things that can't be derived from code alone.
Announce at start: "I'm using the learn skill to manage project learnings."
When the user discovers something worth remembering — a debugging insight, an architecture decision, a deployment gotcha, a tool preference:
node ${CLAUDE_PLUGIN_ROOT}/tools/learnings-manager.mjs save --title "Title here" --body "Detailed learning content" --tags "tag1,tag2"
What to save:
NODE_ENV=production explicitly set")select() is 3x faster than query() for simple lookups")What NOT to save:
git log)node ${CLAUDE_PLUGIN_ROOT}/tools/learnings-manager.mjs search --query "keyword"
Search by title, body content, or tags. Use this BEFORE starting work on a topic — past learnings prevent repeated mistakes.
node ${CLAUDE_PLUGIN_ROOT}/tools/learnings-manager.mjs list [--limit N]
node ${CLAUDE_PLUGIN_ROOT}/tools/learnings-manager.mjs prune --older-than 90
Removes learnings older than N days. Default: 90 days. Run periodically to keep the knowledge base fresh.
node ${CLAUDE_PLUGIN_ROOT}/tools/learnings-manager.mjs export --format markdown
node ${CLAUDE_PLUGIN_ROOT}/tools/learnings-manager.mjs export --format json
Export for sharing with team members or backing up before a major refactor.
At session start: If the user mentions a topic, search learnings for relevant context before proceeding.
After debugging: Save the root cause and fix as a learning — it will save hours next time.
After deployment issues: Save the gotcha — deployment problems recur.
Before major changes: Search for past learnings about the affected area.
During retrospectives: Use with /retro to cross-reference velocity data with learnings.
Learnings are stored in .ultraship/learnings/ in the project directory as JSON files. Each learning has:
id — unique identifiertitle — short, searchable titlebody — detailed contenttags — categorization for filteringcreated_at / updated_at — timestampsAdd .ultraship/ to .gitignore if you don't want learnings in version control, or commit them to share with your team.