quackd v0.2.0 — local and open-source LLMs can pilot the duck
Local and open source LLMs can now pilot the duck. Ollama, vLLM, llama.cpp, LM Studio, or any OpenAI compatible server. No API key.
uvx --from "quackd[openai]" quackd run find-and-kick --provider ollama --model qwen3:8b
uvx --from "quackd[openai]" quackd run find-and-kick --provider vllm --model Qwen/Qwen3-8B
uvx --from "quackd[openai]" quackd run find-and-kick --provider local --base-url http://gpu-box:8000/v1
uvx quackd run --goal "find the ball and kick it" --provider fake # still no key, scripted pilotAdded
- Local providers
ollama,vllm,llamacpp,lmstudio,local(--base-url). Model discovery from/v1/modelswhen--modelis omitted,tool_choice=autoand noparallel_tool_callsfield for picky servers (QUACKD_TOOL_CHOICEto override), vision opt-in with--vision, and a JSON text fallback that understands a tool call a small model wrote as plain text (markedtext_fallbackin the transcript).quackd doctorprobes the four default local addresses. Guide:docs/local-llms.md. (ADR-0014) quackd run --goal "...": a plain language goal instead of a.duckfile. The scriptedfakepilot picks a strategy from the goal's keywords.--base-url,--api-key,--vision/--no-vision,--gif-size.- New README written for first time readers, a Microduck-like logo and a social preview card.
Changed
- Providers are named by company, not model family ("OpenAI"). Hero GIF re-recorded at 320 px panes.
Fixed
- Rich markup ate
quackd[extra]in CLI error hints. mypy on Python 3.12 (numpy stubs).
Known limitations
- Local model quality is unmeasured and we have not run a live local server ourselves yet. If you do, please share the transcript in Discussions.
- The simulator is a cartoon and nothing has run on a real Microduck. The hero GIF is the scripted pilot.
Full changelog: CHANGELOG.md. quackd is an independent community project, not affiliated with or endorsed by Pollen Robotics or Hugging Face.