Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add agentscope-ai/QwenPaw-Data --skill query-odpsgit clone --depth 1 https://github.com/agentscope-ai/QwenPaw-DataWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/agentscope-ai/qwenpaw-data/query-odps)<a href="https://agentmods.dev/skills/agentscope-ai/qwenpaw-data/query-odps"><img src="https://agentmods.dev/badge/skills/agentscope-ai/qwenpaw-data/query-odps/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/agentscope-ai/qwenpaw-data/query-odps"><img src="https://agentmods.dev/badge/skills/agentscope-ai/qwenpaw-data/query-odps.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00081 | $0.00745 |
| Opus 5 | $0.00041 | $0.00373 |
| Sonnet 5 | $0.00016 | $0.00149 |
| Haiku 4.5 | $0.00008 | $0.00075 |
Grade A, and why
query-odps 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 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
query-odps
MaxCompute 只读 SELECT 的域规则:怎么写对 SQL、怎么优化、怎么自检、怎么执行、失败如何回退。
禁止:直连 PyODPS;绕过标准执行通道自写 CSV。
规则索引
| 场景 | 读 |
|---|---|
| 写 SQL(方言) | references/dialect-rules.md |
| 分区 / MAX_PT | references/partition-semantics.md |
| SELECT 结构 | references/sql-correctness.md |
| 性能 / 扫描 | references/performance.md |
| 业务字面量 → 库内值 | references/value-discovery.md |
| 失败回退 | references/error-recovery.md |
核心原则
- 先取证 — 无元数据不臆测表名、列名、口径。
- 过滤值与 JOIN 键先定再写 SQL — 时间范围、分区边界、维度筛选、业务字面量对应的库内取值等 全部确认 后再生成 SQL;不得在 WHERE 里留臆测的枚举或占位过滤值。未映射的字面量确认参考
value-discovery.md。涉及 JOIN 时同理:写 ON 之前先对齐左右两边的连接键——列名是否同一实体、类型是否一致、格式是否同口径(如user_id是否都带前缀、ds是yyyyMMdd还是yyyy-MM-dd、STRING 是否需TRIM/CAST);禁止在未核实键格式时直接拼 JOIN。 - 分步查询,勿一次开大 SQL — 执行结果会落入 ODPS 临时表(如
cm_tmp_*),应拆成可快速校验的小步:探针 / 单表过滤 / 中间结果落表 → 再基于临时表做下一步。禁止 一次性提交超大、多表深 JOIN、长窗口的「一步到位」SQL;一旦口径或 JOIN 键有误,会等非常久才失败,用户无法及时发现问题。 - 性能纪律 + 执行前自检 — 写 SQL 前 必须读
references/performance.md(分区必过滤、列裁剪、先聚合再 JOIN 等);定稿后再对照performance.md、partition-semantics.md等 references 自检,明显违规 不得执行。ODPS 按扫描量计费,忽视此项会导致超时或严重资源浪费。 - 只走标准执行通道 — SELECT 仅经平台提供的执行通道提交;禁止 PyODPS 直连或自写 CSV。结果落盘路径由运行环境决定;
truncated须在回复中说明;禁止把超大结果全量贴进对话。
What ships with it
6 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 10d ago First seen · 30 lines · 81 tokens per session scan A 0f9c85fef78e
query-odps is a skill published in the GitHub repository agentscope-ai/QwenPaw-Data (71 stars, last pushed yesterday), licensed Apache-2.0. It adds 81 tokens to every session and 745 once invoked, about $0.0004 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
stripe-projects
Use when the user wants to provision infrastructure or third-party services using Stripe Projects. Triggers: "I need a database", "set up auth", "add caching", "give me a Postgres", "provision Redis", "I need hosting", "add a vector DB", "get me an API key for X", "get credentials for X", "sign up for a service", "set…
knowledge_graph_skill
Skill for searching and evolving the SQLite-backed Knowledge Graph. Use this when you need structured fact/concept/link search across one or more teams, NPCs, or directory scopes. The Knowledge Graph (KG) is stored in the application's database (not YAML). It is scoped by (teamname, npcname, directorypath). Facts and…
alembic-migration
Create, review, and apply database schema changes with Alembic. Use whenever a SQLAlchemy model is added or changed, a column/index/constraint needs to change, or a data backfill is required — anything that alters the PostgreSQL schema.
claude-memory
Access the persistent memory database (PostgreSQL claudememory) for long-term context across Claude Code sessions. Triggers on "what do I know about", "memory lookup", "recall", "memory db", "what did we decide about", "similar conversations", "lookup context", "/memory". Provides semantic search, SQL queries and the…
tageszeitung
Creates a personalised daily newspaper from RSS feeds and web sources. Ported from the BACH news system (news.py + newspapergenerator.py). Own SQLite store (no Origin-DB). feedparser optional — XML fallback via stdlib. PDF export via Edge Headless (msedge.exe).
brain-bitemporal
How to query the INITE Brain knowledge graph across time — the asOf parameter, validFrom/validUntil semantics, reading retracted facts, and the memorydiff "what changed between two cursors" surface. Use when the user's question has a temporal dimension ("on X date", "before Y", "what's new since last conversation").