agentleFS
jctotsjctots/thinkpad-fedora-agent/.claude/skills/update-check/SKILL.md

update-check

Skill0 starsChanged 3 months agoMITView on GitHub

Check for OS image updates (rpm-ostree), drift/updates across both flatpak manifests (this repo's scripts/install-flatpaks.sh and the private extras repo's flatpaks.sh, if EXTRAS_DIR is set), the full flatpak install including runtimes/extensions, npm global packages, and firmware (fwupd/LVFS). Use when the user asks to check for updates, upgrade the system, or update installed apps.

The file

We split this skill into the rules it gives an agent

9 rules. About 0 are common, 0 are distinctive, and 9 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 9

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Run scripts/update-check.sh from the repo root and show its output as-is — it already reports, per CLAUDE.md's "deny what cannot be undone" …

    line 6
  2. Very specific:

    every flatpak in the public manifest and, if EXTRAS_DIR is set, the private extras manifest: current, outdated, not installed, or unknown …

    line 10
  3. Very specific:

    every globally-installed npm package (npm ls -g --depth=0 vs.

    line 18
  4. Very specific:

    Not covered, and can't be with this same mechanism: anything side-loaded into an app outside a package manager entirely — e.g.

    line 23
  5. Very specific:

    If an OS update is available: show the printed rpm-ostree upgrade && systemctl reboot command and ask before running it.

    line 35
  6. Very specific:

    If any flatpaks are outdated: show the printed flatpak update <id> commands.

    line 39
  7. Very specific:

    If anything is not installed, point back at the relevant manifest script (scripts/install-flatpaks.sh or the extras repo's flatpaks.sh) for …

    line 44
  8. Very specific:

    If the full-system flatpak preview lists runtimes/extensions, show the printed flatpak update command and ask before running it — same …

    line 49
  9. Very specific:

    If a firmware update is listed: show the printed fwupdmgr update command, but do not offer to run it yourself even with confirmation — it …

    line 52

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Run scripts/update-check.sh from the repo root and show its output as-is — it already reports, per CLAUDE.md's "deny what cannot be undone" rule:

  • OS image staleness via rpm-ostree upgrade --check (read-only, no deploy)
  • every flatpak in the public manifest and, if EXTRAS_DIR is set, the private extras manifest: current, outdated, not installed, or unknown (remote unreachable)
  • the full flatpak install, runtimes and extensions included, via flatpak update answered "n" at its prompt — this is what actually matches GNOME Software's "App Updates" list, which often attributes a runtime/extension update (e.g. a GL/VAAPI driver) to every app that depends on it rather than listing the runtime itself
  • every globally-installed npm package (npm ls -g --depth=0 vs. npm outdated -g) — generic, not tied to any specific package; whatever's under the user's npm prefix at the time
  • firmware via fwupdmgr get-updates (LVFS)

Not covered, and can't be with this same mechanism: anything side-loaded into an app outside a package manager entirely — e.g. a Betterbird WebExtension .xpi installed via "Install Add-on From File…" (see thinkpad-fedora-extras/docs/THUNDERBIRD-CLI.md). There's no installed-version-vs-remote-version query to run for that; checking for a newer release means re-checking the upstream GitHub releases page by hand, closer to vendor-update's job than this skill's.

It never runs rpm-ostree upgrade, flatpak update, or fwupdmgr update itself — same report-only contract as install-flatpaks.sh. After showing the output:

  • If an OS update is available: show the printed rpm-ostree upgrade && systemctl reboot command and ask before running it. This is the reboot-required, rpm-ostree rollback-covered layer — never auto-run it, same as every other host-level command in this repo.
  • If any flatpaks are outdated: show the printed flatpak update <id> commands. These are lower-stakes and individually reversible (flatpak update keeps the previous deploy), but still host-level — propose them, don't run them silently. Batch confirmation across several ids in one ask is fine; running them without asking is not.
  • If anything is not installed, point back at the relevant manifest script (scripts/install-flatpaks.sh or the extras repo's flatpaks.sh) for the install command rather than improvising one here.
  • unknown entries usually mean no network to Flathub — say so, don't treat it as "current".
  • If the full-system flatpak preview lists runtimes/extensions, show the printed flatpak update command and ask before running it — same reversible, propose-then-confirm handling as manifest flatpak updates.
  • If a firmware update is listed: show the printed fwupdmgr update command, but do not offer to run it yourself even with confirmation — it flashes hardware directly and isn't covered by any of this repo's three reversibility layers. Say why, and have the user run it.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.