بنقرة واحدة
qmd-knowledge
Manage project knowledge with qmd — captures learnings, decisions, and conventions
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Manage project knowledge with qmd — captures learnings, decisions, and conventions
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Verify understanding after implementation with targeted quizzes
Clarify requirements through targeted questions — uncovers unknown unknowns in specs
Remove AI-generated code patterns that don't match codebase style
Review code for quality, security, and best practices — read-only analysis
Create clear documentation for code and APIs
Audit code for security vulnerabilities — read-only analysis
| name | qmd-knowledge |
| description | Manage project knowledge with qmd — captures learnings, decisions, and conventions |
| license | MIT |
| compatibility | cline, opencode, claude, amp, codex, gemini, cursor, pi |
| hint | Use when recording or retrieving project knowledge, learnings, and issue notes |
| user-invocable | true |
| metadata | {"audience":"all","workflow":"knowledge-management"} |
Use this skill when you need to:
This skill provides a unified knowledge management system. You install the skill once, and it manages knowledge across all your projects using qmd collections:
# The qmd-knowledge skill (installed to your AI tool's skills directory)
# Location varies by tool: ~/.config/opencode/skill/, ~/.claude/skills/, or ~/.config/amp/skills/
├── SKILL.md # This file - the skill definition
├── scripts/ # Executable scripts
│ └── record.sh # Record learnings/issues/notes
└── references/ # Example structure and READMEs
# Project knowledge storage (managed by the skill)
~/.ai-knowledges/
├── <project-name>/ # Collection for your project
│ ├── learnings/
│ └── issues/
└── another-project/ # Collection for another project
├── learnings/
└── issues/
The qmd MCP server provides AI-powered search across all stored knowledge, allowing your AI assistant to autonomously query and update the knowledge base.
Important: Before recording knowledge, ensure qmd is installed and your project collection is set up. Run a preflight check:
# Verify qmd is installed
command -v qmd || echo "Install qmd: bun install -g @tobilu/qmd"
# Verify your project collection exists (replace my-project with your actual project name)
qmd collection list | grep my-project
# Record a learning (use the skill's script)
$SKILL_PATH/scripts/record.sh learning "qmd MCP integration"
# Add a note to an issue
$SKILL_PATH/scripts/record.sh issue 123 "Fixed by updating dependencies"
# Record a general note
$SKILL_PATH/scripts/record.sh note "Consider using agent skills for extensibility"
After recording:
record.sh script automatically runs qmd embed to re-index the knowledge baseqmd embed explicitly to update the indexUse the qmd MCP server tools directly from Claude or OpenCode:
# Fast keyword search
qmd search "MCP servers" -c <project-name>
# Semantic search with AI embeddings
qmd vsearch "how to configure MCP"
# Hybrid search with reranking (best quality)
qmd query "MCP server configuration"
# Get specific document
qmd get "references/learnings/2024-01-26-qmd-integration.md"
# Search with minimum score filter
qmd search "API" --all --files --min-score 0.3 -c <project-name>
Preflight check: Before starting, verify you have the required tools:
# Check for bun or node
command -v bun || command -v node || echo "Install bun or node.js first"
# Verify git is available (for project detection)
command -v git || echo "Install git for automatic project name detection"
Install qmd:
bun install -g @tobilu/qmd
Install the skill:
# The skill is installed to your AI tool's skills directory:
# - OpenCode: ~/.config/opencode/skill/qmd-knowledge/
# - Claude Code: ~/.claude/skills/qmd-knowledge/
# - Amp: ~/.config/amp/skills/qmd-knowledge/
Configure MCP server (see installation docs for Claude/OpenCode/Amp)
Create a knowledge collection for your project:
# The skill's record.sh script will auto-detect the project name when executed.
# For manual setup, use your desired project name consistently in the commands below.
# Optional: export QMD_PROJECT=<project-name> to override auto-detection
# Create storage directory for your project (replace <project-name> with your project)
mkdir -p ~/.ai-knowledges/<project-name>/learnings
mkdir -p ~/.ai-knowledges/<project-name>/issues
# Add qmd collection
qmd collection add ~/.ai-knowledges/<project-name> --name <project-name>
qmd context add qmd://<project-name> "Knowledge base for <project-name> project: learnings, issue notes, and conventions"
# Generate embeddings for AI-powered search
qmd embed
references/learnings/: Time-stamped markdown files with project insights
YYYY-MM-DD-topic-slug.mdreferences/issues/: Issue-specific notes and resolutions
<issue-id>.mdThe qmd MCP server allows Claude to:
--collection flag to scope searches to specific projectsDuring development, you discover something useful:
"I learned that qmd MCP server allows Claude to use tools autonomously."
Claude recognizes the skill and executes:
$SKILL_PATH/scripts/record.sh learning "qmd MCP autonomous tool use"
Later, you ask:
"What did I learn about MCP servers?"
Claude queries the knowledge base using qmd MCP tools:
qmd query --collection <project-name> "MCP servers"
The skill automatically detects your project name using the following priority:
QMD_PROJECT environment variable (highest priority)
export QMD_PROJECT=my-project-name
Git remote URL (most reliable - extracts repo name from origin URL)
https://github.com/user/my-project.git → my-projectGit repository folder name (fallback)
Current directory name (last resort)
This means you can use the skill in any project without hardcoding project names. The knowledge base will be stored at ~/.ai-knowledges/<detected-project-name>/.
Important: The script prioritizes the git remote URL to ensure consistent project naming even if local folders are renamed or in non-standard locations (e.g., dated folders like 2026-01-08-my-ai-tools.qmd-skill).
At the end of a work session, consider prompting the user about key learnings:
"What were the main discoveries or decisions from this session? Would you like me to record any learnings?"
Be attentive to phrases that indicate valuable knowledge capture opportunities:
When you detect these patterns, suggest recording:
"That sounds like a useful learning. Would you like me to record it?"
The record script automatically runs qmd embed after each write, ensuring the knowledge base is searchable immediately. This re-indexing step is required to make new content available for search queries.
Important: If you manually create or edit knowledge files (outside of the record script), you must run qmd embed manually to update the search index:
# Manual re-indexing after direct file edits
qmd embed
Without re-indexing, newly added or modified content will not appear in search results.