Legacy mode is the explicit v0.4-style workflow. It remains fully supported.

Use it when you want:

  • checked-in prompts.txt
  • checked-in commit-messages.txt
  • checked-in runner_config.exs
  • per-prompt provider overrides via prompt_overrides
  • exact control over progress and log file paths

Required Files

  • runner_config.exs
  • prompts.txt
  • commit-messages.txt
  • prompt markdown files

Example

runner_config.exs

%{
  project_dir: "/path/to/repo",
  prompts_file: "prompts.txt",
  commit_messages_file: "commit-messages.txt",
  progress_file: ".progress",
  log_dir: "logs",
  model: "haiku",
  llm: %{provider: "claude"}
}

prompts.txt

01|1|3|Create hello file|001-hello.md
02|1|5|Add tests|002-tests.md

commit-messages.txt

=== COMMIT 01 ===
feat: create hello file

=== COMMIT 02 ===
test: add coverage for hello flow

Commands

mix run run_prompts.exs --config runner_config.exs --list
mix run run_prompts.exs --config runner_config.exs --validate
mix run run_prompts.exs --config runner_config.exs --run 01
mix run run_prompts.exs --config runner_config.exs --run --all
mix run run_prompts.exs --config runner_config.exs --run --continue

Scaffold From Convention Mode

If you start with convention prompts but later want explicit files:

mix prompt_runner scaffold ./prompts --output ./generated --target /repo

The generated output is immediately usable in legacy mode.