<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>twinny blog</title><description>Notes from building twinny, the self-hosted AI coding assistant for VS Code: how completion, the team gateway and the licence check actually work.</description><link>https://blog.twinny.dev/</link><language>en</language><item><title>A licence check with no licence server</title><link>https://blog.twinny.dev/posts/a-licence-check-with-no-server/</link><guid isPermaLink="true">https://blog.twinny.dev/posts/a-licence-check-with-no-server/</guid><description>Why the team licence is a signed token verified offline, what it carries, what happens when it lapses, and what the gateway never sends.</description><pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate><category>licensing</category><category>security</category><category>gateway</category></item><item><title>A blog for a coding assistant that never phones home</title><link>https://blog.twinny.dev/posts/hello/</link><guid isPermaLink="true">https://blog.twinny.dev/posts/hello/</guid><description>What twinny is, what this blog is for, and the rule every post here follows.</description><pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate><category>twinny</category><category>meta</category></item><item><title>How a completion is made: what a 7B model sees when you pause</title><link>https://blog.twinny.dev/posts/how-a-completion-is-made/</link><guid isPermaLink="true">https://blog.twinny.dev/posts/how-a-completion-is-made/</guid><description>The six steps between a pause in typing and ghost text at the cursor, and why the prompt matters more than the model size.</description><pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate><category>completion</category><category>models</category><category>internals</category></item><item><title>Pooling a teammate&apos;s GPU: one gateway, no open ports</title><link>https://blog.twinny.dev/posts/pooling-a-teammates-gpu/</link><guid isPermaLink="true">https://blog.twinny.dev/posts/pooling-a-teammates-gpu/</guid><description>How twinny-server lets a developer share their own computer&apos;s models with the team, what the sharer consents to, and why a busy GPU queues instead of failing.</description><pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate><category>teams</category><category>gateway</category><category>internals</category></item><item><title>Devices: the desktop&apos;s GPU from the laptop, with no relay</title><link>https://blog.twinny.dev/posts/the-desktop-gpu-from-the-laptop/</link><guid isPermaLink="true">https://blog.twinny.dev/posts/the-desktop-gpu-from-the-laptop/</guid><description>How twinny pairs two of your own computers over an encrypted peer-to-peer link so a laptop can use a desktop&apos;s models, and what happens when hole-punching fails.</description><pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate><category>devices</category><category>p2p</category><category>ollama</category></item></channel></rss>