Skip to content
Worix
BrowsePublish
Log inSign Up

ChatGPT Web Skill

Automate ChatGPT Web conversations through a local browser session with persistent login state, one-shot prompts, reusable multi-turn sessions, and conversat...

67 downloads
Free
Reviewed

ChatGPT Web Skill

Use this skill to drive the ChatGPT Web UI through a local browser profile.

Core Purpose

  • Reuse ChatGPT login state stored inside the skill directory
  • Start a fresh conversation or reopen an existing one
  • Ask one-off questions through a normal browser page
  • Keep a long-lived browser session for multi-turn dialogue

Always Use python3 scripts/run.py

Always run commands through the wrapper:

python3 scripts/run.py auth_manager.py status
python3 scripts/run.py auth_manager.py validate
python3 scripts/run.py auth_manager.py setup
python3 scripts/run.py ask_chatgpt.py --question "你好"
python3 scripts/run.py session_manager.py create

The wrapper ensures the local .venv exists, installs dependencies, and runs the target script with the correct interpreter.

Authentication Flow

  1. Check local state:
python3 scripts/run.py auth_manager.py status
  1. Validate the real browser state:
python3 scripts/run.py auth_manager.py validate
  1. If needed, complete login manually in a visible browser:
python3 scripts/run.py auth_manager.py setup
  1. To clear local auth/profile data:
python3 scripts/run.py auth_manager.py logout

Basic Chat Flow

One-shot question:

python3 scripts/run.py ask_chatgpt.py --question "你好"

Debug in visible browser:

python3 scripts/run.py ask_chatgpt.py --question "总结这段文本" --show-browser

Continue a known conversation id:

python3 scripts/run.py ask_chatgpt.py --conversation-id <conversation_id> --question "继续"

Ask with an explicit model workflow and save a proof screenshot:

python3 scripts/run.py ask_chatgpt.py \
  --new-chat \
  --model "GPT 5.4 Thinking" \
  --extended-thinking \
  --proof-screenshot \
  --question "请你推荐最近一个月,RLVR领域的论文"

Persistent Session Flow

Create a reusable session:

python3 scripts/run.py session_manager.py create
python3 scripts/run.py session_manager.py create --conversation-id <conversation_id>

Ask follow-up questions in the same tab:

python3 scripts/run.py session_manager.py ask --session-id <session_id> --question "继续问"

You can also switch model, force a fresh chat, enable Extended thinking, and save a proof screenshot in the same call:

python3 scripts/run.py session_manager.py ask --session-id <session_id> --new-chat --model "GPT 5.4 Thinking" --extended-thinking --proof-screenshot --question "请你推荐最近一个月,RLVR领域的论文"

Inspect or maintain sessions:

python3 scripts/run.py session_manager.py list
python3 scripts/run.py session_manager.py info --session-id <session_id>
python3 scripts/run.py session_manager.py reset --session-id <session_id>
python3 scripts/run.py session_manager.py close --session-id <session_id>
python3 scripts/run.py session_manager.py gc

Data Storage

All data stays inside the skill directory:

  • data/auth_info.json — auth metadata and last validation status
  • data/browser_state/ — cookies, storage state, persistent browser profile
  • data/conversations.json — discovered/opened conversation metadata
  • data/sessions.json — persistent session metadata
  • data/session_runtime/ — daemon socket, pid, and runtime artifacts
  • data/screenshots/ — debug screenshots captured on failures

Error Model

The scripts return explicit machine-readable errors for cases such as:

  • not logged in
  • redirected to login
  • account chooser encountered
  • CAPTCHA / 2FA / human verification required
  • page load failed
  • prompt input missing
  • send path unavailable
  • reply timeout
  • empty reply
  • page structure changed
  • session not found
  • invalid conversation id
  • session daemon unavailable
  • browser profile in use
  • network or proxy failure

Best Practices

  • Validate auth before deeper automation
  • Use --show-browser when the UI changes
  • Prefer persistent sessions for multi-turn workflows
  • Keep proxy env vars explicit on Linux when network behavior is unstable
  • Inspect data/screenshots/ and JSON error payloads before patching selectors

Limitations

  • ChatGPT Web selectors can change without notice
  • A blank new chat may still not expose a stable server conversation id until the first message is sent; the skill also probes frontend state, storage, and resource history, and may fall back to a client thread id such as WEB:... when ChatGPT keeps the URL at /
  • Some login or risk-review flows require manual intervention
  • Conversation deletion is intentionally left unimplemented until the web flow is stable enough

Download

ZIP package — ready to use

Skill Info

Creator
PlacidusaxAlarak
Downloads
67
Published
Mar 15, 2026
Updated
Mar 16, 2026