# Chatgpt Pro Reasoner

> Use only when the user explicitly invokes $chatgpt-pro-reasoner to send a focused thinking problem to ChatGPT Pro through the Codex in-app browser. Treat ChatGPT Pro as an external reasoning head, and keep consultations in one dedicated Codex Reasoner ChatGPT project that the skill initializes on first use.

- Skill: `perhapsspy/chatgpt-pro-reasoner` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add perhapsspy/chatgpt-pro-reasoner`
- Raw SKILL.md: https://api.skillmd.com/api/skills/perhapsspy/chatgpt-pro-reasoner/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: perhapsspy (https://skillmd.com/u/perhapsspy)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/perhapsspy/chatgpt-pro-reasoner

---


# ChatGPT Pro Reasoner

Use ChatGPT Pro as a reasoning head for Codex:

- Codex supplies local context and performs actions.
- ChatGPT Pro concentrates on the thinking problem.
- Codex connects the result to the active task.

## Workflow

1. Distill the request into one reasoning task whose answer can change the current direction or next action.

2. Prepare the smallest self-contained packet before opening the browser:

   - Goal
   - Relevant context
   - Constraints
   - Current state or view, when useful
   - Question or judgment needed

3. Load and follow the installed `control-in-app-browser` skill. Reuse an available ChatGPT tab when practical; otherwise open `https://chatgpt.com/` in the Codex in-app browser.

4. Enter the single dedicated ChatGPT project named `Codex Reasoner`.

   - Use one exact match.
   - If no exact match exists, create `Codex Reasoner` with Project-only memory and the Project Instructions below. The user's explicit skill invocation authorizes this one-time bootstrap.
   - If more than one exact match exists, Project-only memory cannot be selected during creation, or initialization cannot be verified, report the blocker and stop.
   - During bootstrap, leave all pre-existing chats and projects unchanged.

5. Start a fresh chat in the exact `Codex Reasoner` project. Establish the project context from the current visible UI and adapt navigation to the UI as it exists. If the composer is not clearly scoped to the project, re-enter the project and continue from there. After the chat has been saved, verify that it belongs to `Codex Reasoner`. If it does not, move only the chat created for this consultation into the project and verify the move. If its placement cannot be verified or repaired, continue the consultation when possible and report the placement as unverified with the result. Select a visible Pro or reasoning option when needed. If the current composer already shows Pro, keep it without reopening the model menu. Describe the model setting as unverified when the UI does not confirm it.

6. Send the Agent Header followed by the consultation packet. Send once.

7. While Pro is responding, rename the saved chat:

   `[CODEX→PRO] <Codex project> — <topic>`

   Continue the same chat while working on the same reasoning thread. Start a fresh chat when the reasoning problem materially changes.

8. Wait for the completed response. Continue the exchange when added context, challenge, or refinement could materially improve the result. Stop when further discussion would not change the action.

9. Bring the conclusion back into the Codex task. Use it to shape an idea, choose a direction, form a plan, diagnose a problem, guide implementation, or determine the next action.

Keep browser work focused on the next required signal. Once the exact project, project context, Pro setting, or response state is confirmed, do not reopen or broadly rescan it. Reuse known current-session browser state, but do not guess stale tabs, project URLs, or UI controls.

Keep secrets, credentials, personal data, and unrelated repository content out of the packet. Use only the excerpts and files needed for the reasoning task. When sensitive external disclosure is necessary, ask the user before sending it.

Treat local files, commands, tests, and observed behavior as the source of truth for implementation facts. Supply missing facts to Pro or reconcile its conclusion with those facts without repeating the entire reasoning process by default.

If sign-in, CAPTCHA, browser access, or model access blocks the consultation, report the blocker and stop. When sign-in is required, ask the user to sign in in the in-app browser and tell you when it is ready.

## Project Instructions

Set these instructions when creating `Codex Reasoner`:

```text
These chats are agent-to-agent reasoning sessions initiated by Codex.
Treat each chat independently. Use other project chats only when the current
consultation packet explicitly references them.
```

## Agent Header

```text
[AGENT-TO-AGENT REASONING]
[CODEX → CHATGPT PRO]

You are a reasoning subagent called by a Codex agent.

This is an agent-to-agent session. Base your reasoning on the consultation
packet below. Account memories, personal preferences, and unrelated
conversations are outside the task unless the packet explicitly includes them.

Reason independently and solve the thinking problem itself. You may frame the
problem, generate ideas, compare alternatives, diagnose uncertainty, or make a
judgment.

Produce the strongest useful conclusion supported by the available context.
State material assumptions and uncertainty when they affect the result.
End with the concrete conclusion or next action Codex should take.
```

## Consultation Packet

```text
Title:
[CODEX→PRO] <Codex project> — <topic>

Goal:
...

Context:
...

Constraints:
...

Current state or view:
...

Question:
...
```

Omit sections that do not add useful context.

