chatgpt-image

chatgpt-image is a skill for Claude Code, Codex from ManiacMike/chatgpt-endless-canvas. It costs 97 tokens per session (1,861 once invoked), scanned B, original, MIT.

A skill for fetching web pages directly with Scrapling, a web-fetching library that can handle some bot-protected sites. It supports different fetching modes and can return Markdown or HTML.

In plain words
What is it for?
Use it when asked to fetch, curl, or scrape a URL, especially from a site that blocks automated access. Pass a URL and optionally choose basic, stealth, or max-stealth mode and an output format.
Why use it?
It provides an alternative when ordinary requests or browser fetching are blocked by anti-automation measures. The setup instructions also explain how to install the required package and browser files.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it when asked to fetch, curl, or scrape a URL, especially from a site that blocks automated access. Pass a URL and optionally choose basic, stealth, or max-stealth mode and an output format.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/maniacmike/chatgpt-endless-canvas/chatgpt-image
Install

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.

Any agent
npx skills add ManiacMike/chatgpt-endless-canvas --skill chatgpt-image
Clone the repo
git clone --depth 1 https://github.com/ManiacMike/chatgpt-endless-canvas

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for chatgpt-image

README.md
[![agentmods](https://agentmods.dev/badge/skills/maniacmike/chatgpt-endless-canvas/chatgpt-image/github.svg)](https://agentmods.dev/skills/maniacmike/chatgpt-endless-canvas/chatgpt-image)
Your own site
<a href="https://agentmods.dev/skills/maniacmike/chatgpt-endless-canvas/chatgpt-image"><img src="https://agentmods.dev/badge/skills/maniacmike/chatgpt-endless-canvas/chatgpt-image/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.

agentmods 80×15 button for chatgpt-image

Your own site · 80×15
<a href="https://agentmods.dev/skills/maniacmike/chatgpt-endless-canvas/chatgpt-image"><img src="https://agentmods.dev/badge/skills/maniacmike/chatgpt-endless-canvas/chatgpt-image.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 97 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,861 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 2 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00097 $0.01861
Opus 5.5 $0.00039 $0.00744
Sonnet 5.5 $0.00019 $0.00372
Haiku 4.5 $0.00010 $0.00186

Measured 2mo ago against content hash adf33a2e64f2, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade B, and why

chatgpt-image scanned grade B with 2 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 2mo 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.

Sends data to an external URLmediumData exfiltration

A POST to an outside endpoint may be telemetry or may be exfiltration; either way the mod talks to somewhere, and you should know where.

bytes (`curl --data-binary @file.png`), then generate with the returned

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -s --max-time 2 http://127.0.0.1:9222/json/version
skills/chatgpt-image/SKILL.md · 142 lines

How it starts

The opening of the file, as written. The whole thing — 142 lines — stays where its author put it; the contents beside it link to each section on GitHub.

ChatGPT image generation (board-first)

Project home: ${CHATGPT_IMAGE_GEN_HOME:-~/Workspace/chatgpt-endless-canvas} (referred to as $PROJ below — resolve it once per session). Data root: ~/Documents/chatgpt-endless-image-gen/.

Bootstrap (skill install ≠ project install). This file only teaches the workflow; the project code + venv must exist at $PROJ. Check once per session, and set it up if missing:

[ -f "$PROJ/board_server.py" ] || {
  git clone https://github.com/ManiacMike/chatgpt-endless-canvas.git "$PROJ" &&
  python3 -m venv "$PROJ/.venv" &&
  "$PROJ/.venv/bin/pip" install -r "$PROJ/requirements.txt"
}

Core rule: submit ALL generation requests through the board server API (POST /api/generate) instead of invoking the Python script directly — the server serializes jobs, spaces batches with random pauses (rate-limit protection), streams results onto the canvas, and records lineage. Call the script directly only as a fallback when the server cannot run, or for --grab-only recovery.

Standard flow (every request)

  1. Debug Chrome ready?

    curl -s --max-time 2 http://127.0.0.1:9222/json/version
    

    On failure → ask the user to run bash $PROJ/launch-chrome-debug.sh, log into chatgpt.com in the opened window, and keep it open. Do NOT run it for them in the background — the window needs to stay interactive.

  2. Board server running? Use the idempotent launcher (safe from any session; already-running → no-op; starts detached via nohup so it outlives this session):

    bash $PROJ/start.sh
    

    It prints the ACTUAL url (board started: http://127.0.0.1:<port>) — the port may NOT be 8090: ports occupied by other programs (including stale pre-rename copies of this project) are skipped automatically. Use the printed url as $BOARD for ALL API calls below, and open $BOARD if the user doesn't have the board open. To re-discover it later, GET /api/health must return "app": "chatgpt-endless-canvas" (also in ~/Documents/chatgpt-endless-image-gen/server.json alongside pid/port) — a port that answers /api/state but not /api/health is NOT this server. Do NOT run board_server.py with run_in_background — that ties the server to this session. Log: ~/Documents/chatgpt-endless-image-gen/board.log. Unfinished jobs survive a server restart (persisted + requeued), so if the environment kills the detached process, just rerun start.sh.

Read the full file on GitHub · 142 lines

Changes

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.

  1. 2mo ago First seen · 142 lines · 97 tokens per session scan B adf33a2e64f2

Subscribe to this mod's changes

chatgpt-image is a skill published in the GitHub repository ManiacMike/chatgpt-endless-canvas (114 stars, last pushed 3mo ago), licensed MIT. It adds 97 tokens to every session and 1,861 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it B with 2 findings (sends data to an external url, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

chatgpt-image compared with skills from other repositories

chatgpt-image next to 6 skills from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
chatgpt-imageManiacMike/chatgpt-endless-canvasSkill1143mo agoMITB97Claude Code, Codex
interactive-loginyc-software/qmSkill16kyesterdayMITA46Claude Code, Codex
pinchtab-mcppinchtab/pinchtabSkill11k10d agoMITA52Claude Code, Codex
azure-messaging-webpubsub-javamicrosoft/skillsSkill3.2kyesterdayMITA43Claude Code
cua-driverdavidondrej/skillsSkill4.3k3d agoMITA68Claude Code, Codex
open-design-browsercompozy/compozySkill2.8kyesterdayMITA56Claude Code, Codex
southwestborski/travel-hacking-toolkitSkill895yesterdayMITA40Claude Code