harnsy

Answer your agents without opening their terminals.

harnsy calls you when a decision is needed, and you give it right there. The rest of the time, you work.

Needs you4

Tasks 2

mobile10 min

Release 2.4 of the mobile app

#10 · in review

shop25 min

Cart total shows 0 after removing the last-but-one item

#3 · blocked

Agents 2

docs1 min

docs-lead

waiting for permission

shop1 min

shop-frontend

waiting for an answer

Answer here or in the agent’s terminal.hide

How should the cart look when it is empty?

  • A short line and a link to the catalogOne sentence, no picture.1
  • Recently viewed productsShows up to four items the visitor opened.2
  • Hide the cart iconThe icon comes back with the first item.3
  • Other · your own answer
Send answerClose without answering
Home in the dashboard: an agent asks a question, and you answer right there. Sample data.

Answer

Answer a question in one click.

An agent stops on a question: Home shows it with its options, and one click answers it in the agent’s own session. Several steps open as tabs, several answers can be ticked, and “Other” takes your own words. Questions come from Claude Code, Codex and OpenCode.

Allow a command, or refuse it.

An agent asks permission to run a command: you see the tool and the exact command, and allow it once or refuse, with a reason if you like. Requests come from Claude Code and OpenCode. The terminal keeps working alongside; the first answer wins. Keys 1–9 and Enter work too.

Home: what needs you.

The dashboard opens on an inbox of what waits for you, in three columns: tasks for your review or blocked, agents’ questions and permission requests, and “For information”. Move through it with the arrow keys; the project you picked stays with you from section to section.

Plain-text questions too.

An agent that ends its turn asking you in chat (“say ‘yes’ and I’ll go on”) is marked “waits for you” at once, with a field for your answer, and its lead hears about it right away.

A refusal shows in red.

An agent whose permission request was refused is marked red, apart from the agents still waiting for your decision, so a stuck agent doesn’t pass for a waiting one.

A signal instead of watching.

When something waits for you, the tray icon turns amber: an agent’s question or permission request, a task ready for review, a role with no holder, a session that died. Each row says whether you have to act and why; what is only news stays folded.

You choose the notices.

Turn each kind of notice the lead gets on or off and change its times, with a reset to the defaults (System › Notifications).

Notifications and settings →

Review

Task board.

Tasks move from role to role on the board, with checklists, reports and history; you accept or return the result in one click.

Task management →

See what the agents changed.

Changes shows every worktree’s branch, state and full diff, and warns when two of them change one file.

Changes →

Watch when you want

Terminals and agents.

Open any agent’s terminal over the page and step in; every agent is listed with its role and status, and context left for Claude Code and Codex.

Terminals and agents →

Links graph.

The lead in the centre, teams around it, lines for who talks to whom. See how the work really flows and where agents chat more than they should.

Stop when you need to

Pause a whole team.

“Pause” on Teams holds every message and notice to the team’s agents; nothing is closed. “Resume” delivers them in order and the team works again. Your own messages from the dashboard still go through.

After the current step, or now.

Choose “After the current step”: running turns finish and nobody is woken for new work. Or “Now”: it presses Esc in every busy agent, and on resume they are told to continue. An agent that harnsy did not open in a pane is not interrupted, and you are told which.

A paused team is marked.

Teams and Home mark it “paused” and show how many messages are held.

See what your agents were refused.

The Permissions page sums up the actions agents were refused, grouped so one fix covers many, each with a button that makes the fix. An agent stopped by a missing permission shows red, with what was refused.

Turn a refusal into a rule, with a backup.

“Allow” turns a refused action into a permission rule. You choose its scope and the file it goes in, harnsy shows you the exact change first, and it keeps a backup of the file before it writes.

One shield for permission checks.

A shield in the top bar says how harnsy starts your agents: amber means you have not chosen, green means with permission checks, red means without. A new install starts with checks until you answer “Start agents without permission checks?”; an existing install keeps working as before. Only you can change it, and the Assistant runs with its program’s permission checks.

Amber is waiting for you. Green is working. Red is a failure, a refusal or a role with no holder. Blue is an action. A colour means the same everywhere and always comes with text.

Came back an hour later. The agent had been waiting for my "yes" the whole time.

harnsy shows you where you're waited for, and you answer right there.

Howthe tray turns amber, Home shows what the agent asks, a question or a command to allow, and one click answers it in the agent's session.

Needs you2Oldest first
4 min

qa-5e · tester

waiting for permission

Answer here or in the agent’s terminal.

Asks permission to use Bash

Run the payment retry tests

Command
npm test -- checkout/retry.spec.ts

“Always allow” is only in the terminal.

Home in the dashboard: what waits for you, and the answer right there.

The agents write code faster than I can read it.

In harnsy you don't read every line: the task moves from role to role, and you accept the finished result.

In review you don't just click Accept or Return: write what to fix, and your comment lands in the lead's session right away. The lead sends the task back to whoever did it, with your words.

Howthe lead assigns it, each role hands it on with evidence, and the finished card turns amber. Changes shows every worktree’s diff when you want to look.

waits for you

Tasks
BoardArchiveDocumentsStatistics
waits for you 0blocked 0all
▸Backlog2
▸New0
▸Taken0
▾In progress2
#42bug
analyst-7a · analyst2 min
☑ 0/3
#43feature
site-9a · developer1 h
▸Blocked0
▾In review0
▸Dropped0

  1. analyst-7a · analystAcceptance criteria
  2. site-9a · developerImplementation
  3. qa-5e · testerTests and evidence
  4. You · waits for youOpen #42 to accept or return with a comment

Open the task to tell the lead what to fix.

Illustrative demo · #42: analyst → developer → tester → your acceptance.

Five agents on a phone: five chats, and someone in each is waiting for an answer.

In harnsy you have one way in: the lead.

The lead doesn't check on the team by the clock either: harnsy tells it when an agent sits idle or silent with work in hand, leaves with open tasks, or a task stalls. One message, each thing once.

Howthe lead hands out tasks and brings you only questions and finished work. Away from your desk, if the lead runs in Claude Code, you can write to it from your phone with Claude Code's own Remote Control.

You lead

1 · Set the task

#42 · Checkout: no double charge on retry

2 · The lead asks

site-3f → you

Allow payment retries for 24 hours or 7 days?

3 · #42

waits for you

Your word goes to the lead.

You talk to one agent: site-3f.
  • Permission checks: not chosenpress to change
  • Permission checks: onpress to change
  • Permission checks: offpress to change
The permission-checks shield: not chosen yet, on, off.

Limits, honestly

  • Claude Code needs harnsy’s hook: run harnsy install again and say yes to the change it shows. It works in sessions started after that, and a request reaches the dashboard only if the dashboard is open when it comes.
  • Codex: questions only, and it reads your answer at the end of its current turn. Its permission requests are answered in its terminal.
  • “Always allow” is given only in the agent’s terminal.
  • The live terminal in the dashboard needs a terminal harnsy can drive: tmux if it is installed, otherwise harnsy’s own terminal host (always its own on Windows).
  • Checklists are read-only in the dashboard: agents close the checks.
  • Changes is for looking: agents edit the code, the dashboard only shows it.

Read the docs →

Your first team is one prompt away.

Installing takes one sentence to your agent. To run your agents, harnsy drives a terminal: tmux if it is installed, otherwise its own terminal host (on Windows, always its own).

Install harnsy following https://harnsy.dev/llms.txt
site-3flead · Claude Codeliveview only
❯ Plan #42 with the team.

Waiting for the breakdown from analyst-7a…

from analyst-7a through harnsy❯ #42 broken down: three acceptance criteria, including a retry after 24 h.

I’ll hand #42 to site-9a.

❯