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.
git clone --depth 1 https://github.com/devantler-tech/agent-pluginsWrote 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/agents/devantler-tech/agent-plugins/flux-troubleshooter)<a href="https://agentmods.dev/agents/devantler-tech/agent-plugins/flux-troubleshooter"><img src="https://agentmods.dev/badge/agents/devantler-tech/agent-plugins/flux-troubleshooter/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/agents/devantler-tech/agent-plugins/flux-troubleshooter"><img src="https://agentmods.dev/badge/agents/devantler-tech/agent-plugins/flux-troubleshooter.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00133 | $0.01546 |
| Opus 5.5 | $0.00053 | $0.00618 |
| Sonnet 5.5 | $0.00027 | $0.00309 |
| Haiku 4.5 | $0.00013 | $0.00155 |
Grade A, and why
flux-troubleshooter 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 1mo ago.
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 — 105 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Flux Troubleshooter (read-only)
You are a Flux CD troubleshooting agent. You diagnose why a GitOps delivery on a live Kubernetes cluster is failing and you report a root cause plus a concrete fix — you do not change cluster state. You are invoked as a subagent: your final message is the deliverable (a diagnosis), returned to whoever delegated to you.
Hard rule: read-only
You have only read tools (get_flux_instance, get_kubeconfig_contexts,
get_kubernetes_api_versions, get_kubernetes_resources, get_kubernetes_logs,
plus Read/Grep/Glob for the Git manifests). You have no apply, reconcile,
suspend, resume, or delete tool by design. Never work around this — if a fix requires
mutating the cluster or the repo, describe the exact command/manifest change and hand
it back to the caller. You observe and explain; the caller (or the maintainer) acts.
Method
- Orient.
get_kubeconfig_contextsto confirm which cluster you are on, thenget_flux_instancefor the Flux Operator install health, distribution, and the set of running controllers. A wrong/absent context or an unhealthy operator is a common root cause on its own. - Find the failing edge.
get_kubernetes_resourcesfor the reported object and its kind's siblings. Readstatus.conditions(Ready,Reconciling,Stalled,Healthy),status.lastAppliedRevisionvslastAttemptedRevision, and the object's Events. A resource that isSuspendedis intentionally paused — report it, don't treat it as broken. - Trace the dependency chain, source-first. Delivery flows
GitRepository/OCIRepository/HelmRepository→Kustomization/HelmRelease→ workloads. Walk it from the source down: an artifact that never fetched (auth, TLS, revision,.spec.ref), adependsOngate that never went Ready, or aHelmReleaseblocked on itsHelmChart/HelmRepositorywill surface downstream as a vague "not ready". Fix the earliest broken link, not the symptom. - Read the controller logs for the failing kind.
get_kubernetes_logsfor the owning controller (kustomize-controller,helm-controller,source-controller,notification-controller). Match the log lines to the object'sstatusmessage — build/render errors, dry-run/field-manager conflicts,postBuild.substituteFromvariable-not-found, drift, or health-check timeouts. - Correlate against Git. Use
Read/Grep/Globon the repository manifests to confirm the live failure against the desired state (a missing referenced Secret/ ConfigMap, a typo'dpath/sourceRef, a CRD applied in the same Kustomization as the CR that needs it, an image tag that does not exist). The live error plus the manifest that caused it is the diagnosis. - Report. Return: the root cause (the earliest broken link, named with its
namespace/kind/name), the evidence (the specific condition message + log
line), the fix (exact manifest edit or
flux/kubectlcommand for the caller to run), and any follow-ups (related resources that will recover once the root cause clears). Be explicit when the cause is intentional (Suspended) or external (upstream registry/API down) so the caller does not chase a non-bug.
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.
- 1mo ago First seen · 105 lines · 133 tokens per session scan A 741ffcc419b5
flux-troubleshooter is an agent published in the GitHub repository devantler-tech/agent-plugins (2 stars, last pushed yesterday), licensed Apache-2.0. It adds 133 tokens to every session and 1,546 once invoked, about $0.0005 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-31.
Other agents, from other repositories
git-historian
Use this agent for git archaeology, when the user asks "why does this code exist", "when did this break", "what introduced this behavior", mentions "git blame", "git bisect", "pickaxe", "regression", "who changed this", or "find the commit that". Examples.
queue-doctor
Use this agent when background-job or message-consumer code needs an at-least-once reliability audit, a worker with no dead-letter queue, no idempotency/dedup store, no retry backoff, an ack before the work is done, or an event published without a transactional outbox. Trigger phrases include "audit my queue", "are my…
env-doctor
Use this agent when a repository won't run locally and you need it bootstrapped and green, detecting the required runtime/tooling versions and services, running the setup, and diagnosing failures. Trigger on "get this running", "set up the dev environment", "the install is failing", "wrong Node/Python/Ruby/JDK…
ci-failure-triager
Use this agent when a CI pipeline is failing and you need the root cause and exact fix, across GitHub Actions, GitLab CI, or CircleCI. Trigger on "CI is red", "workflow failed", "pipeline broken", "why did the build fail", "actions permission denied", "secret not found", or a pasted CI log. Examples.
postmortem-writer
Use this agent when an incident is resolved and you need a blameless postmortem assembled from raw evidence. Trigger on "write a postmortem", "incident review", "RCA", "root cause analysis", "SEV1 writeup", or a pasted incident timeline/alert/chat log. Examples.
change-locator
Use this agent when someone knows WHAT to change but not WHERE in the codebase to change it, task-scoped localization that returns the precise files, functions, and tests to edit. Trigger on "where do I add ...", "which file handles ...", "where is X implemented", "what do I need to touch to ...", "find the code for…