🦭 TL;DR
A whole menagerie in one release. 🦉 Chandra 2 joins the backend flock as a vLLM-served OCR model that reads documents and images into Markdown, HTML or JSON. 🐙 Boost grows a new arm with the codemode module, where a model writes one Python program that calls every Boost tool as a plain function, and harbor launch --codemode wires it into any launched CLI. 🦔 harbor down <service> and harbor restart <service> now touch only the named services, 🐜 the ollama-init sidecar shrinks from the multi-GB Ollama image to Alpine, 🐿️ services can ship their own default.env, and 🐝 harbor dev docs --check keeps generated docs honest.
🦉 Chandra
Chandra 2 OCR by Datalab, served with vLLM behind an OpenAI-compatible API: turns documents and images into Markdown, HTML or JSON with tables, forms, math and reading order intact. Needs an NVIDIA GPU; 16GB is enough.
harbor up chandra nvidia🐙 Boost codemode
Replaces the whole Boost tool catalog with a single execute_code tool. The model writes one Python program that calls Boost's tools as functions; Boost runs it in a sandboxed subprocess runner and round-trips every call to the real tool, with caps on timeout, output size and number of tool calls.
harbor launch --codemodeharbor boost modules add codemode🐾 Misc
- 🦔
harbor down <service>andharbor restart <service>are scoped to the named services; other running services are left untouched. - 🐜 Slim
ollama-initsidecar: runs onalpine:3.20instead of the multi-GB Ollama image and streams pulls through the server's/api/pullAPI. - 🐿️ Per-service defaults:
services/<name>/default.envfiles are loaded with the profile. - 🦫 Multi-source
.envrepair is atomic and duplicate-free. - 🐝
harbor dev docs --checkflags stale generated docs, and the release pipeline builds Boost before regenerating its docs. - 🐘 Chandra defaults tuned for 16GB GPUs.
Full Changelog: v0.5.6...v0.5.7