By mbeacom
Bridge an Obsidian vault into local semantic search: turn graph/tag/search results (official obsidian CLI, or rg fallback) into a candidate file set for local-rag's hybrid allowlist. For authoring/Bases/Canvas, use kepano/obsidian-skills.
This plugin requires configuration values that are prompted when the plugin is enabled. Sensitive values are stored in your system keychain.
vault_pathPath to your Obsidian vault (used by the rg fallback when the obsidian CLI isn't available)
${user_config.vault_path}A Claude Code plugin marketplace for information retrieval. It bundles complementary retrieval modalities — lexical, structural, structured-data, history, semantic (RAG), and graph — plus a routing agent that picks and composes them. Everything runs locally; the RAG layer keeps your corpus on your machine.
/plugin marketplace add mbeacom/productivity-skills
Then install what you need (installing code-search auto-installs retrieval-core):
/plugin install code-search@productivity-skills # lexical/structural/data/history search
/plugin install local-rag@productivity-skills # local semantic search (turbovec + ollama)
/plugin install obsidian@productivity-skills # Obsidian vault → RAG bridge
| Plugin | What it does |
|---|---|
| retrieval-core | The spine: a retrieval-strategist agent + retrieval-strategy skill that choose and compose modalities. Other plugins depend on it. |
| code-search | Lexical (rg/fd), structural (ast-grep/semgrep), structured-data (jq/yq/gron), history (git pickaxe/difftastic), structured rewrite (comby), metrics (tokei/scc), and non-code docs (rga/pandoc/pdftotext). Two skills: code-search (code) and data-and-docs-search (data/docs). |
| local-rag | Fully-local semantic search: a bin/rag CLI that chunks a corpus, embeds it with ollama, and indexes it with turbovec. Notes-first, corpus-agnostic, with incremental indexing and hybrid --allowlist retrieval. |
| obsidian | A skill-only RAG bridge: turn an Obsidian vault's graph/tags (official obsidian CLI, or rg fallback) into a candidate set fed to local-rag. For authoring/Bases/Canvas, use kepano/obsidian-skills. |
The skills degrade gracefully and tell you what's missing.
rg (ripgrep); the rest are optional. Run
bash plugins/code-search/scripts/check-tools.sh to see what's installed and
the brew install … line for the rest.uv (the rag CLI is
bootstrapped into a venv automatically on session start) and a running
ollama with an embedding model:
ollama serve + ollama pull nomic-embed-text.obsidian CLI (with Obsidian running)
for graph-accurate queries; otherwise falls back to rg/fd. Set your vault
path in the plugin's config (vault_path).Once installed, Claude invokes the skills automatically based on your task. The
retrieval-strategist agent (or the retrieval-strategy skill) decides which
modality fits — and they compose.
Pick a modality by what you know:
| You know… | Modality | Example |
|---|---|---|
| an exact token / regex / filename | lexical | rg -t py 'def login' · fd -e ts |
| the code shape, not the text | structural | sg -p 'logger.debug($$$)' --lang js |
| a JSON/YAML schema path | structured-data | jq '.scripts' package.json · gron x.json | rg token |
| when/why code changed | history | git log -S'retry' -- src/ |
| only the meaning/intent | semantic (RAG) | rag query "how do we handle backoff" --name notes |
| the corpus is an Obsidian vault | graph | obsidian backlinks file="Project X" |
Semantic search (local-rag):
ollama pull nomic-embed-text # once
rag index /path/to/vault --name notes # build/update (incremental)
rag query "open questions about billing" --name notes --k 8
rag status --name notes # counts, model, dim
Hybrid retrieval (the payoff) — narrow with the graph/lexical, rerank with vectors:
# Obsidian graph → semantic rerank (official CLI)
obsidian backlinks file="Project X" | rag query "open risks" --name notes --allowlist -
# rg fallback when Obsidian isn't running ($VAULT defaults to the plugin's configured vault_path)
VAULT="${CLAUDE_PLUGIN_OPTION_VAULT_PATH:-.}"
rg -l '#decision' "$VAULT" | rag query "why did we choose X" --name notes --allowlist -
rag returns path > heading + a snippet; follow up with rg to pin exact lines.
See docs/ARCHITECTURE.md for the modality model and how the plugins fit together.
# Validate the marketplace + every plugin
claude plugin validate . --strict
for p in plugins/*/; do claude plugin validate "$p" --strict; done
# Lint (markdownlint + shellcheck + ruff + hygiene)
pre-commit run --all-files
# Run the local-rag Python tests
cd plugins/local-rag && uv run --group dev pytest -q
See CLAUDE.md for contributor conventions.
MIT © Mark Beacom. Each plugin ships its own LICENSE.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub mbeacom/productivity-skills --plugin obsidianA retrieval-strategist agent and decision-flow skill that pick and compose search modalities (lexical, structural, semantic/RAG, graph).
Fast CLI search across modalities: lexical (rg/fd), structural (ast-grep/semgrep), structured-data (jq/yq/gron), history (git pickaxe), structured rewrite (comby), data files (duckdb), metrics (tokei/scc), and non-code docs (rga/pandoc/pdftotext).
Fully-local semantic search: a bin/rag CLI that chunks + embeds a corpus with ollama and indexes it with turbovec. Notes-first, corpus-agnostic via pluggable loaders.
Comprehensive skill pack with 66 specialized skills for full-stack developers: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing. Features progressive disclosure architecture for 50% faster loading.
v9.44.1 — Patch release for Gemini environment/version detection and qwen auth gating. Run /octo:setup.
Harness-native ECC operator layer - 67 agents, 271 skills, 92 legacy command shims, reusable hooks, rules, selective install profiles, and production-ready workflows for Claude Code, Codex, OpenCode, Cursor, and related agent harnesses
UI/UX design intelligence. 67 styles, 161 palettes, 57 font pairings, 25 charts, 15 stacks (React, Next.js, Vue, Svelte, Astro, SwiftUI, React Native, Flutter, Tailwind, shadcn/ui, Nuxt, Jetpack Compose). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient.
This skill should be used when users need to generate ideas, explore creative solutions, or systematically brainstorm approaches to problems. Use when users request help with ideation, content planning, product features, marketing campaigns, strategic planning, creative writing, or any task requiring structured idea generation. The skill provides 30+ research-validated prompt patterns across 14 categories with exact templates, success metrics, and domain-specific applications.
Develop, test, build, and deploy Godot 4.x games with Claude Code. Includes GdUnit4 testing, web/desktop exports, CI/CD pipelines, and deployment to Vercel/GitHub Pages/itch.io.