Geo Fundamentals
wasp-lang/wasp
Generative Engine Optimization for AI search engines (ChatGPT, Claude, Perplexity).
Backward-compatible alias for a visible Chat consultation with the Pro intelligence setting; prefer chatgpt-delegate for new Chat or Work delegation workflows.
$ npx skills add adamallcock/codex-chatgpt-control --skill chatgpt-pro-consult -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install adamallcock/codex-chatgpt-control chatgpt-pro-consult --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/adamallcock/codex-chatgpt-control.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult .claude/skills/chatgpt-pro-consult && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "chatgpt-pro-consult" agent skill from https://github.com/adamallcock/codex-chatgpt-control/tree/main/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult into .claude/skills/chatgpt-pro-consult/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chatgpt-pro-consult", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/adamallcock/codex-chatgpt-control/tree/main/plugins/codex-chatgpt-control/skills/chatgpt-pro-consultType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add adamallcock/codex-chatgpt-control --skill chatgpt-pro-consult -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install adamallcock/codex-chatgpt-control chatgpt-pro-consult --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/adamallcock/codex-chatgpt-control.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult .agents/skills/chatgpt-pro-consult && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "chatgpt-pro-consult" agent skill from https://github.com/adamallcock/codex-chatgpt-control/tree/main/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult into .agents/skills/chatgpt-pro-consult/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chatgpt-pro-consult", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add adamallcock/codex-chatgpt-control --skill chatgpt-pro-consult -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install adamallcock/codex-chatgpt-control chatgpt-pro-consult --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/adamallcock/codex-chatgpt-control.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult .cursor/skills/chatgpt-pro-consult && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "chatgpt-pro-consult" agent skill from https://github.com/adamallcock/codex-chatgpt-control/tree/main/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult into .cursor/skills/chatgpt-pro-consult/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chatgpt-pro-consult", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/adamallcock/codex-chatgpt-control.git --path plugins/codex-chatgpt-control/skills/chatgpt-pro-consult--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add adamallcock/codex-chatgpt-control --skill chatgpt-pro-consult -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install adamallcock/codex-chatgpt-control chatgpt-pro-consult --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/adamallcock/codex-chatgpt-control.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult .gemini/skills/chatgpt-pro-consult && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "chatgpt-pro-consult" agent skill from https://github.com/adamallcock/codex-chatgpt-control/tree/main/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult into .gemini/skills/chatgpt-pro-consult/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chatgpt-pro-consult", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install adamallcock/codex-chatgpt-control chatgpt-pro-consultInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add adamallcock/codex-chatgpt-control --skill chatgpt-pro-consult -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/adamallcock/codex-chatgpt-control.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult .github/skills/chatgpt-pro-consult && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "chatgpt-pro-consult" agent skill from https://github.com/adamallcock/codex-chatgpt-control/tree/main/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult into .github/skills/chatgpt-pro-consult/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chatgpt-pro-consult", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add adamallcock/codex-chatgpt-control --skill chatgpt-pro-consult -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install adamallcock/codex-chatgpt-control chatgpt-pro-consult --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/adamallcock/codex-chatgpt-control.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult .opencode/skills/chatgpt-pro-consult && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "chatgpt-pro-consult" agent skill from https://github.com/adamallcock/codex-chatgpt-control/tree/main/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult into .opencode/skills/chatgpt-pro-consult/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "chatgpt-pro-consult", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
chatgpt-pro-consultBackward-compatible alias for a visible Chat consultation with the Pro intelligence setting; prefer chatgpt-delegate for new Chat or Work delegation workflows.
Chatgpt Pro Consult is an agent skill from adamallcock/codex-chatgpt-control. Backward-compatible alias for a visible Chat consultation with the Pro intelligence setting; prefer chatgpt-delegate for new Chat or Work delegation workflows.
Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/consult-patterns.md`).
It works with OpenAI. The repository describes itself as: Unofficial SDK for Codex agents controlling visible ChatGPT web sessions. The licence is MIT.
2 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 1e50539. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are javascript).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
chatgpt.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Chatgpt Pro Consult loads about 3.3k tokens when it runs, and up to ~3.5k if it reads all its reference files. Until then it costs about 45 tokens; SKILL.md has 1,110 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from adamallcock/codex-chatgpt-control at commit 1e50539, republished under its MIT licence (© adamallcock). 1,110 words, ~3,259 tokens.
.claude/skills/chatgpt-pro-consult/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.This is a backward-compatible skill alias. Prefer chatgpt-delegate for new work because it chooses between Chat, Work, and official Codex based on the job and uses the strict experience/configuration APIs.
Use this alias when an existing workflow or user explicitly requests the visible Chat Pro intelligence setting for a focused consultation. Typical uses are critical review, synthesis, planning review, and a long-form second opinion through the user's ChatGPT subscription.
This skill is a thin workflow over the codex-chatgpt-control plugin. Use the snippets below for ordinary consults, but switch to the full codex-chatgpt-control skill as soon as bridge bootstrap, tab reuse, file attach, send, wait, read, or selector diagnosis becomes the main issue.
experience: "chat" and configuration: { intelligence: "Pro" }. The strict configuration API handles older and newer visible pickers and verifies the postcondition. If the SDK cannot verify Pro, stop and report the blocker and visible candidate labels.experience.open({ experience: "chat" }) through the workflow even when
Work is currently visible; do not assume the current ChatGPT pane is Chat.Use the submit-then-poll pattern in this skill for expensive visible-browser work:
completionState is generating or whose generationActive flag is true.Do not force this staged protocol into ordinary short SDK calls. For normal chatgpt.ask(...), short askInThread(...), quick reads, and exact-string smokes, the smoother one-call wait: true / read: true flow is still the right default. Switch to staged recovery only when the answer is likely to exceed the Codex tool-call ceiling or when a partial/timeout result proves the prompt may already be submitted.
Resolve relative paths from this SKILL.md directory. The plugin runtime loader lives at:
../../runtime/import-chatgpt-control.mjsFrom a bridge-enabled Codex Node runtime:
const loaderUrl = new URL(
"../../runtime/import-chatgpt-control.mjs",
"file:///absolute/path/to/plugins/codex-chatgpt-control/skills/chatgpt-pro-consult/SKILL.md"
);
const { importChatGPTControl } = await import(`${loaderUrl.href}?t=${Date.now()}`);
const { createChatGPT } = await importChatGPTControl();
const chatgpt = createChatGPT({
agent: globalThis.agent,
reporting: { enabled: true, includeContent: false }
});Do not import from an older manually installed skill runtime; the plugin-bundled runtime is the intended source.
This skill assumes the Codex Chrome bridge is already available in the JS runtime. If globalThis.agent is missing, do not stop after reporting hasAgent: false; initialize the Chrome plugin runtime using the bootstrap steps from the codex-chatgpt-control skill, then retry the consult.
After bootstrap, verify both values before using the snippets below:
JSON.stringify({
hasAgent: !!globalThis.agent,
hasBrowser: !!globalThis.browser
}, null, 2);Only report browser_bridge_unavailable after the browser-control bootstrap itself fails or the bridge remains unavailable. If messages.ask, messages.wait, messages.status, messages.readLatest, messages.waitAndRead, mode selection, file attach, or existing-tab selection returns a partial/timeout result, preserve the raw structured result and continue under the full browser-control skill. The Pro wrapper is for consult intent; browser-control is the source of truth for low-level diagnosis.
const POLL_CHUNK = {
timeoutMs: 25_000,
stableMs: 1_500,
pollMs: 750,
mode: "deep_research"
};
function isStillRunning(data) {
return data?.completionState === "generating" || data?.generationActive === true;
}
const pro = chatgpt.agent({
name: "chatgpt-pro-consultant",
instructions: [
"You are being consulted as ChatGPT Pro from a visible ChatGPT web session.",
"Be critical, constructive, specific, and evidence-aware.",
"Call out assumptions, risks, missing information, and concrete next steps.",
"Return clear Markdown."
].join("\n"),
defaults: {
wait: false,
read: false,
report: { enabled: true, includeContent: false }
}
});
async function readBoundedProAnswer() {
const read = await chatgpt.messages.waitAndRead({
...POLL_CHUNK,
role: "assistant",
format: "markdown"
});
if (
read.ok &&
read.data?.complete !== false &&
!isStillRunning(read.data)
) {
return { status: "complete", read };
}
const progress = await chatgpt.messages.status({ maxPreviewChars: 500 });
return {
status: isStillRunning(progress.data) ? "pro_still_running" : "read_incomplete",
read,
progress
};
}
const submitted = await chatgpt.runner.run(pro, {
input: "Review this plan and recommend improvements:\n\n...",
thread: { type: "new" },
experience: "chat",
configuration: { intelligence: "Pro" },
report: { enabled: true, includeContent: false }
});
const configurationStep = submitted.steps?.find(step => step.id === "configuration");
if (!submitted.ok || configurationStep?.ok === false || configurationStep?.dataPreview?.verified !== true) {
console.log(JSON.stringify({
status: "blocked_before_submit_or_configuration_unverified",
thread: submitted.state?.thread ?? submitted.data?.thread,
configurationStep,
interruptions: submitted.interruptions
}, null, 2));
} else {
const answer = await readBoundedProAnswer();
if (answer.status !== "complete") {
console.log(JSON.stringify({
status: answer.status,
message: "Prompt is already submitted. Do not resubmit; poll/read this same thread again.",
thread: submitted.state?.thread ?? submitted.data?.thread,
configurationStep,
progress: answer.progress,
read: answer.read
}, null, 2));
} else {
console.log(answer.read.data?.responseText ?? "");
}
}Before describing the answer as a Pro-setting consultation, inspect configurationStep. It must succeed with dataPreview.verified === true. Do not infer an underlying model solely from the visible label. Do not pass response on the submit run; response formatting belongs on the separate bounded poll. If the poll times out, returns partial, or reports pro_still_running, do not submit the prompt again; reuse the same open thread and run another bounded messages.status / messages.waitAndRead call.
Treat these as in-progress, not as final answers:
status: "partial" with non-empty output_text.data.complete === false.data.completionState === "generating".data.generationActive === true.Use a compact status check when you need to know whether Pro is still working:
const status = await chatgpt.messages.status({ maxPreviewChars: 500 });
console.log(JSON.stringify(status, null, 2));If completionState is generating or generationActive is true, report that ChatGPT Pro is still running and poll the same thread again later. Only treat an answer as final when the wait/read result is complete or when status/read evidence shows generation has stopped.
If a caller prefers a direct polling loop over messages.wait instead of messages.status, pass responseContent: "metadata" so partial and timeout results return compact data.responseChars / data.responseSha256 metadata instead of the full growing answer body; call messages.readLatest once completion is confirmed.
Attach only files the user has approved sending to ChatGPT:
const result = await chatgpt.runner.run(pro, {
input: [
{
type: "input_text",
text: "Critique these materials and return a prioritized action plan."
},
{ type: "input_file", path: "/absolute/path/to/plan.md" },
{ type: "input_file", path: "/absolute/path/to/current-shape.md" }
],
thread: { type: "new" },
experience: "chat",
configuration: { intelligence: "Pro" },
report: { enabled: true, includeContent: false }
});Use the same submit-then-poll pattern as Quick Consult. File-backed Pro answers can run longer than one Codex tool call, so keep pro.defaults.wait and pro.defaults.read disabled and recover the answer with bounded messages.status / messages.waitAndRead calls.
Use this only when the user gives a specific thread URL, conversation id, title, or search query:
const result = await chatgpt.runner.run(pro, {
input: "Please continue from the latest answer and critique the updated plan.",
thread: {
type: "url",
url: "https://chatgpt.com/c/..."
},
experience: "chat",
configuration: { intelligence: "Pro" }
});Search fallback:
const result = await chatgpt.runner.run(pro, {
input: "Read the current context in this thread and give a fresh review.",
thread: { type: "search", query: "SDK Design Proposal", select: "first" },
experience: "chat",
configuration: { intelligence: "Pro" }
});If the submit call timed out after opening a thread, first recover from the current ChatGPT tab instead of creating a duplicate prompt:
const status = await chatgpt.messages.status({ maxPreviewChars: 500 });
if (isStillRunning(status.data)) {
console.log(JSON.stringify({
status: "pro_still_running",
message: "ChatGPT Pro is still generating. Do not resubmit; poll this same thread again.",
progress: status
}, null, 2));
} else {
const read = await chatgpt.messages.waitAndRead({
timeoutMs: 25_000,
stableMs: 1_500,
pollMs: 750,
role: "assistant",
format: "markdown",
mode: "deep_research"
});
console.log(read.ok ? read.data?.responseText : JSON.stringify(read, null, 2));
}If the browser bridge itself needs inspection after a timeout, bootstrap the Chrome runtime from the codex-chatgpt-control skill and use browser.tabs.*; the bridge does not expose top-level browser.list or browser.selected.
If a run fails, report the structured blocker instead of retrying blindly.
browser_bridge_unavailable: the active runtime does not expose the Codex Chrome bridge after running the browser-control bootstrap. Report the bootstrap error and whether hasAgent and hasBrowser are true.login_required: ask the user to log in to ChatGPT in Chrome.selector_drift during configuration: report that the visible Pro setting was unavailable or unverified and include candidates.file_permission: tell the user to enable both Codex Chrome upload permission and Chrome extension file URL access before retrying file attach.rate_limited, captcha, or account-level confirmation: stop and ask the user to resolve it manually.Upload permission fixes:
chrome://extensions > Codex extension > Details > Allow access to file URLs.See references/consult-patterns.md for request framing and output handling.
When reporting back to the user:
© adamallcock, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in plugins/codex-chatgpt-control/skills/chatgpt-pro-consult of adamallcock/codex-chatgpt-control.
Open the folder on GitHubat commit 1e50539
Chatgpt Pro Consult next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Chatgpt Pro Consult this skilladamallcock/codex-chatgpt-control | 406 | — | ~3.3k | Automated safety check: Pass | MIT | |
| Geo Fundamentalswasp-lang/wasp | 19k | 9 repos | ~861 | Automated safety check: Pass | MIT | |
| AI SDKvercel-labs/ai-facts | 168 | 20 repos | ~1.2k | Automated safety check: Pass | None | |
| AI Image Generation and Editingzhayujie/CowAgent | 47k | — | ~1.3k | Automated safety check: Pass | MIT | |
| PR Design DocOpenHands/OpenHands | 91k | — | ~2.4k | Automated safety check: Pass | MIT | |
| SEO GeoReScienceLab/opc-skills | 1.8k | 4 repos | ~2.1k | Automated safety check: Pass | Apache-2.0 |
wasp-lang/wasp
Generative Engine Optimization for AI search engines (ChatGPT, Claude, Perplexity).
vercel-labs/ai-facts
Answer questions about the AI SDK and help build AI-powered features.
zhayujie/CowAgent
Generates or edits images from text prompts through a Python script that picks an image backend based on which API keys are configured.
OpenHands/OpenHands
For a non-trivial pull request, write a self-contained HTML design doc under the temporary .pr/ directory and link a visibility-appropriate preview in the PR description, so maintainers grasp the…
ReScienceLab/opc-skills
SEO & GEO (Generative Engine Optimization) for websites. An agent skill from ReScienceLab/opc-skills.
alibaba/open-code-review
Runs the ocr command-line tool to review Git changes, a commit or a branch comparison with an AI model, returning line-level comments and optionally applying fixes.
adamallcock/codex-chatgpt-control
A skill your agent uses when Codex agents need to operate visible ChatGPT Chat or Work through the codex-chatgpt-control plugin, including verified configuration, prompts, tasks, progress, steering…
adamallcock/codex-chatgpt-control
A skill your agent uses when Codex should delegate a visible, user-directed task to ChatGPT Chat or Work, including configuration discovery, long-running Work progress, steering, response capture…
adamallcock/codex-chatgpt-control
A skill your agent uses when Codex agents need to operate visible ChatGPT Chat or Work through the codex-chatgpt-control SDK, including verified configuration, prompts, tasks, progress, steering…
Works with
Backward-compatible alias for a visible Chat consultation with the Pro intelligence setting; prefer chatgpt-delegate for new Chat or Work delegation workflows. Chatgpt Pro Consult is an agent skill from adamallcock/codex-chatgpt-control. Backward-compatible alias for a visible Chat consultation with the Pro intelligence setting; prefer chatgpt-delegate for new Chat or Work delegation workflows.
Run `npx skills add adamallcock/codex-chatgpt-control --skill chatgpt-pro-consult -a claude-code`. Or copy the skill folder (plugins/codex-chatgpt-control/skills/chatgpt-pro-consult in adamallcock/codex-chatgpt-control) into .claude/skills/chatgpt-pro-consult in your project. Claude Code loads it when a task matches its description.
Run `npx skills add adamallcock/codex-chatgpt-control --skill chatgpt-pro-consult -a codex`. Or copy the skill folder (plugins/codex-chatgpt-control/skills/chatgpt-pro-consult in adamallcock/codex-chatgpt-control) into .agents/skills/chatgpt-pro-consult in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add adamallcock/codex-chatgpt-control --skill chatgpt-pro-consult -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/chatgpt-pro-consult, .gemini/skills/chatgpt-pro-consult, .github/skills/chatgpt-pro-consult and .opencode/skills/chatgpt-pro-consult in your project.
SKILL.md names no scripts, command-line tools or credentials: Chatgpt Pro Consult is instructions for the agent only.
SKILL.md names 1 domain. In commands or code: chatgpt.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Chatgpt Pro Consult is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 265 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Chatgpt Pro Consult: Geo Fundamentals (wasp-lang/wasp, 19k stars), AI SDK (vercel-labs/ai-facts, 168 stars), AI Image Generation and Editing (zhayujie/CowAgent, 47k stars) and PR Design Doc (OpenHands/OpenHands, 91k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
adamallcock (a GitHub user) maintains it in adamallcock/codex-chatgpt-control, which has 406 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 4, 2026.
Source: adamallcock/codex-chatgpt-control on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.