Skip to content

Codeshi 0.40.0

Choose a tag to compare

@github-actions github-actions released this 10 Nov 02:55
· 49 commits to main since this release

Install

macOS

Run this in Terminal. It picks the right build for your Mac, verifies its checksum and installs it in Applications:

curl -fsSL https://raw.githubusercontent.com/AhmedNavaz/codeshi/main/install.sh | sh

Or download the zip for your Mac:

Mac File
Apple Silicon (M1 and later) Codeshi-0.40.0-mac-apple-silicon.zip
Intel Codeshi-0.40.0-mac-intel.zip

Unzip, move Codeshi to Applications and open it. Use your own configured Claude Code or Codex CLI connection, or connect Gemini through Google Antigravity in Settings (Install Google connection, then Connect account). Local continuation needs Codex CLI, Ollama and a downloaded tool-capable model. See the setup guide in the repository for authentication and billing details.

The app is not notarized by Apple yet, so the first time you open a browser download macOS says it cannot verify the developer. Open System Settings › Privacy & Security and click Open Anyway. You only need to do this once. If macOS instead says the app is damaged, run xattr -cr /Applications/Codeshi.app and open it again.

Windows

Run this in PowerShell. It downloads the Windows build, verifies its checksum, installs it for your user account and adds it to the Start menu:

irm https://raw.githubusercontent.com/AhmedNavaz/codeshi/main/install.ps1 | iex

Or download Codeshi-0.40.0-windows-x64.zip, unzip it and open Codeshi.exe in the Codeshi folder. The app is not signed yet, so the first time you open a browser download Windows may say it protected your PC: click More info, then Run anyway. On Windows, connect Claude Code or the Codex CLI; installing the Google connection from Settings is not available on Windows yet. Updates install from inside the app on macOS; on Windows, run the installer again.

The private-link service for Ask a Friend is published as a container image: docker pull ghcr.io/ahmednavaz/codeshi-sharing:0.40.0

What's new

Added

  • Copy project memory to AGENTS.md (#21). Copy to AGENTS.md under Memory in the Brief panel writes the memories you choose into a folder's AGENTS.md as one marked section, after showing exactly what will be written. The rest of the file is kept as it is, copying again replaces only that section, and nothing is committed. The write is refused if the file changed after the preview or an agent is working in that folder.
  • Hands-free voice conversations (#72), on macOS, in Flow. Choose Conversation from the arrow beside the microphone, or as Mode in Settings › Voice, and ⌥⌘V or the microphone starts a conversation that listens until you say "stop listening", press Esc or click the microphone. Say "send" as the last word, then pause, to send. "send" in the middle of a sentence stays part of the message, and Send after a pause sends after two seconds of silence. While a run works, what you send goes into it when the agent allows additions, or joins the queue, as While the agent works chooses. Listening pauses while Codeshi reads a reply or a request aloud, and a short tone says when it listens again. Approvals are read out: "deny" denies, and approving needs "approve" and then "yes, approve". Questions with choices are answered on screen, and listening waits for them. Each listening session still lasts at most two minutes, and the next starts by itself without losing what you said. Speech stays on your Mac.
  • Add terminal output to your message (#71). Select output in the terminal, such as a failing test or a stack trace, and Add to message puts it in the message box as a code block that names its folder: a button at the top of the panel, the right-click menu, or ⇧⌘L (Ctrl+Shift+L on Windows and Linux). With nothing selected, it adds the screen as it shows. Nothing reaches an agent until you send the message, and the conversation never reads the terminal on its own. Output over 200 lines keeps its first 50 and last 150 lines, and at most 16,000 characters. Output that looks like it holds a token, key or password is left as it is, with a notice to check it before you send.
  • Add Remote access to your Home Screen (#115). The Away from home page now has a web app manifest, the Codeshi icon and Apple's web app tags, so an icon added to the Home Screen opens full screen with the right name and mark. After a phone pairs, it shows Add to Home Screen once, suited to the device: the Share menu steps on iPhone, the browser's own Install prompt on Android, and on a QR scanner app's built-in browser, a way to move the connection to Safari first. It isn't shown in an installed app or on Same Wi-Fi, which uses plain HTTP and an address that can change, and it stays at the bottom of the workspace list.
  • Type a code to move a connection to a Home Screen icon. An iPhone Home Screen icon keeps its own storage and has no address bar to open a link in, so Move to another browser now also gives an 8-character code for Away from home, valid once for 5 minutes. An unpaired page asks for it. The code only opens a short-lived meeting point; the connection's key then travels sealed with a fresh key exchange, so the code can't be used to open anything stored in Firebase.

Changed

  • A finished run's reply is read aloud as written. Reading aloud used to say how long the run took, which files it changed and whether tests ran, then the first sentences of the reply. It now reads only the reply, in full, leaving out code and tables. A run that stopped early or left no reply still gets one short sentence. The setting is now Read the reply aloud.
  • A task in its own copy has your installed packages (#88). Each node_modules the folder's .gitignore leaves out is cloned into the task's copy before the agent starts, so its builds and tests can run there. On disks that can clone it takes about a second and no extra space, and installing in the task doesn't touch the folder's own; elsewhere it's linked, and the task card says it's shared. .env files are never copied, and the task card names the ones the copy lacks. None of this becomes part of the task's changes.
  • The Lounge fills the window (#14). The chat moves to the right of the window and stays live and full brightness, and the rest of the window is the Lounge. It opens on a grid of things to play, each with a title, a short description and your best score: Breakout, Snake, code trivia and a typing test. The developer quote and the weather choice share one row above the grid; an open game gets the whole Lounge. The weather keeps falling over Flow after you leave the Lounge, with no switch for it. Rain and Snow now have real sound: recorded loops that fade in and out as you switch, with a volume slider beside the weather choice (remembered on this computer). Nothing plays until you choose Rain or Snow, Clear is silent, and the recordings come with the app, so it still works offline. Sources and licences are listed in public/sounds/CREDITS.md. Choose one and it fills the Lounge, with Breakout and Snake drawn as large as the space allows and kept sharp; All activities or Escape goes back to the grid, and a game you leave waits, paused. The chat column is wide enough for the message box to keep its controls on one row. Opening and closing the Lounge moves the chat across to its new place instead of jumping, and the cards and the Lounge keep their size as they slide away.
  • Rain in the Lounge looks more like rain. Drops now fall at different distances: near ones are longer, faster and brighter, far ones short and faint. Every streak leans with one slow wind and trails behind its drop, and a drop that lands leaves a few fine droplets and a thin ring instead of bouncing dots. Every drop splashes when it reaches the bottom of the window, far ones with a single fine droplet.
  • Screenshots an agent takes show in the chat, side by side. Every agent is now told to save a picture it wants you to see inside the workspace and put it in its reply, instead of leaving it in a temporary folder for you to find. Images on lines of their own share a row, two or three across depending on the width of the chat, and a single image keeps its full size. Clicking one still opens it in the preview.

Fixed

  • Rain and snow land only on what you can see. They used to splash and settle along edges with no visible outline, such as a reply's text and the strip above your prompt, and on cards that were covered or scrolled out of view. They now land only on a top edge whose border or fill shows against what is behind it, in view and not covered, inside its rounded corners, and settled snow goes when its surface does.
  • Voice input keeps what you said before a pause. After a silence the speech recognizer can start again with only the new words, which replaced the earlier sentence in the message box. The earlier words now stay and the new ones follow them.

Thanks to @seeebbii for the energy measurements and fixes (#152, #154): weather drawn at most 30 times a second, games paced at 60 Hz speed, the setup glow running once and agent checks reused.