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.
Create or enrich a Teams/People/@Name.md file with metadata pulled from external sources (an ATS for hiring data, a profile source for bio). Replaces manual data entry for newly-hired teammates.
The English summary is being prepared. Showing the original description.
See how to installReview the instructions the agent will receive before you install.
/onboard-person <Name> — Create or enrich Teams/People/@<Name>.md. Pulls from available MCPs (an applicant-tracking system for hiring data, a professional-network profile source for bio)./onboard-person @<Name> — Same; bracket-less form also accepted./onboard-person <Name> --candidate — Treat as a candidate stub (lower-confidence frontmatter, parked in Teams/People/Candidates/).When a new teammate joins, manually creating their @Name.md file means hopping between your ATS, a profile source, and the vault to copy FullName, Team, Location, Start Date, and so on. This skill consolidates the data pull and stub creation into one prompt.
It's complementary to /people-stubs: that one creates empty stubs from unresolved wikilinks; this one fills out a single stub with real metadata.
Teams/People/@<Name>.md exists? → enrich mode (add missing properties, never overwrite existing ones)Try the following sources in order, accumulating what each returns. Which MCPs are available depends on your setup — examples below:
| Source | MCP / tool | Pulls |
|---|---|---|
| ATS (if MCP available, e.g. Greenhouse) | the ATS's MCP tools (when set up) | FullName, Role, Start Date, Hiring manager, Team (mapped from job → team) |
| Profile source (if MCP available, e.g. LinkedIn) | the profile MCP (when set up) | FullName, Location, Job title, Profile URL |
| Manual fallback | Prompt the user | Whatever's missing |
If neither MCP is set up yet, gracefully fall back to manual input — prompt the user for each property one at a time, defaults filled in from the wikilink display name (e.g. [[@Jane Doe]] → FullName: Jane Doe).
Use known mappings (e.g. eng membership → [[+Engineering]], design → [[+Design]], etc.). Cross-reference with Teams/+TeamName.md files via obsidian list folders path=Teams to confirm the team file exists.
If team is ambiguous, ask the user.
Use obsidian create path="Teams/People/@<Name>.md" content="<frontmatter + body>". Frontmatter shape:
---
FullName: <Full Name>
Team: "[[+<TeamFile>]]"
Location: <Country flag emoji>
Office: <City, if applicable>
Start Date: <YYYY-MM-DD>
created: <ISO 8601 with offset>
---
#team-<short> #<role-tag>
Body: usually empty for new stubs. If pulled from a profile source, add a single-line bio.
Run obsidian property:read name=FullName path="Teams/People/@<Name>.md" to confirm the write. If --candidate, ALSO verify the file is in Teams/People/Candidates/.
See /commit. Commit message: chore(people): onboard @<Name> (<Team>).
Teams/People/@<Name>.md exists with non-empty content, switch to enrich mode (additive only, no overwrites).--candidate, write to Teams/People/Candidates/@<Name>.md instead. This keeps the main Teams/People/ clean for actual teammates and prevents candidates from polluting People.base Active view (which filters by file.folder == "Teams/People" and would not match a sub-folder)./fill-participants) consume it. Order matters when bulk-onboarding from a fresh batch of interview notes.People.base Active view filter (file.folder == "Teams/People") excludes sub-folders. If not, candidates will show up.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.