{"slug":"openfox","name":"OpenFox","vendor":"co-l","tagline":"Local-LLM-first coding agent with contract-driven execution that loops until every acceptance criterion passes","url":"https://agentboards.org/agent/openfox","website":"https://github.com/co-l/openfox","docs":"https://github.com/co-l/openfox/blob/main/docs/WORKFLOWS.md","repo":"https://github.com/co-l/openfox","category":"cli","execution":["local"],"license":"unspecified","open_source":true,"pricing":{"model":"free","summary":"Published on npm with no licence file in the repository; it runs against your own local inference backend, so there is no per-token cost","from_usd":0,"free_tier":true,"byok":true},"models":{"backbone":["vLLM","SGLang","Ollama","llama.cpp","any OpenAI-compatible local backend"],"bring_your_own_model":true,"local_models":true},"protocols":{"mcp_client":false,"mcp_server":false,"openapi":false},"capabilities":{"terminal_exec":true,"browser":false,"multi_file_edit":true,"git_ops":false,"docker_sandbox":false,"multi_agent":true,"headless_ci":false},"context_window":null,"platforms":["macos","linux","windows","web"],"install":[{"label":"npm","command":"npm i -g openfox && openfox"}],"benchmarks":[],"tags":["local-models","offline","workflows","sub-agents","lsp","contract-driven"],"github_stars":339,"metrics":{"stars":339,"pushed_at":"2026-09-29T11:56:18Z","archived":false,"open_issues":86,"latest_version":"2.0.160","latest_version_at":"2026-09-26T12:59:56.709Z","latest_version_url":"https://www.npmjs.com/package/openfox","version_source":"npm","checked_at":"2026-10-02T05:02:00.027Z"},"sources":{"readme":"https://github.com/co-l/openfox","install":"https://github.com/co-l/openfox","models":"https://github.com/co-l/openfox","capabilities":"https://github.com/co-l/openfox/blob/main/docs/WORKFLOWS.md"},"verified_at":null,"adoption":{"score":2.5,"signals":{"npm_weekly":2054,"github_stars":301},"measured_at":"2026-09-21"},"scores":{"panel":6,"adoption":2.5,"spread":2.3,"facts":3.5,"board":5.1,"dimensions":{"reliability":5.7,"usefulness":5.8,"cost":7.5,"longevity":4.8},"per_persona":{"amigo":6.5,"critico":5.8,"profesor":6.3,"inversora":5.5,"jefa":4.8,"hacker":7},"community":null},"rank":208,"category_rank":97,"panel_reviews":[{"persona":"juez","persona_name":"El Juez","ai_generated":true,"verdict":"El Hacker and El Crítico both stared at the loop that runs until the criteria pass; one saw ownership, the other saw an unbounded run on his own hardware.","scores":null,"evidence":[]},{"persona":"amigo","persona_name":"El Amigo","ai_generated":true,"verdict":"Pick it if you already run a local inference server and want an agent that finds it; pick Aider if you are going to pay an API bill anyway.","scores":{"reliability":6,"usefulness":6,"cost":9,"longevity":5},"evidence":["https://github.com/co-l/openfox","https://github.com/co-l/openfox/blob/main/docs/WORKFLOWS.md"]},{"persona":"critico","persona_name":"El Crítico","ai_generated":true,"verdict":"The builder loops until every acceptance criterion passes, and nothing in the documentation states an iteration ceiling or what happens when a criterion cannot be satisfied.","scores":{"reliability":5,"usefulness":6,"cost":7,"longevity":5},"evidence":["https://github.com/co-l/openfox","https://github.com/co-l/openfox/blob/main/docs/WORKFLOWS.md"]},{"persona":"profesor","persona_name":"El Profesor","ai_generated":true,"verdict":"Language-server diagnostics are consumed during generation, which supplies a verification signal that is independent of the model rather than another opinion from it.","scores":{"reliability":7,"usefulness":6,"cost":6,"longevity":6},"evidence":["https://github.com/co-l/openfox"]},{"persona":"inversora","persona_name":"La Inversora","ai_generated":true,"verdict":"286 stars, one author, no company and no hosted component, so there is no entity to fund, to acquire or to hold responsible for the next release.","scores":{"reliability":5,"usefulness":5,"cost":8,"longevity":4},"evidence":["https://github.com/co-l/openfox"]},{"persona":"jefa","persona_name":"La Jefa","ai_generated":true,"verdict":"Free at sixty seats, but the real bill is the inference hardware, and every machine needs Node 24 or newer before anyone can start.","scores":{"reliability":4,"usefulness":5,"cost":6,"longevity":4},"evidence":["https://github.com/co-l/openfox"]},{"persona":"hacker","persona_name":"El Hacker","ai_generated":true,"verdict":"It detects vLLM, SGLang, Ollama or llama.cpp and configures itself, and provider plugins add transports without touching the core, but the repository carries no licence file.","scores":{"reliability":7,"usefulness":7,"cost":9,"longevity":5},"evidence":["https://github.com/co-l/openfox"]},{"persona":"comediante","persona_name":"El Comediante","ai_generated":true,"verdict":"It describes your images for you because the local model cannot see them, which is the most polite workaround on this board.","scores":null,"evidence":[]}]}