Scroll to navigation

run(1) General Commands Manual run(1)

NAME

run - Execute commands from an instruction file or stdin

SYNOPSIS

run [-i|--instructions] [-t|--text] [--recipe] [--system] [--params] [--sub-recipe] [--explain] [--render-recipe] [-n|--name] [--session-id] [--path] [-s|--interactive] [--no-session] [-r|--resume] [--stats] [--debug] [--max-tool-repetitions] [--max-turns] [--container] [--with-extension] [--with-streamable-http-extension] [--with-builtin] [--no-profile] [-q|--quiet] [--output-format] [--provider] [--model] [-h|--help]

DESCRIPTION

Execute commands from an instruction file or stdin

OPTIONS

Path to instruction file containing commands. Use - for stdin.
Input text containing commands for goose. Use this in lieu of the instructions argument.
Recipe name to get recipe file or the full path of the recipe file that defines a custom agent configuration. Use --explain to see the recipe's title, description, and parameters.
Provide additional system instructions to customize the agent's behavior
Key-value parameters to pass to the recipe file. Can be specified multiple times.
Specify sub-recipes to include alongside the main recipe. Can be:
- Recipe names from GitHub (if GOOSE_RECIPE_GITHUB_REPO is configured)
- Local file paths to YAML files Can be specified multiple times to include multiple sub-recipes.
Show the recipe title, description, and parameters
Print the rendered recipe instead of running it.
Specify a name for your chat session. When used with --resume, will resume this specific session if it exists.
Specify a session ID to resume. Requires --resume.
Legacy parameter for backward compatibility. Extracts session ID from the file path (e.g., '/path/to/20250325_200615. jsonl' -> '20250325_200615').
Continue in interactive mode after processing initial input
Execute commands without creating or using a session file. Useful for automated runs.
Continue from a previous run, maintaining the execution state and context.
Print generation statistics after the run completes
When enabled, shows complete tool responses without truncation and full paths.
Set a limit on how many times the same tool can be called consecutively with identical parameters. Helps prevent infinite loops.
Set a limit on how many turns (iterations) the agent can take without asking for user input to continue.
Run extensions (stdio and built-in) inside the specified container. The extension must exist in the container. For built-in extensions, goose must be installed inside the container.
Add stdio extensions from full commands with environment variables. Can be specified multiple times. Format: '[name:]ENV1=val1 ENV2=val2 command args...'. Without the optional name, the extension is named after the command, which is the launcher for anything started through one ('npx', 'python', 'uvx', ...); extensions that would end up sharing a name are instead named after their full command line.
Add streamable HTTP extensions from a URL. Can be specified multiple times. Format: 'url...' or 'url... timeout=100' to set up timeout other than default
Add one or more builtin extensions that are bundled with goose by specifying their names, comma-separated
Don't load your default extensions, only use CLI-specified extensions
Quiet mode. Suppress non-response output, printing only the model response to stdout
Output format (text, json, stream-json)

Possible values:

  • text
  • json
  • stream-json
Override the GOOSE_PROVIDER environment variable for this run. Available providers include openai, anthropic, ollama, databricks, gemini-cli, claude-code, and others.
Override the GOOSE_MODEL environment variable for this run. The model must be supported by the specified provider.
Print help (see a summary with '-h')

SEE ALSO

goose(1), goose-acp(1), goose-completion(1), goose-configure(1), goose-doctor(1), goose-gateway(1), goose-info(1), goose-mcp(1), goose-plugin(1), goose-recipe(1), goose-review(1), goose-schedule(1), goose-serve(1), goose-session(1), goose-skills(1), goose-term(1)

run