Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add gke-labs/kube-agents --skill fleet-auditgit clone --depth 1 https://github.com/gke-labs/kube-agentsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/gke-labs/kube-agents/fleet-audit)<a href="https://agentmods.dev/skills/gke-labs/kube-agents/fleet-audit"><img src="https://agentmods.dev/badge/skills/gke-labs/kube-agents/fleet-audit/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/gke-labs/kube-agents/fleet-audit"><img src="https://agentmods.dev/badge/skills/gke-labs/kube-agents/fleet-audit.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00044 | $0.04128 |
| Opus 5.5 | $0.00018 | $0.01651 |
| Sonnet 5.5 | $0.00009 | $0.00826 |
| Haiku 4.5 | $0.00004 | $0.00413 |
Grade A, and why
fleet-audit scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 218 lines — stays where its author put it; the contents beside it link to each section on GitHub.
fleet-audit — Audit Findings to a Ledger Issue
Every autonomous audit watchdog ends the same way: findings must reach a human somewhere durable, reviewable, and de-duplicated. This skill is that ending, in two tiers:
- Tier 1 — the ledger. Each audit stream owns exactly one open issue on the forge, rewritten in full on every run and closed as completed when the fleet comes back clean. An operator watches one issue per stream instead of drowning in chat logs.
- Tier 2 — the fixes. When a finding's remediation is a file in this repository, it travels separately as a narrow pull request carrying only that fix, linked back to the ledger.
The split is the point. A report is not a change, so a report is not a pull request — and a fix is not a report, so it carries a real diff a reviewer can read in one screen.
/opt/data/profiles/platform/skills/fleet-audit/scripts/audit_report.py owns every deterministic operation: credential
minting, label creation, issue creation and rewriting, branch handling, staging, committing,
pushing, pull-request creation, closing, the run-over-run delta, and every timestamp. Your job is
to inspect the fleet read-only and emit a findings.json. You never hand-write an issue body or a
PR body, never invent a timestamp, and never open an issue or pull request yourself — not with
vcs.py issue create or vcs.py proposal create, and not any other way —
that is precisely why every ledger looks the same and why the delta between runs is computable.
Audit streams
Only these registered audit ids may own a ledger. Any other id is rejected before a single git or forge
operation runs. The issue title is [audit] <human name> — <n> findings (<c> critical) (singular
1 finding when there is exactly one), where the human name is the one cron/jobs.json gives that
watchdog — not a prettified form of the audit id:
| Audit id | Rendered ledger title |
|---|---|
compliance-audit |
[audit] Security & RBAC Posture Audit — 7 findings (2 critical) |
security-patch-orchestrator |
[audit] Upgrade & Patch Readiness Audit — 7 findings (2 critical) |
obtainability-audit |
[audit] Workload Reliability Audit — 7 findings (2 critical) |
fleet-wide-cost-analysis |
[audit] Fleet Waste Audit — 7 findings (2 critical) |
fleet-consistency-drift |
[audit] Fleet Consistency Drift Audit — 7 findings (2 critical) |
ai-security-audit |
[audit] AI Workload Security Audit — 7 findings (2 critical) |
stockout-prevention |
[audit] Fleet Stockout Prevention & Capacity Audit — 7 findings (2 critical) |
gcp-networking-fabric-audit |
[audit] GCP Networking Fabric & VPC IPAM Audit — 7 findings (2 critical) |
gce-compute-fleet-audit |
[audit] GCE Compute Engine and MIG Fleet Audit — 7 findings (2 critical) |
upgrade-retrospective |
[audit] Upgrade Retrospective — 7 findings (0 critical) |
What ships with it
54 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/clean-run.md 13 KB
- references/findings-document.md 29 KB
- references/finish.md 22 KB
- references/ledger.md 9.5 KB
- references/lifecycle.md 20 KB
- references/on-demand.md 9.9 KB
- references/remediation.md 14 KB
- scripts/audit_report.py 1113 KB runs code
- scripts/collect.py 513 KB runs code
- scripts/fleet_drift.py 111 KB runs code
- scripts/fleet_health.py 38 KB runs code
- scripts/fleet_stockout.py 139 KB runs code
- scripts/fleet_waste.py 321 KB runs code
- scripts/patch_readiness.py 130 KB runs code
- scripts/report_status.py 27 KB runs code
- scripts/test_audit_report.py 1666 KB runs code
- scripts/test_collect.py 643 KB runs code
- scripts/test_fleet_drift.py 141 KB runs code
- scripts/test_fleet_health.py 27 KB runs code
- scripts/test_fleet_stockout.py 202 KB runs code
- scripts/test_fleet_waste.py 446 KB runs code
- scripts/test_patch_readiness.py 205 KB runs code
- scripts/test_report_status.py 22 KB runs code
- scripts/test_upgrade_retrospective.py 522 KB runs code
- scripts/testdata/finish_without_manifest/clean_closes_ledger.json 17 KB
- scripts/testdata/finish_without_manifest/clean_held_over_unaccounted.json 10 KB
- scripts/testdata/finish_without_manifest/clean_over_gap_stays_open.json 8.5 KB
- scripts/testdata/finish_without_manifest/dry_run.json 12 KB
- scripts/testdata/finish_without_manifest/findings_delta_and_promotion.json 28 KB
- scripts/testdata/github_texts.golden.json 48 KB
- scripts/testdata/upgrade_retrospective/clusters.json 2.9 KB
- scripts/testdata/upgrade_retrospective/gemma_endpointslices.json 3.3 KB
- scripts/testdata/upgrade_retrospective/gemma_events.json 6.9 KB
- scripts/testdata/upgrade_retrospective/gemma_nodes.json 16 KB
- scripts/testdata/upgrade_retrospective/gemma_owners.json 4.4 KB
- scripts/testdata/upgrade_retrospective/gemma_pdbs.json 922 B
- scripts/testdata/upgrade_retrospective/gemma_pods.json 26 KB
- scripts/testdata/upgrade_retrospective/gemma_storage.json 2.4 KB
- scripts/testdata/upgrade_retrospective/gemma_webhooks.json 18 KB
- scripts/testdata/upgrade_retrospective/gemma_workloads.json 12 KB
- scripts/testdata/upgrade_retrospective/log_volume_seeded_a_after.json 26 KB
- scripts/testdata/upgrade_retrospective/log_volume_seeded_a_before.json 16 KB
- scripts/testdata/upgrade_retrospective/operations.json 8.4 KB
- scripts/testdata/upgrade_retrospective/seeded_a_endpointslices.json 4.3 KB
- scripts/testdata/upgrade_retrospective/seeded_a_events.json 7.5 KB
- scripts/testdata/upgrade_retrospective/seeded_a_nodes.json 39 KB
- scripts/testdata/upgrade_retrospective/seeded_a_owners.json 4.6 KB
- scripts/testdata/upgrade_retrospective/seeded_a_pdbs.json 905 B
- scripts/testdata/upgrade_retrospective/seeded_a_pods.json 60 KB
- scripts/testdata/upgrade_retrospective/seeded_a_storage.json 4.8 KB
- scripts/testdata/upgrade_retrospective/seeded_a_webhooks.json 19 KB
- scripts/testdata/upgrade_retrospective/seeded_a_workloads.json 22 KB
- scripts/testdata/upgrade_retrospective/serverconfig_us-central1-a.json 941 B
- scripts/upgrade_retrospective.py 417 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday Changed · +3 lines 2bb50e52a0a0
- 4d ago Changed · +1 lines 60ae81190ec6
- 6d ago Changed · +6 lines cd963fdd1ad6
- 7d ago Changed · +6 lines 1d97188f410b
- 11d ago Changed · -1,228 lines 220d06babafb
- 12d ago Changed · +24 lines 7037f72948d7
- 13d ago Changed · +35 lines de54ac22a91b
- 14d ago Changed · +5 lines 54aa76c17340
- 15d ago Changed · +18 lines fa1ddaf7f9b5
- 18d ago First seen · 1,348 lines · 44 tokens per session scan A b5f4bca08bb1
fleet-audit is a skill published in the GitHub repository gke-labs/kube-agents (116 stars, last pushed today), licensed Apache-2.0. It adds 44 tokens to every session and 4,128 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
tech-debt
Track, categorize and prioritize technical debt across the codebase — scans for debt indicators, maintains a register.
OpenSourceManagement
Triages open issues, pull requests and GitHub Discussions across the principal's own open-source repos (the list in Config.md) via the gh CLI, ranks what needs attention with suggested replies, posts edit-in-place marker comments, diffs new Ollama library models against a local model box, and takes a private repo…
pr-review-triage
Watch open PRs, check CI status, review staleness, merge conflicts, and unanswered review comments. Produces a prioritized watchlist.
issue-creation
Trigger: issue creation, bug reports, feature requests, or issue approval. Create and triage GitHub issues from repository evidence.
systemic-issue-triage
Trigger: new issue, bug report, triage, backlog, issue flood, community report, root cause, dead-end, blocked user. Attack issues by root class, never one-by-one; fixes must shrink the system, not grow it.
spec-kitty-runtime-review
Review runtime-owned outputs using the Spec Kitty review workflow surface, then direct approval or rejection with structured feedback. Triggers: "review this work package", "check runtime output", "approve this step", "review WP", "is this WP ready to approve", "check this implementation". Does NOT handle: setup-only…