Skip to main content

Codex for Legal Workflow Software

Specify a small software change, test it with synthetic records, and review the files before adopting it in a legal workflow.

What changed since this was written
  1. Check file restrictions after updating Codex or Claude Code

    Codex CLI 0.156.0 fixes defects in its access restrictions. Claude Code 2.1.280 fixes permission checks for writes through symbolic links: a link inside the project can point to a file outside it.

    Recommended action: If you rely on folder restrictions, ask the maintainer to install an approved release containing these fixes. With invented files, test an allowed edit and a blocked edit outside the permitted folder, including through a symbolic link. Check the actual file contents and tool result. If the outside file changes, stop using that setup for matter work until the control is repaired and retested.

    Sources: Codex CLI 0.156.0, Claude Code 2.1.280

  2. GPT-5.5: review saved tasks before 14 October

    OpenAI announced that GPT-5.5 will retire from ChatGPT, ChatGPT Work and Codex on 14 October 2026. The announcement does not retire the model from the OpenAI API.

    Recommended action: If your team uses GPT-5.5, ask the workspace administrator to check saved model choices and scheduled tasks before that date. For Codex signed in through ChatGPT, OpenAI recommends GPT-5.6 Sol. Confirm that affected staff can use it, then rerun a familiar task with synthetic records and inspect the result before relying on the replacement.

    Sources: OpenAI changelog, Codex models, Workspace model availability

  3. GitHub: control who can change reused files

    GitHub added a setting for files saved between automated runs, called caches. Allowing changes to these files can override existing protections.

    Recommended action: This concerns teams that use GitHub to run automated work. Ask the person maintaining those workflows to check who can replace the saved files that later runs reuse. A workflow should not gain that permission merely because someone copied a setting from another project.

    Sources: GitHub Actions

  4. Some applications may lose their connection to Codex

    Codex removed the connection commands codex mcp-server and codex-mcp-server. This does not remove Codex’s separate ability to connect to external tools.

    Recommended action: If another application uses Codex through either of these removed commands, ask its maintainer whether the connection still works. Pause the affected work until it is checked. The experimental app-server is not a supported production replacement.

    Sources: ChatGPT / Codex

  5. Custom AI tools need testing before switching to Astra

    Astra requires a different setup for some developer-built tools. Changing the model name alone may leave an existing application unable to complete its work.

    Recommended action: If your firm has a custom AI tool, ask its developer to check compatibility before switching it to Astra. Try a made-up task with missing information and one where a connected tool fails. Check that the result clearly reports the problem rather than presenting unfinished work as complete.

    Sources: OpenAI API, GPT-6 Astra

  6. Older AI assistants and transcription tools need replacement

    OpenAI closed the Assistants API on 26 August. It also announced that whisper-1 and GPT-4o transcription models would close on 26 February 2027.

    Recommended action: Ask the person maintaining your custom AI tools whether any still depend on the retired Assistants API or the transcription models listed above. Old conversation history can no longer be retrieved from that API; only previously saved messages are available for migration. Before accepting a replacement transcription tool, compare its text with a made-up recording and check names, dates and who said what.

    Sources: OpenAI API, Responses / Conversations

  7. Codex moved into the ChatGPT desktop app

    The July announcement brought Codex into ChatGPT on macOS and Windows, with existing projects, settings and workflows retained after the update.

    Recommended action: When following a Codex lesson, open the Codex section of the desktop app and select the right project. Before opening client files, check the signed-in account, the folder you are working in and which tools have access. Moving into the same app does not extend your organization’s permission to use other features.

    Sources: ChatGPT / Codex

  8. Remote Codex work and saved Claude answers need separate checks

    Codex Remote launched on 25 June. Separately, Claude Code 2.1.193 added logging of answers that could follow an existing prompt-logging setting.

    Recommended action: Confirm which computer will run remote work. Ask your administrator whether Claude’s answers are now saved in logs, and check a made-up example against your retention policy.

    Sources: OpenAI Codex changelog, Claude Code changelog, Claude Code Action 2.1.193 bump commit, Claude Code 2.1.193

  9. Recording tasks and approving actions are separate decisions

    Record & Replay launched on macOS excluding the EEA, UK and Switzerland initially. Separately, Claude Code 2.1.183 fixed notifications incorrectly approving actions awaiting a person’s decision.

    Recommended action: Check today’s recording availability before trying a made-up task. If you use Claude automations, ask the maintainer to show that a notification cannot approve an action for you.

    Sources: OpenAI Codex changelog, OpenAI Codex Record & Replay documentation, Claude Code changelog, Claude Code Action 2.1.181 bump commit, Claude Code Action 2.1.183 bump commit, Claude Code 2.1.183

  10. An interrupted Claude answer may still be incomplete

    Claude Code 2.1.179 kept partial answers after a lost connection. A separate Codex expansion covered the EEA, UK and Switzerland, with Memories initially off there.

    Recommended action: Before using a recovered draft, compare the documents and questions it covered with your original request. Check current regional availability and your organization’s memory settings separately.

    Sources: OpenAI Codex changelog, Claude Code changelog, Claude Code Action 2.1.179 bump commit, Claude Code 2.1.179

  11. Claude’s delegated tasks need their own permission checks

    Version 2.1.178 fixed ignored restrictions on tools used by delegated tasks and added more specific permission rules.

    Recommended action: Ask your administrator to test one permitted and one forbidden action in a made-up project, including a delegated task. Confirm both follow the intended limits.

    Sources: OpenAI Codex changelog, Claude Code changelog, Claude Code Action 2.1.178 bump commit, Claude Code 2.1.178

  12. Codex browser testing can expose more than the visible page

    The June update added browser debugging tools and fixed scheduled tasks to follow their selected approval settings.

    Recommended action: Use a page without client material when testing browser access. For scheduled work, ask the maintainer to demonstrate that actions needing approval actually pause for a decision.

    Sources: OpenAI Codex changelog, Claude Code Action auth fallback commit, Claude Code Action SDK iterator commit, Claude Code Action 2.1.175 bump commit

  13. Publishing a Codex site and estimating running costs need care

    Codex Sites entered preview in June. Separately, eligible API computing sessions moved to per-minute billing with a five-minute minimum.

    Recommended action: Review every page before publishing, including who can access it. For a custom AI tool, ask the developer for costs based on actual running time and current rates.

    Sources: OpenAI Codex changelog, OpenAI API changelog, Claude Code Action workload identity federation commit

  14. Connecting Codex to internal sources still needs approval

    OpenAI introduced a private connection service for enterprise tools. Codex 0.132.0 also added controls over the format of results when command-line work resumes.

    Recommended action: Before connecting an internal source, agree which records and actions are allowed with your administrator. Check a resumed test result contains the required fields; private access alone is not authorization.

    Sources: OpenAI Codex changelog, OpenAI API changelog, OpenAI Secure MCP Tunnel guide, Codex 0.132.0

  15. Resuming Claude work requires checking what it can access

    Version 2.1.144 made background tasks available to resume and fixed connected tools missing from longer tool lists.

    Recommended action: Before continuing a paused task, confirm its source files and unfinished work. Ask the maintainer whether all expected tools are visible; a missing tool can leave part of the task undone.

    Sources: OpenAI Codex changelog, Claude Code changelog, Claude Code 2.1.144

  16. Background tasks may edit your main files

    Claude Code 2.1.143 added an option for background tasks to edit the main working copy and improved retention of task settings.

    Recommended action: Before leaving a task running, confirm which copy it may change. Ask the maintainer to check that its access limits remain in place when it resumes.

    Sources: OpenAI Codex changelog, Claude Code release notes, Claude Code 2.1.143

  17. Permission to run an action is not approval of the result

    The May guidance clarified that Codex Auto-review assesses certain permission requests. It does not establish legal accuracy or approve publication.

    Recommended action: Check the completed work yourself: read changed passages and verify their sources. Keep permission to perform a task separate from the decision to use or publish its result.

    Sources: Codex changelog, Codex Auto-review, Codex agent improvement loop cookbook, Codex iterative repair loop cookbook

Use Codex to build or maintain a defined part of a legal workflow: an intake form, a document-processing rule or an internal reporting tool. This reference helps a lawyer and a technical maintainer agree on a change and assess the resulting files and tests. It does not teach deployment or replace the lawyer’s decision about the underlying legal rule.

Start with a small change whose expected behaviour you can state before work begins. Examples include preserving unknown dates in an intake form, validating a matter identifier, or testing a supplied document rule. A request to build a complete contract-review system needs a separate specification, evaluation and maintenance plan.

Codex can inspect files, edit code and run available commands in a local project. Installation and sign-in instructions are in the official CLI guide. Confirm your organization’s approved account, environment and data use before providing material.

Before reusing a saved task, have the maintainer check its selected model and your account’s access. For Codex with ChatGPT sign-in, replace gpt-5.5 with gpt-5.6-sol in saved settings, custom agents, scheduled tasks and scripts before 14 October 2026. This retirement does not apply to the OpenAI API. Rerun the synthetic cases below with the replacement; if access fails or the results differ from the expected statuses, resolve that before adopting the change. OpenAI

Prepare the project and reviewers

You need a working copy of the project, its existing instructions and tests, an approved requirement, synthetic test records, and a technical maintainer who can inspect the implementation. A repository records files and their changes. A diff shows what changed; a pull request proposes those changes for review.

  1. Identify the existing rule and test files with the maintainer. Record allowed edits and any unrelated changes already present.
  2. Preserve a recoverable starting version through the project’s normal version-control process. Keep credentials and client material out of the exercise.
  3. Use the existing test command. If dependencies or access are missing, resolve that with the maintainer; an unrun test is not a pass.

Set the task boundary

In an approved local setup, open the project directory and start Codex as described in the CLI guide. Ask it first to identify the relevant implementation, instructions and tests. Replace the placeholders in the brief below with the actual paths and command before authorizing edits.

A prompt describes permitted work; it is not an access-control mechanism. Check the actual sandbox and permissions. Tool approval is permission to perform an action, not approval of a legal conclusion.

A symbolic link inside the project can point to a file outside it. If you rely on folder restrictions, ask the maintainer to install a current approved release. With invented files, test an allowed edit and a blocked edit outside the permitted folder, including through a symbolic link. Check the actual file contents and tool result. If the outside file changes, stop using that setup for matter work until the control is repaired and retested. Codex CLI · Claude Code

Copy the implementation brief

Task: implement the synthetic triage rule described below in this project.
Allowed implementation and test files: [confirmed paths].
Existing test command: [confirmed command].
Read the project instructions and report any conflict or missing dependency.

For a readable record, check whether clause_text contains the exact phrase
"liability cap", ignoring letter case. If present return has_reference;
otherwise return needs_review. If readable is false or clause_text is empty,
return unreadable. Preserve the record ID. This is a text check, not a legal
assessment or proof that the full agreement contains or lacks a valid cap.

Use the existing schema and test tools. Test every supplied case below.
Do not alter unrelated rules, credentials, access policies or original data.
Do not weaken a failing test to make the implementation pass.
Do not send, publish or deploy anything.
Return changed paths, the actual check command and result, and remaining
limitations. If a check cannot run, say why; do not report it as passed.

Test a synthetic rule

These invented records and expected outputs define this exercise only. Supply them with the brief; they are not a recommended legal review rule.

IDreadableclause_textExpected status
T1trueSee liability cap in section 8.has_reference
T2trueSupplier indemnifies Buyer.needs_review
T3falseSee liability cap in section 8.unreadable
T4trueemptyunreadable

Also test T1 with uppercase letters. The maintainer should confirm that an empty value means an empty string in the actual schema, not the literal word “empty.”

Illustrative mistake: the draft returns has_reference for T3 because the phrase matches, despite readable being false. Reviewer correction: require the unreadable check before phrase matching, retain T3’s ID, and rerun T1–T4 and the existing tests. A response saying “tests passed” without the command and result is insufficient. This example was not executed here.

Inspect the result

Read the complete diff and open the changed files. Confirm that only authorized code and tests changed, the statuses match the table, and no unrelated policy or fixture was altered. A fixture is a sample used by a test; changing its expected result can conceal an implementation defect.

The maintainer checks the actual test results and integration behaviour. The lawyer checks the approved requirement and reader-facing wording. A successful text match proves neither an effective liability cap nor acceptable indemnity terms. Inspect the full agreement and its definitions before drawing either conclusion.

Stop if the implementation files or required specification cannot be read, a required check did not run, unexplained changes remain, or the rule’s legal purpose is disputed. Record the unresolved item and its owner. Adopt the change only through the project’s existing review and release process.

Keep access proportional to the task

Use a reviewable working copy and the project’s existing credential checks. Do not broaden filesystem or network access simply to remove an error. Determine which file, dependency or service is needed and approve only the appropriate scope. Screenshots and automated tool approvals do not establish code correctness, confidentiality compliance or legal sign-off.

Choose the execution environment

Local execution means commands operate in a local environment; it does not, by itself, establish that all task data stays on the machine. Have the responsible administrator verify the selected account’s data handling, repository access and any connected services. Use a cloud environment only when that setup is approved for the material. Consult the official permissions guide for the actual configuration.

If using the desktop app, confirm the Codex view, account and project before opening files.

For an API integration, ask the maintainer to check the endpoint, model parameters and tool loop against current documentation: Astra tool use requires Responses, and retired Assistants calls need migration. Search scripts for the removed codex mcp-server and codex-mcp-server; do not replace them with the experimental app-server in production without a supported design. Test missing input and tool failure, not just a successful response.

For GitHub Actions, inspect cache permissions before granting write access to less-trusted jobs. OpenAI API · Codex · GitHub

Continue with the workflow specification

Design a legal review workflow helps specify inputs, approvals and failure handling before implementation. The exercise above tests a small software behaviour; it does not implement that whole process.

Next steps