Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/apache/airflow/sql-reportingnpx skills add apache/airflow --skill sql-reportinggit clone --depth 1 https://github.com/apache/airflowWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00034 | $0.00316 |
| Opus 5 | $0.00017 | $0.00158 |
| Sonnet 5 | $0.00007 | $0.00063 |
| Haiku 4.5 | $0.00003 | $0.00032 |
Grade A, and why
sql-reporting scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
SQL Reporting Skill
Apply this skill before writing or running any analytics SQL so reports stay consistent and safe.
When to Use This Skill
Use this skill when the task involves:
- Querying warehouse tables for a metric, report, or dashboard figure
- Aggregating rows (counts, sums, rolling windows)
- Cross-referencing two or more tables
Conventions
- Always
SELECTexplicit column names, neverSELECT *. - Filter on a partition/date column first to bound the scan.
- Alias aggregates with snake_case names (
order_count, notcount(*)). - Cap exploratory queries with
LIMITunless an aggregate already collapses the result set. - Prefer
COUNT(DISTINCT ...)over a sub-query when de-duplicating.
Review Checklist (run before returning an answer)
- No
SELECT *. - A date or partition predicate is present.
- Every aggregate has an explicit alias.
- The query reads only from tables the task actually needs.
Output Format
Return the final SQL in a fenced ```sql block, then one sentence describing what the query returns.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 42 lines · 34 tokens per session scan A 2a3c0b7ba27d
sql-reporting is a skill published in the GitHub repository apache/airflow (46,647 stars, last pushed yesterday), licensed Apache-2.0. It adds 34 tokens to every session and 316 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
airflow-workflow
Execution guide for Airflow scheduled jobs — troubleshooting, updating, connid conventions, and cron references.
dagster-docs
Expert guidance for writing documentation for the Dagster docs website. ALWAYS use before creating or updating documentation in the docs directory.
git-workflow
Git operations: commits, branches, PRs, and conflict resolution.
jamjet-durability-patterns
Production durability patterns for AI agents on the JVM — crash recovery, audit trails, human-in-the-loop, and replay testing using JamJet runtime.
bugsweep
Systematic bug sweep with a codebase-scaled target value, doubling escalation, area tracking, and final verification. Use on /bugsweep or whenever the user requests a systematic bug pass.
compare-race
Use when the user wants to send the same prompt to several LLMs and compare the answers - sequentially (stopwatch, clean per-lane timing) or in parallel (true race), with optional repetitions per model, judged by the starting model across quality, correctness, completeness, instruction fidelity and latency (time is…