Skip to content

Verify your machine

Complete installation first. Use an allowed folder with no private test data.

Start the guided check:

Terminal window
itera-learning verify start claude-code

The command prints one synthetic prompt. Paste it into a new Claude Code or Claude Desktop Code session. Wait for the response and close that session.

Then run:

Terminal window
itera-learning verify finish

Require MACHINE_CAPTURE_OK.

Terminal window
itera-learning verify start codex

Paste the printed prompt into a new Codex session. Wait for the response and close that session.

Terminal window
itera-learning verify finish

Require MACHINE_CAPTURE_OK.

verify finish prints network progress immediately and every 10 seconds. Network retries can take up to 60 seconds.

The finish command checks all of these controls:

  • One unique session contains the synthetic marker.
  • The session has turn-end and SessionEnd.
  • The shipped episode uses schema version 2 and agent 0.4.4.
  • The final agent output is present.
  • The engine acknowledged the full batch.

The command checks captured text in memory without printing it. It skips and counts permanent invalid historical NDJSON lines. Those lines cannot block a fresh positive result.

Agent 0.4.1 can produce invalid JSON when redaction reaches an escaped quote. Version 0.4.2 and later prevent new occurrences.

Close Claude Code and Codex. Then run:

Terminal window
itera-learning repair-spool

The command keeps exact originals and invalid lines in a private quarantine. It preserves shipped episode IDs and keeps all valid spool lines active.

Terminal window
itera-learning monitor

Open http://127.0.0.1:5173 in a new browser tab. Check these items:

  1. The Activity page is visible and the browser console has no uncaught error.
  2. The fresh test has a shipped row with its timestamp and batch count.
  3. The Consent tab agrees with itera-learning consent list.
  4. The Ship journal uses 50-row pages.
  5. Network requests stay on the loopback origin.

An HTTP 200, a page title, or an empty page does not prove a working render.

Run the agent and monitor on the host that runs the coding CLI. Keep the monitor bound to 127.0.0.1. Forward that loopback port from your laptop:

Terminal window
ssh -N -L 127.0.0.1:5173:127.0.0.1:5173 user@host

Then open http://127.0.0.1:5173 on the laptop. The page reads the remote host’s state.

SymptomAction
itera-learning is missingReopen the terminal and check the npm global binary directory.
update is unknown on 0.4.1Run the one-time command on the update page.
Missing SessionEndRun itera-learning update, then start a new verification session.
Codex has no captureRun itera-learning install codex. Start Codex, review /hooks, and trust the three Itera hooks.
Invalid consent ledgerRun itera-learning consent verify, then repair the reported syntax or access problem.
Invalid historical spool linesRun itera-learning repair-spool while capture clients are closed.
Expired DFL sessionRun dfl-auth login, then repeat verify finish.
Port 5173 is occupiedRun itera-learning monitor --port 5194.

Record the operating system, coding client version, source, protocol episode ID, and the complete MACHINE_CAPTURE_OK line. One operating-system result does not certify another operating system.

Return to installation or consent and privacy.