obsidian-github-issue-fetcher

star 4

Fetch GitHub issues into Obsidian as markdown notes — turn your vault into an issue tracker with Dataview queries, tags, and graph view. Fetch issues as notes, GitHub issues in Obsidian, issue tracker in vault, Dataview issues dashboard. Four modes: `/obsidian-github-issue-fetcher` (fetch, default), `/obsidian-github-issue-fetcher status` (last fetch info), `/obsidian-github-issue-fetcher init` (configure vault path), `/obsidian-github-issue-fetcher --dry-run` (preview without writing). Also supports `--force` to re-fetch all issues regardless of changes.

conorluddy By conorluddy schedule Updated 3/6/2026

name: obsidian-github-issue-fetcher description: "Fetch GitHub issues into Obsidian as markdown notes — turn your vault into an issue tracker with Dataview queries, tags, and graph view. Fetch issues as notes, GitHub issues in Obsidian, issue tracker in vault, Dataview issues dashboard. Four modes: /obsidian-github-issue-fetcher (fetch, default), /obsidian-github-issue-fetcher status (last fetch info), /obsidian-github-issue-fetcher init (configure vault path), /obsidian-github-issue-fetcher --dry-run (preview without writing). Also supports --force to re-fetch all issues regardless of changes."

obsidian-github-issue-fetcher

Fetch GitHub issues from the current repo into the Obsidian vault as browsable, cross-referenceable markdown notes.

Direction: One-way (GitHub → Obsidian). Issues become vault citizens with frontmatter for Dataview queries, tags, and graph view.

Mode Dispatch

Parse the user's input to determine mode:

  • /obsidian-github-issue-fetcherFetch mode (default)
  • /obsidian-github-issue-fetcher statusStatus mode
  • /obsidian-github-issue-fetcher initInit mode (configure vault path)
  • /obsidian-github-issue-fetcher --dry-runDry run mode

Execution

Determine the skill directory path (where this SKILL.md lives), then run the sync script from the user's current working directory (so gh auto-detects the correct repo):

bash <skill-dir>/sync.sh              # Default: sync issues
bash <skill-dir>/sync.sh --init       # First-time vault setup
bash <skill-dir>/sync.sh --status     # Show last sync state
bash <skill-dir>/sync.sh --dry-run    # Preview without writing
bash <skill-dir>/sync.sh --force      # Re-sync all, skip unchanged check

Prerequisites

  • gh CLI installed and authenticated (gh auth status)
  • jq installed (brew install jq)
  • Current directory is inside a GitHub repository
  • Vault path configured via ~/.obsidian-vault or OBSIDIAN_VAULT env var

Output

Issues are written to <vault>/GithubIssues/<Project>/ with:

  • Frontmatter: type, id, title, status, labels, assignees, milestone, repo URL
  • Body: issue markdown content
  • User content below <!-- gh-sync-end --> marker is preserved across re-syncs

Notes

  • Auto-detects repo from current directory via gh repo view
  • Closed issues are updated in-place (status changes), never deleted
  • Unchanged files are skipped (no timestamp churn)
  • Run from different repos to sync different projects
Install via CLI
npx skills add https://github.com/conorluddy/ObsidianSkills --skill obsidian-github-issue-fetcher
Repository Details
star Stars 4
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator