Borrowing it
Nothing to install: this file belongs to haoxiang-xu/PuPu. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/haoxiang-xu/PuPu/main/.claude/skills/ai-investigation/SKILL.mdgit clone --depth 1 https://github.com/haoxiang-xu/PuPuWrote 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/haoxiang-xu/pupu/ai-investigation)<a href="https://agentmods.dev/skills/haoxiang-xu/pupu/ai-investigation"><img src="https://agentmods.dev/badge/skills/haoxiang-xu/pupu/ai-investigation/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/haoxiang-xu/pupu/ai-investigation"><img src="https://agentmods.dev/badge/skills/haoxiang-xu/pupu/ai-investigation.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 2 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Excessive Agency · line 26 Skill selects an external model or provider that may use a different account or billing plan than the operator expects. Undisclosed model switches can cause unexpected cost or quota consumption.Fix: Remove the model/provider override or disclose it prominently and require explicit operator approval before invoking an external coding CLI or billed model.
- high Excessive Agency · line 29 Skill selects an external model or provider that may use a different account or billing plan than the operator expects. Undisclosed model switches can cause unexpected cost or quota consumption.Fix: Remove the model/provider override or disclose it prominently and require explicit operator approval before invoking an external coding CLI or billed model.
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.00122 | $0.01330 |
| Opus 5 | $0.00061 | $0.00665 |
| Sonnet 5 | $0.00024 | $0.00266 |
| Haiku 4.5 | $0.00012 | $0.00133 |
Grade A, and why
ai-investigation 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 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 69 lines — stays where its author put it; the contents beside it link to each section on GitHub.
证据驱动调查
调查的产出不是"我认为",是 经得起证伪的事实。方法先于题目:零信念起步 → 先取一手证据 → 主动证伪每个假设 → 只有活下来的才叫结论。
Codex 是调查者,不是你。你的活是 划范围、发charter、验纪律、转达。你自己不去调查目标,也不用自己的先验覆盖 Codex 的发现。
流程
1. 划定 charter —— 一个可回答的问题 + 范围边界 + 目标(本地路径,或 OSS repo URL)。范围模糊就先收窄,不要让 Codex 自己决定范围。
2. 备 scratch 目录(Codex 的工作目录 永远 是 scratch,绝不是任何 repo of record):
SCRATCH="${TMPDIR:-/tmp}/pupu-investigation/$(date +%s)-<slug>"; mkdir -p "$SCRATCH"
3. 发 Codex(把下面的证伪协议与报告模板整段写进 charter):
# 本地代码目标:只读指向真实 repo,什么都不碰
codex exec -p researcher -s read-only -C <target-repo-path> "<完整 charter>"
# 外部 OSS 目标:让 Codex 自己 clone 进 scratch
codex exec -p researcher -C "$SCRATCH" "Clone <repo-url> into this directory, then investigate. <完整 charter>"
4. 验纪律再转达。 一行自检:有没有一手证据出处?有没有真的去证伪(不是只断言)?三个桶是不是都填了?缺了就 带着这个缺口重跑一次,再转达。
Codex 输出"断言无证据",那是你必须打回的失败,不是可以转达的结果。
写进 charter 的证伪协议(顺序不能变)
- 零信念起步。 不带先验,不假设"常见做法"。不把目标自己的 docs/README/注释当真相——它们是待验证的主张。不依赖对某个知名 OSS 的训练印象,当作第一次见。
- 证据先行。 读真实代码、跑只读命令、追执行流。形成任何假设之前先积累一手观察。每条观察带出处:
file:line,或"命令 + 输出"。 - 假设只能从证据里长出来。 逐条显式登记。
- 主动证伪。 对每个假设去找 反证——那个会推翻它的情形——而不是去找确认。确认偏误是敌人。
- 活下来才算事实。 经受住诚实证伪 = FACT;被反证击破 = REFUTED;决定性证据取不到 = UNDETERMINED,绝不因为"看起来合理"就升级为事实。
- 三个桶,永不混淆:FACT(已证伪存活)/ HYPOTHESIS(已形成未验)/ UNKNOWN(证据不可得)。
报告模板(Codex 输出,你转达)
- Charter —— 原问题与范围边界,逐字
- 证据日志 —— 一手观察,每条带出处(
file:line/ 命令 + 输出) - 假设登记表 —— 每条:假设、做过的证伪尝试、判定(FACT / REFUTED / UNDETERMINED)
- 结论 —— 只列存活者,各带置信度与回指的证据
- 未决问题 —— 定不下来的部分,以及 缺的到底是哪条证据
- 刻意没做的假设 —— 那些诱人但被拒绝的先验,让读者看见纪律是否守住了
舰队并行
大问题拆成 N 个 互不依赖 的子 charter(按模块 / 文件 / 子问题 / 项目),一个 slice 一次调查,一条消息里并发发出。每份报告 自足,不依赖兄弟的发现;跨报告对账与矛盾标记发生在合成步骤,由派发者做,不由调查者做。
质量线
- 无一手证据与出处的主张不成立。"文档说 X" 不是 "X 为真" 的证据
- 绝不把 HYPOTHESIS 或 UNKNOWN 当结论呈上。合理 ≠ 已证
- 守住 charter 范围;发现范围划错了,明说,不要悄悄扩大
- 工具不可用(如无网络无法 clone)→ 报为 UNKNOWN 的限制,不猜
- 调查不决定任何事。它供给证据,取舍归 project owner
透明度
报告须附:规划/审阅模型 · Codex profile · 工作目录 · 命令形状(凭据 redacted)· 结果。命令要可审计,密钥绝不能出现。
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.
- 12d ago First seen · 69 lines · 122 tokens per session scan A 4a5155d85743
ai-investigation is a skill published in the GitHub repository haoxiang-xu/PuPu (36 stars, last pushed today), licensed Apache-2.0. It adds 122 tokens to every session and 1,330 once invoked, about $0.0006 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
skill-creator
Create new Comis skills, modify and improve existing skills, and validate them against the platform's manifest schema. Use this skill whenever the user wants to create a skill from scratch, turn a workflow into a reusable skill, update or fix an existing skill, understand the skill format, or asks about how skills…
deep-research
MANDATORY: Conduct systematic, multi-angle web research before answering any request to understand or explain a topic properly, deeply, thoroughly, comprehensively, or beyond a short paragraph, even when general knowledge could produce an answer. Also use for comparisons, explicit research, current online information…
log-troubleshooting
Investigate and troubleshoot daemon logs at /.comis/logs/. Covers NDJSON log format, Pino level codes, field dictionary, and staged analysis strategies for efficient troubleshooting of large log files. Use this skill whenever the user asks about logs, errors, warnings, daemon issues, slow operations, debugging daemon…
autonomy
Use when a task is more than a single step — a read/research fan-out, spawning sub-agents, running a DAG, scheduling your own work, or messaging your channel. Teaches when to route work through orchestrate(script), how to fan out with capability attenuation, how to read a denial, and the bounded contract you operate…
find-skills
MANDATORY: For requests asking whether a skill or specialized capability exists, load this skill and run its catalog workflow before answering. This includes elliptical follow-ups such as 'find something that does' when the preceding turn names the task. Do not answer from general capabilities, search workspace…
image-generation
Generate images using structured prompts and optional reference images. Supports character design, scenes, product visualization, and any visual content creation. Use this skill when the user requests to generate, create, imagine, draw, or visualize images, characters, portraits, scenes, products, or any visual…