method run runs a local .method file, or a saved Method by ID (method run wf_… --version v_…). Signed in, a run of a local file starts at once and saves in the background: the version of the file’s content and the run’s records go to the dashboard through the outbox (~/.cache/method/outbox). Not signed in, the records stay in .method-runs/.
Where settings come from
Computer settings are in
~/.config/method/computer.json (private). Nothing from them goes into the Method file. Run method config to see them.
Models
A step withoutmodel runs on your own Claude Code or Codex subscription: the one that started the run, else the one that is installed and signed in (Claude Code when both are). It uses the account’s default hosted model only when neither is signed in. If the agent stops at a usage limit, the step fails; run again later and the finished steps are reused. Each step’s run record names the backend and model that ran it. A step can name a model ID (openai/gpt-6-luna) or a name from models:. A models: entry {agent: codex} or {agent: claude} runs its steps with that local agent, which must be installed. A step that names a model keeps it: no flag or computer setting overrides the Method’s models. Hosted model requests are private: they go only to providers that do not train on them and keep no copy. method models lists the models that meet this rule.
A hosted model request has no time limit of its own, because a model can take minutes to answer. The step’s and the run’s limits still apply. When the connection to Method is lost, a read request is tried again (three attempts in all). Other requests stop with an error that names the server.
Reuse of unchanged steps
A new run reuses each step whose definition, inputs, and files match an earlier accepted run on this computer.--rerun STEP runs one step again. --fresh runs every step.
Failure and resume
A failed run prints three lines on stderr:Failed: with the headline, Whose problem: (the Method’s code, the agent’s work, a service outside Method, a limit, your setup, or Method itself), and Next: with the next step. The JSON on stdout has the same record in failure: owner, code, headline, step, step_name, iteration (0-based; the run page counts tasks from 1), failed_iterations, total, phase, check_name, next (action, text, and sometimes command), evidence, details, and, when a process failed, diagnostics (its last log lines, which may not be the cause). A run that waits for an answer has status needs_input. Check evidence is a list of text.
The run page shows the run’s status as Running, Waiting for you, Completed, Completed (not confirmed), Failed, or Connection lost. A failed run shows its headline, whose problem it is, where it happened, and the next step; the failed task is marked in the step’s task grid. Tasks that were still working when the run stopped are marked stopped, not failed.
Fix the cause, then continue the same run:
--retry STEP:ITERATION, because a checkpoint cannot undo an external change. Do not run a business action again only to repair an upload: use method sync RUN_DIRECTORY.
An ask step stops a local run with exit code 2. The result has the question and its answer form. Continue it with --resume --run-dir DIR --human FILE, where the file holds {"steps": {"STEP": {"outputs": {...}}}} (STEP:ITERATION, counted from 0, for a step with each or repeat).
Exit codes: 0 completed, 1 failed, 2 needs human input, 3 an observer could not confirm an external change (unconfirmed).
Run records
Each run folder hascheckpoint.json, state.json, events.jsonl, summary.json, and result.json on success. Secret values are replaced with [REDACTED] in every run file. Run folders under ~/.cache/method/runs that are unchanged for 30 days are deleted when a run starts. Use method inspect RUN_DIRECTORY --out inspection.json to export a run, and method logs RUN_ID to read a saved run.
Trust
Scripts and local agents are trusted local processes with your user’s access.changes is a declaration, not a permission rule. Read a Method and its scripts before you run them. See Security.