<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Inyon releases</title>
  <subtitle>Every release of Inyon, newest first.</subtitle>
  <id>https://inyon.abhashchakraborty.tech/releases.xml</id>
  <link rel="self" type="application/atom+xml" href="https://inyon.abhashchakraborty.tech/releases.xml"/>
  <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/"/>
  <updated>2026-10-16T11:47:03Z</updated>
  <author><name>Abhash Chakraborty</name><uri>https://abhashchakraborty.tech</uri></author>
  <icon>https://inyon.abhashchakraborty.tech/icon.svg</icon>
  <entry>
    <title>Inyon 0.17.5</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.17.5</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-17-5"/>
    <published>2026-10-16T11:47:03Z</published>
    <updated>2026-10-16T11:47:03Z</updated>
    <content type="html">&lt;p&gt;Two fixes for updating.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;A hub from a git checkout updates again.&lt;/strong&gt; Its &lt;code&gt;git fetch --tags&lt;/code&gt; refused to move the &lt;code&gt;node-latest&lt;/code&gt; and &lt;code&gt;android-latest&lt;/code&gt; tags that every build re-points, exited non-zero, and the hub reported a network problem. The fetch is forced now, in the update and in the hourly check. A hub on an older version needs one manual &lt;code&gt;git fetch --force --tags&lt;/code&gt; in its checkout before it can pull this.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agents are updated where they live.&lt;/strong&gt; An agent installed with npm into a folder of its own (an older Inyon kept OpenCode under &lt;code&gt;~/.local/share/tether-tools&lt;/code&gt;, with &lt;code&gt;~/.local/bin&lt;/code&gt; pointing into it) was updated with &lt;code&gt;npm install -g&lt;/code&gt;, which put a second copy where the PATH never looks. The Setup tab now knows the folder and updates the copy there.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.17.4</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.17.4</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-17-4"/>
    <published>2026-10-16T10:48:45Z</published>
    <updated>2026-10-16T10:48:45Z</updated>
    <content type="html">&lt;p&gt;Agents you can install and update from the app, background agents that show as work, and the fixes from a full review of the code.&lt;/p&gt;
&lt;h4&gt;Install and update agents&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;A machine's &lt;strong&gt;Setup&lt;/strong&gt; tab shows each agent's version against the newest one on npm, with &lt;strong&gt;Update to X&lt;/strong&gt; when it's behind, and &lt;strong&gt;Install&lt;/strong&gt; for any of the six that's missing (Claude Code, Codex, OpenCode, Copilot, Gemini CLI, Antigravity). From the browser or the phone.&lt;/li&gt;
&lt;li&gt;Update runs npm for an npm install, otherwise the agent's own updater (&lt;code&gt;claude update&lt;/code&gt;, &lt;code&gt;codex update&lt;/code&gt;, &lt;code&gt;opencode upgrade&lt;/code&gt;, &lt;code&gt;copilot update&lt;/code&gt;, &lt;code&gt;agy update&lt;/code&gt;), or its installer again.&lt;/li&gt;
&lt;li&gt;When a step fails, the row opens with the likely cause, the last lines it printed, the command to run on the machine yourself with a copy button, and the install guide.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Background agents&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;A Claude Code session whose turn ended with subagents or shells still running shows as &lt;strong&gt;Background&lt;/strong&gt; with what's running (&lt;em&gt;1 shell and 1 agent running in the background&lt;/em&gt;) instead of Idle, the home status line no longer says &lt;em&gt;All quiet&lt;/em&gt; while they run, and the &lt;strong&gt;Finished&lt;/strong&gt; alert waits until they're done.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Typed pairing codes&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;The record a computer publishes for a typed ID is now keyed by the ID and the 6-digit code together, so knowing the ID alone doesn't let anyone stand in for the computer. Typing a code needs the app and the computer both on 0.17.4 or newer; the QR code and the link work across versions.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Fixes&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Windows: live terminal output reached the hub again (the engine's pane rewrite had stopped matching the hub's attach command since the locale change in 0.17.0), so sessions on a Windows machine update as they print instead of at the next poll.&lt;/li&gt;
&lt;li&gt;The hub prunes earlier engine builds again; the link survives the hook log being rotated; removing a server takes the phone's key out of &lt;code&gt;authorized_keys&lt;/code&gt; even when the file has no final newline, and adding one never glues it onto the last line.&lt;/li&gt;
&lt;li&gt;The plain-http exception for private addresses only accepts a whole address, not a name that starts like one; &lt;code&gt;uninstall&lt;/code&gt; never signals a pid that can't be one; a bad &lt;code&gt;Content-Length&lt;/code&gt; can't abort the updater; a blank line in &lt;code&gt;SHA256SUMS&lt;/code&gt; doesn't hide the entries after it; clicking &amp;quot;← back&amp;quot; in the setup wizard goes back instead of on; the Windows migration link is a junction; &lt;code&gt;ts.net&lt;/code&gt; is matched on a dot boundary.&lt;/li&gt;
&lt;li&gt;Messages arriving in pieces are capped; machine ids must be canonical; address records keep a monotonic seq across clock steps; busybox is checked against the hub's pin on Windows.&lt;/li&gt;
&lt;li&gt;Android: deleting a server with a login still in progress no longer waits up to 42 seconds; two notifications can't open each other's session; the keep-alive wake lock can't outlive its service.&lt;/li&gt;
&lt;li&gt;Chat watchers clear every timer when they stop; the password check reads one record; the task sheet says 3 seconds like its timer; &lt;code&gt;\ No newline at end of file&lt;/code&gt; no longer counts against a diff's line budget.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.17.3</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.17.3</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-17-3"/>
    <published>2026-10-14T19:23:06Z</published>
    <updated>2026-10-14T19:23:06Z</updated>
    <content type="html">&lt;p&gt;A window on Windows, and no more windows flashing.&lt;/p&gt;
&lt;h4&gt;The Inyon window (Windows)&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Open Inyon&lt;/strong&gt; and &lt;strong&gt;Pair a phone…&lt;/strong&gt; in the tray menu open a small window of Inyon's own instead of a terminal: whether it runs, where it answers, which phones are paired, and the same four actions as buttons. Drawn in Inyon's style, sharp at any screen scale, and it refreshes every two seconds without flickering.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The pairing code is a picture.&lt;/strong&gt; The QR code to scan sits on its own card, with the code to type beside it. Opened with no phone paired yet, the window shows a code straight away.&lt;/li&gt;
&lt;li&gt;Behind it, &lt;code&gt;inyon window link&lt;/code&gt; and &lt;code&gt;inyon window link --pair&lt;/code&gt; open it from anywhere; a second start brings the open window to the front. What it does goes to &lt;code&gt;~/.inyon/node/window.log&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;No more flashing&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Everything the engine starts on Windows (psmux, PowerShell, the shell) runs hidden, whichever part of the program starts it. Before, a notification's title lookup opened a console window for a moment.&lt;/li&gt;
&lt;li&gt;Asking for a pairing code from the window no longer opens a console for the engine either.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.17.2</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.17.2</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-17-2"/>
    <published>2026-10-14T18:19:37Z</published>
    <updated>2026-10-14T18:19:37Z</updated>
    <content type="html">&lt;p&gt;Fixes from the first day of real use on a Windows laptop, mostly around what happens after setup.&lt;/p&gt;
&lt;h4&gt;Windows&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The phone no longer loses the computer.&lt;/strong&gt; &lt;code&gt;inyon pair&lt;/code&gt; didn't see the link already running in the background and started a second one. That one published its own address, and when it ended with the terminal the phone was left pointing at a dead tunnel: pairing worked once, then the computer was unreachable. A link is now also recognised by what answers on its port, so &lt;code&gt;pair&lt;/code&gt; and &lt;code&gt;link&lt;/code&gt; reuse the one that runs.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The tray menu works.&lt;/strong&gt; &lt;strong&gt;Open Inyon&lt;/strong&gt; and &lt;strong&gt;Pair a phone…&lt;/strong&gt; opened a window that closed at once. They open a terminal window of their own now.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;inyon&lt;/code&gt; is found by name.&lt;/strong&gt; Setup puts &lt;code&gt;~\.inyon\bin&lt;/code&gt; on your user Path when it isn't there, not only the installer, so a copy that got there another way, or a setup run after an uninstall, works in new windows too.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Inyon is in Settings → Apps.&lt;/strong&gt; Setup lists it there with its version, &lt;code&gt;inyon update&lt;/code&gt; keeps the version current, and &lt;strong&gt;Uninstall&lt;/strong&gt; there runs &lt;code&gt;inyon uninstall --purge&lt;/code&gt; in a window that stays open until you press Enter.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Uninstall finishes the job.&lt;/strong&gt; It checks that the logon task is really gone and says so if not. &lt;code&gt;~/.inyon&lt;/code&gt; is removed one entry at a time, so a file an agent's hook still has open no longer keeps everything else behind.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Setup and uninstall&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Setup installs tmux.&lt;/strong&gt; When tmux (psmux on Windows) is missing, setup asks and installs it: winget or cargo on Windows, Homebrew on macOS, your package manager through &lt;code&gt;sudo&lt;/code&gt; on Linux. &lt;code&gt;--yes&lt;/code&gt; doesn't ask.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Uninstall asks before removing it.&lt;/strong&gt; Only when setup installed it; the default is to keep it, and &lt;code&gt;inyon uninstall --yes&lt;/code&gt; keeps it without asking. tmux that was there before Inyon is never touched.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;The terminal&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;The Inyon mark's line hangs from the kite in every font instead of floating beside it.&lt;/li&gt;
&lt;li&gt;When you quit the &lt;code&gt;inyon&lt;/code&gt; dashboard, what it showed is printed as plain lines, so your terminal's history keeps both what was there before and the status you looked at.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.17.1</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.17.1</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-17-1"/>
    <published>2026-10-14T14:40:23Z</published>
    <updated>2026-10-14T14:40:23Z</updated>
    <content type="html">&lt;p&gt;Fixes from a full test on a Windows 10 laptop, an Android phone and an Android tablet: installed from scratch, paired, used for real work, updated and uninstalled.&lt;/p&gt;
&lt;h4&gt;Windows&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;No window at sign-in, and a tray icon.&lt;/strong&gt; Inyon now starts in the background without flashing a console, and shows an icon in the notification area while it runs: &lt;strong&gt;Open Inyon&lt;/strong&gt;, &lt;strong&gt;Pair a phone…&lt;/strong&gt;, &lt;strong&gt;Show the log&lt;/strong&gt;, &lt;strong&gt;Restart&lt;/strong&gt; and &lt;strong&gt;Quit Inyon&lt;/strong&gt;. On Windows 10 it may sit under the &lt;code&gt;^&lt;/code&gt; arrow at first.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The firewall lets phones in.&lt;/strong&gt; When you tick &lt;em&gt;LAN&lt;/em&gt; or &lt;em&gt;VPN&lt;/em&gt; in setup, it adds a rule named &amp;quot;Inyon link&amp;quot; (Windows asks an administrator once). It lets in only the link's port, only to &lt;code&gt;inyon-engine.exe&lt;/code&gt;, and only from the local network and VPN ranges. Before, Windows counted VPNs as public networks and phones couldn't connect over them.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Live status for every session.&lt;/strong&gt; psmux names a pane &lt;code&gt;%1&lt;/code&gt; in every session, so two Claude Code sessions on one Windows machine shared their status files and the app showed neither one's model, context or limits. Each session keeps its own now. Inyon updates the integration's scripts on the machine by itself.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;inyon uninstall --purge&lt;/code&gt; removes everything.&lt;/strong&gt; It stops the engine, the tunnel and the tray first, deletes &lt;code&gt;inyon.exe&lt;/code&gt; once it has exited, takes &lt;code&gt;~\.inyon\bin&lt;/code&gt; off your &lt;code&gt;Path&lt;/code&gt; and removes the firewall rule. It lists anything it couldn't delete.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;inyon logs&lt;/code&gt;&lt;/strong&gt; shows the link's log on Windows too.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Over SSH&lt;/strong&gt;, &lt;code&gt;inyon setup&lt;/code&gt; and &lt;code&gt;inyon doctor&lt;/code&gt; find psmux and the agents on your user &lt;code&gt;Path&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Install and setup&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;inyon&lt;/code&gt; is on your PATH&lt;/strong&gt; after &lt;code&gt;get.sh&lt;/code&gt; or &lt;code&gt;get.ps1&lt;/code&gt;, in new terminals. Set &lt;code&gt;INYON_NO_MODIFY_PATH=1&lt;/code&gt; to keep the installers from touching it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Setup keeps what you ticked.&lt;/strong&gt; Pressing &lt;code&gt;Enter&lt;/code&gt; on the network screen no longer unticks the box under the cursor, and the summary lists every VPN it found.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Readable names and local times.&lt;/strong&gt; The dashboard and &lt;code&gt;inyon status&lt;/code&gt; show a phone as &amp;quot;A142&amp;quot; instead of &amp;quot;A142 Build/BP2A.250605…&amp;quot; (phones paired from now on as &amp;quot;Nothing A142&amp;quot;), and times in your time zone.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;The app&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;A model or effort you pick stays in that session.&lt;/strong&gt; Claude Code saves a &lt;code&gt;/model&lt;/code&gt; or &lt;code&gt;/effort&lt;/code&gt; pick as your default for new sessions; Inyon now puts &lt;code&gt;model&lt;/code&gt;, &lt;code&gt;effortLevel&lt;/code&gt; and &lt;code&gt;modelSettings&lt;/code&gt; in &lt;code&gt;~/.claude/settings.json&lt;/code&gt; back the way they were.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Prompts read cleanly.&lt;/strong&gt; Commands lose the &lt;code&gt;│&lt;/code&gt; border from Claude's screen, lines stay apart, edit diffs are in colour, and an edit's alert names the file.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Status keeps up.&lt;/strong&gt; A session shows &lt;em&gt;Working&lt;/em&gt; as soon as you answer it, &amp;quot;Active … ago&amp;quot; counts from the last activity, and Recent activity stops saying &amp;quot;needs you&amp;quot; once you've answered.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reconnecting is calmer.&lt;/strong&gt; The last question stays on screen while the app reconnects, with &amp;quot;Reconnecting to …&amp;quot; instead of &amp;quot;offline&amp;quot;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Phones and tablets.&lt;/strong&gt; Notifications are asked for after you add your first computer. On tablets the sidebar sits below the status bar and keyboard hints are hidden on touch screens, and the keyboard closes after &lt;strong&gt;Send&lt;/strong&gt;. The jump-to-bottom button no longer covers text, and a computer's name isn't cut off on a phone.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Smaller things.&lt;/strong&gt; The effort chip shows the model's default level instead of &amp;quot;Default&amp;quot;. A computer's probe time reads &amp;quot;responds in 1.4 s&amp;quot;. Windows folders show properly in folder chips. The terminal draws ⏵⏵ and other symbols, with a minimum contrast for faint text. Removing a computer and pairing it again no longer shows the old entry's error.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Docs&lt;/h4&gt;
&lt;p&gt;New notes on Play Protect's scan prompt, on an npm global folder that isn't on your &lt;code&gt;PATH&lt;/code&gt;, on the Windows firewall rule and on how the integration updates itself.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.17.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.17.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-17-0"/>
    <published>2026-10-14T08:23:21Z</published>
    <updated>2026-10-14T08:23:21Z</updated>
    <content type="html">&lt;p&gt;Review what an agent did without leaving the app, a right-click menu everywhere, and machines that stay clean when you're done with them.&lt;/p&gt;
&lt;h4&gt;Review the work&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Files.&lt;/strong&gt; The side panel (and &lt;strong&gt;Activity&lt;/strong&gt; on a phone) has a &lt;strong&gt;Files&lt;/strong&gt; tab: the session's folder, read only. Read code with syntax highlighting, Markdown rendered, and images. &lt;strong&gt;Mention&lt;/strong&gt; puts &lt;code&gt;@path&lt;/code&gt; in your message.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Working tree.&lt;/strong&gt; &lt;strong&gt;Changes&lt;/strong&gt; now has two views. &lt;strong&gt;This chat&lt;/strong&gt; is what the agent edited in this conversation, as before. &lt;strong&gt;Working tree&lt;/strong&gt; is what git sees: every change since the last commit, whoever made it, with the branch and how far it is from its upstream. &lt;strong&gt;Commit all&lt;/strong&gt; and &lt;strong&gt;Push&lt;/strong&gt; are there too, and your git hooks and signing run as usual.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Comment on a diff.&lt;/strong&gt; Tap a line number in any diff to leave a comment. Comments collect under the diff, and &lt;strong&gt;Add to message&lt;/strong&gt; puts them all in your message box as one review, so you can add to it before sending.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fork a conversation.&lt;/strong&gt; &lt;strong&gt;Fork conversation&lt;/strong&gt; in the session menu (&lt;strong&gt;Fork&lt;/strong&gt; on a phone) opens a copy of a Claude Code, Codex or OpenCode conversation in a new tmux window, in the same folder and with the same flags. The two carry on separately, so you can try something else without losing where you were.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Right-click&lt;/h4&gt;
&lt;p&gt;Every part of the app now has its own right-click menu instead of the browser's: text boxes get &lt;strong&gt;Cut&lt;/strong&gt;, &lt;strong&gt;Copy&lt;/strong&gt;, &lt;strong&gt;Paste&lt;/strong&gt; and &lt;strong&gt;Select all&lt;/strong&gt;, links get &lt;strong&gt;Open&lt;/strong&gt; and &lt;strong&gt;Copy link&lt;/strong&gt;, files and changed files get &lt;strong&gt;Mention&lt;/strong&gt; and &lt;strong&gt;Copy path&lt;/strong&gt;, and anywhere else gets &lt;strong&gt;Back&lt;/strong&gt;, &lt;strong&gt;Reload&lt;/strong&gt;, &lt;strong&gt;Search…&lt;/strong&gt; and &lt;strong&gt;New session…&lt;/strong&gt;. Hold &lt;code&gt;Shift&lt;/code&gt; for the browser's own menu. &lt;strong&gt;How Inyon works&lt;/strong&gt; in Settings now opens the docs instead of GitHub.&lt;/p&gt;
&lt;h4&gt;Cleaning up after itself&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Uploads never pile up.&lt;/strong&gt; The hub tidies every machine about every six hours and when one comes back online. It deletes uploads past their age, then the oldest ones while the folder is over the new &lt;strong&gt;Keep at most&lt;/strong&gt; setting (1 GB by default). A file whose upload broke off keeps a &lt;code&gt;.part&lt;/code&gt; ending, so an agent never reads half a file, and goes after an hour. A computer paired only with a phone tidies its own uploads the same way.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Removing a machine takes Inyon off it.&lt;/strong&gt; While it can still be reached, removing a machine takes back the Claude Code and Antigravity integration (your own status line comes back), the uploads, the prompt log and the hub's SSH connection. Removing a server you reached with the phone key takes that key out of its &lt;code&gt;authorized_keys&lt;/code&gt;, and removing a paired computer unpairs the phone on it too.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Secrets are private from the first byte.&lt;/strong&gt; Files that hold settings, pasted prompts or a token are written readable only by you, and a temporary copy is removed even if the write is cut off.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;inyon uninstall --purge&lt;/code&gt;&lt;/strong&gt; gives Claude Code and Antigravity their own status lines back and drops Inyon's hooks before deleting &lt;code&gt;~/.inyon&lt;/code&gt;, and removes folders older versions left behind.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.16.1</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.16.1</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-16-1"/>
    <published>2026-10-14T06:57:32Z</published>
    <updated>2026-10-14T06:57:32Z</updated>
    <content type="html">&lt;p&gt;A terminal fix for high-resolution screens, a Support link, and a README for people who haven't used Inyon yet.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The terminal no longer shows a few giant lines.&lt;/strong&gt; With WebGL at a 2x pixel ratio, some browsers sized the terminal's canvas in CSS pixels once it refit, so every character came out twice as big and only the last lines fit. The terminal now checks the canvas right after WebGL takes over and goes back to ordinary page drawing if it's at the wrong scale. &lt;strong&gt;Settings → About → Terminal drawing&lt;/strong&gt; says which one is in use.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Support Inyon&lt;/strong&gt; in &lt;strong&gt;Settings → About&lt;/strong&gt; opens GitHub Sponsors in a new tab. Inyon is free and MIT licensed, so this is only for people who want to chip in. The README has a short Support section too.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Why not Paseo, Happy or Claude Remote Control?&lt;/strong&gt; The README now says how Inyon differs: it picks up agents already running in your tmux panes, needs only tmux and your agents on a server reached over SSH, and signs in to nothing. It also says what you give up: there's no iPhone app yet, and a new agent release can break a reader until Inyon catches up.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;README pictures redone&lt;/strong&gt; from the current app, so they show the 0.16 shortcuts (&lt;code&gt;Alt N&lt;/code&gt;, &lt;code&gt;Ctrl K&lt;/code&gt;) and the terminal as it should look.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The README's recordings come from a script that drives the real app (&lt;code&gt;apps/web/scripts/readme/shots.ts&lt;/code&gt;). On some ARM servers Chrome crashes or hangs after about a hundred captures; the script now starts a fresh browser and carries on from the same frame.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.16.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.16.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-16-0"/>
    <published>2026-10-13T21:10:25Z</published>
    <updated>2026-10-13T21:10:25Z</updated>
    <content type="html">&lt;p&gt;Right-click menus, a removed machine that stays removed, and a calmer refresh.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Right-click menus.&lt;/strong&gt; Sessions, machines, your messages, the agent's replies, code blocks, the terminal and past conversations now have a menu where you right-click. A session or a machine offers the same actions wherever it's listed: in a card, the sidebar, the overview or a machine's page. The ⋯ menus use the same lists, so a session card's menu also has &lt;strong&gt;Rename…&lt;/strong&gt;, &lt;strong&gt;Past conversations…&lt;/strong&gt;, &lt;strong&gt;Copy session ID&lt;/strong&gt; and &lt;strong&gt;Open in new tab&lt;/strong&gt;. With text selected, &lt;strong&gt;Copy&lt;/strong&gt; comes first. Text boxes, links to other sites and &lt;code&gt;Shift&lt;/code&gt;+right-click keep the browser's own menu. On a phone, long-press a row in the sidebar, a machine or a past conversation for the same menu.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;A removed machine stays removed.&lt;/strong&gt; Removing a machine closed its connection, but its background service started &lt;code&gt;inyon&lt;/code&gt; again, and it called the hub every 30 seconds for good. Now it leaves the hub by itself, as &lt;code&gt;inyon disconnect&lt;/code&gt; would: it forgets the hub and removes its service. A machine that was off at the time does this the next time it starts. The hub tells a removed machine apart from one whose token it simply doesn't know, so a hub that lost its data doesn't make machines leave. On a machine removed before 0.16, run &lt;code&gt;inyon disconnect&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New session from anywhere: &lt;code&gt;Alt N&lt;/code&gt;&lt;/strong&gt; (&lt;code&gt;⌥ N&lt;/code&gt; on a Mac). &lt;code&gt;N&lt;/code&gt; alone only works while you aren't typing, and in a session the message box takes the key. &lt;code&gt;Alt N&lt;/code&gt; works from the message box too, but not in the terminal, where Alt keys belong to the shell. The sidebar shows each shortcut the way your computer names its keys.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pull to refresh no longer spins the logo.&lt;/strong&gt; As you pull, the kite's line pays out from the node; while the page refreshes, it reels in and out. The refresh button on a computer does the same.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Checked: the hub answers a removed machine's token differently from an unknown one, a removed machine runs &lt;code&gt;inyon disconnect&lt;/code&gt; and stops, &lt;code&gt;disconnect&lt;/code&gt; stops the service only after everything else is gone, and a systemd user unit that removes itself that way isn't started again.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.15.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.15.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-15-0"/>
    <published>2026-10-13T20:10:23Z</published>
    <updated>2026-10-13T20:10:23Z</updated>
    <content type="html">&lt;p&gt;Go back to an earlier conversation from the app, and use Inyon on a tablet.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Past conversations.&lt;/strong&gt; Each agent's resume picker only works in its terminal, so Inyon now lists an agent's saved conversations for the session's folder and switches to one. Open it with &lt;strong&gt;Past conversations…&lt;/strong&gt; in the &lt;strong&gt;⋯&lt;/strong&gt; menu, &lt;strong&gt;History&lt;/strong&gt; in the phone's controls sheet, the panel shown when no agent is running, or by sending &lt;code&gt;/resume&lt;/code&gt; (&lt;code&gt;/switch&lt;/code&gt; in Copilot and Antigravity, &lt;code&gt;/sessions&lt;/code&gt; in OpenCode). The agent exits the way &lt;code&gt;/exit&lt;/code&gt; would and starts again on the conversation you picked, in the same pane. Works for Claude Code, Codex, GitHub Copilot, OpenCode and Antigravity CLI; Gemini CLI isn't supported yet. A paired hub needs 0.15 too.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Phones stay upright, tablets turn.&lt;/strong&gt; The Android app no longer rotates on a phone. A tablet, or a foldable when it's open, turns with the device and gets the wide layout.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tablet layouts.&lt;/strong&gt; The machines table and the message box's controls now fit the space they have, not the screen's width, so they no longer squeeze next to the sidebar. Cards no longer glide across the list when only its width changed.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;A terminal draft shows up after the terminal view.&lt;/strong&gt; Text typed in the terminal while the terminal view was open now appears in the message box when you switch back.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Attachments show their own name&lt;/strong&gt; without the upload prefix, with an image or file icon to match.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Paired hubs stay current on the phone.&lt;/strong&gt; A hub's new name or version shows up without pairing it again.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Machines with the same name are told apart.&lt;/strong&gt; The second one, if it comes through a paired hub, shows that hub's address after its name.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Checked on an Android phone against a test hub: listing, switching while the agent runs, &lt;code&gt;/resume&lt;/code&gt; from the message box, starting a past conversation after the agent exited, and the portrait lock. Tablet layouts were checked at 600 to 1280 pixels wide.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.14.1</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.14.1</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-14-1"/>
    <published>2026-10-13T17:46:07Z</published>
    <updated>2026-10-13T17:46:07Z</updated>
    <content type="html">&lt;p&gt;Downloads and updates come from the website.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Installs and updates use the website.&lt;/strong&gt; &lt;code&gt;get.sh&lt;/code&gt;, &lt;code&gt;get.ps1&lt;/code&gt;, &lt;code&gt;inyon update&lt;/code&gt; and setup's engine download now fetch from https://inyon.abhashchakraborty.tech/download, which keeps a copy of the newest release. Every release stays on GitHub too, and &lt;code&gt;INYON_DOWNLOAD&lt;/code&gt; still points anywhere else. This version is the first to update from the website; 0.14.0 and earlier update from GitHub.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The website's version list can't swap a release.&lt;/strong&gt; The website names its release in &lt;code&gt;latest.json&lt;/code&gt;, which isn't signed, so it only chooses what to fetch. After &lt;code&gt;SHA256SUMS.minisig&lt;/code&gt; checks out, the signed list must name &lt;code&gt;inyon-&amp;lt;version&amp;gt;.apk&lt;/code&gt; for that same version, or nothing changes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;A signing key from the environment counts only for a test release.&lt;/strong&gt; &lt;code&gt;INYON_SIGNING_KEY&lt;/code&gt; is ignored when downloads come from the website or from GitHub.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No gzip, still installs.&lt;/strong&gt; If the website serves only the &lt;code&gt;.gz&lt;/code&gt; copies of a large release, &lt;code&gt;get.sh&lt;/code&gt; on a machine without &lt;code&gt;gzip&lt;/code&gt; takes the plain file from the matching GitHub release and checks it against the same signed list.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Update checks read the website.&lt;/strong&gt; The hub, the app's check for your computers and the Android app read &lt;code&gt;latest.json&lt;/code&gt; instead of GitHub's API, and the Android app downloads its APK from the website.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The website shows a release only once it's complete.&lt;/strong&gt; It waits until the APK is in the signed checksum list, so the download page never links a missing APK. 0.14.0's page had that problem for a few minutes after it came out.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Checked in containers: an older command updated itself from the website, setup fetched the engine with GitHub blocked, a copy whose &lt;code&gt;latest.json&lt;/code&gt; named the wrong version was refused, and Ubuntu (with and without &lt;code&gt;gzip&lt;/code&gt;) and Alpine installed from the website.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.14.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.14.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-14-0"/>
    <published>2026-10-13T16:56:19Z</published>
    <updated>2026-10-13T16:56:19Z</updated>
    <content type="html">&lt;p&gt;Signed downloads, Alpine, and one owner for services and updates.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Every release is signed.&lt;/strong&gt; &lt;code&gt;SHA256SUMS&lt;/code&gt; comes with &lt;code&gt;SHA256SUMS.minisig&lt;/code&gt;, a minisign signature by Inyon's release key (&lt;code&gt;RWRTvQv/ifQnD3jarY1oarS0AKdhogH+mdgn/o0NzT/Ro8L43nFqqfp6&lt;/code&gt;). &lt;code&gt;inyon update&lt;/code&gt; and setup's engine download check the signature before trusting the list, and refuse a release that lacks it or fails it; nothing on the machine changes in that case. The installers check it too when &lt;code&gt;minisign&lt;/code&gt; is installed, and say so when it is not. How to check by hand is on the &lt;a href=&quot;https://inyon.abhashchakraborty.tech/docs/security/#downloads&quot;&gt;security page&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Alpine runs the engine.&lt;/strong&gt; The release carries &lt;code&gt;inyon-engine-linux-x64-musl&lt;/code&gt; and &lt;code&gt;inyon-engine-linux-arm64-musl&lt;/code&gt;, and the command picks them on a musl system. The engine needs &lt;code&gt;libstdc++&lt;/code&gt; and &lt;code&gt;libgcc&lt;/code&gt; there; the installer adds them as root, or says how. Checked with a full install in an Alpine container.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The command owns services and updates.&lt;/strong&gt; The engine no longer installs background services or updates itself; &lt;code&gt;inyon setup&lt;/code&gt;, &lt;code&gt;inyon service&lt;/code&gt;, &lt;code&gt;inyon join&lt;/code&gt;, &lt;code&gt;inyon hub&lt;/code&gt; and &lt;code&gt;inyon update&lt;/code&gt; do all of it, as they did since 0.13, and the engine is only the program that runs the link, the hub connection and the hub. Updates started from the app work as before.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Downloads from the website.&lt;/strong&gt; The latest release is mirrored at https://inyon.abhashchakraborty.tech/download/, and the docs now live on the same site. The mirror only takes a release whose signature and checksums all check out.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hub sessions work from the phone again.&lt;/strong&gt; The app streamed request bodies to a paired hub, and Android's WebView sends a streamed body only over HTTP/2, so messages, goals, models, attachments and sign-in all failed on a hub's machines. Bodies now go as bytes. Reconnecting no longer opens a second connection to the same hub, and a message that fails after a reconnect is resent once, then waits for Retry.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ending an agent's session no longer waits out the timeout&lt;/strong&gt; when the hub never saw the agent's process. tmux answers success for a pane that is gone, so the hub now checks the pane's id instead.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;tether-node-*&lt;/code&gt; copies of the engine are no longer attached, as 0.13's notes said. A machine still on 0.10 or earlier installs again with the one-line installer.&lt;/li&gt;
&lt;li&gt;Windows on ARM keeps the arm64 command with the x64 engine: there is no Bun build for it yet. A hub hands its machines the glibc engine; an Alpine machine installs from the release instead.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.13.3</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.13.3</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-13-3"/>
    <published>2026-10-13T15:46:53Z</published>
    <updated>2026-10-13T15:46:53Z</updated>
    <content type="html">&lt;p&gt;The Android app can pair with a hub on a plain address.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hubs on a private network.&lt;/strong&gt; A hub reached as &lt;code&gt;http://&amp;lt;name&amp;gt;&lt;/code&gt; or &lt;code&gt;http://&amp;lt;ip&amp;gt;:4777&lt;/code&gt; (a LAN, Tailscale, NetBird) could not be paired from the Android app: Android blocks plain http from an app unless the app says otherwise, so the request failed on the phone with &amp;quot;Failed to fetch&amp;quot; before it reached the hub. The app now allows it. Hubs behind a tunnel or a domain were never affected.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;A better message when a hub doesn't answer.&lt;/strong&gt; A timeout asks whether the phone is on the hub's network; a plain address typed into the web app explains that the Android app, or the hub's own page, is the way in; anything else asks whether the address opens in the phone's browser.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Update the app from the release's APK, then pair again from Add → Connect to a hub.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.13.2</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.13.2</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-13-2"/>
    <published>2026-10-13T14:51:27Z</published>
    <updated>2026-10-13T14:51:27Z</updated>
    <content type="html">&lt;p&gt;The opening animation, made dependable.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;It waits for the header.&lt;/strong&gt; On a first open the page can still be signing in when the mark has finished drawing. The mark now holds for up to a second until the header is there, then flies onto it. Where no header turns up it fades in place.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;It always flies the whole way.&lt;/strong&gt; About one cold start in four lost the flight: the browser dated the move from the last frame it had painted and declared it over almost at once, so the mark seemed to jump and the page cut in around it. The flight now starts inside a rendering frame, and the opening only ends once the mark really sits on the header's mark. Eighteen cold starts in a row land to the pixel, phone and desktop, light and dark.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.13.1</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.13.1</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-13-1"/>
    <published>2026-10-13T14:28:37Z</published>
    <updated>2026-10-13T14:28:37Z</updated>
    <content type="html">&lt;p&gt;A short intro on a cold start, and the mark's line put to work.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Opening.&lt;/strong&gt; The first time the app opens in a session, the mark draws itself: the computer drops in, a light trails behind it and draws the line, and the kite is where it lands. Under 1.2 s, then it flies onto the mark in the header and the page fades in behind it. It measures where the header's mark is, so it lands on it exactly, and the page is only handed over once it has arrived. A tap skips it. With reduced motion on, nothing moves: the finished mark shows for a moment and fades.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The same line, waiting.&lt;/strong&gt; The empty overview and the pairing wait use the drawn mark instead of a spinner, so the first screen and the first pairing look like the same product.&lt;/li&gt;
&lt;li&gt;The page's ground colour is set before any stylesheet loads, so a cold start in dark mode no longer flashes white.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.13.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.13.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-13-0"/>
    <published>2026-10-13T13:57:37Z</published>
    <updated>2026-10-13T13:57:37Z</updated>
    <content type="html">&lt;p&gt;A new &lt;code&gt;inyon&lt;/code&gt; command, in beta. Set up a computer: &lt;code&gt;curl -fsSL https://inyon.abhashchakraborty.tech/get.sh | sh&lt;/code&gt; (Windows, in PowerShell: &lt;code&gt;irm https://inyon.abhashchakraborty.tech/get.ps1 | iex&lt;/code&gt;).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;inyon&lt;/code&gt; is a 2 MB program now.&lt;/strong&gt; It answers in a few milliseconds, draws the setup questions and a status dashboard in the terminal, and owns what the machine runs in the background. Today's program ships behind it as the engine (&lt;code&gt;inyon-engine&lt;/code&gt;, fetched by setup with a progress line) and keeps running the link, the hub connection and the hub.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Setup asks four things:&lt;/strong&gt; what this machine is to the app (paired to the phone, a hub, or joining a hub), how it answers (this machine only, the LAN, a private network it finds, the tunnel, or your own address), whether to run in the background, and for a hub the web sign-in. Then the pairing code. Without a terminal, or with &lt;code&gt;--yes&lt;/code&gt;, flags answer the same questions.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Commands:&lt;/strong&gt; &lt;code&gt;inyon&lt;/code&gt; (the dashboard), &lt;code&gt;setup&lt;/code&gt;, &lt;code&gt;pair&lt;/code&gt;, &lt;code&gt;phones&lt;/code&gt;, &lt;code&gt;forget&lt;/code&gt;, &lt;code&gt;join&lt;/code&gt;, &lt;code&gt;disconnect&lt;/code&gt;, &lt;code&gt;hub start|stop|restart&lt;/code&gt;, &lt;code&gt;service install|uninstall|status&lt;/code&gt;, &lt;code&gt;logs&lt;/code&gt;, &lt;code&gt;doctor&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;uninstall&lt;/code&gt;, &lt;code&gt;version&lt;/code&gt;. Each takes &lt;code&gt;--json&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Existing machines cross over by themselves.&lt;/strong&gt; An install from 0.11 or 0.12 updates to both files and keeps its pairings; one that cannot prints the one-line reinstall. Services written by earlier versions keep working. Update a hub before the machines joined to it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;A hub hands the whole thing to machines it adds&lt;/strong&gt;, so a machine without GitHub access still installs, and the dashboard on a hub lists its machines.&lt;/li&gt;
&lt;li&gt;Linux arm64 and x64, macOS, Windows x64; Windows on ARM gets the arm64 command with the x64 engine. Alpine gets the command, but the engine does not run on musl yet.&lt;/li&gt;
&lt;li&gt;Checked in clean Ubuntu, Debian and Fedora containers, and as an upgrade from a real 0.12.0 install with a paired phone.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Beta: the old single program is still in every release as &lt;code&gt;tether-node-&amp;lt;os&amp;gt;-&amp;lt;arch&amp;gt;&lt;/code&gt; for one more release. Report anything odd at https://github.com/Abhash-Chakraborty/inyon/issues.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.12.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.12.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-12-0"/>
    <published>2026-10-13T09:02:58Z</published>
    <updated>2026-10-13T09:02:58Z</updated>
    <content type="html">&lt;p&gt;The phone app pairs with a hub. Set up a computer: &lt;code&gt;curl -fsSL https://inyon.abhashchakraborty.tech/get.sh | sh&lt;/code&gt; (Windows, in PowerShell: &lt;code&gt;irm https://inyon.abhashchakraborty.tech/get.ps1 | iex&lt;/code&gt;).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Open a hub on your phone.&lt;/strong&gt; On the hub's web app, &lt;em&gt;Open on your phone&lt;/em&gt; (on the overview until a phone is paired, under Machines, and in Settings) shows a QR code and a typed code. In the app, &lt;em&gt;Add → Connect to a hub&lt;/em&gt; scans it, or takes the hub's address and the code. From then on the phone reaches the hub itself, with no browser in between, and the hub's machines show next to the computers the phone pairs with directly.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Scoped and short-lived.&lt;/strong&gt; The hub hands a code only to someone who signed in within the last ten minutes; it works once, for ten minutes, and five wrong tries cancel it. A paired phone gets its own token, listed under Settings on the hub with &lt;em&gt;Forget&lt;/em&gt;, which cuts it off at once. The phone lists its hubs the same way.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Three ways to connect, named the same everywhere.&lt;/strong&gt; Direct (the app over SSH, nothing installed), a computer running &lt;code&gt;inyon&lt;/code&gt; (scan its code), or a hub (scan the hub's code, or open its web app).&lt;/li&gt;
&lt;li&gt;A hub out of reach shows its machines as connecting until it answers; one that forgot the phone drops out with a word.&lt;/li&gt;
&lt;li&gt;Pointing the phone's camera at a hub's code opens the download page, which hands the code to the app, as a computer's code does.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.11.1</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.11.1</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-11-1"/>
    <published>2026-10-13T08:36:35Z</published>
    <updated>2026-10-13T08:36:35Z</updated>
    <content type="html">&lt;p&gt;Motion and haptics, kept minimal. Set up a computer: &lt;code&gt;curl -fsSL https://inyon.abhashchakraborty.tech/get.sh | sh&lt;/code&gt; (Windows, in PowerShell: &lt;code&gt;irm https://inyon.abhashchakraborty.tech/get.ps1 | iex&lt;/code&gt;).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;One motion system.&lt;/strong&gt; Four durations (120 ms exits, 200 ms small moves, 320 ms cards and pages, 480 ms sheets only), two eases, distances of 2–8 px. Nothing shakes, bounces or overshoots, and a test keeps it that way.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cards arrive, leave and move without jumping.&lt;/strong&gt; A new session rises in; one that ends fades out and the others slide into place. Answering a prompt reads Sending, then Sent, and the card goes once the agent took it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The mark does the waiting.&lt;/strong&gt; While the hub is out of reach the kite's line draws itself in the header. Pull to refresh brings the mark down with your finger and turns it once; on a desktop a refresh button does the same.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Skeletons that say what they wait for.&lt;/strong&gt; Every spinner standing in for content is now a skeleton in the shape of what will appear, with one line naming what is being waited for. Spinners stay only inside busy buttons.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Quieter marks.&lt;/strong&gt; The provider logos no longer spin, twinkle or bob while an agent works; the state dot says it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Haptics match.&lt;/strong&gt; One light tick per touch, two short pulses only for a confirmed outcome (once per prompt), three for an error. Sending, confirming and opening a sheet no longer buzz on their own.&lt;/li&gt;
&lt;li&gt;Smaller touches: the terminal rises in over the chat, a copied icon crossfades to a check, offline machines dim, toasts leave faster.&lt;/li&gt;
&lt;li&gt;Reduced motion keeps the short fades and removes every move, on the web and through Android's &amp;quot;remove animations&amp;quot;.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.11.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.11.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-11-0"/>
    <published>2026-10-13T08:23:16Z</published>
    <updated>2026-10-13T08:23:16Z</updated>
    <content type="html">&lt;p&gt;Speed and space. Nothing changes in how Inyon is set up or paired.&lt;/p&gt;
&lt;p&gt;Set up a computer: &lt;code&gt;curl -fsSL https://inyon.abhashchakraborty.tech/get.sh | sh&lt;/code&gt; (Windows, in PowerShell: &lt;code&gt;irm https://inyon.abhashchakraborty.tech/get.ps1 | iex&lt;/code&gt;).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The app opens on the last thing it saw.&lt;/strong&gt; It keeps the last overview and the last three chat pages on the device and draws them in the first frame, before the hub has answered. The hub's data then replaces them in place. Signing out clears them.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;One card at a time.&lt;/strong&gt; An update from the hub used to redraw every card; now only the session that changed redraws, and a burst of changes reaches the app as one message. On a throttled phone profile the longest frame during a burst of updates went from 150 ms to 67 ms.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Less to download on first open.&lt;/strong&gt; The Latin fonts only (51 KB instead of 173 KB); the serif comes with the first Claude session. Syntax highlighting loads each language the first time a code block needs it, which halves the chat code. React sits in its own chunk, so it stays cached across app updates, and the service worker caches every chunk at install: a second open needs no network for the app itself.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The terminal draws with WebGL&lt;/strong&gt; where the device has it, which keeps busy output smooth. Settings → About says which renderer is in use.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Smaller downloads for &lt;code&gt;inyon&lt;/code&gt;.&lt;/strong&gt; Each release file is also published gzipped, 38 MB instead of 84. The installers, &lt;code&gt;inyon update&lt;/code&gt; and a hub handing the program to a new machine take the gzipped copy and check both checksums. The plain files stay for installs from before 0.11.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ready for 0.13.&lt;/strong&gt; The updater already knows the file names of the coming command-line program and engine, so machines will cross over by themselves.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;inyon hub code&lt;/code&gt; shows a hub's setup code again, and &lt;code&gt;inyon hub reset-password&lt;/code&gt; replaces a forgotten password.&lt;/li&gt;
&lt;li&gt;The Android app paints the page's ground colour before its first frame, so nothing white shows after the splash.&lt;/li&gt;
&lt;li&gt;The hub accepts an IPv6 address without brackets in the address bar.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Measured on a 2-core ARM server with a phone profile and a 10 Mbit link (apps/web/scripts/perf): first open 1.3 s → 1.2 s; second open 0.4 s → 0.3 s; the hub's round trip no longer sits in front of the first paint. Script time per overview update is about 15% lower; most of what remains is React itself.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.10.1</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.10.1</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-10-1"/>
    <published>2026-10-13T04:54:17Z</published>
    <updated>2026-10-13T04:54:17Z</updated>
    <content type="html">&lt;p&gt;Set up a computer with the short address:&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;&lt;span class=&quot;lang&quot;&gt;shell&lt;/span&gt;&lt;button class=&quot;copy&quot; type=&quot;button&quot; aria-label=&quot;Copy&quot;&gt;Copy&lt;/button&gt;&lt;pre&gt;&lt;code&gt;curl -fsSL https://inyon.abhashchakraborty.tech/get.sh | sh
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;On Windows, in PowerShell: &lt;code&gt;irm https://inyon.abhashchakraborty.tech/get.ps1 | iex&lt;/code&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Short install commands.&lt;/strong&gt; The site serves each release's &lt;code&gt;get.sh&lt;/code&gt; and &lt;code&gt;get.ps1&lt;/code&gt;, so the one-liners above replace the long GitHub URLs. The app's &lt;em&gt;Add a computer&lt;/em&gt; sheet shows them too. The programs themselves still download from this repo's releases and are checked against SHA256SUMS.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The site is only downloads and docs now.&lt;/strong&gt; inyon.abhashchakraborty.tech no longer runs the web app, and nothing there connects to your computers. A computer's QR code scanned with the phone camera opens the download page, which offers to copy the pairing link for the app. For a browser, run your own hub (&lt;code&gt;get.sh --hub&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;End session&lt;/strong&gt; no longer reports a failure when the agent was its pane's own command and took the pane with it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Needs-you cards:&lt;/strong&gt; the first answer button is ink, not the agent's colour.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Machines:&lt;/strong&gt; the line under each machine wraps instead of cutting off, and reads &amp;quot;2 sessions · 2 agents&amp;quot;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Settings → Agents&lt;/strong&gt; shows &lt;code&gt;opencode&lt;/code&gt; instead of the flags Inyon adds to reach OpenCode's local API.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.10.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.10.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-10-0"/>
    <published>2026-10-12T17:54:31Z</published>
    <updated>2026-10-12T17:54:31Z</updated>
    <content type="html">&lt;p&gt;Inyon is one repo now. Releases, the Android app and the setup guide all live here, and the web app has its own address: &lt;a href=&quot;https://inyon.abhashchakraborty.tech/&quot;&gt;inyon.abhashchakraborty.tech&lt;/a&gt;. The old &lt;a href=&quot;https://github.com/Abhash-Chakraborty/inyon-releases&quot; class=&quot;ext&quot; rel=&quot;noopener&quot;&gt;inyon-releases&lt;/a&gt; address and its web page redirect here, and an older install updates to this release from there, then from this repo after that. Browsers keep a site's data per address, so a computer paired in the browser before has to be paired again, once.&lt;/p&gt;
&lt;p&gt;Set up a computer:&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;&lt;span class=&quot;lang&quot;&gt;shell&lt;/span&gt;&lt;button class=&quot;copy&quot; type=&quot;button&quot; aria-label=&quot;Copy&quot;&gt;Copy&lt;/button&gt;&lt;pre&gt;&lt;code&gt;curl -fsSL https://github.com/Abhash-Chakraborty/inyon/releases/latest/download/get.sh | sh
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Notifications with the app closed.&lt;/strong&gt; Browsers get Web Push. A hub sends them itself; in the web app, each paired computer running inyon 0.10 sends them when an agent needs you or finishes. They're encrypted to your browser, and no Inyon server is involved.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Private networks.&lt;/strong&gt; inyon finds Tailscale, Headscale, NetBird, ZeroTier and WireGuard, and answers on them as well as through the tunnel. The Android app on the same network connects straight to the computer.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sessions by machine.&lt;/strong&gt; The sidebar groups sessions by machine and tmux session, with folding and a search past eight. The overview groups its cards the same way. Machines shows whether each one is a server, a laptop or a desktop.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;End session.&lt;/strong&gt; From a session's menu or its card: the agent exits, then its tmux pane closes. Other windows aren't touched.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fixed:&lt;/strong&gt; the shell command note ran over the composer's rounded corner, and long shell commands ran out of their chat bubble.&lt;/li&gt;
&lt;li&gt;The Android app no longer includes Firebase, and it's 192 KB smaller.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.9.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.9.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-9-0"/>
    <published>2026-10-12T14:20:47Z</published>
    <updated>2026-10-12T14:20:47Z</updated>
    <content type="html"></content>
  </entry>
  <entry>
    <title>Inyon 0.8.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.8.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-8-0"/>
    <published>2026-10-12T13:09:17Z</published>
    <updated>2026-10-12T13:09:17Z</updated>
    <content type="html"></content>
  </entry>
  <entry>
    <title>Inyon 0.7.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.7.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-7-0"/>
    <published>2026-10-12T09:31:26Z</published>
    <updated>2026-10-12T09:31:26Z</updated>
    <content type="html"></content>
  </entry>
  <entry>
    <title>Inyon 0.6.5</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.6.5</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-6-5"/>
    <published>2026-10-12T06:29:25Z</published>
    <updated>2026-10-12T06:29:25Z</updated>
    <content type="html">&lt;p&gt;When another Claude session sends a message that needs your OK before it's delivered, the chat now shows the choice as buttons. Before, you had to open the terminal to pick one.&lt;/p&gt;
&lt;p&gt;Fixes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A message from another session stayed at the bottom of the chat as &amp;quot;Queued&amp;quot; after Claude had read it.&lt;/li&gt;
&lt;li&gt;Helper agents a Claude session had started stayed under background activity as running after they finished.&lt;/li&gt;
&lt;li&gt;A chat the hub had saved before a fix like these kept the old mistake. Saved chats are now read again once when the hub's reader changes.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;tether-node 0.6.5 and the Android app are in &lt;a href=&quot;https://github.com/Abhash-Chakraborty/tether-releases/releases/tag/v0.6.5&quot; class=&quot;ext&quot; rel=&quot;noopener&quot;&gt;tether-releases&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.6.4</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.6.4</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-6-4"/>
    <published>2026-10-11T23:28:50Z</published>
    <updated>2026-10-11T23:28:50Z</updated>
    <content type="html">&lt;p&gt;Updates are one tap now. Settings shows when the hub, a computer's tether-node or the Android app is behind, and &lt;em&gt;Update&lt;/em&gt; brings it up to date. Nothing updates by itself. On the hub machine &lt;code&gt;pnpm hub:update&lt;/code&gt; does the same, and on any computer &lt;code&gt;tether-node update&lt;/code&gt;. If a new tether-node doesn't start, the old one comes back.&lt;/p&gt;
&lt;p&gt;Renaming a session renames it in the agent itself, so the name is the same in the hub, the phone app and the agent's own resume list. If the agent is busy, the name goes in as soon as it's idle.&lt;/p&gt;
&lt;p&gt;Codex chats show up when you pick an older thread with &lt;code&gt;/resume&lt;/code&gt;, and typing &lt;code&gt;$&lt;/code&gt; in a Codex chat lists its skills. A skill you just installed shows up in the &lt;code&gt;/&lt;/code&gt; and &lt;code&gt;$&lt;/code&gt; lists without reloading.&lt;/p&gt;
&lt;p&gt;On the phone, pull down on the overview or the computers list to refresh.&lt;/p&gt;
&lt;p&gt;Fixes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Quitting an agent and starting a new one in the same pane showed the old conversation. The new one now starts empty.&lt;/li&gt;
&lt;li&gt;After a Claude session was named, a numbered list in its last reply was taken for a question, which blocked sending.&lt;/li&gt;
&lt;li&gt;An agent running in a folder that was deleted stopped showing its replies.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;tether-node 0.6.4 and the Android app are in &lt;a href=&quot;https://github.com/Abhash-Chakraborty/tether-releases/releases/tag/v0.6.4&quot; class=&quot;ext&quot; rel=&quot;noopener&quot;&gt;tether-releases&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.6.3</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.6.3</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-6-3"/>
    <published>2026-10-11T20:53:13Z</published>
    <updated>2026-10-11T20:53:13Z</updated>
    <content type="html">&lt;p&gt;Windows machines get a terminal. On a laptop running psmux, the terminal button opens the pane's screen and lets you type, use arrow keys and Ctrl+C, and paste. Long and multi-line messages now reach agents on Windows whole.&lt;/p&gt;
&lt;p&gt;The message box keeps what you leave in it. A message you sent no longer comes back after you switch sessions and return, and text you erase stays erased, even while the agent is busy working. Changing the model or mode no longer shows up as a message in the chat, and an old goal no longer flashes up when a chat reopens.&lt;/p&gt;
&lt;p&gt;Fixes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Signing out, or changing the password, now disconnects browsers that were already open.&lt;/li&gt;
&lt;li&gt;An answer that arrives late is refused if a different question is on screen by then, instead of picking the same number in the new one.&lt;/li&gt;
&lt;li&gt;A turn that finishes while a machine is offline is reported when it's back, and a question that was already waiting isn't announced twice.&lt;/li&gt;
&lt;li&gt;Scrolling back through a long chat on a bad connection no longer skips messages.&lt;/li&gt;
&lt;li&gt;Two files with the same name uploaded at once no longer overwrite each other, and a file that fails to upload holds the message until you retry or remove it.&lt;/li&gt;
&lt;li&gt;OpenCode's &amp;quot;Resume conversation&amp;quot; works, and restarting an agent keeps settings paths that have spaces in them.&lt;/li&gt;
&lt;li&gt;Gemini and Codex chats are found in home folders with spaces in their names.&lt;/li&gt;
&lt;li&gt;Enter in the model menu picks the model without sending your half-typed message, and menus fit short windows.&lt;/li&gt;
&lt;li&gt;Forgetting a phone in tether-node ends any session it still had open. Uninstalling tether-node on Linux without systemd stops its background process too.&lt;/li&gt;
&lt;li&gt;In the background the phone app reads open chats every 20 seconds instead of every 2, which saves battery and data.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;tether-node 0.6.3 is in &lt;a href=&quot;https://github.com/Abhash-Chakraborty/tether-releases/releases/tag/v0.6.3&quot; class=&quot;ext&quot; rel=&quot;noopener&quot;&gt;tether-releases&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.6.2</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.6.2</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-6-2"/>
    <published>2026-10-11T18:17:29Z</published>
    <updated>2026-10-11T18:17:29Z</updated>
    <content type="html">&lt;p&gt;Chats keep their place. A chat's saved copy is now written as soon as it loads, so reopening the app shows it at once and reads only what was said since. Long conversations open on their last stretch and load the rest as you scroll up.&lt;/p&gt;
&lt;p&gt;Servers over SSH, without tether-node on them. Add a server from the phone and sign in with the phone's own key, a password, a private key you paste, or nothing at all. A server the phone can't reach directly can go through a paired computer that already SSHes to it.&lt;/p&gt;
&lt;p&gt;Alerts while the app is closed. Stay connected is on by default and no longer stops after six hours a day on Android 15. The app asks Android once to let it run in the background, so the connection survives the screen going off.&lt;/p&gt;
&lt;p&gt;Fixes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A long message is no longer cut off when an old paste preview was still in Claude's input box.&lt;/li&gt;
&lt;li&gt;A &amp;quot;needs you&amp;quot; notification goes away when the question is answered somewhere else.&lt;/li&gt;
&lt;li&gt;Servers with tmux 3.4 and no locale list their sessions again.&lt;/li&gt;
&lt;li&gt;Drafts, chats and machine lists are saved when the app goes to the background or the hub restarts.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Inyon 0.6.1</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.6.1</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-6-1"/>
    <published>2026-10-11T10:30:08Z</published>
    <updated>2026-10-11T10:30:08Z</updated>
    <content type="html"></content>
  </entry>
  <entry>
    <title>Inyon 0.6.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.6.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-6-0"/>
    <published>2026-10-11T10:19:19Z</published>
    <updated>2026-10-11T10:19:19Z</updated>
    <content type="html"></content>
  </entry>
  <entry>
    <title>Inyon 0.5.0</title>
    <id>https://github.com/Abhash-Chakraborty/inyon/releases/tag/v0.5.0</id>
    <link rel="alternate" type="text/html" href="https://inyon.abhashchakraborty.tech/docs/changelog/#v0-5-0"/>
    <published>2026-10-11T02:55:39Z</published>
    <updated>2026-10-11T02:55:39Z</updated>
    <content type="html"></content>
  </entry>
</feed>
