obsidian-pr-synclisted
Install: claude install-skill oleg-koval/agent-skills
<!-- Generated by scripts/build-adapters.sh. Do not edit directly. -->
# Obsidian PR Sync
Fetch all open PRs where the user is assigned or requested as reviewer, filter out
noise (bots, drafts, self-authored), and write a clean grouped section into today's
daily note. The calendar pass also creates idempotent People stubs for attendees who
do not already have a matching note.
## Configuration
Before running, confirm:
- `vault_path`: absolute path to the Obsidian vault, from the plugin configuration
- `VAULT_DAILY`: derive as `${vault_path}/Lead/Daily`
- `VAULT_PEOPLE`: derive as `${vault_path}/Lead/People`
- `SELF_EMAIL`: the user's calendar email address, used to exclude the user from attendee processing
- `GH_USERNAME`: GitHub login to exclude self-authored PRs (e.g. `oleg-koval`)
- `ORG_PREFIX`: org name to group as "Work" (e.g. `Teifi-Digital`); everything else goes to "Personal"
If not specified by the user, infer from context (git config, existing vault files).
## Step 1: Fetch PRs and calendar events
Run two `gh` queries and merge results, deduplicating by URL:
```bash
# Review-requested
gh search prs --review-requested=@me --state=open \
--json title,url,repository,author,createdAt,isDraft --limit 50
# Assigned
gh search prs --assignee=@me --state=open \
--json title,url,repository,author,createdAt,isDraft --limit 50
```
Merge both lists, deduplicate by `url`. The union is what needs attention.
Fetch today's calendar events once with the available calen