Agent skill
obsidian-query
Query Obsidian vault using local HTTP API. Use when user asks about tasks, goals, experiments, journals, people, or any vault data.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/obsidian-query
SKILL.md
Obsidian Query Skill
Local HTTP API running on localhost:27180 for querying Obsidian vault data.
Usage
# Generic query: query.py <Base> [View]
python3 .claude/skills/obsidian-query/scripts/query.py Tasks
python3 .claude/skills/obsidian-query/scripts/query.py Tasks "By Project"
python3 .claude/skills/obsidian-query/scripts/query.py Goals "Every morning"
python3 .claude/skills/obsidian-query/scripts/query.py Journals "Weekly Review"
python3 .claude/skills/obsidian-query/scripts/query.py Experiments
python3 .claude/skills/obsidian-query/scripts/query.py People
# Utility commands
python3 .claude/skills/obsidian-query/scripts/query.py bases # List all bases & views
python3 .claude/skills/obsidian-query/scripts/query.py backlinks <file> # Who links here?
python3 .claude/skills/obsidian-query/scripts/query.py frontmatter <file> # Get metadata
python3 .claude/skills/obsidian-query/scripts/query.py status # API health check
Discover Bases & Views
First, list available bases and their views:
python3 .claude/skills/obsidian-query/scripts/query.py bases
Output:
Goals: Current, Every morning, Every week, All
Journals: All Entries, Last 7 Days, Weekly Review
Tasks: Active Tasks, By Project, All Tasks
Then query any base with optional view:
query.py Tasks # All fields (auto-discovered)
query.py Tasks "Active Tasks" # Fields from view's order config
query.py Tasks "By Project" # Grouped by project
How It Works
The script reads view configuration from the API:
order- which fields to display (from view config)groupBy- how to group entries (from view config)- If no view specified, auto-discovers all fields from entries
No hardcoded logic - all rendering driven by Base definition.
API Endpoints
GET /status # Health check
GET /bases # List all bases
GET /bases/:name # Query base (default view)
GET /bases/:name?view=ViewName # Query base with specific view
GET /backlinks/:path # Who links to this file?
GET /frontmatter/:path # Get file metadata
Response Structure
{
"base": "Templates/Bases/Tasks.base",
"views": ["Active Tasks", "By Project", "All Tasks"],
"activeView": "By Project",
"groupBy": {"property": "project", "direction": "ASC"},
"order": ["file", "status", "due"],
"count": 8,
"entries": [...]
}
When to Use
- "what are my tasks?" →
query.py Tasks - "tasks by project" →
query.py Tasks "By Project" - "daily goals" / "morning goals" →
query.py Goals "Every morning" - "weekly goals" →
query.py Goals "Every week" - "weekly review" / "journals" →
query.py Journals "Weekly Review" - "active experiments" →
query.py Experiments - "who should I reconnect with?" →
query.py People
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?