Skip to main content
Glama

codex

Analyze code for issues, edge cases, and bugs. Perform critical code reviews and architectural assessments to identify problems and improve software quality.

Instructions

Run OpenAI Codex CLI agent (deep analysis / critical review).

NO SHARED MEMORY:

  • Cannot see messages/outputs from gemini/claude/opencode.

  • Only sees: (1) this prompt, (2) files in context_paths, (3) its own history via continuation_id.

CROSS-AGENT HANDOFF:

  • Small data: paste into prompt.

  • Large data: save_file -> context_paths -> prompt says "Read ".

CAPABILITIES:

  • Strongest deep analysis and reflection abilities

  • Excellent at finding issues, edge cases, and potential bugs

  • Good at critical code review and architectural assessment

BEST PRACTICES:

  • Be explicit about scope: "Only fix X, don't refactor Y"

  • Specify constraints: "Keep it simple, no new abstractions"

Supports: image attachments.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
promptYesDetailed instructions for the agent. IMPORTANT: If 'continuation_id' is NOT set, you MUST include ALL context (background, file contents, errors, constraints), as the agent has no memory. If 'continuation_id' IS set, you may be brief and reference previous context.
workspaceYesProject root directory. Boundary for 'workspace-write'. Use absolute paths or relative paths.
continuation_idNoResume session WITHIN THIS TOOL ONLY. Use only the <continuation_id> returned by this same tool. IDs are agent-specific: codex ID won't work with gemini/claude/opencode. Switching agents does NOT sync info; pass updates via prompt or context_paths.
permissionNoSecurity level: 'read-only' (analyze files), 'workspace-write' (modify inside workspace), 'unlimited' (full system access). Default: 'read-only'.read-only
modelNoOptional model override (e.g., 'gemini-2.5-pro'). Use only if specifically requested.
save_fileNoPREFERRED when agent needs to write files or produce lengthy output. Output is written directly to this path, avoiding context overflow. This write is permitted even in read-only mode (server-handled). Essential for: code generation, detailed reports, documentation.
save_file_with_wrapperNoWhen true AND save_file is set, wrap output in <agent-output> XML tags with metadata (agent name, continuation_id). For multi-agent assembly.
save_file_with_append_modeNoWhen true AND save_file is set, append instead of overwrite. For multi-agent collaboration on same document.
report_modeNoGenerate a standalone, document-style report (no chat filler) suitable for sharing.
context_pathsNoList of relevant files/dirs to preload as context hints.
imageNoAbsolute paths to image files for visual context. Use for: UI screenshots, error dialogs, design mockups. Example: ['/path/to/screenshot.png']
task_noteNoREQUIRED user-facing label. Summarize action in < 60 chars (e.g., '[Fix] Auth logic' or '[Read] config.py'). Shown in GUI progress bar to inform user.
debugNoEnable execution stats (tokens, duration) for this call.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed15 schema fields changedv1.0.0
    • addedInput schema / properties / context_paths
      Added value: +{
      +  "default": [],
      +  "description": "List of relevant files/dirs to preload as context hints.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / continuation_id
      Added value: +{
      +  "default": "",
      +  "description": "Resume session WITHIN THIS TOOL ONLY. Use only the <continuation_id> returned by this same tool. IDs are agent-specific: codex ID won't work with gemini/claude/opencode. Switching agents does NOT sync info; pass updates via prompt or context_paths.",
      +  "type": "string"
      +}
    • changedInput schema / properties / debug / description
      Previous value: -"Override global debug setting for this call. When true, response includes execution stats (model, duration, tokens). When omitted, uses global CAM_DEBUG setting."New value: +"Enable execution stats (tokens, duration) for this call."
    • removedInput schema / properties / full_output
      Removed value: -{
      -  "default": false,
      -  "description": "Return detailed output including reasoning and tool calls. Recommended for Gemini research/analysis tasks. Default: false (concise output)",
      -  "type": "boolean"
      -}
    • changedInput schema / properties / model / description
      Previous value: -"Model override. Only specify if user explicitly requests a specific model."New value: +"Optional model override (e.g., 'gemini-2.5-pro'). Use only if specifically requested."
    • changedInput schema / properties / permission / description
      Previous value: -"File system permission level:\n- 'read-only': Can only read files, safe for analysis tasks\n- 'workspace-write': Can modify files within workspace only (recommended for most tasks)\n- 'unlimited': (DANGER) Full system access, use only when explicitly needed"New value: +"Security level: 'read-only' (analyze files), 'workspace-write' (modify inside workspace), 'unlimited' (full system access). Default: 'read-only'."
    • changedInput schema / properties / prompt / description
      Previous value: -"Detailed task instruction for the agent. Include specific file paths, function names, or error messages when available. Be explicit about scope and constraints to avoid over-engineering. Example: 'Fix the TypeError in utils.py:42, only modify that function'"New value: +"Detailed instructions for the agent. IMPORTANT: If 'continuation_id' is NOT set, you MUST include ALL context (background, file contents, errors, constraints), as the agent has no memory. If 'continuation_id' IS set, you may be brief and reference previous context."
    • addedInput schema / properties / report_mode
      Added value: +{
      +  "default": false,
      +  "description": "Generate a standalone, document-style report (no chat filler) suitable for sharing.",
      +  "type": "boolean"
      +}
    • changedInput schema / properties / save_file / description
      Previous value: -"Save agent output to a file at the specified path. The file will contain the agent's response without debug info. This saves the orchestrator from having to write files separately. Example: '/path/to/output.md'\n\nNOTE: This is intentionally exempt from permission restrictions. It serves as a convenience for persisting analysis results, not as a general file-write capability. The CLI agent's actual file operations are still governed by the 'permission' parameter."New value: +"PREFERRED when agent needs to write files or produce lengthy output. Output is written directly to this path, avoiding context overflow. This write is permitted even in read-only mode (server-handled). Essential for: code generation, detailed reports, documentation."
    • addedInput schema / properties / save_file_with_append_mode
      Added value: +{
      +  "default": false,
      +  "description": "When true AND save_file is set, append instead of overwrite. For multi-agent collaboration on same document.",
      +  "type": "boolean"
      +}
    • removedInput schema / properties / save_file_with_prompt
      Removed value: -{
      -  "default": false,
      -  "description": "When true AND save_file is set, injects a note into the prompt asking the model to verbalize its analysis and insights. The model's detailed reasoning will be automatically saved to the file. Useful for generating comprehensive analysis reports.",
      -  "type": "boolean"
      -}
    • addedInput schema / properties / save_file_with_wrapper
      Added value: +{
      +  "default": false,
      +  "description": "When true AND save_file is set, wrap output in <agent-output> XML tags with metadata (agent name, continuation_id). For multi-agent assembly.",
      +  "type": "boolean"
      +}
    • removedInput schema / properties / session_id
      Removed value: -{
      -  "default": "",
      -  "description": "Session ID to continue a previous conversation. Reuse the ID from prior tool calls to maintain context. Leave empty for new conversations.",
      -  "type": "string"
      -}
    • changedInput schema / properties / task_note / description
      Previous value: -"Display label for GUI, e.g., '[Review] PR #123'"New value: +"REQUIRED user-facing label. Summarize action in < 60 chars (e.g., '[Fix] Auth logic' or '[Read] config.py'). Shown in GUI progress bar to inform user."
    • changedInput schema / properties / workspace / description
      Previous value: -"Absolute path to the project directory. Use the path mentioned in conversation, or the current project root. Supports relative paths (resolved against server CWD). Example: '/Users/dev/my-project' or './src'"New value: +"Project root directory. Boundary for 'workspace-write'. Use absolute paths or relative paths."
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure and does so comprehensively. It explains memory limitations ('NO SHARED MEMORY'), cross-agent handoff procedures, capabilities, best practices, and even notes 'Supports: image attachments.' This provides rich behavioral context beyond what any structured annotations would typically cover.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections (NO SHARED MEMORY, CROSS-AGENT HANDOFF, CAPABILITIES, BEST PRACTICES) and uses bullet points for readability. While comprehensive, it could be slightly more concise as some information (like cross-agent handoff details) might be inferred from the tool's purpose. Every sentence earns its place by providing essential operational context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of this tool (13 parameters, no annotations, no output schema), the description provides complete contextual information. It explains the agent's capabilities, limitations, memory behavior, cross-agent workflows, and best practices. This fully compensates for the lack of annotations and output schema, making the tool's behavior and appropriate usage clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 13 parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema. However, it does provide important context about how parameters like 'prompt' and 'continuation_id' interact with the agent's memory limitations, which adds some semantic value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Run OpenAI Codex CLI agent (deep analysis / critical review).' It specifies the exact action ('Run') and resource ('OpenAI Codex CLI agent'), and distinguishes it from siblings by highlighting its unique capabilities ('Strongest deep analysis and reflection abilities', 'Excellent at finding issues, edge cases, and potential bugs', 'Good at critical code review and architectural assessment').

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool vs alternatives. It states 'NO SHARED MEMORY' and clarifies what the agent can see, specifies 'CROSS-AGENT HANDOFF' procedures for small vs large data, lists 'CAPABILITIES' that make it suitable for specific tasks, and gives 'BEST PRACTICES' for effective use. It also distinguishes from siblings by noting it 'Cannot see messages/outputs from gemini/claude/opencode'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/shiharuharu/cli-agent-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server