Backed by KalanNot a fund. One person with strong opinions.

Agent harness with taste and focus.

Run Claude Code and Codex side by side, each in its own worktree. HinaCode stays quiet while your agents work, and tells you exactly which one needs you.

macOS on Apple Silicon and Linux. Uses the claude and codex you already signed in to.

Tighten address validationfeat/address-validationWorking
Tighten address validation. Canadian postal codes slip through, and a missing country passes.
I'll make the country check explicit, add a Canadian postal path, and cover both with tests.
Readsrc/checkout/validators.ts
Editvalidators.ts+8−3
pnpm test validators27 passed
Claude Code wants to run a command
git push -u origin feat/address-validation

The agent waits for you. Nothing else will.

Signal over chrome

Quiet until it matters.

Most of the time, nothing needs you. The screen should look like it. HinaCode spends color on one thing: the thread that is waiting for a human. Glance at the sidebar between other work and you know where to go.

  • Working

    The agent is busy. Nothing for you to do.

  • Needs you

    An approval, a question, or a setup script that stopped.

  • Failed

    The turn or the setup failed. The log is one click away.

  • Done

    Finished, with the pull request and its merge state linked.

The harness

Everything around the loop. Nothing in its way.

Start a thread, steer it, review what changed, ship the PR. HinaCode handles the parts between, so the agent output stays the content.

A worktree per thread

Every thread gets its own branch and checkout. Your setup script copies the .env in one line.

$HINACODE_WORKTREE_PATH

Approvals, inline

Commands, edits and MCP calls wait inside the conversation. Allow once, or for the session.

Allow for session

Steer a running turn

Send another message while the agent works. No stop, no restart, no lost context.

threads.steer

A built-in MCP server

Both agents can review their diff, link a pull request and read Linear. Every call is scoped to one thread.

review_changes

Pull requests with state

Draft, open, merged or closed, with CI checks and the review decision. Refreshed every minute.

gh pr create --fill

Ports you can see

The dev servers a thread started, listed by port. Stop one without hunting for a PID.

:3000 next dev

Automations

Start a thread from a signed webhook, a new GitHub issue, a Linear ticket or a Slack mention.

{{issue.title}}

Your setup, unchanged

CLAUDE.md, AGENTS.md and skills load from the project and your home, the same as in the CLIs.

AGENTS.md

Keyboard first

Your hands stay home.

Every frequent action has a shortcut. Every shortcut can be rebound, with chord recording and conflict detection built in.

  • New thread⌘N
  • Next thread⌘⇧]
  • Focus composer⌘L
  • Interrupt turn⌘⇧C
  • Show changes⌘⇧D
  • Toggle terminal⌘J

Go on, press a few. The keys will press back.

Ambitious ideas, simple systems

Built with HinaCode.

Every feature here was shipped by agents running inside HinaCode. When the loop hurts while we work, that is a product bug, and it gets fixed.

1SQLite file for everything
1channel between the UI and the app
1interface per agent backend
0background daemons

Questions

Asked, and answered.

What is HinaCode?

A desktop app that runs Claude Code and Codex side by side. Each thread can live in its own git worktree, and the sidebar shows which one needs you.

Which agents does it run?

Claude Code through the Agent SDK, and Codex through its app-server protocol. Pick the agent and the model for each thread.

Do I need new API keys?

No. HinaCode uses the claude and codex CLIs you are already signed in to.

Where does my code go?

Nowhere new. Agents run on your machine against your repositories. Keys such as a Linear token are kept in the OS keychain.

Does it replace my editor?

No. HinaCode is the harness around the agent loop: start, steer, review, ship. Open the worktree in your editor whenever you want to.

How much does it cost?

Nothing. Every feature is free, with no seats, tiers or trial. See pricing.

Which platforms are supported?

macOS on Apple Silicon, and Linux as an AppImage.

Run more agents.
Watch fewer.

One window. Every agent. Only the ones that need you ask for you.