Claude Skill

vaultr-recap

Reviews content against the Vaultr knowledge base (_knowledge/) and surfaces what's related and what's in tension. Covers two scenarios: (1) associative recap — cross-check a single short note, daily note, draft, or pasted text against the knowledge base right now, while the thou

LLM Mart · 0 points · 0 views 0 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download skoowoo-vaultr-notes-skills_vaultr-recap-6cd8ad6.zip · 5 KB
Part of skoowoo/vaultr-notes — 7 skills

Install

skills CLI npx skills add https://github.com/skoowoo/vaultr-notes/tree/main/skills/vaultr-recap
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install skoowoo-vaultr-notes@llmmart
Git git clone https://github.com/skoowoo/vaultr-notes.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole skoowoo/vaultr-notes collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

Vaultr Recap — Router

Environment check

vaultr --help

If vaultr is not found, inform the user and stop.


Identify intent → load sub-skill

Scenario Trigger signals Sub-skill
Associative recap user shares/references a single note, short note, draft, or pasted text and wants related or conflicting knowledge surfaced right now @associative.md
Periodic review "weekly review", "回顾一下这周/这个月", review of everything created/updated over a past window rather than one piece of content @periodic-review.md

Load the matching sub-skill. If the request is ambiguous (e.g. just "recap" with no note and no time window named), ask the user which they mean before proceeding.

Both sub-skills share references/extract.md for partial-read commands, and both produce a conversational recap only — never a saved file.

Files (vaultr-notes)
  • references
    • extract.md 1.3 KB
      # Extract — Partial Note Reading
      
      `vaultr extract` reads parts of a note without loading the full content. Use it whenever the full note is not needed.
      
      ## Subcommands
      
      **Outline** — heading structure only:
      ```bash
      vaultr extract outline <path-or-name>
      ```
      
      **Section** — one named section and its content (ends at the next heading of equal or higher level):
      ```bash
      vaultr extract section <path-or-name> "<heading>"   # case-insensitive
      vaultr extract section today.md "## meeting notes"
      ```
      
      **Segment** — line range:
      ```bash
      vaultr extract segment <path-or-name> --head 20        # first N lines
      vaultr extract segment <path-or-name> --tail 10        # last N lines
      vaultr extract segment <path-or-name> --start 5 --end 30  # specific range (1-based, inclusive)
      ```
      
      **Tags** — front-matter tags only:
      ```bash
      vaultr extract tag <path-or-name>
      ```
      
      **Code blocks** — all fenced code blocks:
      ```bash
      vaultr extract code <path-or-name>
      ```
      
      **Lists** — all bullet and numbered lists:
      ```bash
      vaultr extract list <path-or-name>
      ```
      
      **Links** — all links (wikilinks and markdown links); each result shows type and target:
      ```bash
      vaultr extract link <path-or-name>
      ```
      
      ## Path rules
      
      Same as `vaultr read`: accepts vault-absolute paths (`/journal/today.md`) or bare filenames (resolves to most recently updated match).
      
  • associative.md 4.5 KB
    # Associative Recap
    
    Given a piece of freshly written content, cross-check it against the knowledge base and surface two things: knowledge that **reinforces or extends** it, and knowledge that's in **tension** with it. This is a real-time recall aid, not a compile step — the output is always a conversational recap, never a saved file.
    
    **Run all steps to completion without stopping. Only speak at the end (Step 5), presenting the recap.**
    
    ---
    
    ## Inputs
    
    1. **Source content** — one of:
       - Inline text the user pasted directly into the request
       - A note reference (vault-absolute path or bare filename) — a short note, daily note, journal entry, or draft
    2. **Knowledge directory** — default `_knowledge/` (relative to cwd, which is always the vault root)
    
    ---
    
    ## Step 1 — Get the source content
    
    - **Inline text**: use it directly as `source_text`.
    - **A named note**: `vaultr read <path-or-name>`. If it's long (a draft, article), don't load it all — `vaultr extract outline <path>` first, then pull only the sections carrying the main claims via `vaultr extract section` or `vaultr extract segment --head/--tail`. `references/extract.md` documents these commands.
    - **"My latest short note" / "today's shorts"**: `vaultr short list --latest 1 --limit 1` — the entry's `content` is returned inline, no file read needed.
    
    ---
    
    ## Step 2 — Distill search signal
    
    From `source_text`, extract 3–8 short search phrases: the core named entities, concepts, and — critically — the **explicit claims or stances** the content takes (not just topics). Contradiction-checking depends on stance, not keyword overlap: "remote work" as a search term finds units about remote work, but only a stance ("remote work hurts collaboration") lets you judge whether a unit agrees or conflicts.
    
    Skip generic words and boilerplate. If the source content has no clear claim (pure log entry, todo list, fact dump), search on its entities alone — tension-checking may simply come up empty, which is fine.
    
    ---
    
    ## Step 3 — Search the knowledge base
    
    If the domain is obviously unclear or the vault is large, run `vaultr knowledge list-indexes --table` first to see the domain landscape and narrow scope. Otherwise skip straight to search.
    
    For each search phrase:
    
    ```bash
    vaultr knowledge search "<phrase>"
    ```
    
    Collect and deduplicate candidate unit paths across all phrase searches.
    
    ---
    
    ## Step 4 — Read and classify candidates
    
    For each candidate unit:
    
    1. `vaultr extract outline <unit>` — quick structural check; drop units that are obviously off-topic.
    2. For plausible matches, read enough to judge the actual stance: `vaultr extract section <unit> "<heading>"` if the outline pinpoints it, otherwise `vaultr knowledge read <unit>`.
    
    Classify each surviving unit against the source content:
    
    - **Reinforces** — the unit's existing understanding aligns with or supports the source's claim.
    - **Extends** — relevant background or adjacent context; deepens the picture without agreeing or disagreeing on stance.
    - **Contradicts** — genuine tension: the unit holds a position, definition, or fact that conflicts with what the source asserts. Do not stretch weak overlaps into contradictions — a real contradiction should be paraphrasable in one sentence that makes the conflict obvious.
    - **Associative leap** — not a direct topical match, but a surprising, non-obvious connection worth surfacing. Use sparingly (0–2 max) and only when it's genuinely thought-provoking, not filler.
    
    Discard units that are only weakly related. Quality over quantity — 3–8 total surviving units across all categories is typical. If nothing survives, say so plainly in Step 5 rather than forcing weak connections.
    
    ---
    
    ## Step 5 — Present the recap
    
    Output directly in the response — this is meant to be read now, while the thought is fresh. Never write it to a file. Format:
    
    ```markdown
    # Recap: <one-line gist of the source content>
    
    ## 🔗 Reinforces / Extends
    - **[[Unit Title]]** — <1-2 sentences: what it says, how it connects to the source>
    
    ## ⚡ Tension
    - **[[Unit Title]]** — <what conflicts, stated concretely — paraphrase the unit's actual position, don't just say "conflicts"> — <optionally, a question back to the user: has their thinking shifted, or is this a one-off?>
    
    ## 💭 Associative
    - **[[Unit Title]]** — <the unexpected link, and why it's worth noticing>
    ```
    
    Omit any section with nothing in it. If no related or conflicting knowledge exists at all, state that directly instead of printing empty headings.
    
  • periodic-review.md 3.5 KB
    # Periodic Review Recap
    
    Reviews everything created or updated in a recent window — knowledge units, regular notes, short notes — and produces a digest: what got added, what themes are emerging, and any tensions between what's new and what's already established. Default window is the past week; the user may specify a different range.
    
    **Run all steps to completion without stopping. Only speak at the end (Step 5), presenting the recap.**
    
    ---
    
    ## Inputs
    
    1. **Window** — default `7` days ("past week"). Use a custom range if the user specifies one (`--start` / `--end`, or a different `--latest N`).
    2. **Scope** — default: knowledge units + short notes + regular notes, vault-wide. Narrow to a specific directory or domain if the user asks (e.g. "just my journal this week", "just AI knowledge units").
    
    ---
    
    ## Step 1 — Collect activity in the window
    
    Run in parallel:
    
    ```bash
    vaultr knowledge list --kind knowledge --latest <window>
    vaultr short list --latest <window> --limit 100
    vaultr list --latest <window>
    ```
    
    Scope any of these to a specific directory if the user narrowed the request (e.g. `vaultr list /journal --latest <window>`).
    
    If everything comes back empty, report that nothing changed in the window and stop.
    
    ---
    
    ## Step 2 — Read what changed
    
    **Knowledge units**: for each, `vaultr extract tag <unit>` and `vaultr extract segment <unit> --head 20` for a quick read of what it's about, without a full load. Note whether `created_at` falls inside the window (new unit) or only `last_compiled_at` does (existing unit that grew this week) — `vaultr extract segment` on the frontmatter block or `vaultr knowledge read <unit>` if the distinction isn't clear from the preview.
    
    **Short notes**: `vaultr short list` returns `content` inline — no extra read needed.
    
    **Regular notes**: skim with `vaultr extract outline <note>` or `vaultr extract segment <note> --head 20`; full `vaultr read` only if a note looks central to the week's theme.
    
    ---
    
    ## Step 3 — Find themes and tensions
    
    - **Group** knowledge units and notes into 2–5 theme clusters by overlapping tags, domain, or subject matter. Single unrelated items don't need a cluster — list them individually.
    - **Flag within-week tensions**: if two units created/updated in the same window take conflicting positions, or a new short note contradicts a unit updated the same week, call it out.
    - **Flag tension against established knowledge**: if a new unit's stance conflicts with an older, unrelated-in-time unit and the connection is obvious from what you already read (don't launch a fresh full-vault search for this — only surface what surfaces naturally from Step 2's reads).
    - **Note growth signals**: units with a high `compile_count` jump or repeated touches this week — these are threads the author is actively developing.
    
    ---
    
    ## Step 4 — Nothing to force
    
    If the week's activity is sparse or has no clear theme, say so — don't manufacture clusters or tensions from thin material. A short, honest recap beats a padded one.
    
    ---
    
    ## Step 5 — Present the recap
    
    Output directly in the response. Never write it to a file. Format:
    
    ```markdown
    # Weekly Recap: <date range>
    
    ## 📈 Activity
    - N knowledge units created, M updated · K short notes · J regular notes
    
    ## 🧵 Themes
    - **<Theme>** — units/notes involved, one line on the throughline
    
    ## ⚡ Tensions
    - **[[Unit A]]** vs **[[Unit B]]** — what conflicts and why
    
    ## 🔭 Worth revisiting
    - <threads with fast growth, open questions, or loose ends from this week>
    ```
    
    Omit any section with nothing in it.
    
  • SKILL.md 2 KB
    ---
    name: vaultr-recap
    description: "Reviews content against the Vaultr knowledge base (_knowledge/) and surfaces what's related and what's in tension. Covers two scenarios: (1) associative recap — cross-check a single short note, daily note, draft, or pasted text against the knowledge base right now, while the thought is fresh; (2) periodic review — recap everything created or updated over a recent window (e.g. the past week). Trigger on phrases like 'recap this', 'what do I already know that relates to this', 'does this conflict with anything I've written', 'weekly review', 'review this week's notes', '联想', '回顾一下', '和我的知识库对照一下', '有没有矛盾的观点', '实时联想', '本周回顾', '周回顾', or any request to recall related or conflicting knowledge, either for a piece of writing or for a recent time window."
    ---
    
    # Vaultr Recap — Router
    
    ## Environment check
    
    ```bash
    vaultr --help
    ```
    
    If `vaultr` is not found, inform the user and stop.
    
    ---
    
    ## Identify intent → load sub-skill
    
    | Scenario              | Trigger signals                                                                                                                       | Sub-skill           |
    | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ------------------- |
    | **Associative recap** | user shares/references a single note, short note, draft, or pasted text and wants related or conflicting knowledge surfaced right now | @associative.md     |
    | **Periodic review**   | "weekly review", "回顾一下这周/这个月", review of everything created/updated over a past window rather than one piece of content      | @periodic-review.md |
    
    Load the matching sub-skill. If the request is ambiguous (e.g. just "recap" with no note and no time window named), ask the user which they mean before proceeding.
    
    Both sub-skills share `references/extract.md` for partial-read commands, and both produce a conversational recap only — never a saved file.
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related