v0.2.2 — the lens README + the remote mouth grows auth
The idea, sharpened: AI sees through lenses, not answers — Squish adjusts the lens; the model interprets. The window (--start/--end) is the lens made wide or narrow, density is the lens made coarse or fine, and the navigation loop is the lens moved until the answer is observable.
In 0.2.2 (over 0.2.1):
- README rebuilt around the lens — new cover ("Random access to video"), the official-app path (Claude Desktop / claude.ai → add
https://api.getsquish.app/mcpas a connector, zero install), and fresh field proof: the same task run across 5 clients and 3 mouths in one day; Claude Desktop completed the multi-round navigation loop on its own, down to a sub-second lock. squish_videodescription tuned from field evidence — the one-call economy line ("one call replaces a whole download → ffmpeg → extract → montage pipeline"), density-vs-window guidance, and thetimecodes[][]mirror note. Agents pick the tool and drive the loop better with no prompting changes on your side.- The hosted endpoint grew auth (same engine, not in this package):
api.getsquish.app/mcpnow takes an optionalAuthorization: BearerAPI key — same credits as the hosted API, deduct-before-extract with auto-refund — alongside a small anonymous free lane; running out answers with a structured error carryingbilling_urlthat an agent can relay in conversation. The local CLI and MCP server in this package stay ungated forever.
Engine unchanged: same frozen squish-cli-v0 / squish-mcp-v0 contracts; the zoom loop shipped in 0.2.0.
Install: npx -y @getsquish/squish <video> · MCP: npx -y @getsquish/squish mcp in any stdio client · Node ≥ 20, ffmpeg on PATH.
Made at getsquish.app 🦑