@mcwalrus/fresh-data
v0.1.0
Published
Force live data sourcing. Never cite facts from training data without a live lookup. Pi extension, skills.sh package, Claude Code plugin.
Maintainers
Readme
Fresh Data
📡 Always fetch fresh data when relevant to your agentic development. 📡
The Problem
AI models can default to their knowledge relative to it's training data. This can be for key information related to problem solving which can draw to the wrong analysis or problems. This skill, or AI-model harness extension aims to enforce the process of fetching the most up-to-date, revelant data available when applicable.
How it works
Before citing key facts, the agent stops at the first rung that holds:
1. Does this claim age? → no: cite from training (math, history, ideas)
2. What time is it? → `date` for knowing the "retrieved today"
3. Primary source exists? → fetch it (vendor docs, changelogs, registries)
4. Is the URL authoritative? → state it; unfamiliar → click through to vendor homepage
5. If passes: → quote with URL and retrieval timestampOtherwise, if sources aren't authoritative or can't be fetched fresh data will state this that information couldn't be found.
When it doesn't apply
Fresh data will ignore claims where training-era data is fine:
- Historical events with fixed dates — e.g. "When did WWII end?"
- Mathematical or logical facts — pure math, formal logic, well-established identities
- Foundational concepts that do not evolve — e.g. what TCP/IP is, what a hash function does
- Blog posts, opinion pieces, essays — when you want the idea or argument, not a specific factual claim that the post hinges on
- Discovering new opinions or perspectives — when the recency of the view doesn't matter; historic articles are fine
Key examples
- Using
debian-12instead ofdebian-13. - Fetching previous version of dependencies.
- Quoting an API endpoint URL that's since been deprecated or moved.
- Citing an old default version of a framework (Next.js, React, Python, Node).
- Naming a CVE or security advisory that has since been patched or superseded.
- Using a deprecated CLI flag (e.g. old
kubectl/docker/ghsyntax).
Worked examples
Check the latest version of an npm package:
curl -s https://registry.npmjs.org/<pkg>/latest | jq .version
# Or use the package manager:
npm view <pkg> versionCheck peer / engine compatibility without guessing:
npm view <pkg> peerDependencies enginesFind the newest articles on a site:
curl -s https://<site>/sitemap.xml | grep -E '<loc>|<lastmod>'
# Sort by <lastmod> descending. For large sites, try /sitemap_index.xml first —
# it links to per-section sitemaps via <sitemap><loc> entries.Read a feed directly:
curl -s https://<site>/rss.xml | grep -E '<title>|<pubDate>'These are the canonical primitives. See SKILL.md for the full procedure and the URL list for PyPI / crates.io / RubyGems / Maven / Packagist / NuGet / Go / container registries.
Install
Pi
pi install npm:@mcwarlus/fresh-data
# or pin to a specific git ref:
pi install git:mcwarlus/fresh-data@<ref>Once published, npm is the canonical install path. Git install remains available for tag pinning.
Once installed:
- Slash commands:
/fresh-data— toggle the rules on/off/fresh-data onor/fresh-data enable— explicitly turn the rules on/fresh-data offor/fresh-data disable— explicitly turn the rules off/fresh-data status— report current state/fresh-data install— write the rules intoCLAUDE.mdso they apply even when the skill is off
- Verbal toggle: type
stop fresh-dataornormal modeto turn the rules off - Footer indicator:
● 📡 fresh-data: ACTIVEvs○ 📡 fresh-data: OFF - Default: fresh sessions start on after install; turning it off in a session persists across
/resumeand/new.
Claude Code / skills.sh
npx skills@latest add mcwarlus/fresh-dataClone-based harnesses
Clone the repo; each harness auto-loads its file from the path below:
| Harness | Path it loads |
|---------|---------------|
| Cursor | .cursor/rules/fresh-data.mdc |
| Codex | .codex-plugin/plugin.json |
| Cline | .clinerules/fresh-data.md |
| Qoder | .qoder/rules/fresh-data.md |
| Kiro | .kiro/steering/fresh-data.md |
| OpenClaw | .openclaw/skills/fresh-data/SKILL.md |
| OpenCode | .opencode/command/fresh-data.md
Development
npm test # runs all 57 tests (~190ms)
node scripts/check-rule-copies.jsContributing
Issues and PRs at github.com/mcwarlus/fresh-data.
The rules body is canonical in RULES.md; every harness-specific wrapper is generated from it:
node scripts/sync-rule-copies.js # push RULES.md to every wrapper
node scripts/check-rule-copies.js # verify they all matchTests:
npm testPublishing a new version:
npm version <patch|minor|major|rc> # bumps version in package.json
npm publish # npm test + check-rules run via prepublishOnlyLicense
MIT. The shortest license that works.
