Skip to main content
Independent training resource — Not an official FAA or U.S. government website.
Flight Desk

Tools

Study CLI

Local command-line study, exam, review, history, and compliance workflows.

The CLI uses original learning questions in data/questions.json. It does not contain or claim to reproduce FAA examination questions.

Requirements and installation

  • Node.js 20 or later
  • npm
npm install
npm run check

The project is verified with Node.js 24.19.0. Use the declared Node 20+ engine; run npm run check after installation to verify the local runtime.

Commands

# Interactive study; immediate explanations
npm run dev:cli -- study --count 10 --area II --seed airspace-1

# Topic filter
npm run dev:cli -- study --topic METAR --count 5

# Deterministic non-interactive session
npm run dev:cli -- study --count 4 --seed demo --answers A,C,S,B --no-save

# Exam mode with explanations held until the end
npm run dev:cli -- exam --count 60 --seed mock-a

# Fixed, release-reviewed 60-question form
npm run dev:cli -- exam --form A --seed attempt-1

# Revisit questions most recently answered incorrectly
npm run dev:cli -- study --remediate --count 10

# Review questions due on the 1/3/7/14/30-day schedule
npm run dev:cli -- study --due --today 2026-08-23 --count 10

# Summarize history
npm run dev:cli -- stats

# Validate the question dataset
npm run dev:cli -- validate
npm run dev:cli -- validate --release

# Audit compliance ownership and due dates (exit 3 for overdue/missing)
npm run dev:cli -- compliance --today 2026-08-23

# Machine-readable audit
npm run dev:cli -- compliance --calendar records/compliance.csv --json

The default history file is .part107/history.json. Override it with --history <path>. Do not commit personally identifiable learner history.

Canonical question fields

Each record includes stable ID, ACS code/Area/Task, topic, difficulty, critical flag, prompt, exactly four answer choices, correct index, explanation, remediation instruction, authoritative citations, and an original: true attestation. Choice order is shuffled reproducibly from the session seed and question ID.

Current implementation status

The engine, commands, history/remediation logic, seedable randomization, compliance audit, 156-question dataset, fixed mock forms, validation, and tests are implemented. All generated distractors have question-specific reviewed overrides and an approved release state. Normal validation checks schema and integrity; validate --release additionally rejects any future unapproved generated question. The PowerShell mock validator provides the same gate when PART107_RELEASE_VALIDATE=1.