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 sologuy/chatgpt-web-handoff --skill chatgpt-handoffgit clone --depth 1 https://github.com/sologuy/chatgpt-web-handoffWrote 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/sologuy/chatgpt-web-handoff/chatgpt-handoff)<a href="https://agentmods.dev/skills/sologuy/chatgpt-web-handoff/chatgpt-handoff"><img src="https://agentmods.dev/badge/skills/sologuy/chatgpt-web-handoff/chatgpt-handoff/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/sologuy/chatgpt-web-handoff/chatgpt-handoff"><img src="https://agentmods.dev/badge/skills/sologuy/chatgpt-web-handoff/chatgpt-handoff.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00045 | $0.04448 |
| Opus 5 | $0.00023 | $0.02224 |
| Sonnet 5 | $0.00009 | $0.00890 |
| Haiku 4.5 | $0.00005 | $0.00445 |
Grade B, and why
chatgpt-handoff scanned grade B with 1 finding 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 11d 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.
Enumerates other installed skillsmediumAgent snooping
Other skills' SKILL.md files reveal prompts, capabilities and secrets that should be invisible to peers.
CGH=$(ls "$HOME"/.claude/skills/chatgpt-handoff/cgh "$HOME"/.agents/skills/chatgpt-handoff/cgh 2>/dev/null | head -1) How it starts
The opening of the file, as written. The whole thing — 237 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ChatGPT Web Handoff
本 Skill 在 Claude Code / Codex / DSH 上行为一致。不依赖任何单一 harness 的模板特性 (不用参数占位符替换,也不用反引号内嵌 shell 执行)——所有动态信息一律自己跑命令拿。
⚠️ 这份文档里不能出现那两个模板记号的字面写法,包括在说明"我们不用它"的句子里。 Claude Code 会照样处理:内嵌执行记号会被真的执行(跑一个叫
cmd的命令,Skill 直接加载失败), 参数占位符会被替换成用户传的参数(正文被改写,且 bash 示例里出现就会被静默替换)。 两处都实测过。
第 0 步:先摸清状态
# 哪个 harness 都能用:取第一个存在的路径(两条最终都 symlink 到同一个仓库)
CGH=$(ls "$HOME"/.claude/skills/chatgpt-handoff/cgh "$HOME"/.agents/skills/chatgpt-handoff/cgh 2>/dev/null | head -1)
"$CGH" state
没有活跃作业才能建新的。下文 $CGH 都指这个路径。
这次要审什么,由你从当前上下文写清楚——不要照抄用户那句话。用户常常只说
「开始吧」「可以啊」,抄进去既撑不起 request.md,也让人看不出这个作业是干什么的。
只有上下文里存在两个以上合理候选、选错会实质改变范围时,才停下来问。
你只做一件事:写 request.md
浏览器那一整套(开新标签页、校验 host、展开档位菜单、选推理强度、回读档位、
校验模型、注入正文、发送、等真 URL、读进度、判完成、解哨兵)全部在 cgh 里,
是确定性代码,不需要你参与。不要自己调浏览器工具去做这些事。
你负责的是 cgh 做不了的那部分:把当前任务的上下文组织成一份值得对方花算力读的 request.md。
submit
1. 建作业 —— 把要审什么写清楚
$CGH new --action <review|design|debug> -- <要审什么>
# 带图片或文件(可重复):
$CGH new --action review --attach ./bug.png --attach ./trace.log -- <要审什么>
--effort 通常不用传。 cgh 会自己从审查对象文本里认档位,认不出就用默认 极高:
| 情况 | 结果 |
|---|---|
文本里有档位词(用 pro 模式 / 极速档 / 中级模式 / 极高…) |
按文本,effort_source=审查对象 |
| 文本里没有 | 默认 极高,effort_source=默认 |
你显式传了 --effort 且文本里没档位词 |
按你传的,effort_source=显式参数 |
你传的 --effort 与文本里的档位不一致 |
❌ effort_mismatch 直接拒绝 |
最后一行是关键:用户点了档位就要照他说的写。他说「用 pro 模式」而你按
high 建作业,这一路上没有别的东西能发现你听错了(effort_actual 照样会回读成
"正确的高")。所以要么把他的原话档位词写进审查对象让 cgh 自己认,要么忠实传 --effort。
--之后原样照抄用户那句话,不要概括、不要润色、不要translate。 这句话会被冻结进intent.json并带哈希,后续任何环节改动它都会被拒绝, 档位交叉校验也是拿它做的信源。- 五个档位:
极速/中级/高级/极高/pro。没有auto这一档。 - 审查对象会被冻结进
intent.json并带哈希,submit会校验它原样出现在request.md的「目标」节里——防的是建完作业之后正文被改跑题,不是防你写。 - 上下文里有多个合理审查对象,或者选哪个会实质改变范围 → 停下来问,不得擅自挑选。
- 附件:用
--attach,可重复,最多 10 个。类型不做限制——ChatGPT 支持什么就支持 什么(图片、PDF、代码、文档都可以)。路径在建作业时就会查实,早失败早省事。 - 返回
busy说明已有活跃作业,把active_id报给用户,问是poll还是abort。
What ships with it
1 file 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.
- 11d ago First seen · 237 lines · 45 tokens per session scan B 8b4d2fb33f92
chatgpt-handoff is a skill published in the GitHub repository sologuy/chatgpt-web-handoff (2 stars, last pushed 6d ago), licensed MIT. It adds 45 tokens to every session and 4,448 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it B with 1 finding (enumerates other installed skills). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
simplify-code
Parallel 4-agent cleanup of recent code changes.
requesting-code-review
Pre-commit review: security scan, quality gates, auto-fix.
opencode
Delegate coding to OpenCode CLI (features, PR review).
security-review
Complete a security review of the pending changes on the current branch.
code-review
Review the current diff, or a PR number/branch/path target, for correctness bugs and reuse/simplification/efficiency cleanups at the given effort level (low/medium: fewer, high-confidence findings; high→max: broader coverage, may include uncertain findings; ultra: deep multi-agent review in the cloud); with no level…
github
GitHub via gh CLI: PRs, issues, reviews, repos, auth.