Install
$ agentstack add skill-palol-skills-zoo-dg-random-note ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Digital Garden - Random Note Route
Adds a /random route to an Obsidian Digital Garden (Eleventy) site. Visiting /random/ redirects the visitor to a randomly chosen published note.
The whole feature is one file - src/site/~random.njk. It builds an inline list of published note URLs at build time, then a tiny script picks one and redirects. No build scripts, no dependencies, no plugin-core edits.
When to Use This Skill
Use when a Digital Garden user wants a "surprise me" / shuffle / random-note link - e.g. "add a random button destination", "give me a /random page", "let visitors jump to a random note".
This skill installs the destination route only. If the user also wants a floating shuffle button, that lives in the dg-floating-tray skill (its "random" action links to /random). This route is what that button points at.
Do not use to install other DG features, or on non-DG stacks (Quartz, Astro, plain Eleventy) - the collections.note collection and dg-publish flag are DG-specific.
DG invariants respected
- User-owned path.
src/site/~random.njkis a new file the plugin never ships, so upstream
git pull never clobbers it. The ~ prefix avoids clashing with a potential random.md note. It's a root page (not a components/user/ slot) because a route needs its own permalink - see references/architecture.md for why that's still upstream-safe.
- No autoloading needed. A page route is not a slot component, so there's no
dynamics.js
glob or filename-prefix ordering to worry about.
- Theme via tokens. The redirect page reuses the site's own
pageheader.njkand theme body
classes, so it inherits light/dark automatically. No hardcoded color.
- Accessibility / graceful degradation. `` path plus a visible "Go home" link, and
meta robots noindex so the transient redirect page isn't indexed.
- One config knob.
FALLBACK_URL(inline, top of the ``) - where to send visitors if
no published notes exist. Nothing else to tune.
Prerequisites (verify first)
- An Obsidian Digital Garden (oleeskild plugin + Eleventy) repo with a working
collections.note
collection and the standard components/pageheader.njk include.
- Notes use the
dg-publishfrontmatter flag (the DG default). The random pool = published notes.
Instructions
- Confirm prerequisites (above). Abort with a plain explanation if the target isn't a DG
repo.
- Copy the route file into the site root:
`` assets/~random.njk → src/site/~random.njk ``
- (Optional) Set the fallback. Edit
FALLBACK_URLat the top of the `if/` isn't
the desired empty-pool destination.
- (Optional) Pool tuning. By default the pool excludes notes flagged
dg-hide. If the user
wants every published note eligible, remove and not note.data['dg-hide'] from the {% if %}. If they want to exclude more (e.g. a /logs/ prefix), extend that condition.
- Build and verify with
references/verify.md. - Wire an entry point (only if asked): a nav link or
Surprise me.
If dg-floating-tray is installed, its shuffle button already targets /random - no change needed.
Reference Files
references/architecture.md- how the build-time loop + runtime pick work, and why a root page
is upstream-safe.
references/verify.md- post-build QA checklist (route, pool correctness, back-button, fallback).
Assets
assets/~random.njk- the single self-contained route (build-time list + runtime redirect).
Risk Level
L1 (low). Adds a single new page file (src/site/~random.njk). No build scripts, no secrets, no network calls, no core/layout edits. Fully reversible: delete the one file.
Validate & Package
npx skills-ref validate skills/dg-random-note/
zip -rq dg-random-note.zip dg-random-note
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: palol
- Source: palol/skills-zoo
- License: MIT
- Homepage: http://skillz.paologabriel.com/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.