Not in the top 1,000 by GitHub stars
cacheforge-ai/cacheforge-skills
⚡ SOTA agent skills for OpenClaw — observability, security, code quality, incident response, and more. Built by Anvil AI.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/agentic-devops/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/context-engineer/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/continuity-kernel/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/dep-audit/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/feed-diet/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/kube-medic/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/log-dive/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/meeting-autopilot/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/pager-triage/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/prom-query/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/rug-checker/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/swarm-self-heal/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/tf-plan-review/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
skills/vibe-check/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e3f98473c80f
No earlier version was observed for comparison.
Heat
0.3- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
- agentic-devops
skills/agentic-devops - context-engineer
skills/context-engineer - continuity-kernel
skills/continuity-kernel - dep-audit
skills/dep-audit - feed-diet
skills/feed-diet - kube-medic
skills/kube-medic - log-dive
skills/log-dive - meeting-autopilot
skills/meeting-autopilot - pager-triage
skills/pager-triage - prom-query
skills/prom-query - rug-checker
skills/rug-checker - swarm-self-heal
skills/swarm-self-heal - tf-plan-review
skills/tf-plan-review - vibe-check
skills/vibe-check
How it works
agentic-devops
When your agent uses it
Production-grade agent DevOps toolkit — Docker, process management, log analysis, and health monitoring. Built by engineers who run production.
What it loads into context
Frontmatter
160 tokensAlways available to the agent
SKILL.md
718 tokensWhen the skill is activated
Reference documents
742 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to use this skill
- Commands
- Requirements
Scripts executed separately
devops.py
Files
CHANGELOG.mddoc698 bytesLICENSEasset1,067 bytesREADME.mddoc2,428 bytesSKILL.mdcore2,896 bytesSKILL.mdcore2,896 bytesSKILL.mdcore2,896 bytesSKILL.mdcore2,896 bytesSKILL.mdcore2,896 bytesSKILL.mdcore2,896 bytesdevops.pyruns39,581 bytes
Read SKILL.md
## When to use this skill
Use this skill when the user wants to:
- Run system diagnostics or health checks
- Manage Docker containers (status, logs, health, compose)
- Inspect running processes, ports, or resource hogs
- Analyze log files for errors, patterns, or frequency
- Check HTTP endpoint availability or port status
- Get a quick one-command system overview
## Commands
### Quick Diagnostics (start here)
View the complete source on GitHubcontext-engineer
When your agent uses it
Context window optimizer — analyze, audit, and optimize your agent's context utilization. Know exactly where your tokens go before they're sent.
What it loads into context
Frontmatter
160 tokensAlways available to the agent
SKILL.md
675 tokensWhen the skill is activated
Reference documents
707 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to use this skill
- Commands
- What It Analyzes
- Options
- Notes
Scripts executed separately
context.py
Files
CHANGELOG.mddoc1,009 bytesLICENSEasset1,067 bytesREADME.mddoc2,284 bytesSKILL.mdcore3,026 bytesSKILL.mdcore3,026 bytescontext.pyruns35,829 bytes
Read SKILL.md
## When to use this skill
Use this skill when the user wants to:
- Understand where their context window tokens are going
- Analyze workspace files (SKILL.md, SOUL.md, MEMORY.md, etc.) for bloat
- Audit tool definitions for redundancy and overhead
- Get a comprehensive context efficiency report
- Compare before/after snapshots to measure optimization progress
- Optimize system prompts for token efficiency
## Commands
```bash
# Analyze workspace context files — token counts, efficiency scores, recommendationsView the complete source on GitHubcontinuity-kernel
When your agent uses it
OpenClaw continuity kernel for fail-open llm_input injection, deterministic runtime contracts, and shadow-mode eval receipts.
What it loads into context
Frontmatter
145 tokensAlways available to the agent
SKILL.md
917 tokensWhen the skill is activated
Reference documents
2,214 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to use this skill
- Commands
- Options
Scripts executed separately
benchmark.pycontracts.pydiagnostics.pydrift.pydrift_scoring.pygenerate_baseline_delta.pygenerate_runtime_contract_proof.pyinjector.pypolicy.pyrun_shadow_eval.pyruntime_contract.pyruntime_hooks.pyservice.pyshadow_eval.pystore.py
Files
CHANGELOG.mddoc4,891 bytesLICENSEasset1,067 bytesREADME.mddoc4,704 bytesSKILL.mdcore3,803 bytesSKILL.mdcore3,803 bytesbenchmark.pyruns5,239 bytescontracts.pyruns429 bytesdiagnostics.pyruns2,060 bytesdrift.pyruns7,003 bytesdrift_scoring.pyruns7,754 bytesgenerate_baseline_delta.pyruns2,655 bytesgenerate_runtime_contract_proof.pyruns5,079 bytesinjector.pyruns22,412 bytespolicy.pyruns2,295 bytesrun_shadow_eval.pyruns4,412 bytesruntime_contract.pyruns5,529 bytesruntime_hooks.pyruns3,605 bytesservice.pyruns8,546 bytesshadow_eval.pyruns53,368 bytesstore.pyruns13,320 bytes
Read SKILL.md
## When to use this skill
Use this skill when the user wants to:
- Inject bounded continuity context into `llm_input` without manual configuration
- Persist Soul Card + Mission Ticket state with deterministic runtime contracts (durable default SQLite path, zero-config)
- Keep agent behavior fail-open if continuity logic or storage has an error
- Generate reproducible runtime proof receipts for audits and reviews
- Run shadow-mode evals and append chunk-level quality snapshots
## Commands
```bash
# Run full test suite
python3 -m unittest discover -s tests/continuity-kernel -p 'test_*.py'View the complete source on GitHubdep-audit
When your agent uses it
Audit project dependencies for known vulnerabilities (CVEs). Supports npm, pip, Cargo, and Go. Zero API keys required. Safe-by-default: report-only mode, fix commands require confirmation.
What it loads into context
Frontmatter
86 tokensAlways available to the agent
SKILL.md
1,552 tokensWhen the skill is activated
Reference documents
8,931 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Activation
- Example Prompts
- Permissions
- Agent Workflow
- Error Handling
- Safety
Scripts executed separately
scripts/aggregate.shscripts/audit-cargo.shscripts/audit-go.shscripts/audit-npm.shscripts/audit-pip.shscripts/detect.shscripts/sbom.sh
Files
CHANGELOG.mddoc3,530 bytesLICENSEasset1,068 bytesREADME.mddoc3,719 bytesSECURITY.mddoc3,354 bytesSKILL.mdcore6,607 bytesSKILL.mdcore6,607 bytesSKILL.mdcore6,607 bytesSKILL.mdcore6,607 bytesSKILL.mdcore6,607 bytesSPEC.mddoc17,769 bytesTESTING.mddoc4,978 bytesscripts/aggregate.shruns6,834 bytesscripts/audit-cargo.shruns3,631 bytesscripts/audit-go.shruns4,336 bytesscripts/audit-npm.shruns6,260 bytesscripts/audit-pip.shruns4,012 bytesscripts/detect.shruns3,917 bytesscripts/sbom.shruns1,937 bytes
Read SKILL.md
# Dependency Audit Skill
Detect and report known vulnerabilities in your project's dependency tree.
Supports **npm**, **pip (Python)**, **Cargo (Rust)**, and **Go** out of the box.
No API keys. No config. Just point it at a project.
## Activation
This skill activates when the user mentions:
- "audit", "vulnerability", "CVE", "dependency check", "supply chain", "security scan"
- Checking dependencies, lockfiles, or packages for issues
- Generating an SBOM (Software Bill of Materials)
## Example PromptsView the complete source on GitHubfeed-diet
When your agent uses it
Audit your information diet across HN and RSS feeds — beautiful reports with category breakdowns, ASCII charts, and personalized recommendations.
What it loads into context
Frontmatter
73 tokensAlways available to the agent
SKILL.md
1,101 tokensWhen the skill is activated
Reference documents
2,553 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Trigger
- Instructions
- References
- Examples
Scripts executed separately
scripts/classify.shscripts/common.shscripts/feed-diet.shscripts/hn-fetch.shscripts/opml-parse.sh
Files
CHANGELOG.mddoc2,156 bytesLICENSEasset1,068 bytesREADME.mddoc6,905 bytesSKILL.mdcore4,431 bytesSKILL.mdcore4,431 bytesSKILL.mdcore4,431 bytesSKILL.mdcore4,431 bytesSKILL.mdcore4,431 bytesSKILL.mdcore4,431 bytesSKILL.mdcore4,431 bytesSKILL.mdcore4,431 bytesSKILL.mdcore4,431 bytesSKILL.mdcore4,431 bytesSKILL.mdcore4,431 bytesscripts/classify.shruns12,178 bytesscripts/common.shruns3,856 bytesscripts/feed-diet.shruns19,979 bytesscripts/hn-fetch.shruns4,065 bytesscripts/opml-parse.shruns4,864 bytes
Read SKILL.md
# 🍽<U+FE0F> Feed Diet
Audit your information diet and get a gorgeous report showing what you actually consume.
## Trigger
Activate when the user mentions any of:
- "feed diet"
- "information diet"
- "audit my feeds"
- "what am I reading"
- "analyze my HN"
- "reading habits"
- "content diet"View the complete source on GitHubkube-medic
When your agent uses it
Kubernetes Cluster Triage & Diagnostics — instant AI-powered incident triage via kubectl
What it loads into context
Frontmatter
394 tokensAlways available to the agent
SKILL.md
2,455 tokensWhen the skill is activated
Reference documents
5,585 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Your Role as Cluster Diagnostician
- Subcommands
- Write Operations (DANGER — Requires User Confirmation)
- Multi-Cluster Support
- Error Handling
- Smart Context Management for Large Clusters
- Triage Workflow
- Output Format
Scripts executed separately
scripts/kube-medic.sh
Files
CHANGELOG.mddoc2,461 bytesLICENSEasset1,067 bytesREADME.mddoc5,830 bytesSECURITY.mddoc5,467 bytesSKILL.mdcore10,289 bytesSKILL.mdcore10,289 bytesSKILL.mdcore10,289 bytesTESTING.mddoc8,392 bytesscripts/kube-medic.shruns25,401 bytes
Read SKILL.md
# kube-medic — Kubernetes Cluster Triage & Diagnostics
You have access to `kube-medic`, a Kubernetes diagnostics toolkit that lets you perform full cluster health triage, pod autopsies, deployment analysis, resource pressure detection, and event monitoring — all through `kubectl`.
## Your Role as Cluster Diagnostician
You are an expert Kubernetes SRE. When the user asks about their cluster, you don't just run commands — you **correlate data across multiple sources** to provide real diagnoses:
- **Events + Pod Status:** A `CrashLoopBackOff` pod with `OOMKilled` events + a low memory limit = the fix is to increase the memory limit. Don't just list symptoms — connect the dots.
- **Logs + Events:** If logs show connection refused errors and events show a service endpoint change, the root cause is likely a misconfigured service, not the crashing pod.
- **Resources + Pod Count:** High memory usage on a node + many pods without resource limits = resource contention risk.
- **Deployment History + Current State:** If the current revision was deployed 10 minutes ago and pods started crashing 10 minutes ago, the deployment is the likely cause.
## SubcommandsView the complete source on GitHublog-dive
When your agent uses it
Unified log search across Loki, Elasticsearch, and CloudWatch. Natural language queries translated to LogQL, ES DSL, or CloudWatch filter patterns. Read-only. Never modifies or deletes logs.
What it loads into context
Frontmatter
93 tokensAlways available to the agent
SKILL.md
3,052 tokensWhen the skill is activated
Reference documents
3,258 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Activation
- Permissions
- Example Prompts
- Backend Configuration
- Agent Workflow
- Query Language Reference
- Output Format
- Common Workflows
- Limitations
- Troubleshooting
Scripts executed separately
scripts/log-dive-cw.shscripts/log-dive-es.shscripts/log-dive-loki.shscripts/log-dive.sh
Files
CHANGELOG.mddoc1,688 bytesLICENSEasset1,067 bytesREADME.mddoc4,833 bytesSECURITY.mddoc2,384 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesSKILL.mdcore12,163 bytesTESTING.mddoc4,073 bytesscripts/log-dive-cw.shruns9,049 bytesscripts/log-dive-es.shruns8,077 bytesscripts/log-dive-loki.shruns9,781 bytesscripts/log-dive.shruns12,407 bytes
Read SKILL.md
# Log Dive — Unified Log Search 🤿
Search logs across **Loki**, **Elasticsearch/OpenSearch**, and **AWS CloudWatch** from a single interface. Ask in plain English; the skill translates to the right query language.
> **⚠<U+FE0F> Sensitive Data Warning:** Logs frequently contain PII, secrets, tokens, passwords, and other sensitive data. Never cache, store, or repeat raw log content beyond the current conversation. Treat all log output as confidential.
## Activation
This skill activates when the user mentions:
- "search logs", "find in logs", "log search", "check the logs"
- "Loki", "LogQL", "logcli"
- "Elasticsearch logs", "Kibana", "OpenSearch"
- "CloudWatch logs", "AWS logs", "log groups"
- "error logs", "find errors", "what happened in [service]"View the complete source on GitHubmeeting-autopilot
When your agent uses it
Turn meeting transcripts into operational outputs — action items, decisions, follow-up email drafts, and ticket drafts. Not a summarizer. An operator. Accepts VTT, SRT, or plain text. Multi-pass LLM extraction.
What it loads into context
Frontmatter
100 tokensAlways available to the agent
SKILL.md
1,265 tokensWhen the skill is activated
Reference documents
3,874 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Activation
- Permissions
- Requirements
- Agent Workflow
- References
Scripts executed separately
scripts/common.shscripts/extract-items.shscripts/generate-outputs.shscripts/meeting-autopilot.shscripts/parse-transcript.sh
Files
CHANGELOG.mddoc1,791 bytesLICENSEasset1,068 bytesREADME.mddoc5,355 bytesSECURITY.mddoc4,277 bytesSKILL.mdcore5,437 bytesSKILL.mdcore5,437 bytesSKILL.mdcore5,437 bytesSKILL.mdcore5,437 bytesscripts/common.shruns4,794 bytesscripts/extract-items.shruns7,537 bytesscripts/generate-outputs.shruns9,305 bytesscripts/meeting-autopilot.shruns7,540 bytesscripts/parse-transcript.shruns5,396 bytestemplates/classification-prompt.mddoc683 bytestemplates/extraction-prompt.mddoc2,297 bytestemplates/outputs-prompt.mddoc1,806 bytes
Read SKILL.md
# ✈<U+FE0F> Meeting Autopilot
Turn meeting transcripts into structured operational outputs — NOT just summaries.
## Activation
This skill activates when the user mentions:
- "meeting transcript", "meeting notes", "meeting autopilot"
- "action items from meeting", "meeting follow-up"
- "process this transcript", "analyze this meeting"
- "extract decisions from meeting", "meeting email draft"
- Uploading or pasting a VTT, SRT, or text transcript
## PermissionsView the complete source on GitHubpager-triage
When your agent uses it
AI-powered incident triage for PagerDuty. List active incidents, deep-dive with timeline and alert correlation, check on-call schedules, acknowledge, resolve, and annotate — all from your agent. Read-only by default; write operations require explicit --confirm.
What it loads into context
Frontmatter
313 tokensAlways available to the agent
SKILL.md
3,167 tokensWhen the skill is activated
Reference documents
14,939 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to Activate
- Quick Setup
- Subcommands Reference
- Incident Triage Workflow
- Security Notes
- OpsGenie Support (Planned)
Scripts executed separately
scripts/pager-triage.shscripts/smoke.sh
Files
CHANGELOG.mddoc2,589 bytesLICENSEasset1,067 bytesOPERABILITY.mddoc8,505 bytesREADME.mddoc6,179 bytesSECURITY.mddoc8,451 bytesSKILL.mdcore11,652 bytesSKILL.mdcore11,652 bytesSKILL.mdcore11,652 bytesSKILL.mdcore11,652 bytesSPEC.mddoc22,621 bytesTESTING.mddoc7,902 bytesscripts/pager-triage.shruns21,408 bytesscripts/smoke.shruns5,719 bytes
Read SKILL.md
# PagerDuty Incident Triage
AI-powered incident triage for PagerDuty. Read-only by default. Write operations require explicit confirmation.
## When to Activate
Use this skill when the user:
- Asks **"what's firing?"**, **"any incidents?"**, **"what's on fire?"**, or anything about active alerts
- Mentions **PagerDuty**, **pager**, **on-call**, or **incidents**
- Asks **"who's on call?"** or **"who's oncall right now?"**
- Wants to **acknowledge**, **resolve**, or **add a note** to an incident
- Says **"triage"**, **"incident response"**, or **"what happened last night?"**
- Asks about **service health** or **recent incidents** for a serviceView the complete source on GitHubprom-query
When your agent uses it
Prometheus Metrics Query & Alert Interpreter — query metrics, interpret timeseries, triage alerts
What it loads into context
Frontmatter
166 tokensAlways available to the agent
SKILL.md
2,035 tokensWhen the skill is activated
Reference documents
3,889 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Commands
- How to Translate Natural Language to PromQL
- How to Interpret Timeseries Data
- Incident Triage Workflow
- Alert Interpretation
- Discord v2 Delivery Mode (OpenClaw v2026.2.14+)
- Important Notes
- Error Handling
Scripts executed separately
scripts/prom-query.sh
Files
CHANGELOG.mddoc1,971 bytesLICENSEasset1,067 bytesREADME.mddoc5,815 bytesSECURITY.mddoc2,461 bytesSKILL.mdcore8,020 bytesTESTING.mddoc4,806 bytesscripts/prom-query.shruns17,733 bytes
Read SKILL.md
# prom-query — Prometheus Metrics Query & Alert Interpreter
You have access to a Prometheus-compatible metrics server. Use this skill to query metrics, check alerts, inspect targets, and explore available metrics. You can query **Prometheus, Thanos, Mimir, and VictoriaMetrics** — they all share the same HTTP API.
## Commands
| Command | Purpose | Example |
|---------|---------|---------|
| `query <promql>` | Instant query (current value) | `prom-query query 'up'` |
| `range <promql> [--start=] [--end=] [--step=]` | Range query (timeseries over time) | `prom-query range 'rate(http_requests_total[5m])' --start=-1h --step=1m` |
| `alerts [--state=firing\|pending\|inactive]` | List active alerts | `prom-query alerts --state=firing` |
| `targets [--state=active\|dropped\|any]` | Scrape target health | `prom-query targets` |
| `explore [pattern]` | Search available metrics by name pattern | `prom-query explore 'http_request'` |
| `rules [--type=alert\|record]` | Alerting & recording rules | `prom-query rules --type=alert` |View the complete source on GitHubrug-checker
When your agent uses it
Solana token rug-pull risk analysis. 10-point on-chain check with visual report. Zero API keys. Read-only. Not financial advice.
What it loads into context
Frontmatter
83 tokensAlways available to the agent
SKILL.md
2,368 tokensWhen the skill is activated
Reference documents
6,843 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Skill Metadata
- Activation Triggers
- Agent Workflow
- Error Handling
- Data Sources
- Risk Checks (10 points)
- Safety
- Example Prompts
- Dependencies
Scripts executed separately
scripts/analyze-risk.shscripts/common.shscripts/detect-token.shscripts/format-report.sh
Files
CHANGELOG.mddoc6,740 bytesLICENSEasset1,067 bytesREADME.mddoc7,593 bytesSECURITY.mddoc4,031 bytesSKILL.mdcore8,762 bytesSKILL.mdcore8,762 bytesSKILL.mdcore8,762 bytesSKILL.mdcore8,762 bytesSKILL.mdcore8,762 bytesTESTING.mddoc6,664 bytesscripts/analyze-risk.shruns25,363 bytesscripts/common.shruns14,525 bytesscripts/detect-token.shruns7,983 bytesscripts/format-report.shruns8,979 bytes
Read SKILL.md
# Rug Checker — Agent Skill Definition
## Skill Metadata
| Field | Value |
|-------|-------|
| **Slug** | `rug-checker` |
| **Version** | `0.1.3` |
| **Author** | Anvil AI |
| **Category** | DeFi / Security |
| **Chain** | Solana |
| **Risk Level** | Read-only (no wallet interactions) |
## Activation TriggersView the complete source on GitHubswarm-self-heal
When your agent uses it
Swarm reliability watchdog for OpenClaw — validates gateway/channel and every lane, performs bounded recovery, and emits auditable receipts.
What it loads into context
Frontmatter
161 tokensAlways available to the agent
SKILL.md
585 tokensWhen the skill is activated
Reference documents
1,101 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to use this skill
- Commands
- What it checks
- Output contract
- Safety model
- Notes
Scripts executed separately
scripts/anvil_watchdog.shscripts/check.shscripts/setup.shscripts/swarm_self_heal.sh
Files
CHANGELOG.mddoc666 bytesREADME.mddoc3,947 bytesSKILL.mdcore2,389 bytesSKILL.mdcore2,389 bytesSKILL.mdcore2,389 bytesSKILL.mdcore2,389 bytesscripts/anvil_watchdog.shruns140 bytesscripts/check.shruns104 bytesscripts/setup.shruns2,745 bytesscripts/swarm_self_heal.shruns7,503 bytes
Read SKILL.md
## When to use this skill
Use this skill when the user wants to:
- Diagnose why a multi-agent swarm feels "stuck" or partially offline
- Check gateway + channel + lane liveness in one run
- Perform bounded auto-recovery (restart + retry only)
- Capture auditable receipts for incident timelines
- Keep a primary watchdog lane plus a backup lane in place
## Commands
```bash
# Install/refresh watchdog scripts + cron wiring
bash skills/swarm-self-heal/scripts/setup.shView the complete source on GitHubtf-plan-review
When your agent uses it
Analyze Terraform plans for risk before you apply. Classifies every change as safe, moderate, dangerous, or critical. Detects destroys, IAM changes, data-loss risks, and blast radius. Entirely read-only — never runs apply.
What it loads into context
Frontmatter
106 tokensAlways available to the agent
SKILL.md
2,704 tokensWhen the skill is activated
Reference documents
4,756 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Activation
- Example Prompts
- Permissions
- Terraform Change Types — What the Agent Must Know
- Agent Workflow
- Environment Variables
- Error Handling
- Safety — CRITICAL RULES
- Common Patterns & Agent Tips
- Sensitive Data Handling
- Powered by Anvil AI 🔍
Scripts executed separately
scripts/tf-plan-review.sh
Files
CHANGELOG.mddoc2,453 bytesLICENSEasset1,067 bytesREADME.mddoc4,817 bytesSECURITY.mddoc5,388 bytesSKILL.mdcore11,461 bytesSKILL.mdcore11,461 bytesSKILL.mdcore11,461 bytesSKILL.mdcore11,461 bytesSKILL.mdcore11,461 bytesSKILL.mdcore11,461 bytesSKILL.mdcore11,461 bytesSKILL.mdcore11,461 bytesSKILL.mdcore11,461 bytesSKILL.mdcore11,461 bytesSKILL.mdcore11,461 bytesTESTING.mddoc6,486 bytesscripts/tf-plan-review.shruns24,884 bytes
Read SKILL.md
# Terraform Plan Analyzer & Risk Assessor
Analyze `terraform plan` output and produce an AI-powered risk assessment of every infrastructure change — before you press apply.
**This skill is STRICTLY READ-ONLY.** It runs `terraform plan` and `terraform validate` to analyze changes, but it **NEVER** runs `terraform apply`, `terraform destroy`, `terraform import`, `terraform taint`, or any command that modifies infrastructure or state.
## Activation
This skill activates when the user mentions:
- "terraform plan", "tf plan", "review plan", "plan review"
- "is this plan safe", "safe to apply", "risk assessment"
- "what will be destroyed", "what changes", "terraform changes"
- "terraform state", "state drift", "drift detection"
- "terraform validate", "validate config", "tf validate"View the complete source on GitHubvibe-check
When your agent uses it
Audit code for "vibe coding sins" — patterns that indicate AI-generated code was accepted without proper review. Produces a scored report card with fix suggestions.
What it loads into context
Frontmatter
89 tokensAlways available to the agent
SKILL.md
1,332 tokensWhen the skill is activated
Reference documents
4,611 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Trigger
- Instructions
- References
- Examples
Scripts executed separately
scripts/analyze.shscripts/common.shscripts/git-diff.shscripts/report.shscripts/vibe-check.shtest_samples/bad_api.pytest_samples/decent_utils.py
Files
CHANGELOG.mddoc2,304 bytesLICENSEasset1,067 bytesREADME.mddoc9,713 bytesSECURITY.mddoc2,263 bytesSKILL.mdcore5,180 bytesSKILL.mdcore5,180 bytesSKILL.mdcore5,180 bytesSKILL.mdcore5,180 bytesSKILL.mdcore5,180 bytesSKILL.mdcore5,180 bytesSKILL.mdcore5,180 bytesSKILL.mdcore5,180 bytesSKILL.mdcore5,180 bytesSKILL.mdcore5,180 bytesTESTING.mddoc2,564 bytesscripts/analyze.shruns15,688 bytesscripts/common.shruns6,458 bytesscripts/git-diff.shruns2,308 bytesscripts/report.shruns12,792 bytesscripts/vibe-check.shruns7,862 bytestest_samples/bad_api.pyruns2,233 bytestest_samples/decent_utils.pyruns3,330 bytes
Read SKILL.md
# 🎭 Vibe Check
Audit code for "vibe coding" — AI-generated code accepted without proper human review. Get a scored report card with specific findings and fix suggestions.
## Trigger
Activate when the user mentions any of:
- "vibe check"
- "vibe-check"
- "audit code"
- "code quality"
- "vibe score"
- "check my code"
- "review this code for vibe coding"View the complete source on GitHubSkills included
- agentic-devops
- context-engineer
- continuity-kernel
- dep-audit
- feed-diet
- kube-medic
- log-dive
- meeting-autopilot
- pager-triage
- prom-query
- rug-checker
- swarm-self-heal
- tf-plan-review
- vibe-check
Repository facts
- License
- MIT
- Created
- Feb 14, 2026
- Last pushed
- Feb 22, 2026
- Forks
- 2
- Open issues
- 0
- Project activity
- Slowing
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 6, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 70 notes
skills/agentic-devops/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/agentic-devops/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/agentic-devops/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/agentic-devops/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/agentic-devops/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/context-engineer/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/continuity-kernel/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/dep-audit/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/dep-audit/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/dep-audit/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/dep-audit/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/feed-diet/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/feed-diet/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/feed-diet/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/feed-diet/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/feed-diet/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/feed-diet/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/feed-diet/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/feed-diet/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/feed-diet/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- 45 dangerous shell commandsin 25 files: vibe-check/README.md:78 vibe-check/scripts/analyze.sh:60 rug-checker/scripts/common.sh:24 and 22 more
- 509 network referencesin 70 files: pager-triage/SPEC.md:71 log-dive/scripts/log-dive-loki.sh:11 agentic-devops/devops.py:8 and 67 more
- No hidden or obfuscated text
- No instruction overrides
- 58 executable scriptsin 58 files: agentic-devops/devops.py:1 context-engineer/context.py:1 continuity-kernel/benchmark.py:1 and 55 more
- 194 references to secretsin 36 files: vibe-check/scripts/analyze.sh:9 pager-triage/SPEC.md:56 pager-triage/scripts/pager-triage.sh:51 and 33 more
- No requests to vote in Hot
Show all 806 signals by file
skills/agentic-devops/README.md
skills/agentic-devops/SKILL.md
- Network accessline 5
author: Anvil AI license: MIT homepage: https://github.com/cacheforge-ai/cacheforge-skills - Network accessline 6
license: MIT homepage: https://github.com/cacheforge-ai/cacheforge-skills user-invocable: true - Network accessline 7
homepage: https://github.com/cacheforge-ai/cacheforge-skills - Network accessline 18
- discord - discord-v2 metadata: {"openclaw":{"emoji":"🛠<U+FE0F>","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["python3"]}}} - Network accessline 19
- discord-v2 metadata: {"openclaw":{"emoji":"🛠<U+FE0F>","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["python3"]}}} --- - Network accessline 20
metadata: {"openclaw":{"emoji":"🛠<U+FE0F>","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["python3"]}}} - Network accessline 87
# Check HTTP endpoint health python3 skills/agentic-devops/devops.py health check https://myapp.com/healthz - Network accessline 88
python3 skills/agentic-devops/devops.py health check https://myapp.com/healthz
skills/agentic-devops/devops.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 8
Built by Anvil AI — https://labs.anvil-ai.io - Access to secretsline 38
[Credential-related source omitted] - Network accessline 703
start = time.time() try: req = urllib.request.Request(url, method="GET") - Network accessline 704
try: req = urllib.request.Request(url, method="GET") req.add_header("User-Agent", "agentic-devops/1.0") - Network accessline 705
req = urllib.request.Request(url, method="GET") - Network accessline 706
req.add_header("User-Agent", "agentic-devops/1.0") with urllib.request.urlopen(req, timeout=10) as resp: status_code = resp.getcode() - Network accessline 707
with urllib.request.urlopen(req, timeout=10) as resp: - Network accessline 754
for port in ports: try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - Network accessline 755
try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.settimeout(2) - Network accessline 756
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - Network accessline 921
for port in common_ports: try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - Network accessline 922
try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.settimeout(0.5) - Network accessline 923
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - Network accessline 1010
print(box_row(c("Built by Anvil AI — https://labs.anvil-ai.io", DIM), w)) - Network accessline 1021
print(c(" Built by Anvil AI — https://labs.anvil-ai.io", DIM)) - Network accessline 1032
description="Production-grade agent DevOps toolkit — Docker, process management, log analysis, health monitoring.", formatter_class=argparse.RawDescriptionHelpFormatter, epilog="Built by Anvil AI — https://labs.anvil-ai.io", - Network accessline 1033
formatter_class=argparse.RawDescriptionHelpFormatter, epilog="Built by Anvil AI — https://labs.anvil-ai.io", ) - Network accessline 1034
epilog="Built by Anvil AI — https://labs.anvil-ai.io",
skills/context-engineer/README.md
- Network accessline 58
Or clone from [GitHub](https://github.com/cacheforge-ai/cacheforge-skills).
skills/context-engineer/SKILL.md
- Network accessline 5
author: Anvil AI license: MIT homepage: https://github.com/cacheforge-ai/cacheforge-skills - Network accessline 6
license: MIT homepage: https://github.com/cacheforge-ai/cacheforge-skills user-invocable: true - Network accessline 7
homepage: https://github.com/cacheforge-ai/cacheforge-skills - Network accessline 17
- discord - discord-v2 metadata: {"openclaw":{"emoji":"🔬","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["python3"]}}} - Network accessline 18
- discord-v2 metadata: {"openclaw":{"emoji":"🔬","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["python3"]}}} --- - Network accessline 19
metadata: {"openclaw":{"emoji":"🔬","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["python3"]}}} - Network accessline 69
- Token estimates are approximate (~4 characters per token). For precise counts, use a model-specific tokenizer. - No external dependencies required — runs with Python 3 stdlib only. - Built by Anvil AI — context engineering experts. https: - Network accessline 71
- Built by Anvil AI — context engineering experts. https://labs.anvil-ai.io
skills/context-engineer/context.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 9
Built by Anvil AI — https://labs.anvil-ai.io - Access to secretsline 35
[Credential-related source omitted] - Network accessline 503
print(box_sep(w)) print(box_row(c(" \u2139 Token estimates are approximate (~4 chars/token)", DIM), w)) print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) - Network accessline 504
print(box_row(c(" \u2139 Token estimates are approximate (~4 chars/token)", DIM), w)) print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) print(box_bot(w)) - Network accessline 505
print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) - Network accessline 643
print(box_sep(w)) print(box_row(c(" \u2139 Token estimates are approximate (~4 chars/token)", DIM), w)) print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) - Network accessline 644
print(box_row(c(" \u2139 Token estimates are approximate (~4 chars/token)", DIM), w)) print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) print(box_bot(w)) - Network accessline 645
print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) - Network accessline 769
print(box_sep(w)) print(box_row(c(" \u2139 Token estimates are approximate (~4 chars/token)", DIM), w)) print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) - Network accessline 770
print(box_row(c(" \u2139 Token estimates are approximate (~4 chars/token)", DIM), w)) print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) print(box_bot(w)) - Network accessline 771
print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) - Network accessline 872
print(box_sep(w)) print(box_row(c(" \u2139 Token estimates are approximate (~4 chars/token)", DIM), w)) print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) - Network accessline 873
print(box_row(c(" \u2139 Token estimates are approximate (~4 chars/token)", DIM), w)) print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) print(box_bot(w)) - Network accessline 874
print(box_row(c(" https://labs.anvil-ai.io", DIM), w)) - Network accessline 908
"\n" "Token estimates are approximate (~4 chars/token).\n" "Built by Anvil AI \u2014 https://labs.anvil-ai.io\n" - Network accessline 909
"Token estimates are approximate (~4 chars/token).\n" "Built by Anvil AI \u2014 https://labs.anvil-ai.io\n" ), - Network accessline 910
"Built by Anvil AI \u2014 https://labs.anvil-ai.io\n"
skills/continuity-kernel/CHANGELOG.md
- Dangerous shell operationline 24
- Strict trace-evidence gate in shadow eval (`--allow-synthetic` opt-in path with forced `pass=false`)
skills/continuity-kernel/SKILL.md
- Network accessline 5
author: CacheForge license: MIT homepage: https://github.com/cacheforge-ai/cacheforge-skills - Network accessline 6
license: MIT homepage: https://github.com/cacheforge-ai/cacheforge-skills user-invocable: true - Network accessline 7
homepage: https://github.com/cacheforge-ai/cacheforge-skills - Network accessline 16
- reliability - evals metadata: {"openclaw":{"emoji":"🧠","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["python3"]}}} - Network accessline 17
- evals metadata: {"openclaw":{"emoji":"🧠","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["python3"]}}} --- - Network accessline 18
metadata: {"openclaw":{"emoji":"🧠","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["python3"]}}}
skills/continuity-kernel/benchmark.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/contracts.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/diagnostics.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/drift.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/drift_scoring.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/generate_baseline_delta.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/generate_runtime_contract_proof.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/injector.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/policy.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/run_shadow_eval.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/runtime_contract.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/runtime_hooks.py
skills/continuity-kernel/service.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/shadow_eval.py
- Executable scriptline 1
Executable file
skills/continuity-kernel/store.py
- Executable scriptline 1
Executable file
skills/dep-audit/README.md
- Network accessline 75
| Skill | What it does | |-------|-------------| | **[vibe-check](https://clawhub.com/skills/vibe-check)** | AI code quality + security review scorecard. | - Network accessline 76
|-------|-------------| | **[vibe-check](https://clawhub.com/skills/vibe-check)** | AI code quality + security review scorecard. | | **[prom-query](https://clawhub.com/skills/prom-query)** | Prometheus metrics + alert triage from natural la - Network accessline 77
| **[vibe-check](https://clawhub.com/skills/vibe-check)** | AI code quality + security review scorecard. | - Network accessline 78
| **[prom-query](https://clawhub.com/skills/prom-query)** | Prometheus metrics + alert triage from natural language. | - Network accessline 79
| **[dep-audit](https://clawhub.com/skills/dep-audit)** | This skill — unified dependency vulnerability auditing | - Network accessline 80
| **[rug-checker](https://clawhub.com/skills/rug-checker)** | Solana token rug-pull risk analysis | - Network accessline 85
Built by **[Anvil AI](https://labs.anvil-ai.io/)** — [See what our agents are building](https://labs.anvil-ai.io). - Network accessline 87
Skills built and battle-tested by [Anvil AI](https://labs.anvil-ai.io) on a live 5-agent autonomous swarm.
skills/dep-audit/SPEC.md
- Network accessline 46
| **Rust** | `Cargo.lock` | `cargo audit` | `--json` | `cargo install cargo-audit` | | **Go** | `go.sum` | `govulncheck` | `-json` | `go install golang.org/x/vuln/cmd/govulncheck@latest` | | **SBOM** | any of the above | `syft` | `-o cyclon - Dangerous shell operationline 48
| **SBOM** | any of the above | `syft` | `-o cyclonedx-json` | `curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh \| sh` | - Network accessline 48
| **SBOM** | any of the above | `syft` | `-o cyclonedx-json` | `curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh \| sh` | - Network accessline 50
**Docs:** - npm audit: https://docs.npmjs.com/cli/commands/npm-audit - Network accessline 51
- npm audit: https://docs.npmjs.com/cli/commands/npm-audit - Network accessline 52
- pip-audit: https://github.com/pypa/pip-audit - Network accessline 53
- cargo audit: https://github.com/rustsec/rustsec/tree/main/cargo-audit - Network accessline 54
- govulncheck: https://pkg.go.dev/golang.org/x/vuln/cmd/govulncheck - Network accessline 55
- syft: https://github.com/anchore/syft - Network accessline 154
"cargo-audit": { "available": false, "install": "cargo install cargo-audit" }, "govulncheck": { "available": false, "install": "go install golang.org/x/vuln/cmd/govulncheck@latest" }, "syft": { "available": false, "install": "curl - - Network accessline 155
"govulncheck": { "available": false, "install": "go install golang.org/x/vuln/cmd/govulncheck@latest" }, "syft": { "available": false, "install": "curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh" } } - Dangerous shell operationline 156
"syft": { "available": false, "install": "curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh" } - Network accessline 156
"syft": { "available": false, "install": "curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh" } - Network accessline 184
"severity": "critical", "title": "Prototype Pollution in lodash", "url": "https://github.com/advisories/GHSA-xxxx-yyyy-zzzz", - Network accessline 185
"title": "Prototype Pollution in lodash", "url": "https://github.com/advisories/GHSA-xxxx-yyyy-zzzz", "fix_available": true, - Network accessline 186
"url": "https://github.com/advisories/GHSA-xxxx-yyyy-zzzz",
skills/dep-audit/TESTING.md
- Network accessline 80
"summary": {"critical":1,"high":2,"moderate":0,"low":1,"info":0,"total":4}, "vulnerabilities": [ {"id":"GHSA-0001","package":"lodash","installed_version":"4.17.15","severity":"critical","title":"Prototype Pollution","url":"https://exa - Network accessline 81
"vulnerabilities": [ {"id":"GHSA-0001","package":"lodash","installed_version":"4.17.15","severity":"critical","title":"Prototype Pollution","url":"https://example.com","fix_available":true,"fix_command":"npm audit fix","patched_version" - Network accessline 82
{"id":"GHSA-0001","package":"lodash","installed_version":"4.17.15","severity":"critical","title":"Prototype Pollution","url":"https://example.com","fix_available":true,"fix_command":"npm audit fix","patched_version":">=4.17.21"} - Network accessline 92
"summary": {"critical":0,"high":1,"moderate":1,"low":0,"info":0,"total":2}, "vulnerabilities": [ {"id":"PYSEC-2023-001","package":"requests","installed_version":"2.25.0","severity":"high","title":"Unintended Proxy","url":"https://osv. - Network accessline 93
"vulnerabilities": [ {"id":"PYSEC-2023-001","package":"requests","installed_version":"2.25.0","severity":"high","title":"Unintended Proxy","url":"https://osv.dev","fix_available":true,"fix_command":"pip install requests>=2.31.0","patche - Network accessline 94
{"id":"PYSEC-2023-001","package":"requests","installed_version":"2.25.0","severity":"high","title":"Unintended Proxy","url":"https://osv.dev","fix_available":true,"fix_command":"pip install requests>=2.31.0","patched_version":"2.31.0"} - Dangerous shell operationline 169
rm -rf /tmp/dep-audit-test-* /tmp/npm-result.json /tmp/pip-result.json /tmp/dep-audit-error.json /tmp/unified.json /tmp/unified-mixed.json /tmp/report.md /tmp/report-mixed.md /tmp/dep-audit-empty
skills/dep-audit/scripts/aggregate.sh
skills/dep-audit/scripts/audit-cargo.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 94
), title: (.advisory.title // "See advisory"), url: (.advisory.url // ("https://rustsec.org/advisories/" + (.advisory.id // "unknown") + ".html")), - Network accessline 95
title: (.advisory.title // "See advisory"), url: (.advisory.url // ("https://rustsec.org/advisories/" + (.advisory.id // "unknown") + ".html")), fix_available: ((.versions.patched // []) | length > 0), - Network accessline 96
url: (.advisory.url // ("https://rustsec.org/advisories/" + (.advisory.id // "unknown") + ".html")),
skills/dep-audit/scripts/audit-go.sh
- Executable scriptline 1
#!/usr/bin/env bash - Dangerous shell operationline 12
trap 'rm -f "$RESULT_FILE"' EXIT - Network accessline 107
severity: norm_severity($osv), title: ($osv.summary // "See advisory"), url: ("https://pkg.go.dev/vuln/" + $id), - Network accessline 108
title: ($osv.summary // "See advisory"), url: ("https://pkg.go.dev/vuln/" + $id), fix_available: (($osv.affected[0].ranges[0].events // []) | map(select(.fixed != null)) | length > 0), - Network accessline 109
url: ("https://pkg.go.dev/vuln/" + $id),
skills/dep-audit/scripts/audit-npm.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 99
{ id: ((.url // .source // .name // "unknown") | tostring | (if test("^https://github.com/advisories/") then split("/")[-1] else . end)), - Network accessline 100
id: ((.url // .source // .name // "unknown") | tostring | (if test("^https://github.com/advisories/") then split("/")[-1] else . end)), package: $pkg.key, - Network accessline 101
(if test("^https://github.com/advisories/") then split("/")[-1] else . end)),
skills/dep-audit/scripts/audit-pip.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 106
severity: ((.id // "unknown") | severity_from_id), title: ((.description // "See advisory for details") | split("\n")[0] | .[0:200]), url: ("https://osv.dev/vulnerability/" + (.id // "unknown")), - Network accessline 107
title: ((.description // "See advisory for details") | split("\n")[0] | .[0:200]), url: ("https://osv.dev/vulnerability/" + (.id // "unknown")), fix_available: ((.fix_versions // []) | length > 0), - Network accessline 108
url: ("https://osv.dev/vulnerability/" + (.id // "unknown")),
skills/dep-audit/scripts/detect.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 85
cargo_audit_info=$(tool_info "cargo-audit" "--version" "cargo install cargo-audit") govulncheck_info=$(tool_info "govulncheck" "-version" "go install golang.org/x/vuln/cmd/govulncheck@latest") syft_info=$(tool_info "syft" "version" "curl -s - Dangerous shell operationline 87
syft_info=$(tool_info "syft" "version" "curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh") - Network accessline 87
syft_info=$(tool_info "syft" "version" "curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh")
skills/dep-audit/scripts/sbom.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 42
if ! command -v syft >/dev/null 2>&1; then emit_error "syft not found. Install with: curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b /usr/local/bin" "$DIR" - Dangerous shell operationline 43
emit_error "syft not found. Install with: curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b /usr/local/bin" "$DIR" - Network accessline 43
emit_error "syft not found. Install with: curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b /usr/local/bin" "$DIR"
skills/feed-diet/README.md
- Network accessline 112
1. 🔬 [What the hell is Forth? (2019)](https://blog.information-superhighway.net/...) - Network accessline 113
2. 🔬 [How many registers does an x86-64 CPU have?](https://blog.yossarian.net/2020/11/30/...) - Network accessline 114
3. 🔬 [Moving Forth (1993)](https://www.bradrodriguez.com/papers/moving1.htm) - Network accessline 115
4. 📚 [1x Forth: Chuck Moore on Forth (1999)](https://www.youtube.com/watch?v=NK0NwqF8F0k) - Network accessline 116
5. 🔬 [colorForth Tokens (2022)](https://www.youtube.com/watch?v=zl5IEpUBxfc) - Network accessline 117
6. 🔬 [jonesforth](https://github.com/nornagon/jonesforth) - Network accessline 118
7. 📰 [Cognate](https://cognate-lang.github.io/) - Network accessline 119
8. 📰 [uiua 0.18.0](https://www.uiua.org/blog/uiua-0.18.0) - Network accessline 120
9. 🔬 [colorForth](https://colorforth.github.io/cf.htm) - Network accessline 121
10. 📚 [Advent of Code in Forth](https://www.youtube.com/watch?v=jAFz8Maxvr4) - Access to secretsline 148
[Credential-related source omitted] - Access to secretsline 149
[Credential-related source omitted] - Access to secretsline 177
[Credential-related source omitted] - Network accessline 194
Built by **[Anvil AI](https://labs.anvil-ai.io/)** — [See what our agents are building](https://labs.anvil-ai.io). - Network accessline 196
Skills built and battle-tested by [Anvil AI](https://labs.anvil-ai.io) on a live 5-agent autonomous swarm.
skills/feed-diet/SKILL.md
- Access to secretsline 46
[Credential-related source omitted]
skills/feed-diet/scripts/classify.sh
- Executable scriptline 1
#!/usr/bin/env bash - Access to secretsline 82
[Credential-related source omitted] - Access to secretsline 83
[Credential-related source omitted] - Network accessline 90
messages: [{role: "user", content: $prompt}] }') RESULT=$(printf '%s' "$request_body" | curl -sf --max-time 30 \ - Network accessline 91
[Credential-related source omitted] - Network accessline 92
[Credential-related source omitted] - Access to secretsline 92
[Credential-related source omitted] - Access to secretsline 93
[Credential-related source omitted] - Network accessline 95
-H "content-type: application/json" \ -d @- \ https://api.anthropic.com/v1/messages 2>/dev/null | jq -r '.content[0].text // empty' 2>/dev/null) || RESULT="" - Network accessline 96
-d @- \ https://api.anthropic.com/v1/messages 2>/dev/null | jq -r '.content[0].text // empty' 2>/dev/null) || RESULT="" fi - Network accessline 97
https://api.anthropic.com/v1/messages 2>/dev/null | jq -r '.content[0].text // empty' 2>/dev/null) || RESULT="" - Access to secretsline 100
[Credential-related source omitted] - Access to secretsline 101
[Credential-related source omitted] - Network accessline 108
messages: [{role: "user", content: $prompt}] }') RESULT=$(printf '%s' "$request_body" | curl -sf --max-time 30 \ - Network accessline 109
[Credential-related source omitted] - Network accessline 110
[Credential-related source omitted] - Access to secretsline 110
[Credential-related source omitted] - Access to secretsline 111
[Credential-related source omitted] - Network accessline 112
-H "content-type: application/json" \ -d @- \ https://api.openai.com/v1/chat/completions 2>/dev/null | jq -r '.choices[0].message.content // empty' 2>/dev/null) || RESULT="" - Network accessline 113
-d @- \ https://api.openai.com/v1/chat/completions 2>/dev/null | jq -r '.choices[0].message.content // empty' 2>/dev/null) || RESULT="" fi - Network accessline 114
https://api.openai.com/v1/chat/completions 2>/dev/null | jq -r '.choices[0].message.content // empty' 2>/dev/null) || RESULT="" - Access to secretsline 119
[Credential-related source omitted] - Access to secretsline 260
[Credential-related source omitted]
skills/feed-diet/scripts/common.sh
- Executable scriptline 1
#!/usr/bin/env bash - Access to secretsline 91
[Credential-related source omitted] - Network accessline 107
while [ $attempt -lt $max_retries ]; do local result if result=$(curl -sf --max-time "$timeout" "$url" 2>/dev/null); then - Network accessline 108
local result if result=$(curl -sf --max-time "$timeout" "$url" 2>/dev/null); then echo "$result" - Network accessline 109
if result=$(curl -sf --max-time "$timeout" "$url" 2>/dev/null); then
skills/feed-diet/scripts/feed-diet.sh
- Executable scriptline 1
#!/usr/bin/env bash - Access to secretsline 12
[Credential-related source omitted] - Access to secretsline 81
[Credential-related source omitted] - Access to secretsline 82
[Credential-related source omitted] - Access to secretsline 100
[Credential-related source omitted] - Access to secretsline 101
[Credential-related source omitted] - Access to secretsline 102
[Credential-related source omitted] - Access to secretsline 324
[Credential-related source omitted] - Access to secretsline 327
[Credential-related source omitted] - Access to secretsline 329
[Credential-related source omitted] - Access to secretsline 331
[Credential-related source omitted] - Access to secretsline 332
[Credential-related source omitted] - Dangerous shell operationline 436
trap "rm -f '$ITEMS_FILE' '$CLASSIFIED_FILE'" EXIT - Dangerous shell operationline 487
trap "rm -f '$ITEMS_FILE' '$CLASSIFIED_FILE'" EXIT - Access to secretsline 490
[Credential-related source omitted] - Dangerous shell operationline 532
trap "rm -f '$CLASSIFIED_FILE'" EXIT
skills/feed-diet/scripts/hn-fetch.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 10
HN_API="https://hacker-news.firebaseio.com/v0" USERNAME="${1:?Usage: hn-fetch.sh USERNAME [MAX_ITEMS] [SINCE_EPOCH]}" - Network accessline 18
info "Fetching HN profile for '$USERNAME'..." USER_JSON=$(safe_fetch "${HN_API}/user/${USERNAME}.json" 3 15) || { - Network accessline 19
USER_JSON=$(safe_fetch "${HN_API}/user/${USERNAME}.json" 3 15) || { - Network accessline 73
TMPFILE=$(mktemp) TMPFILES+=("$TMPFILE") curl -sf --max-time 8 "${HN_API}/item/${ITEM_ID}.json" > "$TMPFILE" 2>/dev/null & - Network accessline 74
TMPFILES+=("$TMPFILE") curl -sf --max-time 8 "${HN_API}/item/${ITEM_ID}.json" > "$TMPFILE" 2>/dev/null & PIDS+=($!) - Network accessline 75
curl -sf --max-time 8 "${HN_API}/item/${ITEM_ID}.json" > "$TMPFILE" 2>/dev/null & - Dangerous shell operationline 86
[ "$STORY_COUNT" -ge "$MAX_ITEMS" ] && rm -f "$TMPFILE" && continue - Dangerous shell operationline 119
rm -f "$TMPFILE"
skills/feed-diet/scripts/opml-parse.sh
- Executable scriptline 1
#!/usr/bin/env bash - Access to secretsline 28
[Credential-related source omitted] - Network accessline 70
case "$FEED_URL" in http://*|https://*) ;; - Network accessline 71
http://*|https://*) ;; - Network accessline 79
FEED_XML=$(curl -sf --max-time 10 -L "$FEED_URL" 2>/dev/null) || { - Access to secretsline 90
[Credential-related source omitted] - Access to secretsline 91
[Credential-related source omitted] - Network accessline 99
ns = { 'atom': 'http://www.w3.org/2005/Atom', - Network accessline 100
'atom': 'http://www.w3.org/2005/Atom', - Network accessline 101
'dc': 'http://purl.org/dc/elements/1.1/', - Network accessline 102
'content': 'http://purl.org/rss/1.0/modules/content/'
skills/kube-medic/CHANGELOG.md
skills/kube-medic/README.md
- Network accessline 11
 - Network accessline 12
 - Network accessline 13
 - Network accessline 137
Built by **[Anvil AI](https://labs.anvil-ai.io/)** — [See what our agents are building](https://labs.anvil-ai.io). - Network accessline 139
Skills built and battle-tested by [Anvil AI](https://labs.anvil-ai.io) on a live 5-agent autonomous swarm.
skills/kube-medic/SKILL.md
- Network accessline 199
- **RBAC errors:** If a command returns a permission error, tell the user which permission is missing and suggest the RBAC role/clusterrole they need. - **kubectl not found:** Direct them to https://kubernetes.io/docs/tasks/tools/ - Network accessline 200
- **kubectl not found:** Direct them to https://kubernetes.io/docs/tasks/tools/
skills/kube-medic/TESTING.md
- Network accessline 21
[kind](https://kind.sigs.k8s.io/) is the fastest way to get a throwaway Kubernetes cluster for testing. - Network accessline 91
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml - Dangerous shell operationline 198
# Test blocked write — kubectl exec (must be rejected)
skills/kube-medic/scripts/kube-medic.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 151
preflight() { if ! command -v kubectl &>/dev/null; then err "kubectl not found — install from https://kubernetes.io/docs/tasks/tools/" - Network accessline 152
if ! command -v kubectl &>/dev/null; then err "kubectl not found — install from https://kubernetes.io/docs/tasks/tools/" exit 127 - Network accessline 153
err "kubectl not found — install from https://kubernetes.io/docs/tasks/tools/" - Network accessline 155
fi if ! command -v jq &>/dev/null; then err "jq not found — install from https://jqlang.github.io/jq/download/" - Network accessline 156
if ! command -v jq &>/dev/null; then err "jq not found — install from https://jqlang.github.io/jq/download/" exit 127 - Network accessline 157
err "jq not found — install from https://jqlang.github.io/jq/download/"
skills/log-dive/CHANGELOG.md
skills/log-dive/README.md
- Network accessline 41
export LOKI_ADDR="http://loki.internal:3100" - Access to secretsline 42
[Credential-related source omitted] - Network accessline 48
export ELASTICSEARCH_URL="https://es.internal:9200" - Access to secretsline 49
[Credential-related source omitted] - Network accessline 107
- **Read-only** — All operations are search/read only. No write, delete, or admin operations. - **No caching** — Log output is never written to disk. Logs may contain PII/secrets. - **URL validation** — Only `http://` and `https://` schemes - Network accessline 108
- **No caching** — Log output is never written to disk. Logs may contain PII/secrets. - **URL validation** — Only `http://` and `https://` schemes accepted. - **Safe JSON** — All JSON construction uses `jq --arg` to prevent injection. - Network accessline 109
- **URL validation** — Only `http://` and `https://` schemes accepted. - Network accessline 116
| `jq` | All backends | `apt install jq` / `brew install jq` | | `curl` | Loki, Elasticsearch | Usually pre-installed | | `logcli` | Loki (optional, falls back to curl) | [Install guide](https://grafana.com/docs/loki/latest/tools/logcli/) | - Network accessline 117
| `curl` | Loki, Elasticsearch | Usually pre-installed | | `logcli` | Loki (optional, falls back to curl) | [Install guide](https://grafana.com/docs/loki/latest/tools/logcli/) | | `aws` | CloudWatch | [Install guide](https://docs.aws.amazon - Network accessline 118
| `logcli` | Loki (optional, falls back to curl) | [Install guide](https://grafana.com/docs/loki/latest/tools/logcli/) | - Network accessline 119
| `aws` | CloudWatch | [Install guide](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) | - Network accessline 127
Built by **[Anvil AI](https://labs.anvil-ai.io/)** — [See what our agents are building](https://labs.anvil-ai.io). - Network accessline 129
Skills built and battle-tested by [Anvil AI](https://labs.anvil-ai.io) on a live 5-agent autonomous swarm.
skills/log-dive/SKILL.md
- Network accessline 58
| Variable | Required | Description | |----------|----------|-------------| | `LOKI_ADDR` | Yes | Loki server URL (e.g., `http://loki.internal:3100`) | - Network accessline 59
|----------|----------|-------------| | `LOKI_ADDR` | Yes | Loki server URL (e.g., `http://loki.internal:3100`) | | `LOKI_TOKEN` | No | Bearer token for authentication | - Network accessline 60
| `LOKI_ADDR` | Yes | Loki server URL (e.g., `http://loki.internal:3100`) | - Network accessline 65
| Variable | Required | Description | |----------|----------|-------------| | `ELASTICSEARCH_URL` | Yes | Base URL (e.g., `https://es.internal:9200`) | - Network accessline 66
|----------|----------|-------------| | `ELASTICSEARCH_URL` | Yes | Base URL (e.g., `https://es.internal:9200`) | | `ELASTICSEARCH_TOKEN` | No | `Basic <base64>` or `Bearer <token>` for auth | - Network accessline 67
| `ELASTICSEARCH_URL` | Yes | Base URL (e.g., `https://es.internal:9200`) | - Network accessline 324
|-------|-------|-----| | "No backends configured" | No env vars set | Set `LOKI_ADDR`, `ELASTICSEARCH_URL`, or configure AWS CLI | | "logcli not found" | logcli not installed | Install from https://grafana.com/docs/loki/latest/tools/logcli - Network accessline 325
| "No backends configured" | No env vars set | Set `LOKI_ADDR`, `ELASTICSEARCH_URL`, or configure AWS CLI | | "logcli not found" | logcli not installed | Install from https://grafana.com/docs/loki/latest/tools/logcli/ | | "aws: command not - Network accessline 326
| "logcli not found" | logcli not installed | Install from https://grafana.com/docs/loki/latest/tools/logcli/ | | "aws: command not found" | AWS CLI not installed | Install from https://docs.aws.amazon.com/cli/latest/userguide/getting-start - Network accessline 327
| "aws: command not found" | AWS CLI not installed | Install from https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html | | "curl: command not found" | curl not installed | `apt install curl` or `brew install curl` | - Network accessline 328
| "curl: command not found" | curl not installed | `apt install curl` or `brew install curl` |
skills/log-dive/TESTING.md
- Network accessline 24
# Set up export LOKI_ADDR="http://localhost:3100" - Network accessline 25
export LOKI_ADDR="http://localhost:3100" - Network accessline 45
# Set up export ELASTICSEARCH_URL="http://localhost:9200" - Network accessline 46
export ELASTICSEARCH_URL="http://localhost:9200" - Network accessline 111
# Loki docker run -d --name loki -p 3100:3100 grafana/loki:2.9.0 export LOKI_ADDR="http://localhost:3100" - Network accessline 112
docker run -d --name loki -p 3100:3100 grafana/loki:2.9.0 export LOKI_ADDR="http://localhost:3100" bash scripts/log-dive.sh labels --backend loki - Network accessline 113
export LOKI_ADDR="http://localhost:3100" - Network accessline 116
# Elasticsearch docker run -d --name es -p 9200:9200 -e "discovery.type=single-node" -e "xpack.security.enabled=false" elasticsearch:8.12.0 export ELASTICSEARCH_URL="http://localhost:9200" - Network accessline 117
docker run -d --name es -p 9200:9200 -e "discovery.type=single-node" -e "xpack.security.enabled=false" elasticsearch:8.12.0 export ELASTICSEARCH_URL="http://localhost:9200" bash scripts/log-dive.sh indices --backend elasticsearch - Network accessline 118
export ELASTICSEARCH_URL="http://localhost:9200" - Network accessline 121
# LocalStack for CloudWatch docker run -d --name localstack -p 4566:4566 localstack/localstack export AWS_ENDPOINT_URL="http://localhost:4566" - Network accessline 122
docker run -d --name localstack -p 4566:4566 localstack/localstack export AWS_ENDPOINT_URL="http://localhost:4566" export AWS_REGION="us-east-1" - Network accessline 123
export AWS_ENDPOINT_URL="http://localhost:4566" - Access to secretsline 126
[Credential-related source omitted]
skills/log-dive/scripts/log-dive-cw.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 13
jq -n '{ "error": "AWS CLI (aws) is required but not found.", "install": "https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html", - Network accessline 14
"error": "AWS CLI (aws) is required but not found.", "install": "https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html", "backend": "cloudwatch", - Network accessline 15
"install": "https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html",
skills/log-dive/scripts/log-dive-es.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 2
# log-dive Elasticsearch/OpenSearch backend — queries via curl # Read-only. Never modifies or deletes logs. - Network accessline 11
validate_es() { if [[ -z "${ELASTICSEARCH_URL:-}" ]]; then jq -n '{"error":"ELASTICSEARCH_URL is not set. Export it: export ELASTICSEARCH_URL=https://es:9200","backend":"elasticsearch","exit_code":1}' - Network accessline 12
if [[ -z "${ELASTICSEARCH_URL:-}" ]]; then jq -n '{"error":"ELASTICSEARCH_URL is not set. Export it: export ELASTICSEARCH_URL=https://es:9200","backend":"elasticsearch","exit_code":1}' exit 1 - Network accessline 13
jq -n '{"error":"ELASTICSEARCH_URL is not set. Export it: export ELASTICSEARCH_URL=https://es:9200","backend":"elasticsearch","exit_code":1}' - Network accessline 24
if ! command -v curl &>/dev/null; then - Network accessline 25
jq -n '{ "error": "curl is required for Elasticsearch queries but not found.", "install": "apt install curl / brew install curl", - Network accessline 26
"error": "curl is required for Elasticsearch queries but not found.", - Network accessline 27
"install": "apt install curl / brew install curl", - Network accessline 35
# ─── Helper: build curl auth headers ─────────────────────────────────────── - Access to secretsline 44
[Credential-related source omitted] - Access to secretsline 46
[Credential-related source omitted] - Access to secretsline 47
[Credential-related source omitted] - Access to secretsline 49
[Credential-related source omitted] - Network accessline 55
if [[ -n "$data" ]]; then curl "${curl_args[@]}" -d "$data" "$url" 2>&1 - Network accessline 56
curl "${curl_args[@]}" -d "$data" "$url" 2>&1 - Network accessline 57
else curl "${curl_args[@]}" "$url" 2>&1 fi - Network accessline 58
curl "${curl_args[@]}" "$url" 2>&1
skills/log-dive/scripts/log-dive-loki.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 11
validate_loki() { if [[ -z "${LOKI_ADDR:-}" ]]; then jq -n '{"error":"LOKI_ADDR is not set. Export it: export LOKI_ADDR=http://loki:3100","backend":"loki","exit_code":1}' - Network accessline 12
if [[ -z "${LOKI_ADDR:-}" ]]; then jq -n '{"error":"LOKI_ADDR is not set. Export it: export LOKI_ADDR=http://loki:3100","backend":"loki","exit_code":1}' exit 1 - Network accessline 13
jq -n '{"error":"LOKI_ADDR is not set. Export it: export LOKI_ADDR=http://loki:3100","backend":"loki","exit_code":1}' - Network accessline 24
if ! command -v logcli &>/dev/null && ! command -v curl &>/dev/null; then - Network accessline 25
jq -n '{ "error": "Neither logcli nor curl found. Install one of them.", "install_logcli": "https://grafana.com/docs/loki/latest/tools/logcli/", - Network accessline 26
"error": "Neither logcli nor curl found. Install one of them.", - Network accessline 27
"install_logcli": "https://grafana.com/docs/loki/latest/tools/logcli/", "install_curl": "apt install curl / brew install curl", "backend": "loki", - Network accessline 28
"install_curl": "apt install curl / brew install curl", - Network accessline 36
# ─── Helper: build curl auth headers ─────────────────────────────────────── - Access to secretsline 39
[Credential-related source omitted] - Access to secretsline 40
[Credential-related source omitted] - Access to secretsline 127
[Credential-related source omitted] - Access to secretsline 128
[Credential-related source omitted] - Network accessline 134
local response if response=$(curl "${curl_args[@]}" "$url" 2>&1); then - Network accessline 135
if response=$(curl "${curl_args[@]}" "$url" 2>&1); then - Network accessline 142
echo "$response" | jq --arg query "$query" --arg backend "loki" --arg tool "curl" '{ - Access to secretsline 195
[Credential-related source omitted] - Access to secretsline 196
[Credential-related source omitted] - Network accessline 202
if [[ -n "$label" ]]; then local response response=$(curl "${curl_args[@]}" "${LOKI_ADDR}/loki/api/v1/label/${label}/values" 2>&1) || true - Network accessline 203
local response response=$(curl "${curl_args[@]}" "${LOKI_ADDR}/loki/api/v1/label/${label}/values" 2>&1) || true echo "$response" | jq --arg label "$label" '{ - Network accessline 204
response=$(curl "${curl_args[@]}" "${LOKI_ADDR}/loki/api/v1/label/${label}/values" 2>&1) || true - Network accessline 210
else local response response=$(curl "${curl_args[@]}" "${LOKI_ADDR}/loki/api/v1/labels" 2>&1) || true - Network accessline 211
local response response=$(curl "${curl_args[@]}" "${LOKI_ADDR}/loki/api/v1/labels" 2>&1) || true echo "$response" | jq '{ - Network accessline 212
response=$(curl "${curl_args[@]}" "${LOKI_ADDR}/loki/api/v1/labels" 2>&1) || true - Network accessline 265
# WebSocket tail via curl is complex; fallback to polling recent
skills/log-dive/scripts/log-dive.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 49
if command -v logcli &>/dev/null; then loki_tool="logcli" elif command -v curl &>/dev/null; then - Network accessline 50
loki_tool="logcli" elif command -v curl &>/dev/null; then loki_tool="curl" - Network accessline 51
elif command -v curl &>/dev/null; then - Network accessline 52
loki_tool="curl" else loki_tool="missing" - Network accessline 228
"error": "No backends configured. Set environment variables for at least one backend.", "help": { "loki": "export LOKI_ADDR=http://loki:3100", - Network accessline 229
"help": { "loki": "export LOKI_ADDR=http://loki:3100", "elasticsearch": "export ELASTICSEARCH_URL=https://es:9200", - Network accessline 230
"loki": "export LOKI_ADDR=http://loki:3100", - Network accessline 231
"elasticsearch": "export ELASTICSEARCH_URL=https://es:9200",
skills/meeting-autopilot/README.md
skills/meeting-autopilot/SECURITY.md
- Network accessline 59
This skill makes API calls ONLY to the configured LLM provider: - **Anthropic:** `https://api.anthropic.com/v1/messages` (or custom `ANTHROPIC_API_URL`) - Network accessline 60
- **Anthropic:** `https://api.anthropic.com/v1/messages` (or custom `ANTHROPIC_API_URL`) - Network accessline 61
- **OpenAI:** `https://api.openai.com/v1/chat/completions` (or custom `OPENAI_API_URL`)
skills/meeting-autopilot/SKILL.md
- Access to secretsline 38
[Credential-related source omitted]
skills/meeting-autopilot/scripts/common.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 104
# ── Validate API URL base ───────────────────────────────── # Allows only http(s) URLs to prevent unsafe curl schemes. - Network accessline 105
# Allows only http(s) URLs to prevent unsafe curl schemes. - Network accessline 108
local label="${2:-URL}" case "$url" in http://*|https://*) ;; - Network accessline 109
case "$url" in http://*|https://*) ;; *) - Network accessline 110
http://*|https://*) ;;
skills/meeting-autopilot/scripts/extract-items.sh
- Executable scriptline 1
#!/usr/bin/env bash - Access to secretsline 10
[Credential-related source omitted] - Access to secretsline 77
[Credential-related source omitted] - Network accessline 79
local anthropic_base anthropic_base="${ANTHROPIC_API_URL:-https://api.anthropic.com}" - Network accessline 80
anthropic_base="${ANTHROPIC_API_URL:-https://api.anthropic.com}" - Network accessline 81
validate_http_url "$anthropic_base" "ANTHROPIC_API_URL" - Network accessline 95
local response response=$(printf '%s' "$request_body" | curl -sS \ - Network accessline 96
[Credential-related source omitted] - Access to secretsline 96
[Credential-related source omitted] - Access to secretsline 99
[Credential-related source omitted] - Access to secretsline 107
[Credential-related source omitted] - Network accessline 109
local openai_base openai_base="${OPENAI_API_URL:-https://api.openai.com}" - Network accessline 110
openai_base="${OPENAI_API_URL:-https://api.openai.com}" - Network accessline 111
validate_http_url "$openai_base" "OPENAI_API_URL" - Network accessline 127
local response response=$(printf '%s' "$request_body" | curl -sS \ - Network accessline 128
[Credential-related source omitted] - Access to secretsline 128
[Credential-related source omitted] - Access to secretsline 131
[Credential-related source omitted] - Access to secretsline 138
[Credential-related source omitted] - Access to secretsline 139
[Credential-related source omitted]
skills/meeting-autopilot/scripts/generate-outputs.sh
- Executable scriptline 1
#!/usr/bin/env bash - Access to secretsline 8
[Credential-related source omitted] - Network accessline 62
[Credential-related source omitted] - Access to secretsline 62
[Credential-related source omitted] - Network accessline 63
local anthropic_base anthropic_base="${ANTHROPIC_API_URL:-https://api.anthropic.com}" validate_http_url "$anthropic_base" "ANTHROPIC_API_URL" - Network accessline 64
anthropic_base="${ANTHROPIC_API_URL:-https://api.anthropic.com}" - Network accessline 65
validate_http_url "$anthropic_base" "ANTHROPIC_API_URL" - Network accessline 79
local response response=$(printf '%s' "$request_body" | curl -sS \ - Network accessline 80
[Credential-related source omitted] - Access to secretsline 80
[Credential-related source omitted] - Access to secretsline 83
[Credential-related source omitted] - Network accessline 89
[Credential-related source omitted] - Access to secretsline 89
[Credential-related source omitted] - Network accessline 90
local openai_base openai_base="${OPENAI_API_URL:-https://api.openai.com}" validate_http_url "$openai_base" "OPENAI_API_URL" - Network accessline 91
openai_base="${OPENAI_API_URL:-https://api.openai.com}" - Network accessline 92
validate_http_url "$openai_base" "OPENAI_API_URL" - Network accessline 108
local response response=$(printf '%s' "$request_body" | curl -sS \ - Network accessline 109
[Credential-related source omitted] - Access to secretsline 109
[Credential-related source omitted] - Access to secretsline 112
[Credential-related source omitted] - Access to secretsline 117
[Credential-related source omitted] - Access to secretsline 118
[Credential-related source omitted]
skills/meeting-autopilot/scripts/meeting-autopilot.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 48
${BOLD}REQUIREMENTS${RESET} • bash, jq, python3, curl • ANTHROPIC_API_KEY or OPENAI_API_KEY - Access to secretsline 50
[Credential-related source omitted] - Network accessline 97
require_jq require_cmd python3 "Install Python 3: apt install python3 / brew install python3" require_cmd curl "Install curl: apt install curl / brew install curl" - Network accessline 99
require_cmd curl "Install curl: apt install curl / brew install curl" - Access to secretsline 101
[Credential-related source omitted] - Access to secretsline 102
[Credential-related source omitted] - Access to secretsline 103
[Credential-related source omitted] - Dangerous shell operationline 108
trap 'rm -rf "$WORKDIR"' EXIT
skills/meeting-autopilot/scripts/parse-transcript.sh
- Executable scriptline 1
#!/usr/bin/env bash
skills/pager-triage/CHANGELOG.md
- Network accessline 12
Format follows [Keep a Changelog](https://keepachangelog.com/). - Network accessline 48
- HTTPS-only enforcement — refuses non-HTTPS URLs - Retry logic — 5xx and network errors get 1 retry with 2-second backoff - 10-second curl timeout per API call - Network accessline 49
- Retry logic — 5xx and network errors get 1 retry with 2-second backoff - 10-second curl timeout per API call - Structured JSON output for all subcommands (machine-parseable) - Network accessline 50
- 10-second curl timeout per API call
skills/pager-triage/OPERABILITY.md
- Network accessline 10
| Failure | Detection | Behavior | User-Visible Output | |---------|-----------|----------|---------------------| | **PagerDuty API unreachable** | `curl` timeout (10s) or connection refused | Retry once after 2s backoff. If still failing, - Network accessline 11
|---------|-----------|----------|---------------------| | **PagerDuty API unreachable** | `curl` timeout (10s) or connection refused | Retry once after 2s backoff. If still failing, exit with error. | `{"error": "PagerDuty API is unreachab - Network accessline 12
| **PagerDuty API unreachable** | `curl` timeout (10s) or connection refused | Retry once after 2s backoff. If still failing, exit with error. | `{"error": "PagerDuty API is unreachable. Check https://status.pagerduty.com/"}` | - Access to secretsline 13
[Credential-related source omitted] - Network accessline 14
| **Insufficient permissions** | HTTP 403 response | Immediate failure, no retry | `{"error": "Access denied (HTTP 403). Your API key (****xxxx) lacks permission for this operation."}` | | **Rate limited** | HTTP 429 response | Immediate fa - Network accessline 15
| **Rate limited** | HTTP 429 response | Immediate failure, no retry (429 is unlikely with 960 req/min limit) | `{"error": "PagerDuty rate limit hit (HTTP 429). Wait 30 seconds and retry."}` | | **Server error** | HTTP 5xx response | Retry - Network accessline 16
| **Server error** | HTTP 5xx response | Retry once after 2s backoff | After 2 attempts: `{"error": "PagerDuty API error (HTTP 5xx). Check https://status.pagerduty.com/"}` | - Access to secretsline 17
[Credential-related source omitted] - Network accessline 57
| Component | Timeout | Configured Via | |-----------|---------|----------------| | **curl connection + transfer** | 10 seconds | `--max-time 10` in `curl` args | - Network accessline 58
|-----------|---------|----------------| | **curl connection + transfer** | 10 seconds | `--max-time 10` in `curl` args | | **Total per-subcommand (worst case)** | ~24 seconds | 2 attempts × 10s timeout + 2s backoff + jq processing | - Network accessline 59
| **curl connection + transfer** | 10 seconds | `--max-time 10` in `curl` args | - Network accessline 174
### API version pinning The tool targets PagerDuty REST API **v2** (the current stable version as of 2026). PagerDuty has not announced deprecation plans. The base URL `https://api.pagerduty.com` routes to v2 by default. - Network accessline 175
The tool targets PagerDuty REST API **v2** (the current stable version as of 2026). PagerDuty has not announced deprecation plans. The base URL `https://api.pagerduty.com` routes to v2 by default. - Network accessline 184
| Rate limit proximity | Watch for 429 errors (rare with 960/min limit) | | API latency | Time the subcommand execution; > 5s suggests PD issues | | PagerDuty status | https://status.pagerduty.com/ | - Network accessline 185
| API latency | Time the subcommand execution; > 5s suggests PD issues | | PagerDuty status | https://status.pagerduty.com/ | | Tool availability | Run `smoke.sh` periodically | - Network accessline 186
| PagerDuty status | https://status.pagerduty.com/ | - Network accessline 191
<sub>Operability documentation for pager-triage v0.1.1 · [Anvil AI](https://labs.anvil-ai.io)</sub>
skills/pager-triage/README.md
- Network accessline 5
[]() - Network accessline 6
[]() - Network accessline 7
[]() - Access to secretsline 29
[Credential-related source omitted] - Network accessline 140
| Skill | What It Adds | |-------|-------------| | **[prom-query](https://clawhub.com/skills/prom-query)** | Query Prometheus metrics — correlate incidents with CPU, memory, latency, error rates | - Network accessline 141
|-------|-------------| | **[prom-query](https://clawhub.com/skills/prom-query)** | Query Prometheus metrics — correlate incidents with CPU, memory, latency, error rates | | **[kube-medic](https://clawhub.com/skills/kube-medic)** | Kubernet - Network accessline 142
| **[prom-query](https://clawhub.com/skills/prom-query)** | Query Prometheus metrics — correlate incidents with CPU, memory, latency, error rates | - Network accessline 143
| **[kube-medic](https://clawhub.com/skills/kube-medic)** | Kubernetes cluster health — check pods, restarts, OOMKills, node status | - Network accessline 144
| **[log-dive](https://clawhub.com/skills/log-dive)** | Log search — find error patterns around incident timeframes | - Access to secretsline 152
[Credential-related source omitted] - Network accessline 166
<p align="center"> <strong>Built by <a href="https://labs.anvil-ai.io">Anvil AI</a></strong><br> - Network accessline 167
<strong>Built by <a href="https://labs.anvil-ai.io">Anvil AI</a></strong><br>
skills/pager-triage/SECURITY.md
- Access to secretsline 11
[Credential-related source omitted] - Access to secretsline 21
[Credential-related source omitted] - Access to secretsline 59
[Credential-related source omitted] - Network accessline 82
### URL Validation The script enforces HTTPS-only: any URL not starting with `https://` is rejected before any network call is made. - Network accessline 83
The script enforces HTTPS-only: any URL not starting with `https://` is rejected before any network call is made. - Network accessline 190
<sub>Security documentation for pager-triage v0.1.1 · [Anvil AI](https://labs.anvil-ai.io)</sub>
skills/pager-triage/SKILL.md
skills/pager-triage/SPEC.md
- Access to secretsline 56
[Credential-related source omitted] - Access to secretsline 58
[Credential-related source omitted] - Access to secretsline 61
[Credential-related source omitted] - Network accessline 71
[Credential-related source omitted] - Access to secretsline 71
[Credential-related source omitted] - Network accessline 72
[Credential-related source omitted] - Access to secretsline 72
[Credential-related source omitted] - Network accessline 74
"https://api.pagerduty.com/incidents?statuses[]=triggered&statuses[]=acknowledged&sort_by=urgency&limit=25&include[]=assignees&include[]=services" - Network accessline 120
[Credential-related source omitted] - Network accessline 121
[Credential-related source omitted] - Access to secretsline 121
[Credential-related source omitted] - Network accessline 122
"https://api.pagerduty.com/incidents/$INCIDENT_ID?include[]=assignees&include[]=acknowledgers&include[]=conference_bridge" - Network accessline 124
[Credential-related source omitted] - Network accessline 125
[Credential-related source omitted] - Access to secretsline 125
[Credential-related source omitted] - Network accessline 126
"https://api.pagerduty.com/incidents/$INCIDENT_ID/log_entries?limit=25&include[]=channels" - Network accessline 128
[Credential-related source omitted] - Network accessline 129
[Credential-related source omitted] - Access to secretsline 129
[Credential-related source omitted] - Network accessline 130
"https://api.pagerduty.com/incidents/$INCIDENT_ID/alerts?limit=25" - Network accessline 132
[Credential-related source omitted] - Network accessline 133
[Credential-related source omitted] - Access to secretsline 133
[Credential-related source omitted] - Network accessline 134
"https://api.pagerduty.com/incidents/$INCIDENT_ID/notes" - Network accessline 206
[Credential-related source omitted] - Access to secretsline 206
[Credential-related source omitted] - Network accessline 207
"https://api.pagerduty.com/oncalls?earliest=true&include[]=users&include[]=schedules&include[]=escalation_policies" - Network accessline 253
[Credential-related source omitted] - Access to secretsline 253
[Credential-related source omitted] - Access to secretsline 254
[Credential-related source omitted] - Network accessline 255
-H "From: $PAGERDUTY_EMAIL" \ -H "Content-Type: application/json" \ "https://api.pagerduty.com/incidents/$INCIDENT_ID" \ - Network accessline 256
-H "Content-Type: application/json" \ "https://api.pagerduty.com/incidents/$INCIDENT_ID" \ -d '{"incident": {"type": "incident_reference", "status": "acknowledged"}}' - Network accessline 257
"https://api.pagerduty.com/incidents/$INCIDENT_ID" \ - Network accessline 293
[Credential-related source omitted] - Access to secretsline 293
[Credential-related source omitted] - Access to secretsline 294
[Credential-related source omitted] - Network accessline 295
-H "From: $PAGERDUTY_EMAIL" \ -H "Content-Type: application/json" \ "https://api.pagerduty.com/incidents/$INCIDENT_ID" \ - Network accessline 296
-H "Content-Type: application/json" \ "https://api.pagerduty.com/incidents/$INCIDENT_ID" \ -d '{"incident": {"type": "incident_reference", "status": "resolved"}}' - Network accessline 297
"https://api.pagerduty.com/incidents/$INCIDENT_ID" \ - Network accessline 319
[Credential-related source omitted] - Access to secretsline 319
[Credential-related source omitted] - Access to secretsline 320
[Credential-related source omitted] - Network accessline 321
-H "From: $PAGERDUTY_EMAIL" \ -H "Content-Type: application/json" \ "https://api.pagerduty.com/incidents/$INCIDENT_ID/notes" \ - Network accessline 322
-H "Content-Type: application/json" \ "https://api.pagerduty.com/incidents/$INCIDENT_ID/notes" \ -d '{"note": {"content": "..."}}' - Network accessline 323
"https://api.pagerduty.com/incidents/$INCIDENT_ID/notes" \ - Network accessline 333
[Credential-related source omitted] - Access to secretsline 333
[Credential-related source omitted] - Network accessline 334
"https://api.pagerduty.com/services?include[]=integrations&limit=100" - Network accessline 367
[Credential-related source omitted] - Access to secretsline 367
[Credential-related source omitted] - Network accessline 368
"https://api.pagerduty.com/incidents?since=$SINCE&until=now&service_ids[]=$SERVICE_ID&limit=25&sort_by=created_at:desc" - Access to secretsline 402
[Credential-related source omitted] - Network accessline 404
| Subcommand | OpsGenie Endpoint | |------------|-------------------| | `pd_incidents` | `GET https://api.opsgenie.com/v2/alerts?status=open` | - Network accessline 405
|------------|-------------------| | `pd_incidents` | `GET https://api.opsgenie.com/v2/alerts?status=open` | | `pd_incident_detail` | `GET https://api.opsgenie.com/v2/alerts/{id}` | - Network accessline 406
| `pd_incidents` | `GET https://api.opsgenie.com/v2/alerts?status=open` | - Network accessline 407
| `pd_incident_detail` | `GET https://api.opsgenie.com/v2/alerts/{id}` | - Network accessline 408
| `pd_oncall` | `GET https://api.opsgenie.com/v2/schedules/{id}/on-calls` | - Network accessline 409
| `pd_incident_ack` | `POST https://api.opsgenie.com/v2/alerts/{id}/acknowledge` | - Network accessline 410
| `pd_incident_resolve` | `POST https://api.opsgenie.com/v2/alerts/{id}/close` | - Network accessline 411
| `pd_incident_note` | `POST https://api.opsgenie.com/v2/alerts/{id}/notes` | - Network accessline 412
| `pd_services` | `GET https://api.opsgenie.com/v1/services` | - Access to secretsline 414
[Credential-related source omitted] - Network accessline 422
| Failure | Detection | Fallback | |---------|-----------|----------| | PagerDuty API unreachable | HTTP timeout (10s) or 5xx response | Retry once after 2s. If still failing, report "PagerDuty API is unreachable. Check https://status.pager - Network accessline 423
|---------|-----------|----------| | PagerDuty API unreachable | HTTP timeout (10s) or 5xx response | Retry once after 2s. If still failing, report "PagerDuty API is unreachable. Check https://status.pagerduty.com/" | | Invalid API key | HT - Network accessline 424
| PagerDuty API unreachable | HTTP timeout (10s) or 5xx response | Retry once after 2s. If still failing, report "PagerDuty API is unreachable. Check https://status.pagerduty.com/" | - Access to secretsline 425
[Credential-related source omitted] - Access to secretsline 428
[Credential-related source omitted] - Access to secretsline 453
[Credential-related source omitted] - Access to secretsline 529
[Credential-related source omitted] - Access to secretsline 532
[Credential-related source omitted] - Access to secretsline 575
[Credential-related source omitted] - Network accessline 622
### Key Implementation Details - PagerDuty API v2 base URL: `https://api.pagerduty.com` - Network accessline 623
- PagerDuty API v2 base URL: `https://api.pagerduty.com` - Access to secretsline 624
[Credential-related source omitted]
skills/pager-triage/TESTING.md
- Access to secretsline 40
[Credential-related source omitted] - Access to secretsline 43
[Credential-related source omitted] - Access to secretsline 47
[Credential-related source omitted] - Access to secretsline 55
[Credential-related source omitted] - Access to secretsline 63
[Credential-related source omitted] - Access to secretsline 70
[Credential-related source omitted] - Dangerous shell operationline 71
./scripts/pager-triage.sh detail "P123;rm -rf /" - Network accessline 77
# Verify curl and jq are required - Network accessline 78
which curl jq - Access to secretsline 94
[Credential-related source omitted] - Access to secretsline 187
[Credential-related source omitted] - Access to secretsline 190
[Credential-related source omitted] - Network accessline 229
# Simulate by pointing to a non-routable address (don't actually do this in CI) # The script has a 10-second curl timeout. After 1 retry with 2s backoff, - Network accessline 230
# The script has a 10-second curl timeout. After 1 retry with 2s backoff, - Network accessline 271
<sub>Testing documentation for pager-triage v0.1.1 · [Anvil AI](https://labs.anvil-ai.io)</sub>
skills/pager-triage/scripts/pager-triage.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 20
readonly PD_API_BASE="https://api.pagerduty.com" - Network accessline 43
check_deps() { for cmd in curl jq; do - Network accessline 44
for cmd in curl jq; do - Access to secretsline 51
[Credential-related source omitted] - Access to secretsline 52
[Credential-related source omitted] - Access to secretsline 53
[Credential-related source omitted] - Network accessline 73
if [[ "$url" != https://* ]]; then - Access to secretsline 80
[Credential-related source omitted] - Network accessline 98
while (( attempt < max_attempts )); do response=$(curl "${curl_args[@]}" "$url" 2>/dev/null) || { - Network accessline 99
response=$(curl "${curl_args[@]}" "$url" 2>/dev/null) || { - Network accessline 103
continue fi die "PagerDuty API is unreachable. Check https://status.pagerduty.com/" - Network accessline 104
fi die "PagerDuty API is unreachable. Check https://status.pagerduty.com/" } - Network accessline 105
die "PagerDuty API is unreachable. Check https://status.pagerduty.com/" - Access to secretsline 118
[Credential-related source omitted] - Access to secretsline 121
[Credential-related source omitted] - Network accessline 130
continue fi die "PagerDuty API error (HTTP $http_code). Check https://status.pagerduty.com/" - Network accessline 131
fi die "PagerDuty API error (HTTP $http_code). Check https://status.pagerduty.com/" ;; - Network accessline 132
die "PagerDuty API error (HTTP $http_code). Check https://status.pagerduty.com/" - Network accessline 133
;; *) die "PagerDuty API returned unexpected HTTP $http_code. Check https://developer.pagerduty.com/docs/ for details." - Network accessline 134
*) die "PagerDuty API returned unexpected HTTP $http_code. Check https://developer.pagerduty.com/docs/ for details." ;; - Network accessline 135
die "PagerDuty API returned unexpected HTTP $http_code. Check https://developer.pagerduty.com/docs/ for details." - Access to secretsline 176
[Credential-related source omitted] - Access to secretsline 225
[Credential-related source omitted] - Access to secretsline 322
[Credential-related source omitted] - Access to secretsline 357
[Credential-related source omitted] - Access to secretsline 420
[Credential-related source omitted] - Access to secretsline 482
[Credential-related source omitted] - Access to secretsline 548
[Credential-related source omitted] - Access to secretsline 580
[Credential-related source omitted] - Access to secretsline 672
[Credential-related source omitted]
skills/pager-triage/scripts/smoke.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 59
if command -v curl &>/dev/null; then - Network accessline 60
pass "curl is available" - Network accessline 61
else fail "curl is not installed" fi - Network accessline 62
fail "curl is not installed" - Access to secretsline 81
[Credential-related source omitted] - Access to secretsline 82
[Credential-related source omitted] - Access to secretsline 84
[Credential-related source omitted] - Access to secretsline 119
[Credential-related source omitted] - Access to secretsline 123
[Credential-related source omitted] - Access to secretsline 124
[Credential-related source omitted] - Access to secretsline 136
[Credential-related source omitted] - Access to secretsline 149
[Credential-related source omitted] - Dangerous shell operationline 150
if output=$("$TOOL" detail 'P123;rm -rf /' 2>&1); then - Access to secretsline 162
[Credential-related source omitted] - Access to secretsline 179
[Credential-related source omitted] - Access to secretsline 196
[Credential-related source omitted] - Access to secretsline 197
[Credential-related source omitted] - Access to secretsline 199
[Credential-related source omitted]
skills/prom-query/CHANGELOG.md
skills/prom-query/README.md
- Network accessline 7
 - Network accessline 8
 - Network accessline 9
 - Network accessline 45
export PROMETHEUS_URL=https://prometheus.your-company.com - Access to secretsline 47
[Credential-related source omitted] - Network accessline 149
| Skill | What it does | |-------|-------------| | **[vibe-check](https://clawhub.com/skills/vibe-check)** | AI code quality + security review scorecard. | - Network accessline 150
|-------|-------------| | **[vibe-check](https://clawhub.com/skills/vibe-check)** | AI code quality + security review scorecard. | | **[rug-checker](https://clawhub.com/skills/rug-checker)** | Solana token rug-pull risk analysis. | - Network accessline 151
| **[vibe-check](https://clawhub.com/skills/vibe-check)** | AI code quality + security review scorecard. | - Network accessline 152
| **[rug-checker](https://clawhub.com/skills/rug-checker)** | Solana token rug-pull risk analysis. | - Network accessline 153
| **[dep-audit](https://clawhub.com/skills/dep-audit)** | Dependency vulnerability auditing across npm/pip/cargo/go. | - Network accessline 154
| **[prom-query](https://clawhub.com/skills/prom-query)** | This skill — Prometheus query + alert triage. | - Network accessline 159
Built by **[Anvil AI](https://labs.anvil-ai.io/)** — [See what our agents are building](https://labs.anvil-ai.io). - Network accessline 161
Skills built and battle-tested by [Anvil AI](https://labs.anvil-ai.io) on a live 5-agent autonomous swarm.
skills/prom-query/SECURITY.md
- Network accessline 13
3. **Input validation.** - `PROMETHEUS_URL` is validated to use only `http://` or `https://` schemes - PromQL queries are passed via `--data-urlencode` to curl (proper URL encoding) - Network accessline 14
- `PROMETHEUS_URL` is validated to use only `http://` or `https://` schemes - PromQL queries are passed via `--data-urlencode` to curl (proper URL encoding) - All JSON construction uses `jq --arg` — no string interpolation or template - Network accessline 15
- PromQL queries are passed via `--data-urlencode` to curl (proper URL encoding) - Network accessline 52
- The skill connects only to the URL specified in `PROMETHEUS_URL` - No DNS rebinding protection beyond what curl provides - Network accessline 53
- No DNS rebinding protection beyond what curl provides
skills/prom-query/TESTING.md
- Network accessline 27
The [PromLabs demo server](https://demo.promlabs.com) is a public Prometheus instance with sample data. Use it for testing without any local setup: - Network accessline 30
export PROMETHEUS_URL=https://demo.promlabs.com - Network accessline 74
# Set URL export PROMETHEUS_URL=http://localhost:9090 - Network accessline 75
export PROMETHEUS_URL=http://localhost:9090 - Network accessline 120
# Invalid PromQL export PROMETHEUS_URL=https://demo.promlabs.com - Network accessline 121
export PROMETHEUS_URL=https://demo.promlabs.com - Network accessline 124
# Unreachable server PROMETHEUS_URL=http://192.0.2.1:9090 bash scripts/prom-query.sh query 'up' 2>&1 | grep -qi "cannot reach" && echo "✅ Unreachable handled" - Network accessline 125
PROMETHEUS_URL=http://192.0.2.1:9090 bash scripts/prom-query.sh query 'up' 2>&1 | grep -qi "cannot reach" && echo "✅ Unreachable handled" - Network accessline 137
# Request a very long range with tiny step — should auto-downsample export PROMETHEUS_URL=https://demo.promlabs.com - Network accessline 138
export PROMETHEUS_URL=https://demo.promlabs.com
skills/prom-query/scripts/prom-query.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 45
ENVIRONMENT: PROMETHEUS_URL (required) Base URL, e.g. https://prometheus.example.com - Network accessline 46
PROMETHEUS_URL (required) Base URL, e.g. https://prometheus.example.com - Network accessline 66
validate_env() { if [[ -z "${PROMETHEUS_URL:-}" ]]; then die "PROMETHEUS_URL is not set. Set it to your Prometheus server URL, e.g.:\n export PROMETHEUS_URL=https://prometheus.example.com\n\nCompatible with Prometheus, Thanos, Mimir, - Network accessline 67
if [[ -z "${PROMETHEUS_URL:-}" ]]; then die "PROMETHEUS_URL is not set. Set it to your Prometheus server URL, e.g.:\n export PROMETHEUS_URL=https://prometheus.example.com\n\nCompatible with Prometheus, Thanos, Mimir, and VictoriaMetric - Network accessline 68
die "PROMETHEUS_URL is not set. Set it to your Prometheus server URL, e.g.:\n export PROMETHEUS_URL=https://prometheus.example.com\n\nCompatible with Prometheus, Thanos, Mimir, and VictoriaMetrics." - Network accessline 75
case "$PROMETHEUS_URL" in http://*|https://*) - Network accessline 76
http://*|https://*) - Network accessline 88
# Build curl auth args (never leak token to stdout) - Access to secretsline 91
[Credential-related source omitted] - Access to secretsline 92
[Credential-related source omitted] - Network accessline 106
# Use a temp file to capture curl stderr - Dangerous shell operationline 109
trap 'rm -f "$tmp"' RETURN - Network accessline 111
# Re-build curl args without stdin header trick for simplicity - Access to secretsline 119
[Credential-related source omitted] - Access to secretsline 120
[Credential-related source omitted] - Network accessline 126
if ! response=$(curl "${final_args[@]}" 2>"$tmp"); then
skills/rug-checker/README.md
- Network accessline 142
| Source | What It Provides | |--------|-----------------| | [Rugcheck.xyz](https://rugcheck.xyz) | Risk flags, holder analysis, LP lock status, insider detection | - Network accessline 143
|--------|-----------------| | [Rugcheck.xyz](https://rugcheck.xyz) | Risk flags, holder analysis, LP lock status, insider detection | | [DexScreener](https://dexscreener.com) | Market data, pricing, liquidity, token resolution | - Network accessline 144
| [Rugcheck.xyz](https://rugcheck.xyz) | Risk flags, holder analysis, LP lock status, insider detection | - Network accessline 145
| [DexScreener](https://dexscreener.com) | Market data, pricing, liquidity, token resolution | - Network accessline 146
| [Solana RPC](https://api.mainnet-beta.solana.com) | On-chain mint/freeze authority verification | - Network accessline 172
| Skill | What it does | |-------|-------------| | **[vibe-check](https://clawhub.com/skills/vibe-check)** | AI code quality + security review scorecard. | - Network accessline 173
|-------|-------------| | **[vibe-check](https://clawhub.com/skills/vibe-check)** | AI code quality + security review scorecard. | | **[prom-query](https://clawhub.com/skills/prom-query)** | Prometheus metrics + alert triage from natural la - Network accessline 174
| **[vibe-check](https://clawhub.com/skills/vibe-check)** | AI code quality + security review scorecard. | - Network accessline 175
| **[prom-query](https://clawhub.com/skills/prom-query)** | Prometheus metrics + alert triage from natural language. | - Network accessline 176
| **[dep-audit](https://clawhub.com/skills/dep-audit)** | Unified dependency vulnerability auditing (npm, pip, Cargo, Go) | - Network accessline 177
| **[rug-checker](https://clawhub.com/skills/rug-checker)** | This skill — Solana token rug-pull risk analysis | - Network accessline 182
Built by **[Anvil AI](https://labs.anvil-ai.io/)** — [See what our agents are building](https://labs.anvil-ai.io). - Network accessline 184
Skills built and battle-tested by [Anvil AI](https://labs.anvil-ai.io) on a live 5-agent autonomous swarm.
skills/rug-checker/SECURITY.md
- Network accessline 63
The `SOLANA_RPC` endpoint defaults to the public Solana mainnet-beta RPC (`https://api.mainnet-beta.solana.com`) but can be overridden via the `SOLANA_RPC_URL` environment variable. A malicious value could point to a server that returns fak
skills/rug-checker/TESTING.md
- Network accessline 6
# Verify dependencies command -v bash && command -v curl && command -v jq && command -v bc && echo "OK" - Network accessline 7
command -v bash && command -v curl && command -v jq && command -v bc && echo "OK" - Network accessline 9
# Verify API connectivity curl -s "https://api.rugcheck.xyz/v1/stats/recent" | jq 'length' - Network accessline 10
curl -s "https://api.rugcheck.xyz/v1/stats/recent" | jq 'length' - Network accessline 11
curl -s "https://api.dexscreener.com/tokens/v1/solana/DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263" | jq '.[0].baseToken.name' - Network accessline 18
| BONK | `DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263` | Blue chip meme | 🟢 SAFE | | USDC | `EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v` | Stablecoin | 🟠 WARNING (has compliance authorities) | | Recent pump.fun | Find via `curl -s "https - Network accessline 20
| Recent pump.fun | Find via `curl -s "https://api.rugcheck.xyz/v1/stats/new_tokens" \| jq '.[0].mint'` | Brand new token | 🟡-⛔ varies | - Network accessline 106
[Credential-related source omitted] - Access to secretsline 107
[Credential-related source omitted]
skills/rug-checker/scripts/analyze-risk.sh
- Executable scriptline 1
#!/usr/bin/env bash
skills/rug-checker/scripts/common.sh
- Executable scriptline 1
#!/usr/bin/env bash - Dangerous shell operationline 24
trap 'rm -f "${_CF_TMPFILES[@]}" 2>/dev/null' EXIT - Network accessline 29
readonly DEXSCREENER_BASE="https://api.dexscreener.com" - Network accessline 30
readonly RUGCHECK_BASE="https://api.rugcheck.xyz/v1" - Network accessline 31
readonly SOLANA_RPC="${SOLANA_RPC_URL:-https://api.mainnet-beta.solana.com}" - Network accessline 45
cf_check_deps() { local missing=() for cmd in curl jq bc; do - Network accessline 46
local missing=() for cmd in curl jq bc; do if ! command -v "$cmd" &>/dev/null; then - Network accessline 47
for cmd in curl jq bc; do - Dangerous shell operationline 54
cf_error "Install with: sudo apt install ${missing[*]} (or brew install ${missing[*]})" - Network accessline 169
# Generic GET with retries, timeout, and rate limiting. # Usage: cf_http_get "https://..." ["domain_for_rate_limit" [max_per_min]] - Network accessline 170
# Usage: cf_http_get "https://..." ["domain_for_rate_limit" [max_per_min]] - Network accessline 191
local tmpfile tmpfile=$(cf_mktemp) http_code=$(curl -s -o "$tmpfile" -w "%{http_code}" \ - Network accessline 192
tmpfile=$(cf_mktemp) http_code=$(curl -s -o "$tmpfile" -w "%{http_code}" \ --max-time "$timeout" \ - Network accessline 193
http_code=$(curl -s -o "$tmpfile" -w "%{http_code}" \ - Dangerous shell operationline 199
rm -f "$tmpfile" - Network accessline 246
tmpfile=$(cf_mktemp) local http_code http_code=$(curl -s -o "$tmpfile" -w "%{http_code}" \ - Network accessline 247
local http_code http_code=$(curl -s -o "$tmpfile" -w "%{http_code}" \ --max-time "$timeout" \ - Network accessline 248
http_code=$(curl -s -o "$tmpfile" -w "%{http_code}" \ - Dangerous shell operationline 258
rm -f "$tmpfile"
skills/rug-checker/scripts/detect-token.sh
- Executable scriptline 1
#!/usr/bin/env bash
skills/rug-checker/scripts/format-report.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 226
echo "## 🔗 Links" echo "" echo "- [DexScreener](https://dexscreener.com/solana/${ADDRESS})" - Network accessline 227
echo "" echo "- [DexScreener](https://dexscreener.com/solana/${ADDRESS})" echo "- [Rugcheck.xyz](https://rugcheck.xyz/tokens/${ADDRESS})" - Network accessline 228
echo "- [DexScreener](https://dexscreener.com/solana/${ADDRESS})" - Network accessline 229
echo "- [Rugcheck.xyz](https://rugcheck.xyz/tokens/${ADDRESS})" - Network accessline 230
echo "- [Solscan](https://solscan.io/token/${ADDRESS})" - Network accessline 231
echo "- [Birdeye](https://birdeye.so/token/${ADDRESS}?chain=solana)" - Network accessline 242
_🛡<U+FE0F> Powered by [Anvil AI](https://labs.anvil-ai.io)_
skills/swarm-self-heal/README.md
skills/swarm-self-heal/SKILL.md
- Network accessline 5
author: Anvil AI license: MIT homepage: https://github.com/cacheforge-ai/cacheforge-skills - Network accessline 6
license: MIT homepage: https://github.com/cacheforge-ai/cacheforge-skills user-invocable: true - Network accessline 7
homepage: https://github.com/cacheforge-ai/cacheforge-skills - Network accessline 17
- discord - discord-v2 metadata: {"openclaw":{"emoji":"🩺","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["bash","jq","openclaw"]}}} - Network accessline 18
- discord-v2 metadata: {"openclaw":{"emoji":"🩺","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["bash","jq","openclaw"]}}} --- - Network accessline 19
metadata: {"openclaw":{"emoji":"🩺","homepage":"https://github.com/cacheforge-ai/cacheforge-skills","requires":{"bins":["bash","jq","openclaw"]}}}
skills/swarm-self-heal/scripts/anvil_watchdog.sh
- Executable scriptline 1
#!/usr/bin/env bash
skills/swarm-self-heal/scripts/check.sh
- Executable scriptline 1
#!/usr/bin/env bash
skills/swarm-self-heal/scripts/setup.sh
- Executable scriptline 1
#!/usr/bin/env bash
skills/swarm-self-heal/scripts/swarm_self_heal.sh
skills/tf-plan-review/README.md
skills/tf-plan-review/TESTING.md
- Dangerous shell operationline 228
rm -rf /tmp/tf-plan-review-* /tmp/tf-report.md
skills/tf-plan-review/scripts/tf-plan-review.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 64
json_error "$TF_BINARY not found. Please install it or set TF_BINARY to a valid binary path." else json_error "Neither 'terraform' nor 'tofu' found in PATH. Install Terraform: https://developer.hashicorp.com/terraform/install or O - Network accessline 65
else json_error "Neither 'terraform' nor 'tofu' found in PATH. Install Terraform: https://developer.hashicorp.com/terraform/install or OpenTofu: https://opentofu.org/docs/intro/install/" fi - Network accessline 66
json_error "Neither 'terraform' nor 'tofu' found in PATH. Install Terraform: https://developer.hashicorp.com/terraform/install or OpenTofu: https://opentofu.org/docs/intro/install/" - Network accessline 71
require_jq() { command -v jq &>/dev/null || json_error "jq is required but not found. Install: https://jqlang.github.io/jq/download/" - Network accessline 72
command -v jq &>/dev/null || json_error "jq is required but not found. Install: https://jqlang.github.io/jq/download/" - Dangerous shell operationline 120
trap "rm -f '$plan_json_file'" EXIT
skills/vibe-check/README.md
- Network accessline 5
 - Access to secretsline 53
[Credential-related source omitted] - Dangerous shell operationline 78
| 8 | 🔒 Security | 10% | eval(), exec(), hardcoded secrets, SQL injection | - Network accessline 101
 - Dangerous shell operationline 132
1. **api/handler.py:42** — `eval(user_input)` — Remote code execution vulnerability - Dangerous shell operationline 149
| `api/handler.py` | 22 | F | 203 | eval() with user input — RCE vuln... | - Dangerous shell operationline 158
> Use of eval() — potential code injection vulnerability - Dangerous shell operationline 164
- result = eval(user_input) - Network accessline 184
*🎭 Vibe Check v0.1.1 — 34 findings across 5 files* *Badge for your README:* `` - Network accessline 185
*Badge for your README:* `` - Network accessline 193
 - Dangerous shell operationline 214
- `eval()` / `exec()` usage - Access to secretsline 230
[Credential-related source omitted] - Access to secretsline 231
[Credential-related source omitted] - Network accessline 238
| Skill | What it does | |-------|-------------| | **[vibe-check](https://clawhub.com/skills/vibe-check)** | This skill — AI code quality + security review scorecard. | - Network accessline 239
|-------|-------------| | **[vibe-check](https://clawhub.com/skills/vibe-check)** | This skill — AI code quality + security review scorecard. | | **[rug-checker](https://clawhub.com/skills/rug-checker)** | Solana token rug-pull risk analysi - Network accessline 240
| **[vibe-check](https://clawhub.com/skills/vibe-check)** | This skill — AI code quality + security review scorecard. | - Network accessline 241
| **[rug-checker](https://clawhub.com/skills/rug-checker)** | Solana token rug-pull risk analysis. | - Network accessline 242
| **[dep-audit](https://clawhub.com/skills/dep-audit)** | Dependency vulnerability auditing across npm/pip/cargo/go. | - Network accessline 243
| **[prom-query](https://clawhub.com/skills/prom-query)** | Prometheus metrics + alert triage from natural language. | - Network accessline 252
Built by **[Anvil AI](https://labs.anvil-ai.io/)** — [See what our agents are building](https://labs.anvil-ai.io). - Network accessline 254
Skills built and battle-tested by [Anvil AI](https://labs.anvil-ai.io) on a live 5-agent autonomous swarm.
skills/vibe-check/SECURITY.md
skills/vibe-check/SKILL.md
- Dangerous shell operationline 94
| Security | 10% | eval(), exec(), hardcoded secrets, SQL injection | - Network accessline 106
- **The report is the star.** Present it in full — it's designed to look great. - After presenting, offer to run `--fix` mode if they didn't already. - Suggest the README badge: `` - For large codebases, suggest focusing on specific directories or us - Network accessline 108
- Suggest the README badge: ``
skills/vibe-check/TESTING.md
- Network accessline 9
python3 --version git --version curl --version - Network accessline 11
curl --version - Access to secretsline 37
[Credential-related source omitted] - Access to secretsline 49
[Credential-related source omitted] - Dangerous shell operationline 60
rm -f /tmp/vibe-check-report.md - Dangerous shell operationline 81
eval("1+1") - Dangerous shell operationline 88
rm -rf "$TMP_REPO" - Dangerous shell operationline 107
rm -f /tmp/vibe-check-report.md /tmp/vibe-check-diff.md
skills/vibe-check/scripts/analyze.sh
- Executable scriptline 1
#!/usr/bin/env bash - Access to secretsline 9
[Credential-related source omitted] - Dangerous shell operationline 60
8. **security** (weight 10%): eval(), exec(), hardcoded secrets/passwords, SQL string concat, unsafe deserialization, path traversal - Network accessline 124
[Credential-related source omitted] - Access to secretsline 124
[Credential-related source omitted] - Dangerous shell operationline 125
[Credential-related source omitted] - Network accessline 125
[Credential-related source omitted] - Access to secretsline 125
[Credential-related source omitted] - Access to secretsline 126
[Credential-related source omitted] - Network accessline 128
-H "content-type: application/json" \ -d "{\"model\":\"claude-sonnet-4-20250514\",\"max_tokens\":4096,\"messages\":[{\"role\":\"user\",\"content\":${escaped_prompt}}]}" \ https://api.anthropic.com/v1/messages 2>/dev/null | pytho - Network accessline 129
-d "{\"model\":\"claude-sonnet-4-20250514\",\"max_tokens\":4096,\"messages\":[{\"role\":\"user\",\"content\":${escaped_prompt}}]}" \ https://api.anthropic.com/v1/messages 2>/dev/null | python3 -c " import json, sys - Network accessline 130
https://api.anthropic.com/v1/messages 2>/dev/null | python3 -c " - Network accessline 138
[Credential-related source omitted] - Access to secretsline 138
[Credential-related source omitted] - Dangerous shell operationline 139
[Credential-related source omitted] - Network accessline 139
[Credential-related source omitted] - Access to secretsline 139
[Credential-related source omitted] - Access to secretsline 140
[Credential-related source omitted] - Network accessline 141
-H "content-type: application/json" \ -d "{\"model\":\"gpt-4o\",\"messages\":[{\"role\":\"user\",\"content\":${escaped_prompt}}],\"max_tokens\":4096}" \ https://api.openai.com/v1/chat/completions 2>/dev/null | python3 -c " - Network accessline 142
-d "{\"model\":\"gpt-4o\",\"messages\":[{\"role\":\"user\",\"content\":${escaped_prompt}}],\"max_tokens\":4096}" \ https://api.openai.com/v1/chat/completions 2>/dev/null | python3 -c " import json, sys - Network accessline 143
https://api.openai.com/v1/chat/completions 2>/dev/null | python3 -c " - Access to secretsline 156
[Credential-related source omitted] - Access to secretsline 211
[Credential-related source omitted] - Access to secretsline 212
[Credential-related source omitted] - Dangerous shell operationline 270
'message': 'Use of eval() — potential code injection vulnerability' - Dangerous shell operationline 280
'message': 'Use of exec() — potential code injection vulnerability' - Access to secretsline 393
[Credential-related source omitted] - Access to secretsline 401
[Credential-related source omitted] - Access to secretsline 402
[Credential-related source omitted] - Access to secretsline 406
[Credential-related source omitted] - Access to secretsline 407
[Credential-related source omitted] - Access to secretsline 412
[Credential-related source omitted] - Access to secretsline 414
[Credential-related source omitted] - Access to secretsline 420
[Credential-related source omitted] - Access to secretsline 424
[Credential-related source omitted] - Access to secretsline 425
[Credential-related source omitted] - Access to secretsline 429
[Credential-related source omitted] - Access to secretsline 432
[Credential-related source omitted] - Access to secretsline 433
[Credential-related source omitted] - Access to secretsline 439
[Credential-related source omitted] - Access to secretsline 440
[Credential-related source omitted] - Access to secretsline 459
[Credential-related source omitted] - Access to secretsline 460
[Credential-related source omitted] - Access to secretsline 465
[Credential-related source omitted] - Access to secretsline 467
[Credential-related source omitted]
skills/vibe-check/scripts/common.sh
skills/vibe-check/scripts/git-diff.sh
- Executable scriptline 1
#!/usr/bin/env bash
skills/vibe-check/scripts/report.sh
- Executable scriptline 1
#!/usr/bin/env bash - Dangerous shell operationline 25
trap "rm -f '$RESULTS_FILE'" EXIT - Access to secretsline 39
[Credential-related source omitted] - Access to secretsline 40
[Credential-related source omitted] - Access to secretsline 41
[Credential-related source omitted] - Network accessline 184
badge_score = str(overall_score) badge_url = f'https://img.shields.io/badge/vibe--score-{badge_score}%2F100-{badge_color}' - Network accessline 185
badge_url = f'https://img.shields.io/badge/vibe--score-{badge_score}%2F100-{badge_color}'
skills/vibe-check/scripts/vibe-check.sh
- Executable scriptline 1
#!/usr/bin/env bash - Access to secretsline 14
[Credential-related source omitted] - Access to secretsline 63
[Credential-related source omitted] - Access to secretsline 64
[Credential-related source omitted] - Dangerous shell operationline 150
trap "rm -f '$FILES_LIST'" EXIT - Dangerous shell operationline 192
trap "rm -f '$FILES_LIST' '$ANALYSIS_FILE'" EXIT
skills/vibe-check/test_samples/bad_api.py
skills/vibe-check/test_samples/decent_utils.py
- Executable scriptline 1
Executable file
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Declared and executed: 15 facts
- Contacts rustsec.org, which SKILL.md, the README and the plugin manifest do not mentiondep-audit/scripts/audit-cargo.sh:96High confidence
- Contacts pkg.go.dev, which SKILL.md, the README and the plugin manifest do not mentiondep-audit/scripts/audit-go.sh:109High confidence
- Contacts osv.dev, which SKILL.md, the README and the plugin manifest do not mentiondep-audit/scripts/audit-pip.sh:108High confidence
- Contacts raw.githubusercontent.com, which SKILL.md, the README and the plugin manifest do not mentiondep-audit/scripts/detect.sh:87High confidence
- Contacts raw.githubusercontent.com, which SKILL.md, the README and the plugin manifest do not mentiondep-audit/scripts/sbom.sh:43High confidence
- Contacts api.anthropic.com, which SKILL.md, the README and the plugin manifest do not mentionfeed-diet/scripts/classify.sh:97High confidence
- Contacts api.openai.com, which SKILL.md, the README and the plugin manifest do not mentionfeed-diet/scripts/classify.sh:114High confidence
- Contacts hacker-news.firebaseio.com, which SKILL.md, the README and the plugin manifest do not mentionfeed-diet/scripts/hn-fetch.sh:10High confidence
- Contacts www.w3.org, which SKILL.md, the README and the plugin manifest do not mentionfeed-diet/scripts/opml-parse.sh:100High confidence
- Contacts purl.org, which SKILL.md, the README and the plugin manifest do not mentionfeed-diet/scripts/opml-parse.sh:101High confidence
- Contacts jqlang.github.io, which SKILL.md, the README and the plugin manifest do not mentionkube-medic/scripts/kube-medic.sh:157High confidence
- Contacts api.anthropic.com, which SKILL.md, the README and the plugin manifest do not mentionmeeting-autopilot/scripts/extract-items.sh:80High confidence
- Contacts api.openai.com, which SKILL.md, the README and the plugin manifest do not mentionmeeting-autopilot/scripts/extract-items.sh:110High confidence
- Contacts api.anthropic.com, which SKILL.md, the README and the plugin manifest do not mentionmeeting-autopilot/scripts/generate-outputs.sh:64High confidence
- Contacts api.openai.com, which SKILL.md, the README and the plugin manifest do not mentionmeeting-autopilot/scripts/generate-outputs.sh:91High confidence
Signal confidence: 485 facts
- Network access in code of documentationagentic-devops/README.md:50Low confidence
- Network access in prose of documentationagentic-devops/README.md:74Low confidence
- Network access in the frontmatter of the SKILL.mdagentic-devops/SKILL.md:5Low confidence
- Network access in the frontmatter of the SKILL.mdagentic-devops/SKILL.md:6Low confidence
- Network access in the frontmatter of the SKILL.mdagentic-devops/SKILL.md:7Low confidence
- Network access in the frontmatter of the SKILL.mdagentic-devops/SKILL.md:18Low confidence
- Network access in the frontmatter of the SKILL.mdagentic-devops/SKILL.md:19Low confidence
- Network access in the frontmatter of the SKILL.mdagentic-devops/SKILL.md:20Low confidence
- Network access in code of the SKILL.mdagentic-devops/SKILL.md:87High confidence
- Network access in code of the SKILL.mdagentic-devops/SKILL.md:88High confidence
- Executable script in code of a file that runsagentic-devops/devops.py:1High confidence
- Network access in prose of a file that runsagentic-devops/devops.py:8Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valueagentic-devops/devops.py:38Low confidence
- Network access in code of a file that runsagentic-devops/devops.py:703High confidence
- Network access in code of a file that runsagentic-devops/devops.py:704High confidence
- Network access in code of a file that runsagentic-devops/devops.py:705High confidence
- Network access in code of a file that runsagentic-devops/devops.py:706High confidence
- Network access in code of a file that runsagentic-devops/devops.py:707High confidence
- Network access in code of a file that runsagentic-devops/devops.py:754High confidence
- Network access in code of a file that runsagentic-devops/devops.py:755High confidence
- Network access in code of a file that runsagentic-devops/devops.py:756High confidence
- Network access in code of a file that runsagentic-devops/devops.py:921High confidence
- Network access in code of a file that runsagentic-devops/devops.py:922High confidence
- Network access in code of a file that runsagentic-devops/devops.py:923High confidence
- Network access in code of a file that runsagentic-devops/devops.py:1010High confidence
- Network access in code of a file that runsagentic-devops/devops.py:1021High confidence
- Network access in code of a file that runsagentic-devops/devops.py:1032High confidence
- Network access in code of a file that runsagentic-devops/devops.py:1033High confidence
- Network access in code of a file that runsagentic-devops/devops.py:1034High confidence
- Network access in prose of documentationcontext-engineer/README.md:58Low confidence
- Network access in the frontmatter of the SKILL.mdcontext-engineer/SKILL.md:5Low confidence
- Network access in the frontmatter of the SKILL.mdcontext-engineer/SKILL.md:6Low confidence
- Network access in the frontmatter of the SKILL.mdcontext-engineer/SKILL.md:7Low confidence
- Network access in the frontmatter of the SKILL.mdcontext-engineer/SKILL.md:17Low confidence
- Network access in the frontmatter of the SKILL.mdcontext-engineer/SKILL.md:18Low confidence
- Network access in the frontmatter of the SKILL.mdcontext-engineer/SKILL.md:19Low confidence
- Network access in prose of the SKILL.mdcontext-engineer/SKILL.md:69Low confidence
- Network access in prose of the SKILL.mdcontext-engineer/SKILL.md:71Low confidence
- Executable script in code of a file that runscontext-engineer/context.py:1High confidence
- Network access in prose of a file that runscontext-engineer/context.py:9Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuecontext-engineer/context.py:35Low confidence
- Network access in code of a file that runscontext-engineer/context.py:503High confidence
- Network access in code of a file that runscontext-engineer/context.py:504High confidence
- Network access in code of a file that runscontext-engineer/context.py:505High confidence
- Network access in code of a file that runscontext-engineer/context.py:643High confidence
- Network access in code of a file that runscontext-engineer/context.py:644High confidence
- Network access in code of a file that runscontext-engineer/context.py:645High confidence
- Network access in code of a file that runscontext-engineer/context.py:769High confidence
- Network access in code of a file that runscontext-engineer/context.py:770High confidence
- Network access in code of a file that runscontext-engineer/context.py:771High confidence
and 435 more
Only the first 500 facts are listed.
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Frontmatter field user-invocable in skills/agentic-devops/SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md skills/agentic-devops/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/agentic-devops/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/agentic-devops/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/agentic-devops/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/agentic-devops/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.