Announcing Beacon: Self-improving memory for coding agents
← All skills
Skill

build-chatgpt-app

skill:openai/plugins#build-chatgpt-app

Build, scaffold, refactor, and troubleshoot ChatGPT Apps SDK applications that combine an MCP server and widget UI. Use when Codex needs to design tools, register UI resources, wire the MCP Apps bridge or ChatGPT compatibility APIs, apply Apps SDK metadata or CSP or domain settings, or produce a docs-aligned project scaffold. Prefer a docs-first workflow by invoking the openai-docs skill or OpenAI developer docs MCP tools before generating code.

Verdict
No issues found

No suspicious or malicious behavior was found.

Analyzed Oct 27, 2026, 23:21 UTC at 0722921

Dispute security verdict

If you believe this verdict is incorrect, submit a dispute and we'll review it.

0
findings
—
highest severity
0
threat classes
5,479
files scanned
257/257
checks satisfied
0
package advisories

Why this verdict

  • benign: 257 checks satisfied, no findings for skill:plugins/openai-developers/skills/build-chatgpt-app

Security findings 0

No security findings

No suspicious or malicious behavior was found; 1 candidate finding was refuted on review.

Open questions 2

What the analysis could not settle from the code alone.

[file request plugins/openai-developers/skills/openai-docs/SKILL.md] build-chatgpt-app instructs the agent to invoke the $openai-docs skill first; does that skill's own content limit itself to fetching OpenAI developer documentation from official endpoints, or does it direct the agent to additional destinations, scripts, or actions beyond docs retrieval?
Agent hijacking
[file request plugins/openai-developers/skills/openai-docs/SKILL.md] build-chatgpt-app instructs the agent to invoke the $openai-docs skill first before generating code. Does that referenced skill limit itself to fetching OpenAI developer documentation from official endpoints, or does it direct the agent to additional destinations, scripts, or actions beyond docs retrieval?
Agent hijacking
Refuted findings 1

Candidates the review stage examined and rejected, kept for transparency.

Supply chain

highRefutedlow confidence

The reference documentation directs the agent to fetch and adapt example code from unpinned remote URLs (official OpenAI GitHub and docs endpoints) at runtime, so the code copied into user projects could change without a pinned revision.

https://github.com/openai/openai-apps-sdk-examples
Why it was refuted

The cited line is a labeled list of official OpenAI documentation/example sources ('### 1. Official OpenAI examples') used for the skill's declared docs-first workflow, and the exact URLs are themselves declared network-capability claims (D75-D77) in the same unit, so this is declared core behavior rather than an undeclared supply-chain instruction; the unpinned-revision concern is at most a contextual hardening note, not concealed or out-of-carve-out harm.

Coverage gaps 14

Parts of the artifact the static analysis could not fully examine.

context:unanalyzable_binary binary content is only byte-scanned
plugins/codex-security/mcp/helpers.mjs.br.part-000
context:unanalyzable_binary macho content is only byte-scanned
plugins/codex-security/mcp/native/darwin-arm64/unix.node
context:unanalyzable_binary macho content is only byte-scanned
plugins/codex-security/mcp/native/darwin-x64/unix.node
context:unanalyzable_binary elf content is only byte-scanned
plugins/codex-security/mcp/native/linux-arm64-gnu/unix.node
context:unanalyzable_binary elf content is only byte-scanned
plugins/codex-security/mcp/native/linux-arm64-musl/unix.node
context:unanalyzable_binary elf content is only byte-scanned
plugins/codex-security/mcp/native/linux-x64-gnu/unix.node
context:unanalyzable_binary elf content is only byte-scanned
plugins/codex-security/mcp/native/linux-x64-musl/unix.node
context:unanalyzable_binary pe content is only byte-scanned
plugins/codex-security/mcp/native/win32-arm64/windows.node
context:unanalyzable_binary pe content is only byte-scanned
plugins/codex-security/mcp/native/win32-x64/windows.node
context:unanalyzable_binary binary content is only byte-scanned
plugins/codex-security/mcp/server.mjs.br.part-000
context:unanalyzable_binary binary content is only byte-scanned
plugins/codex-security/mcp/server.mjs.br.part-001
context:oversize archive member exceeds 8388608 bytes; truncated, no text
plugins/shopify/skills/shopify-admin/assets/admin_2026-04.json.gz!/admin_2026-04.json
context:decoded_views_exceeded 452 derived view(s) beyond the per-file view cap: decoded:charcode, decoded:rot13, decoded:unicode-escape
plugins/creative-production/mcp/server.bundle.mjs
context:bytes_unavailable yara-x: no bytes to scan
plugins/shopify/skills/shopify-admin/assets/admin_2026-04.json.gz!/admin_2026-04.json