cache-notes
FreeFetch & embed AI transcripts as Obsidian callouts. Args: <path>, all, refresh <path>. Prompts for URLs if empty.
The English summary is being prepared. Showing the original description.
Batch-create Teams/People/@Name.md stubs from unresolved [[@*]] wikilinks across the vault. Each stub is minimal frontmatter; the user fills team/role/details later.
The English summary is being prepared. Showing the original description.
Review the instructions the agent will receive before you install.
/people-stubs — Scan unresolved [[@*]] links, present a creation list, prompt to confirm each./people-stubs --auto — Create stubs for every unresolved [[@*]] link without per-name confirmation. Useful after a big batch of new interviews.When meeting notes are wrapped via /fill-participants, names get linked as [[@Jane Doe]], [[@John Smith]], etc. If the corresponding Teams/People/@Name.md file doesn't exist yet, Obsidian shows a dead-link indicator and the name doesn't appear in People.base. This skill creates the missing stubs in one pass.
Stubs are intentionally minimal — they're placeholders. The user (or a future /onboard-person skill) fills in the real metadata (Team, Location, FullName, Start Date, etc.).
Run obsidian unresolved format=json and filter to entries where the link target starts with @. Aggregate by target — one stub per unique target, with a list of files where it's referenced.
Display a numbered table sorted by reference count descending:
| # | Stub to create | Referenced in (count) | Sample file |
|---|----------------|----------------------|-------------|
| 1 | Teams/People/@Jane Doe.md | 6 | Meetings/Interviews/Interview Alex Kim... |
| 2 | Teams/People/@John Smith.md | 3 | Meetings/Engineering/Weekly Team Leads... |
| 3 | Teams/People/@Alex Kim.md | 2 | Meetings/Engineering/Weekly Team Leads... |
Ask the user: "all", "1,2", "none", or per-line skips.
For each confirmed stub, write Teams/People/@<Name>.md with this minimal frontmatter:
---
FullName:
Team:
Location:
created: <ISO 8601 with offset>
---
Use obsidian create path="Teams/People/@<Name>.md" content="<frontmatter>" so Obsidian indexes it immediately (the next /vault-health run won't show the link as unresolved any more).
Leave FullName, Team, Location empty — the stub is a placeholder. The agent can fill in FullName if it can infer from the wikilink display text (e.g. [[@Jane Doe]] → FullName: Jane Doe).
Print a summary:
Created 3 stubs:
Teams/People/@Jane Doe.md
Teams/People/@John Smith.md
Teams/People/@Alex Kim.md
Next steps:
- Open each stub and fill in Team / Location / Start Date.
- Or run /onboard-person <name> to pull metadata from external sources.
See /commit. Commit message: chore(people): add N stubs (Jane Doe, John Smith, ...).
USER.md aliases.Teams/People/@<Name>.md exists already (even empty), don't overwrite. Skip and note in the report./vault-health runs cleaner — the unresolved-links count drops as stubs are created.No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Fetch & embed AI transcripts as Obsidian callouts. Args: <path>, all, refresh <path>. Prompts for URLs if empty.
The English summary is being prepared. Showing the original description.
Stage and commit with flexible intent parsing. Accepts file/folder scope, free-text description, amend, or any combination.
The English summary is being prepared. Showing the original description.
Extract clean markdown content from web pages using Defuddle CLI, removing clutter and navigation to save tokens. Use instead of WebFetch when the user provides a URL to read or analyze, for online documentation, articles, blog posts, or any standard web page.
The English summary is being prepared. Showing the original description.
Resolve and fill Participants frontmatter + link unlinked names in body. Args: <path>, all.
The English summary is being prepared. Showing the original description.
Extract action items as plain markdown bullets (with confirmation). Args: <path>. No args = run [/note-status pending --step=todos](../note-status/SKILL.md#pending-mode).
The English summary is being prepared. Showing the original description.
Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections. Use when working with .canvas files, creating visual canvases, mind maps, flowcharts, or when the user mentions Canvas files in Obsidian.
The English summary is being prepared. Showing the original description.