{
 "name": "mini-SWE-agent (mini-swe-agent, CLI `mini`), v2",
 "repo": "https://github.com/SWE-agent/mini-swe-agent",
 "docs": "https://mini-swe-agent.com/latest/",
 "headless": {
  "finding": "Run one prompt non-interactively: `mini -t \"<task>\" -y --exit-immediately -m <model> -o out.traj.json` (-t/--task task text, -y/--yolo run without confirmation, --exit-immediately exits when agent finishes instead of prompting, -o/--output trajectory file, -l/--cost-limit). Default mode is `confirm` (prompts per command); yolo auto-executes all LM commands. With yolo and stdin not a TTY, hitting step/cost limits stops cleanly with exit_status LimitsExceeded instead of prompting. Prompt comes only from -t (or interactive prompt if omitted); no prompt-file or stdin-prompt flag found in mini.py (a shell wrapper can do -t \"$(cat file)\"). Working directory: no dedicated flag; local env uses the process cwd (`cwd = cwd or self.config.cwd or os.getcwd()`), overridable with config key environment.cwd (e.g. `-c mini.yaml -c environment.cwd=/path`; note passing -c replaces the default config unless mini.yaml is listed too). Process exit codes: not documented anywhere found; the outcome is recorded as info.exit_status in the trajectory JSON (e.g. Submitted, LimitsExceeded, TimeExceeded, RepeatedFormatError). Agent signals completion by running `echo COMPLETE_TASK_AND_SUBMIT_FINAL_OUTPUT`. Not verified by running it here.",
  "quote": "`-y`/`--yolo`: Start in `yolo` mode ... `yolo` (`/y`): The action from the LM is executed immediately without confirmation",
  "url": "https://mini-swe-agent.com/latest/usage/mini/",
  "third_party": false
 },
 "confinement": {
  "finding": "Default `local` environment has no isolation (subprocess shell on host, per-command timeout default 30 s). Selectable environments via --environment-class: docker (docker exec; run_args default ['--rm'], container_timeout 2h; custom run_args could add e.g. --network none, not documented as such), singularity/apptainer, bubblewrap (Linux, experimental; default args --unshare-user-try, read-only binds of /usr /bin /lib /lib64 /etc, tmpfs /tmp, only the cwd bound writable; does NOT pass --unshare-net by default so network stays on unless wrapper_args is edited), swerex_docker, swerex_modal, contree. In confirm mode `whitelist_actions` (list of regexes) skips confirmation for matching commands; there is no deny list or per-tool permission system (agent's only tool is bash). Limits: step_limit (default 0=none), cost_limit (default 3.0), wall_time_limit_seconds (default 0=none). No built-in network on/off switch found.",
  "quote": "local ... Executes commands directly on the host machine using `subprocess.run`. No isolation.",
  "url": "https://mini-swe-agent.com/latest/advanced/environments/",
  "third_party": false
 },
 "token_reporting": {
  "finding": "Cost is reported; token counts are not summarized. The saved trajectory (.traj.json, trajectory_format mini-swe-agent-1.1) has info.model_stats {instance_cost, api_calls}, per-message extra.cost and extra.response (the raw provider/litellm response dump, which normally includes a usage object with prompt/completion tokens, and cached/reasoning details where the provider returns them - inferred from raw response storage, not a documented field list). Cost is computed via litellm completion_cost; if the model is unregistered cost becomes 0 / error unless cost_tracking=ignore_errors. MSWEA_GLOBAL_COST_LIMIT / MSWEA_GLOBAL_CALL_LIMIT env vars exist. No separate input/output/cached/reasoning summary fields documented.",
  "quote": "\"instance_cost\": 0.05,  // total cost of API calls for this run ... \"api_calls\": 12  // number of API calls made",
  "url": "https://mini-swe-agent.com/latest/usage/output_files/",
  "third_party": false
 },
 "parallelism": {
  "finding": "No subagent / multi-agent feature found; the agent has a single linear message history and only a bash tool. Parallelism is across independent runs: the swebench batch runner has -w/--workers (ThreadPoolExecutor), and docs point to a Ray guide for massively parallel runs; docs mention rotating Anthropic keys when running several agents in parallel. Many separate `mini` processes can be launched from a script (each with its own -o output).",
  "quote": "workers: int = typer.Option(1, \"-w\", \"--workers\", help=\"Number of worker threads for parallel processing\"",
  "url": "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/src/minisweagent/run/benchmarks/swebench.py",
  "third_party": false
 },
 "providers": {
  "finding": "Model classes: litellm (default; covers Anthropic, OpenAI, Azure, Gemini, Ollama, OpenRouter and the rest of litellm's providers, API-key env vars listed in docs), openrouter, portkey, requesty, plus litellm_response (/responses endpoint) and text-based variants; local models via litellm with custom registry for costs (docs/models/local_models).",
  "quote": "Supports all models via **litellm**, **openrouter**, **portkey**, and more. Support for `/completion` and `/response` endpoints",
  "url": "https://github.com/SWE-agent/mini-swe-agent",
  "third_party": false
 },
 "subscription_login": {
  "finding": "not found - docs and model code only describe API keys (e.g. `export ANTHROPIC_API_KEY=...`, `mini-extra config set KEY VALUE`); no OAuth/device-code/subscription login mentioned in the pages checked.",
  "quote": "Export your key as an environment variable: `export ANTHROPIC_API_KEY=<your-api-key>`",
  "url": "https://mini-swe-agent.com/latest/models/quickstart/",
  "third_party": false
 },
 "license": {
  "finding": "MIT (GitHub API spdx_id MIT; LICENSE text 'Copyright (c) 2025 Kilian A. Lieret and Carlos E. Jimenez'; PyPI also reports MIT)",
  "quote": "spdx_id: MIT",
  "url": "https://api.github.com/repos/SWE-agent/mini-swe-agent",
  "third_party": false
 },
 "latest_stable": {
  "finding": "v2.4.6, published 2026-07-23T03:12:33Z; PyPI mini-swe-agent latest 2.4.6 (uploaded 2026-07-23T03:12:59)",
  "quote": "v2.4.6 2026-07-23T03:12:33Z prerelease=false",
  "url": "https://api.github.com/repos/SWE-agent/mini-swe-agent/releases",
  "third_party": false
 },
 "latest_prerelease": {
  "finding": "v2.0.0a3, published 2026-02-06T22:49:42Z (older alphas a2 2026-02-04, a1 2026-02-02); only prereleases among 65 releases",
  "quote": "v2.0.0a3 2026-02-06T22:49:42Z prerelease=true",
  "url": "https://api.github.com/repos/SWE-agent/mini-swe-agent/releases",
  "third_party": false
 },
 "last_commit": {
  "finding": "2026-09-03T05:05:59Z, sha 04d809ceab9df28f9adaed044884180159172930 on default branch main (repo-level pushed_at 2026-10-26T22:39:14Z reflects other branches/PRs)",
  "quote": "committer date 2026-09-03T05:05:59Z",
  "url": "https://api.github.com/repos/SWE-agent/mini-swe-agent/commits?per_page=1",
  "third_party": false
 },
 "fork_of": {
  "finding": "Not a GitHub fork (API fork=false). It is a from-scratch minimal successor by the SWE-agent authors, not a fork of another coding agent.",
  "quote": "What if our agent was 100x simpler",
  "url": "https://github.com/SWE-agent/mini-swe-agent",
  "third_party": false
 },
 "maintenance": {
  "finding": "Not archived (API archived=false); active: 65 releases, v2.4.6 on 2026-07-23, pushes through 2026-10-26. No 'unmaintained' notice seen in README.",
  "quote": "archived: false",
  "url": "https://api.github.com/repos/SWE-agent/mini-swe-agent",
  "third_party": false
 },
 "gaps": [
  "Process exit codes of `mini` not documented; checked docs/usage/mini.md, src/minisweagent/run/mini.py, README.",
  "No prompt-file/stdin flag found in run/mini.py or docs/usage/mini.md.",
  "No network on/off setting found in docs/advanced/environments.md, docker.py, bubblewrap.py (would need custom run_args/wrapper_args; untested).",
  "Token field names (input/output/cached/reasoning) not documented in output_files.md; only cost and api_calls; raw response is stored.",
  "Subscription login: checked docs/models/quickstart.md, faq.md, litellm_model.py; nothing found.",
  "Nothing was executed locally; claims come from source and docs text. Docs site mini-swe-agent.com mirrors docs/*.md in the repo; the repo raw files were read."
 ],
 "sources": [
  "https://github.com/SWE-agent/mini-swe-agent",
  "https://mini-swe-agent.com/latest/",
  "https://mini-swe-agent.com/latest/usage/mini/",
  "https://mini-swe-agent.com/latest/advanced/environments/",
  "https://mini-swe-agent.com/latest/usage/output_files/",
  "https://mini-swe-agent.com/latest/models/quickstart/",
  "https://api.github.com/repos/SWE-agent/mini-swe-agent",
  "https://api.github.com/repos/SWE-agent/mini-swe-agent/releases",
  "https://api.github.com/repos/SWE-agent/mini-swe-agent/commits?per_page=1",
  "https://pypi.org/pypi/mini-swe-agent/json",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/LICENSE",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/README.md",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/src/minisweagent/run/mini.py",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/src/minisweagent/agents/default.py",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/src/minisweagent/agents/interactive.py",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/src/minisweagent/environments/local.py",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/src/minisweagent/environments/docker.py",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/src/minisweagent/environments/extra/bubblewrap.py",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/src/minisweagent/models/litellm_model.py",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/src/minisweagent/run/benchmarks/swebench.py",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/docs/usage/mini.md",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/docs/advanced/global_configuration.md",
  "https://raw.githubusercontent.com/SWE-agent/mini-swe-agent/main/docs/advanced/cookbook.md"
 ]
}