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 ObolNetwork/obol-stack --skill security-review-fegit clone --depth 1 https://github.com/ObolNetwork/obol-stackWrote 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/obolnetwork/obol-stack/security-review-fe)<a href="https://agentmods.dev/skills/obolnetwork/obol-stack/security-review-fe"><img src="https://agentmods.dev/badge/skills/obolnetwork/obol-stack/security-review-fe/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/obolnetwork/obol-stack/security-review-fe"><img src="https://agentmods.dev/badge/skills/obolnetwork/obol-stack/security-review-fe.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.00051 | $0.00614 |
| Opus 5.5 | $0.00020 | $0.00246 |
| Sonnet 5.5 | $0.00010 | $0.00123 |
| Haiku 4.5 | $0.00005 | $0.00061 |
Grade A, and why
security-review-fe 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 today.
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 — 56 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Frontend security review (obol-stack-front-end)
In scope (review these)
-
API route handlers (
src/app/api/**/route.ts)- Mutations use
rejectCrossOrigin(CSRF) - No shell/command injection from user input
- Kubernetes client uses in-cluster config; no arbitrary kubeconfig paths from untrusted input
- Mutations use
-
Secrets
- No
.env, keys, or tokens committed NEXT_PUBLIC_*vars are public by design — never put API secrets there- Logs redact RPC URLs / tokens (see
scrubpatterns in marketplace errors)
- No
-
Tunnel / Traefik exposure
- This app is usually local-only (
hostnames: ["obol.stack"]on stack routes) - Do not add routes that expose admin surfaces on the Cloudflare tunnel hostname
- x402-gated
/services/*is stack-side (Go, outside web/frontend) — flag only if FE adds public proxies
- This app is usually local-only (
-
Sell / wallet flows
pay-toaddresses validated as0x+ 40 hex- Namespace allowlist on
/api/sell/create POST /api/marketplace/probe— URL host allowlist (obol.stack, tunnel, cluster DNS); no arbitrary SSRF
-
x402 probe
- Probe route only fetches
/services/*paths on allowlisted hosts - Do not widen allowlist to arbitrary external domains without review
- Probe route only fetches
Out of scope (do not flag as FE bugs)
| Finding | Why skip |
|---|---|
| Missing auth on read-only cluster metrics | Dashboard assumes trusted local operator + kubeconfig |
dangerouslySetInnerHTML in docs/skills |
Only if unsanitized user HTML — DOMPurify paths are OK |
| Dependency CVEs without exploit path in browser bundle | Track via Dependabot; don't block PR on transitive dev-only CVEs unless critical |
| ERC-8004 / x402 protocol design | Belongs in the Go stack code, not web/frontend |
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.
- today First seen · 56 lines · 51 tokens per session scan A 49c6129ccdb1
security-review-fe is a skill published in the GitHub repository ObolNetwork/obol-stack (11 stars, last pushed today), licensed Apache-2.0. It adds 51 tokens to every session and 614 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-10-16.
Other skills, from other repositories
securing-helm-chart-deployments
Secure Helm chart deployments by validating chart integrity, scanning templates for misconfigurations, and enforcing security contexts in Kubernetes releases.
nvca-values-customization
Customize NVCA Operator Helm chart values in the native monorepo. Use when modifying vendored defaults, changing stack-derived install values, adding deployment-time overrides, or updating scripts under deploy/helm/nvca-operator.
nvca-self-managed-install
Install or validate the NVCA Operator chart against a self-managed NVCF control plane from the native monorepo. Use when the control plane comes from deploy/stacks/self-managed and NVCA must be installed with stack-derived image repository settings.
helm-expert
Expert-level Helm 3 package management, chart development, templating, and production operations. Use when the user mentions Kubernetes, package manager, charts, templates, or deployment, or when the task involves Helm Architecture, Chart Structure, Values.yaml, or Helm Hooks.
argocd
Operate Argo CD GitOps with AppProjects, safe automated sync/prune, and RespectIgnoreDifferences—debug OutOfSync/Degraded without kubectl drift that fights the controller.
helm
Package Kubernetes applications as Helm charts, configure values and dependencies, and inspect release upgrades or rollbacks.