This is the repo-level entrypoint for Codex or Claude Code.
The repository root is not a runnable lab. Use the root AGENTS.md or CLAUDE.md for repo maintenance, and use a lab directory when you want to operate the runtime itself.
Use the flagship example.
python -m venv .venv
source .venv/bin/activate
pip install -e '.[nlp-sentiment]'
labrat doctor --lab-dir examples/nlp-sentiment/research_lab
labrat bootstrap --lab-dir examples/nlp-sentiment/research_lab
python -m http.server 8787 --directory examples/nlp-sentiment/research_lab
labrat status --lab-dir examples/nlp-sentiment/research_lab
labrat next-prompt --lab-dir examples/nlp-sentiment/research_lab --runner claude --phase autoCodex uses the same flow with --runner codex.
Use this when the user arrives with a concrete research workload that matches an existing profile.
labrat new my_search --profile=transformer-arch
cd my_search
python -m pip install -r requirements.txt
python scripts/operator_helper.py doctor
python scripts/operator_helper.py check-readiness
python scripts/bootstrap.py
python scripts/operator_helper.py next-prompt --runner claude --phase autoProfiles ship with filled Phase 0 files, a working run_experiment.py, AGENTS.md, CLAUDE.md, .claude/commands/, and agent_prompts/. transformer-arch is the first profile. See docs/PROFILES.md for the full list and contract.
Use this when no profile fits and the user wants a new runtime-backed research program.
- scaffold a new lab with
labrat new - finish Phase 0:
branches.yamldead_ends.mdresearch_brief.mdresearch_sources.mdevaluation.yamlruntime.yaml
- confirm readiness
- bootstrap the runtime
- supervise the worker pool through the helper prompts
labrat new my_lab
cd my_lab
python scripts/operator_helper.py next-prompt --runner claude --phase design
python scripts/operator_helper.py check-readiness
python scripts/bootstrap.py
python scripts/operator_helper.py next-prompt --runner claude --phase autoUse --runner codex if you are operating from Codex instead of Claude Code.
Every generated lab carries the operator instructions in version control:
AGENTS.mdfor Codex.agents/skills/labrat-operator/SKILL.mdfor Codex's optional repeatable workflowCLAUDE.mdand.claude/commands/for Claude Codeagent_prompts/for the shared phase prompts
There is no hidden skill file. The goal is that a new user can open the lab in either interface and start from the files already present in the lab root.
For current frontier-model operating guidance, see docs/MODEL_GUIDANCE.md.
- The runtime is async and steady-state.
evaluator.pyis authoritative for scores.search_evalandselection_evalare separate by default.prediction_testsdefine decisive held-out challenges that are not the same as the local hill-climb metric.- Cheap probes and audits come before frame break.
- The static dashboard is the canonical UI.
If you want the shortest explanation of where this repo is coming from:
- karpathy/autoresearch for the compact autonomous experiment loop
- AIRA_2 for population-level search and evaluation discipline
- Toward Autonomous Long-Horizon Engineering for ML Research for artifact-mediated coordination and workspace continuity