{"slug":"swival","name":"Swival","vendor":"Swival","tagline":"Pure-Python CLI coding agent built to stay reliable on small and local models with tight context windows","url":"https://agentboards.org/agent/swival","website":"https://swival.dev","docs":"https://swival.dev/","repo":"https://github.com/Swival/swival","category":"cli","execution":["local"],"license":"MIT","open_source":true,"pricing":{"model":"byok","summary":"Free and open source under MIT; runs for nothing against a local LM Studio or llama.cpp model, or bring a provider key","from_usd":0,"free_tier":true,"byok":true},"models":{"backbone":["LM Studio","llama.cpp","Hugging Face Inference API","OpenRouter","Google Gemini","Gemini Enterprise Agent Platform","ChatGPT Plus/Pro","AWS Bedrock","Apple Foundation Models","any OpenAI-compatible server"],"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":false,"headless_ci":true},"context_window":null,"platforms":["macos","linux","windows"],"install":[{"label":"uv","command":"uv tool install --python 3.14 swival"},{"label":"Homebrew","command":"brew trust swival/tap && brew install swival/tap/swival"}],"benchmarks":[],"tags":["open-source","python","terminal","local-models","small-models","no-framework"],"github_stars":341,"metrics":{"stars":341,"pushed_at":"2026-09-30T20:35:50Z","archived":false,"open_issues":1,"latest_version":"1.0.46","latest_version_at":"2026-09-30T10:25:32Z","latest_version_url":"https://github.com/Swival/swival/releases/tag/1.0.46","version_source":"github","checked_at":"2026-10-02T05:03:55.422Z"},"sources":{"overview":"https://github.com/Swival/swival","docs":"https://swival.dev/","install":"https://github.com/Swival/swival","capabilities":"https://github.com/Swival/swival","models":"https://github.com/Swival/swival","license":"https://github.com/Swival/swival/blob/main/LICENSE"},"verified_at":"2026-09-04","adoption":{"score":1,"signals":{"pypi_weekly":244,"github_stars":340,"hn_mentions_1y":6},"measured_at":"2026-09-21"},"scores":{"panel":6.6,"adoption":1,"spread":1.8,"facts":6.7,"board":5.8,"dimensions":{"reliability":5.8,"usefulness":6.2,"cost":8.8,"longevity":5.7},"per_persona":{"amigo":7,"critico":6.3,"profesor":6.5,"inversora":6,"jefa":6.3,"hacker":7.8},"community":null},"rank":134,"category_rank":63,"panel_reviews":[{"persona":"juez","persona_name":"El Juez","ai_generated":true,"verdict":"El Hacker sees a tool that finds whatever model is loaded and asks for nothing; El Crítico sees an uncapped loop driven by the weakest model in the room.","scores":null,"evidence":[]},{"persona":"amigo","persona_name":"El Amigo","ai_generated":true,"verdict":"Pick it if you work offline or on a laptop with a small model loaded; pick Aider if you have an API key and no constraint to respect.","scores":{"reliability":6,"usefulness":6,"cost":10,"longevity":6},"evidence":["https://swival.dev/","https://github.com/Swival/swival"]},{"persona":"critico","persona_name":"El Crítico","ai_generated":true,"verdict":"An autonomous loop that runs until it produces an answer, driven by a weak model, with no iteration cap and no cost guard documented anywhere.","scores":{"reliability":5,"usefulness":6,"cost":8,"longevity":6},"evidence":["https://github.com/Swival/swival","https://swival.dev/"]},{"persona":"profesor","persona_name":"El Profesor","ai_generated":true,"verdict":"The central claim is comparative reliability on small models, which is unusually testable, and no measurement of it accompanies the tool.","scores":{"reliability":6,"usefulness":6,"cost":8,"longevity":6},"evidence":["https://swival.dev/","https://github.com/Swival/swival"]},{"persona":"inversora","persona_name":"La Inversora","ai_generated":true,"verdict":"It is optimised for the segment with the lowest willingness to spend, deliberately, and 330 stars is what that segment produces in a year.","scores":{"reliability":6,"usefulness":5,"cost":8,"longevity":5},"evidence":["https://github.com/Swival/swival","https://swival.dev/"]},{"persona":"jefa","persona_name":"La Jefa","ai_generated":true,"verdict":"It takes the task as a command-line argument and runs to completion, which is the one property I need before anything lives on a build agent.","scores":{"reliability":5,"usefulness":6,"cost":9,"longevity":5},"evidence":["https://github.com/Swival/swival","https://swival.dev/"]},{"persona":"hacker","persona_name":"El Hacker","ai_generated":true,"verdict":"LM Studio and llama.cpp need no auth and no flags and the loaded model is auto-discovered, and it will shell out to an external command like codex exec.","scores":{"reliability":7,"usefulness":8,"cost":10,"longevity":6},"evidence":["https://github.com/Swival/swival/blob/main/LICENSE","https://github.com/Swival/swival"]},{"persona":"comediante","persona_name":"El Comediante","ai_generated":true,"verdict":"The install command pins Python 3.14, which is a level of confidence the rest of us can only admire.","scores":null,"evidence":[]}]}