Lifestyle

Troubleshooting for beginners

Start by locating the failing layer. A missing executable suggests installation or PATH; a rejected account suggests authentication; missing files suggest location or permissions; an incorrect result may involve the request or project code. Change one condition at a time.

About 15 min read · Practice 20 min

Workflow illustration, not a product screenshot.
Image: Mokaair (© Mokaair)
On this page
  1. Goal and how to use this guide
  2. First: Record the symptom and last successful action
  3. Installation, login and platform surfaces
  4. Folders, MD files and configuration
  5. Reproducible drill: find the correct folder
  6. Tools, remote work and automation
  7. Close the incident and resume work

Goal and how to use this guide

The diagram maps 01 to recording symptoms, 02 to one minimal check and 03 to repeating the original action after correcting the cause. Do not retry immediately on every error: retain input, state and the working environment before narrowing the problem.

First: Record the symptom and last successful action

Record time, platform, app/CLI version, current folder, exact command/action, expected result and original error. Share relevant details with accounts, private paths and credentials redacted. Preserve installation output if a command is missing afterward, or task/host identity if another run is active. Do not crop an error to red text alone: the preceding command and working directory often determine the next step.

issue-notes.md template · markdown
# Troubleshooting record
- Time and timezone:
- Surface: desktop / CLI / IDE / mobile / web
- OS and app or CLI version:
- Working folder or execution host (redacted if shared):
- Exact command or UI action:
- Expected result:
- Actual error and exit status:
- Last successful action:
- One change attempted:
- Result after that change:
- Files or settings to restore:

Installation, login and platform surfaces

SymptomSmall first checkDetailed guide
codex not foundReopen the terminal and locate the executableCLI setup
PowerShell blocks a scriptRecord the blocked filename and invocationWindows CLI
Different macOS/Linux install pathsIdentify shell, PATH and executablemacOS, Linux/WSL
Unauthorized after loginRun codex login status in that terminalAccount/usage
Missing desktop/mobile controlRecord version, account, workspace and surfacePlatform selection

codex not found:

PowerShell blocks a script:

Different macOS/Linux install paths: ·

Unauthorized after login:

Missing desktop/mobile control:

Windows, WSL, containers and remote hosts need not share login/configuration even on one computer. Identify the failing environment.

Use Get-Command codex on Windows or command -v codex on macOS/Linux to locate the executable. Record multiple installations before deleting versions or changing machine-wide security policy. Distinguish ChatGPT authentication, API keys and organization restrictions; reinstalling does not replenish quota. For possible service incidents, compare the official status page with your timestamp and affected service. Overall service health does not prove your network and permissions work.

Folders, MD files and configuration

SymptomFirst checkIn-depth lesson
Edits do not appearFolder, served URL and file versionPaths, Browser
AGENTS.md seems ignoredFilename, hierarchy and task rootRule scopes
README treated as permanent rulesDistinguish instruction entry points and task dataDocument roles
config.toml parse failureLast edit, quotes, duplicate tables and active pathConfig troubleshooting
Resume repeats stale conclusionsInspect current files/revision, not just notesSessions, Handoff

Edits do not appear: ·

AGENTS.md seems ignored:

README treated as permanent rules:

config.toml parse failure:

Resume repeats stale conclusions: ·

Change one condition at a time. After recovery, keep necessary changes and remove your diagnostic markers rather than replacing the full config with an online template.

Reproducible drill: find the correct folder

Create a new path-trouble folder with empty project and other subfolders. Put marker.md only in project with the line below. Open a terminal in other and deliberately try reading marker.md to reproduce a missing file without Codex or production changes. Inspect the current directory and file list, read the marker through an explicit relative path, then cd into project and repeat the original read command.

project/marker.md · markdown
# Correct folder: PATH-PRACTICE-1
Windows: start in other · powershell
Get-Content -LiteralPath .\marker.md
Get-Location
Get-ChildItem
Get-Content -LiteralPath ..\project\marker.md
Set-Location -LiteralPath ..\project
Get-Content -LiteralPath .\marker.md
macOS / Linux: start in other · sh
cat ./marker.md
pwd
ls
cat ../project/marker.md
cd ../project
cat ./marker.md

The first read fails; the next two show the same PATH-PRACTICE-1. You corrected location, not file contents. Return to your original working folder afterward and retain the fixture without recursive deletion. In Codex, first ask for its working root and whether a specified file exists before deciding that the wrong project is open. Same-named desktop tasks, another worktree or old phone content are not proof of the same folder.

For Get-Content, a PowerShell cmdlet, save $? immediately; $LASTEXITCODE is primarily for native programs such as codex or node. After the path exercise you should be in project. The blocks below read missing other/marker.md, then the real marker. Expect False then True in PowerShell, or nonzero then 0 in the shell. Do not wait until other commands replace the status.

Windows PowerShell: currently in project · powershell
Get-Content -LiteralPath ..\other\marker.md
$practiceReadOk = $?
$practiceReadOk
Get-Content -LiteralPath .\marker.md
$practiceReadOk = $?
$practiceReadOk
macOS/Linux shell: currently in project · sh
cat ../other/marker.md
practice_read_exit=$?
printf '%s\n' "$practice_read_exit"
cat ./marker.md
practice_read_exit=$?
printf '%s\n' "$practice_read_exit"

See PowerShell's automatic variables for exact definitions. Neither read changes the marker. Investigate unexpected edits separately, so the handoff distinguishes corrected paths from preserved file contents.

Tools, remote work and automation

SymptomLayer to inspectIn-depth lesson
Skill visible but behaves wronglySelection, instructions and resourcesSkill acceptance
Installed plugin cannot read dataSurface support, enablement, account and source permissionPlugin troubleshooting
MCP configured but tools unavailableProcess/URL, handshake, tool list and authorizationMCP troubleshooting
Phone shows stale dataHost, task, file marker and HandoffRemote setup, Cross-device
Agent reports done but results conflictOwnership and reproducible evidenceAgent quality, Integration
Schedule times out or duplicatesSaved configuration versus active runAutomation recovery
JSON answer despite failed processExit status, events and final dataJSON/JSONL

Skill visible but behaves wrongly:

Installed plugin cannot read data:

MCP configured but tools unavailable:

Phone shows stale data: ·

Agent reports done but results conflict: ·

Schedule times out or duplicates:

JSON answer despite failed process:

Address the relevant layer: plugin installation and source-account access are distinct states.

Close the incident and resume work

Repeat the originally failing action after fixing it, then test a nearby behavior: check Active after fixing Completed, preserve earlier working configuration after a config edit, or actually read a fictional document after reconnecting MCP rather than trusting a green icon. Record symptom, cause, one correction and verification in issue-notes.md. For handoff, provide minimal input and attempted steps. If unresolved, say so and preserve a usable state plus the next evidence to collect.

Remove your temporary markers/settings while keeping the necessary fix, backups and records. Troubleshooting is not a reason to clear all configuration, delete sessions or expose sensitive content. You do not need to execute this index from top to bottom: choose the row matching your symptom. Return to the from the top/bottom of any lesson and search a feature, command or MD filename. Record unavailable platform features separately from installation failures.

12. Troubleshooting for beginners — Workflow illustration, not a product screenshot. Symptom → One check → Retry
12. Troubleshooting for beginners — Workflow illustration, not a product screenshot. Symptom → One check → Retry · Image: Mokaair (© Mokaair)
Read the full description

Symptom to One check to Retry

Back to directory

  • Lifestyle

    Codex learning hub: tutorial directory

    A planned 60-lesson, ten-unit Codex curriculum, from setup and your first task to MD instructions and advanced integrations. Find your next lesson by experience, platform, goal or command; unpublished entries show their status.

  • Lifestyle

    Worktrees and isolated tasks

    A Git worktree gives one repository multiple working directories on different branches. It isolates file edits, but databases, ports and external services may still be shared. File isolation is not full resource isolation.

  • Lifestyle

    Workshop: build a small website

    Plan and build the Small Steps task website from brief.md, with adding, completing, deleting, filtering and local persistence. Separate HTML, CSS, data functions, UI events and tests, verify with Node and browser checks, and document restart and recovery steps.

  • Lifestyle

    Usage and efficiency: reducing rework

    Record task conditions, model options, time and outcomes to reduce unnecessary retries and excess context.

Latest travel guides

Sources

Lifestyle