CtrlK
BlogDocsLog inGet started
Tessl Logo

vault-status

Show vault statistics, queue count, and reading suggestions. Use when the user wants an overview of their knowledge base.

Install with Tessl CLI

npx tessl i github:tomashrdlicka/engram --skill vault-status
What are skills?

80

Quality

76%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/vault-status/SKILL.md
SKILL.md
Review
Evals

vault-status

Show the current status of the Web Capture Obsidian vault.

Usage

/vault-status
/vault-status --detailed

Options

  • --detailed - Show breakdown by topic and recent captures

Instructions

When the user invokes /vault-status, follow these steps:

Step 0: Load Configuration

Read config.json from the engram project root to get the vault path:

{
  "vault_path": "~/Documents/Obsidian/WebCapture"
}

Use the vault_path value as {VAULT_PATH} in all paths below. Expand ~ to the user's home directory.

Step 1: Read Index and Queue

Read both files:

  • {VAULT_PATH}/_system/index.json
  • data/queue.json

Step 2: Calculate Stats

From the index, extract:

  • Total notes
  • Unread count
  • Starred count
  • By type breakdown
  • By topic breakdown
  • Last updated timestamp
  • Connection stats:
    • Total connections (from stats.total_connections or count related arrays)
    • Most connected note (note with longest related array)
    • Isolated notes count (notes with empty or missing related array)

From the queue:

  • Pending links
  • Failed links

Step 3: Format Basic Output

## Web Capture Vault Status

**Total Notes:** 150
**Unread:** 45 (30%)
**Starred:** 12

### By Type
- Articles: 80
- X Posts: 40
- Videos: 20
- Tools: 10

### Connections
- Total connections: 85
- Most connected: [Note Title] (5 connections)
- Isolated notes: 3

### Queue
- Pending: 5 links
- Run `/process-links` to process

*Last updated: 2026-02-05 10:30*

Step 4: Detailed Output (if --detailed)

Add:

### By Topic
| Topic | Notes | Unread |
|-------|-------|--------|
| AI & ML | 45 | 12 |
| Dev Tools | 30 | 8 |
| Product Ideas | 25 | 10 |
| Design | 20 | 5 |
| Productivity | 20 | 5 |
| Inbox | 10 | 5 |

### Recent Captures (Last 7 Days)
- 2026-02-05: [Article Title](path) - ai-ml
- 2026-02-04: [Video Title](path) - dev-tools
- 2026-02-03: [Tool Name](path) - dev-tools

### Connection Map
- Most connected: [Note Title] (5 links)
- Clusters: dev-tools has 3 highly connected notes
- Bridges: [Note] connects ai-ml and dev-tools topics

### Reading Suggestions
Based on your interests, consider reading:
1. [Unread article matching user_context patterns]
2. [Highly relevant unread item]

Step 5: Suggest Actions

Based on status, suggest:

  • If many unread: "You have X unread items. Want to see your reading queue?"
  • If queue has items: "Run /process-links to process X pending links"
  • If inbox has items: "X items in inbox need categorization - I can move them with /vault-search --move"
  • If isolated notes exist: "X notes have no connections - consider re-capturing or manually linking"

Step 6: Quick Actions (if user requests)

Mark as read:

obsidian-cli frontmatter "{note-path}" --edit --key "read" --value "true"

Then update index.json to set read: true on the entry, decrement stats.unread, and regenerate views/unread.md.

Mark as starred:

obsidian-cli frontmatter "{note-path}" --edit --key "starred" --value "true"

Then update index.json and regenerate views/favorites.md.

Move inbox item to topic:

obsidian-cli move "content/_inbox/{filename}" "content/{new-topic}/{filename}"

Then update index.json (topic, path), update both topic pages, and regenerate views.

Notes

  • Vault: {VAULT_PATH}/
  • Index: _system/index.json
  • Queue: data/queue.json
  • obsidian-cli frontmatter --edit handles YAML updates cleanly
  • obsidian-cli move auto-rewires wiki-links when reorganizing notes
Repository
tomashrdlicka/engram
Last updated
Created

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.