Vault Contextual Retrieval
AgriciDaniel/claude-obsidian
Builds and queries a local contextual BM25 index over an Obsidian vault, with optional Nomic reranking through Ollama and strict consent rules before any text leaves the machine.
A skill your agent uses when releasing a beta build of this Obsidian plugin for BRAT-based testing (e.g.
$ npx skills add joybro/obsidian-similar-notes --skill beta-release -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install joybro/obsidian-similar-notes beta-release --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/joybro/obsidian-similar-notes.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/beta-release .claude/skills/beta-release && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "beta-release" agent skill from https://github.com/joybro/obsidian-similar-notes/tree/main/.claude/skills/beta-release into .claude/skills/beta-release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "beta-release", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/joybro/obsidian-similar-notes/tree/main/.claude/skills/beta-releaseType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add joybro/obsidian-similar-notes --skill beta-release -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install joybro/obsidian-similar-notes beta-release --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joybro/obsidian-similar-notes.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/beta-release .agents/skills/beta-release && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "beta-release" agent skill from https://github.com/joybro/obsidian-similar-notes/tree/main/.claude/skills/beta-release into .agents/skills/beta-release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "beta-release", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add joybro/obsidian-similar-notes --skill beta-release -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install joybro/obsidian-similar-notes beta-release --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joybro/obsidian-similar-notes.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/beta-release .cursor/skills/beta-release && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "beta-release" agent skill from https://github.com/joybro/obsidian-similar-notes/tree/main/.claude/skills/beta-release into .cursor/skills/beta-release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "beta-release", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/joybro/obsidian-similar-notes.git --path .claude/skills/beta-release--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add joybro/obsidian-similar-notes --skill beta-release -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install joybro/obsidian-similar-notes beta-release --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joybro/obsidian-similar-notes.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/beta-release .gemini/skills/beta-release && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "beta-release" agent skill from https://github.com/joybro/obsidian-similar-notes/tree/main/.claude/skills/beta-release into .gemini/skills/beta-release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "beta-release", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install joybro/obsidian-similar-notes beta-releaseInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add joybro/obsidian-similar-notes --skill beta-release -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/joybro/obsidian-similar-notes.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/beta-release .github/skills/beta-release && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "beta-release" agent skill from https://github.com/joybro/obsidian-similar-notes/tree/main/.claude/skills/beta-release into .github/skills/beta-release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "beta-release", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add joybro/obsidian-similar-notes --skill beta-release -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install joybro/obsidian-similar-notes beta-release --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/joybro/obsidian-similar-notes.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/beta-release .opencode/skills/beta-release && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "beta-release" agent skill from https://github.com/joybro/obsidian-similar-notes/tree/main/.claude/skills/beta-release into .opencode/skills/beta-release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "beta-release", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
beta-releaseA skill your agent uses when releasing a beta build of this Obsidian plugin for BRAT-based testing (e.g.
Beta Release is an agent skill from joybro/obsidian-similar-notes. Use when releasing a beta build of this Obsidian plugin for BRAT-based testing (e.g. "release 1.3.0-beta.1", "베타 릴리즈", "ship a beta via BRAT") — before the eventual stable release of the same X.Y.Z.
Its SKILL.md is about 3.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in AI & LLM Engineering. It works with Obsidian and Ollama. The licence is MIT.
9 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit fc90799. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
ghgitnpmFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comAlso links to:
forum.obsidian.mdFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Beta Release loads about 3.7k tokens when it runs. Until then it costs about 53 tokens; SKILL.md has 1,786 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from joybro/obsidian-similar-notes at commit fc90799, republished under its MIT licence (© joybro). 1,786 words, ~3,655 tokens.
.claude/skills/beta-release/SKILL.md (or your agent's skills folder).This plugin ships pre-release builds via BRAT so the maintainer (and any opted-in reporters) can test changes for a few days before stable. Stable users continue to receive only the version listed in manifest.json via Obsidian's community plugin store.
Pair skill: bump-version handles the stable bump that closes out the beta cycle.
The default-branch manifest.json stays at the previous stable. package.json carries the X.Y.Z-beta.N semver-prerelease. A tag X.Y.Z-beta.N triggers release.yml, which auto-creates a draft release whose asset manifest.json is version-synced to the tag and is auto-marked pre-release for -beta/-alpha/-rc tags; the maintainer just reviews and publishes.
The key insight: the default-branch manifest.json and the release-asset manifest.json are different copies and are meant to differ during a beta — branch stays at stable (store-safe), asset matches the tag (BRAT-correct).
Why this pattern (verified against BRAT's official guide, not guessed):
manifest.json on the default branch — keeping it at the stable version is what blocks the beta from reaching all users (BRAT guide: "Obsidian will pick up an update once the manifest.json in the default branch of your repository changes."). The store does not read pre-release assets, so the asset version is free to be the beta version.manifest.json asset … notifying users of the discrepancy" when they disagree. So a stable asset manifest on a -beta tag still works (testers get the right main.js and BRAT shows the tag version) but shows testers a needless version-mismatch warning — which is why release.yml now syncs the asset manifest to the tag (BRAT guide best practice: "Always ensure the version in your released manifest.json matches your release tag version").manifest-beta.json is not used and should not be — BRAT ignores it from v1.1.0 on (legacy). A survey of 8 popular plugins found only dataview still ships one. release.yml's asset-sync replaces what manifest-beta.json used to do.Sources: BRAT Developer Guide, BRAT pre-release/version-picker update.
The default-branch manifest.json version is not a reliable indicator of the beta line: betas are cut without bumping it, so a X.Y.Z-beta.N tag's committed manifest still says the previous stable. Use these instead:
git tag --sort=-creatordategh release view <tag> --json isDraft,isPrerelease,publishedAt — NOT gh release list (it lists drafts too) and NOT the changelog/manifest.## [X.Y.Z] - YYYY-MM-DD heading can exist before X.Y.Z ships (the beta-prep step renames ## [Unreleased] early), so a dated heading does not mean that version is released.Why it matters: wrong release-state assumptions produce wrong user-facing guidance — e.g. telling the maintainer to "publish the draft" when it's already live, or sending an email that points at a release link that 404s.
main and you want maintainer-only test exposure before stableIf the user just says "release 1.3.0" (no beta), use bump-version instead.
main is the branch and has the work to ship.git log --oneline <last-stable-tag>..HEAD — eyeball the commit set.Closes #N / Fixes #N / Resolves #N. If any appear, those issues will auto-close the moment you push to main from the beta-bump commit onward — which is wrong for a beta (the issue should close on stable, not on the beta build). If you find any, plan to reopen those issues after pushing (see step 6) and use Refs #N in future commits.N=1 for the first beta of a given X.Y.Z. Subsequent betas of the same X.Y.Z increment N./beta-release 1.3.0-beta.2), use it.package.json → "version": "X.Y.Z-beta.N"manifest.json → leave at the previous stable (do not change)CHANGELOG.md → rename the existing ## [Unreleased] section to ## [X.Y.Z] - YYYY-MM-DD (the stable header, not -beta.N). If a ## [X.Y.Z] section already exists — you're shipping beta.2+ of the same X.Y.Z, so an earlier beta already created it — do NOT rename; that would produce a duplicate [X.Y.Z]. Instead merge the ## [Unreleased] entries into the existing ## [X.Y.Z] section under the matching categories, then delete the now-empty [Unreleased] header (keep the existing date; bump-version finalizes it at stable). Feature sessions maintain ## [Unreleased] as work lands (see repo CLAUDE.md → Changelog), so the entries should already be present — add any that were missed. Reuse the [X.Y.Z] section as-is for the eventual stable bump. Follow the existing categories (Added / Changed / Improved / Fixed) and reference issue numbers (#N). Write from user perspective — see bump-version for the same conventions.Verify each entry against the user-facing surface before finalizing. Commit descriptions tell why and how a change was made; CHANGELOG entries tell what the user sees. These diverge in small but visible ways — e.g. a UI control described as a "slider" that's actually addText (number input); a fix said to affect "the sidebar" that also affects the in-document panel; a setting whose label in code differs from the working name in the commit. For each entry, open the component that implements the change and confirm control type, exact label, and which views are affected. The same verified entry text feeds into the release body in step 5 — getting it right here means the release body is correct by construction.
git commit -m "chore: prepare X.Y.Z beta
- package.json: A.B.C -> X.Y.Z-beta.N
- manifest.json: stays at A.B.C so the community plugin store does not
push the beta to stable users; BRAT testers receive this build via the
X.Y.Z-beta.N prerelease.
- CHANGELOG entry for X.Y.Z is drafted in place and will be reused at
stable release time."git push origin main
git tag X.Y.Z-beta.N
git push origin X.Y.Z-beta.NThe push of the tag triggers .github/workflows/release.yml → builds with npm run build → version-syncs the asset manifest.json to the tag (the committed default-branch file is untouched) → adds --prerelease for -beta/-alpha/-rc tags → creates a draft release with assets main.js, manifest.json, styles.css.
Wait for the workflow with gh run watch <id> (or gh run list --workflow=release.yml --limit 1).
The maintainer publishes via the GitHub UI (so they visually confirm assets + flags). Provide a release body draft.
Scope for beta.2+ bodies: incremental, not cumulative (decided 2026-08-29, 1.7.0-beta.3). Detail only what's new since the previous published beta, then one line "Everything from X.Y.Z-beta.N-1 is included: <comma-list of headline items>". Rationale: the primary readers are BRAT testers already on the previous beta (they need the delta); newcomers from an issue link get the cumulative picture via the one-line link; full duplication drifts as entries get edited across betas. The CHANGELOG [X.Y.Z] section remains the cumulative record and the stable release note aggregates. (A beta whose predecessor was never published — like 1.7.0-beta.2 after unpublished beta.1 — is effectively the first beta: write it cumulatively.)
Template (first beta of a cycle; adapt the intro and body scope per the rule above for beta.2+):
First beta of the X.Y.Z release — <one-line summary of the headline changes> (#refs, with contributor credits inline).
## Installing via BRAT
1. Install the [BRAT](https://github.com/TfTHacker/obsidian42-brat) plugin in Obsidian
2. Open BRAT settings → **Add Beta Plugin** → paste `joybro/obsidian-similar-notes`
## What's in this beta
<summarize the CHANGELOG entry here — do NOT paste a long entry verbatim. Keep each item's bold title + one-sentence "what the user sees"; drop nested sub-bullets and deep mechanism prose; merge same-root-cause Fixed items into one line. The release note is a scannable announcement; the CHANGELOG file stays detailed and untouched.>
## Feedback
If anything looks off (<2-3 concrete symptoms specific to this beta's changes>), please report on #<issue> or #<issue>. Thanks!
## Known limitation (optional)
<list anything unfixed, e.g. cannot-reproduce reports>Credit contributors inline in the intro line — maintainer convention (asked for explicitly on 1.7.0-beta.2 when a draft omitted it). Forms: (#42, suggested by @user) for an idea/report, (#51, contributed by @user in #54) for a PR. Check each shipped item's issue/PR for who to credit. The Feedback section is standing, not optional — it routes reports to the tracked issues (release pages have no comment box, see Gotchas).
Set the body on the draft yourself — do not make the maintainer paste it. gh release edit modifies the draft's body only; it does NOT publish (the release stays draft: true):
gh release edit X.Y.Z-beta.N --notes-file <path-to-body.md>Then hand the maintainer the draft URL and these steps:
release.yml sets it automatically for -beta tags; just verify it (don't rely on memory that it's automatic — glance at the checkbox)The maintainer still publishes via the UI so they visually confirm assets + the prerelease checkbox. Do not call gh release edit --draft=false yourself unless the user explicitly asks; that is the publication step and surfaces an external-visible artifact.
For each issue your step 0 scan flagged: gh issue reopen <N>. Note in the BRAT-invite comment that it was reopened because auto-close fired off the beta.
For each issue addressed by this beta, post a short comment. Tone is short and friendly — see prior maintainer comments on the issue or in past resolved issues for voice match. Template:
Hi @<reporter>, <one-line summary of the fix/feature> in X.Y.Z-beta.N. <Optional: reopen explanation if applicable.>
If you want to try the beta before stable, install via BRAT:
1. Install the BRAT plugin
2. Add Beta Plugin → `joybro/obsidian-similar-notes`
Release notes: https://github.com/joybro/obsidian-similar-notes/releases/tag/X.Y.Z-beta.N
Will <ping again | close this> once X.Y.Z stable is out. Thanks!If the issue covers multiple items, mirror them as a - [x] / - [ ] checklist so the reporter sees per-item status (esp. for unreproduced items).
Posting issue comments is external-visible — require explicit user approval before invoking gh issue comment.
When the maintainer is satisfied:
manifest.json A.B.C → X.Y.Z (this is what releases the plugin to all users)package.json X.Y.Z-beta.N → X.Y.ZCHANGELOG.md entry — reuse as-is, or amend if any follow-up fixes landed during the betachore: bump version to X.Y.Z, pushgit tag X.Y.Z && git push origin X.Y.Z → release workflow re-runs, draft createdgh issue close <N>(bump-version skill covers the file-change mechanics; this step is what closes out the beta cycle.)
| Gotcha | Why | Mitigation |
|---|---|---|
Closes #N in a commit message auto-closes the issue on push, but you're only releasing a beta | GitHub keyword | Use Refs #N in commit messages while a stable hasn't shipped; reopen if it slipped through |
Lint max-lines fails on long test files | The repo's .eslintrc.json had max-lines: 400 applied globally until #39 cycle — test overrides now relax it | If it regresses, ensure overrides[].files: ["**/__tests__/**", "**/*.test.ts(x)"] still disables max-lines and max-lines-per-function |
| GitHub release page has no comment box | Releases are view-only — only issues/PRs accept comments | When writing release body or asking for feedback, point to #<issue> (not "leave a comment here") |
prerelease: false | release.yml now adds --prerelease for *-beta*/*-alpha*/*-rc* tags and syncs the asset manifest.json version to the tag | Maintainer only verifies the (already-ticked) checkbox before publishing — no manual toggle needed |
| BRAT testing on a different machine | The plugin needs to be installed via BRAT (not install-local.sh) when the test machine doesn't have the repo checkout | Confirm BRAT is installed on the test machine before betas are needed |
manifest.json to the beta version → community plugin store would push the beta to all stable users. Always leave manifest.json at the previous stable until the stable release.## [X.Y.Z-beta.N] — use ## [X.Y.Z] so it can be reused at stable without edits.gh release edit instead of the UI — small risk, but they lose the visual confirmation of assets/checkbox state. Hand off the UI flow unless they explicitly delegate.© joybro, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/beta-release of joybro/obsidian-similar-notes.
Open the folder on GitHubat commit fc90799
Beta Release next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Beta Release this skilljoybro/obsidian-similar-notes | 107 | — | ~3.7k | Automated safety check: Pass | MIT | |
| Vault Contextual RetrievalAgriciDaniel/claude-obsidian | 15k | — | ~1.4k | Automated safety check: Pass | MIT | |
| Hugging Face LLM Trainerhuggingface/skills | 11k | 3 repos | ~7.2k | Automated safety check: Pass | Apache-2.0 | |
| Subwave LLM Benchperminder-klair/subwave | 1.4k | — | ~2.4k | Automated safety check: Notes | MIT | |
| DGX Spark Memory and Thermal Opswshobson/agents | 40k | 1 repos | ~2k | Automated safety check: Pass | MIT | |
| Skill Conductorsmixs/skill-conductor | 179 | — | ~6.6k | Automated safety check: Pass | MIT |
AgriciDaniel/claude-obsidian
Builds and queries a local contextual BM25 index over an Obsidian vault, with optional Nomic reranking through Ollama and strict consent rules before any text leaves the machine.
huggingface/skills
Trains or fine-tunes language and vision models with TRL or Unsloth on Hugging Face Jobs cloud GPUs, then converts the results to GGUF.
perminder-klair/subwave
Benchmark and compare LLM models for SUB/WAVE's on-air calls — track picks, segments, listener requests, DJ scripts, banter, and programme beats — in both candidate-pool and agent modes, using…
wshobson/agents
Plans memory headroom, works through out-of-memory failures and watches temperature and power during long ML training jobs on NVIDIA DGX Spark.
smixs/skill-conductor
Create, edit, evaluate, and package agent skills. An agent skill from smixs/skill-conductor.
danyuchn/pii-guard
Processes sensitive local documents through PII Guard and a local Ollama model into a reversible redacted copy, without letting the main agent read the original or restored contents.
joybro/obsidian-similar-notes
A skill your agent uses when bumping to a stable X.Y.Z release (e.g., "release 1.3.0", "bump to 0.13.0", "prepare 2.0.0").
Categories
A skill your agent uses when releasing a beta build of this Obsidian plugin for BRAT-based testing (e.g. Beta Release is an agent skill from joybro/obsidian-similar-notes.g.
Beta Release fits situations like: releasing a beta build of this Obsidian plugin for BRAT-based testing (e.g.
Run `npx skills add joybro/obsidian-similar-notes --skill beta-release -a claude-code`. Or copy the skill folder (.claude/skills/beta-release in joybro/obsidian-similar-notes) into .claude/skills/beta-release in your project. Claude Code loads it when a task matches its description.
Run `npx skills add joybro/obsidian-similar-notes --skill beta-release -a codex`. Or copy the skill folder (.claude/skills/beta-release in joybro/obsidian-similar-notes) into .agents/skills/beta-release in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add joybro/obsidian-similar-notes --skill beta-release -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/beta-release, .gemini/skills/beta-release, .github/skills/beta-release and .opencode/skills/beta-release in your project.
Going by SKILL.md and its folder, Beta Release needs the command-line tools its instructions call (gh, git and npm).
SKILL.md names 2 domains. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. As links in the text: forum.obsidian.md. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Beta Release is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.7k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Beta Release: Vault Contextual Retrieval (AgriciDaniel/claude-obsidian, 15k stars), Hugging Face LLM Trainer (huggingface/skills, 11k stars), Subwave LLM Bench (perminder-klair/subwave, 1.4k stars) and DGX Spark Memory and Thermal Ops (wshobson/agents, 40k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
joybro (a GitHub user) maintains it in joybro/obsidian-similar-notes, which has 107 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on September 5, 2026.
Source: joybro/obsidian-similar-notes on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.