ChatGPT Work Tool and Skill Reference
codex-tool-reference.simonw.chatgpt.site|110 points|43 comments|by ijidak|Aug 31, 2026
Codex Work Tool and Skill Reference Guide
This document serves as a comprehensive directory of the callable interfaces and reusable workflow definitions currently active in this Work session.
📊 Session Inventory Snapshot
Date of Snapshot: 31 August 2026
| Metric | Value |
|---|---|
| Tool Interfaces | 232 |
| Skill Definitions | 44 |
| Skill Source Volume | characters |
Definitions:
- Tools: These are the actual callable endpoints.
- Skills: These are instructional packages that provide the logic and guidance on how to utilize those tools.
🛠️ Skill Specifications
Each skill listed below corresponds to a page containing the full SKILL.md source. The reference maintains all TypeScript declarations and exposed descriptions. Note: Availability may fluctuate based on your permissions, connected applications, plugins, and session settings.
🎨 Visuals & Document Generation
answers-charts: Deploy when a visual representation (trends, compositions, categorical comparisons, or numeric data) is more effective than a text-based explanation.answers-images: Use to provide visual grounding or enhance an answer using retrieved imagery.answers-learning: Trigger this for interactive educational widgets, such as:- Objective multiple-choice quizzes.
- Flashcards.
- Pronunciation assistance.
documents: Used for the creation, modification, and redlining of.docx, Word, or Google Docs artifacts.- Workflow Requirement: Must follow a strict render-and-verify process.
- Execute
render_docx.pyto create PNGs (and PDFs). - Perform visual QA.
- Iterate on layout.
- Deliver final document.
imagegen: For creating or editing raster/bitmap visuals (photos, textures, mockups, sprites).- Use for: Brand new images or variants of references.
Do not use for:Editing SVGs, vector assets, logo systems, or building visuals via HTML/CSS/Canvas.
pdf: For reading, creating, and inspecting PDF files (including AcroForms).- Tech Stack: Utilizes Poppler rendering alongside
reportlab,pdfplumber, andpypdf.
- Tech Stack: Utilizes Poppler rendering alongside
Presentations: Specifically for PowerPoint (.ppt,.pptx) or Google Slides requests.Spreadsheets: For any task involving.xlsx,.xls,.csv, or.tsvfiles, including Google Sheets. Handles formulas, charts, and recalculations.
⚡ Interactive & Textual Tools
visualize: Proactively create interactive simulations, maps, or graphs to explain "what happens if" scenarios or to help a user inspect a concept.writing-blocks: Used for short-form drafts (emails, bios, social posts).- Note: For long-form content, prefer creating a standalone file over a writing block.
🌐 Web & Site Management
control-browser: Manages authenticated or public web interactions.- Authentication: Use only the
browserAuthcapability for credentials. - Priority Logic:
- Web Search 2. Plugins 3. Browser.
- Authentication: Use only the
sites:sites-building: Used for constructing portfolios, dashboards, or internal hubs.- Mandatory: Use this skill if the project contains a
.openai/hosting.jsonfile.
- Mandatory: Use this skill if the project contains a
sites:sites-preview-troubleshooting: Used to recover or diagnose failures when a site preview fails to launch or become healthy.
🧠 Context & Library Integration
demos:answers-ask-user-input: Used when a small gap in context exists; provides the user with tappable options or a text field to refine the answer.openai-library:library: The primary interface for managing the ChatGPT Library.- Capabilities: Searching/reading Library content, organizing folders, version restoration, and saving new deliverables.
- Trigger: Use when the user mentions the "Library" or when a reusable artifact needs to be created.
personal-context: Activated under two specific conditions:- Continuity: When the user uses elliptical language (e.g., "update it", "same as before", "our plan") referring to prior state.
- Decision-making: When a previously established constraint or preference would materially change a current choice.
// Example of a tool interface declaration
interface ToolCall {
toolName: string;
parameters: Record<string, any>;
sessionContext: string;
}
Reading and tool discovery are only a check; afte...