Skip to content

Hona/codey

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenCode Companion

Windows-native desktop companion for OpenCode. Click the companion, speak through your existing Handy setup, click again, and the transcript is sent to opencode run headlessly.

Requirements

  • Windows
  • Handy installed and configured
  • OpenCode installed and configured
  • .NET 10 Desktop Runtime or SDK

Run

dotnet run

Click the icon once to start Handy transcription. Click it again to stop, capture Handy's pasted transcript, run OpenCode, and show the short response.

Right-click the companion to pin/unpin, clear messages, or exit.

Configuration

Environment variables:

  • HANDY_PATH: command/path for Handy, defaults to handy
  • OPENCODE_PATH: command/path for OpenCode, defaults to opencode
  • OPENCODE_COMPANION_DIR: working directory passed to OpenCode, defaults to your Windows user home
  • OPENCODE_COMPANION_MODEL: optional provider/model, defaults to opencode/kimi-k2.5
  • OPENCODE_COMPANION_VARIANT: optional model variant, defaults to none
  • OPENCODE_COMPANION_AGENT: optional OpenCode agent name
  • OPENCODE_COMPANION_TIMEOUT_SECONDS: OpenCode timeout, defaults to 300
  • HANDY_TIMEOUT_SECONDS: wait time for Handy to paste text, defaults to 45

The companion sets OPENCODE_CLIENT=companion, OPENCODE_EXPERIMENTAL_CUSTOMIZE_SKILL=true, OPENCODE_EXPERIMENTAL_SCOUT=true, and OPENCODE_PERMISSION={"*":"allow"} for spawned OpenCode processes when those variables are not already set. It also passes --dangerously-skip-permissions. Newer OpenCode source registers customize-opencode by default, but installed opencode 1.14.48 gates it behind OPENCODE_EXPERIMENTAL_CUSTOMIZE_SKILL.

OpenCode process stdout/stderr is persisted to %LOCALAPPDATA%\OpenCodeCompanion\logs\opencode-YYYYMMDD.log.

Why Native Instead Of Electron

Native WinForms/Win32 directly solves the important parts: always-on-top borderless windows, focus capture for Handy's paste, global screen/window positioning, and process control. Electron would mainly buy easier CSS animation/layout, web UI tooling, and cross-platform reuse, at the cost of shipping Chromium and higher idle memory.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages