Skip to content
Productivity
Skill

/search

Search vault content by keyword using Grep. Zero dependencies — works in any vault without indexes or plugins. Groups results by directory for easy scanning.

From plugin
obsidian-claude-pkm
1.7k13 skills4 agents
Install
$ npx -y skills add ballred/obsidian-claude-pkm --skill search --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/search

Context preview

The summary Claude sees to decide when to auto-load this skill.

Search vault content by keyword using Grep. Zero dependencies — works in any vault without indexes or plugins. Groups results by directory for easy scanning.

SKILL.md

search.SKILL.md
name: search
description: Search vault content by keyword using Grep. Zero dependencies — works in any vault without indexes or plugins. Groups results by directory for easy scanning.
allowed-tools: Grep, Glob, Read
user-invocable: true

Search Skill

Fast keyword search across all vault markdown files using the Grep tool. No indexes, no plugins, no setup — just structured search with directory grouping.

Usage

/search <term>

Examples:

  • `/search project planning`
  • `/search weekly review`
  • `/search TODO`

How to Execute

When the user invokes `/search <term>`:

Step 1: Search for the term

Use the **Grep** tool to search all `.md` files for the term:

Grep:
  pattern: <search term>
  glob: "*.md"
  output_mode: content
  -n: true
  -C: 1

Exclude hidden directories (`.claude/`, `.obsidian/`) and templates:

Grep:
  pattern: <search term>
  glob: "*.md"
  path: .
  output_mode: content
  -n: true
  -C: 1

Filter out results from `.claude/`, `.obsidian/`, and `Templates/` directories.

Step 2: Group results by directory

Organise matches into sections by their parent directory:

  • **Daily Notes/** — journal entries
  • **Goals/** — goal and vision documents
  • **Projects/** — project notes
  • **Archives/** — archived content
  • **Inbox/** — unprocessed items
  • **(root)** — top-level notes

Step 3: Present results

Format output as:

## Search: "<term>"

### Daily Notes/
- **2024-01-15.md** (line 23): ...matching context...
- **2024-01-14.md** (line 8): ...matching context...

### Projects/
- **Project Alpha.md** (line 45): ...matching context...

### Goals/
- **2024 Goals.md** (line 12): ...matching context...

**Found X matches across Y files**

Step 4: Suggest related content

After showing results, check if any matched files contain `[[wiki-links]]` to other notes. If so, briefly mention:

💡 Related notes mentioned in results: [[Note A]], [[Note B]]

No Results

If no matches are found: 1. Suggest alternative search terms (synonyms, related words) 2. Offer to search with case-insensitive matching if the original search was case-sensitive 3. Suggest checking `Archives/` if not already included

Tips

  • Search is case-sensitive by default. Add `-i: true` to the Grep call for case-insensitive search
  • Use regex patterns for advanced searches: `task.*complete`, `#tag-name`
  • Combine with `/daily` to quickly find when something was mentioned
Read more
Ships withobsidian-claude-pkm

Not another PKM starter kit. This is an execution system that connects your 3-year vision to what you do today — and holds you accountable with AI. Every layer connects. /daily surfaces your ONE Big Thing from the weekly review. /weekly shows project progress.

Get the whole plugin
Stats
1,741
Stars
119
Forks
Maintained
Maintenance
Shell
Language
MIT
License
5mo ago
Last commit
1y ago
Created

Repo: ballred/obsidian-claude-pkm