changelog
4.1.1 2026-09-18
Teams. One gateway on your own hardware serves twinny to the whole team.
twinny-server, a dependency-free Node package built fromsrc/gateway:quickstartfinds a local model server, writes a configuration, makes an admin key and serves;init,serve,keys,invites,usage,license,recordings,reset. Any OpenAI-compatible backend, Ollama, LM Studio, llama.cpp, QVAC or a hosted API behind named aliases.- Protocol v1 at
/twinny/v1: models, chat, fim and embeddings streamed as NDJSON, with typed error kinds; the extension's Twinny gateway provider speaks it with a token kept in VS Code secret storage. - A key per developer, stored as a hash, created and revoked live on the admin page or the CLI; per-key limits; a shared token that can be retired.
- Invite links (
vscode://URI handler) that open VS Code and connect with nothing to paste; one use, seven days, no seat until opened. Sign-in with a short code as the alternative. - Usage per person and per model: requests, failures, token counts, indexing runs; retention you choose; never the content.
- Admin page at
/admin: overview, usage charts, people, policy, providers and models (edited live), plan and licence, recordings. - Team GPU pooling. A developer flips Share this computer and their local server serves the team through a WebSocket to the gateway: no port to open, consent shown, least-loaded first, failover when a sharer goes offline.
- Seat licensing. Five seats free for good; a signed
twl1.token bought by card raises the count and switches on policy and recording. Checked locally, no call home, 30-day notice and 14-day grace. - Team policy (licence): team-gateway-only providers and locked defaults, shown for consent before connecting and enforced by the extension while connected. Leave team is one click.
- Recording (licence): keep chat, autocomplete and embedding content on the gateway, disclosed to every developer, reviewed and exported as training data from the admin page.
- Docker image
ghcr.io/twinnydotdev/twinny-serverwith a compose file; demo mode (serve --demo) for a read-only public admin page with one-hour guest keys. - Autocomplete fix: a client that hung up after the first chunk no longer logs the request as cancelled.