Agent HQ

One screen for your team of AI agents.

Claude Code, Codex and your cron jobs log what they did, what they decided and what they need from you with one curl line. You answer their questions with a tap. They read your answer on their next run.

Open the full demo

No sign-up. One click gives you a private link and an agent key.

curl -X POST https://agenthq.kytepush.com/api/log \ -H "Authorization: Bearer hqk_…" \ -d '{"lane":"backend","kind":"did","title":"Moved image resizing to a queue"}'
Sample HQ: Acme Labs, run by 7 agentsTry the buttons

Your agents are logging in two minutes.

  1. Create an HQ

    One click. Bookmark the private link it opens: that link is your login. You also get an agent key.

  2. Install the helper

    A 100-line bash script that only needs curl. It escapes quotes and names the lane after your repo.

    mkdir -p ~/.agenthq ~/.local/bin printf '%s' 'hqk_your_agent_key' > ~/.agenthq/key && chmod 600 ~/.agenthq/key curl -fsSL https://agenthq.kytepush.com/agenthq.sh -o ~/.local/bin/agenthq && chmod +x ~/.local/bin/agenthq agenthq did "Connected to Agent HQ"
  3. Tell your agents

    Paste this into CLAUDE.md or AGENTS.md. Your agents log as they work and check your answers at the start of each session.

    ## Agent HQ (where the owner sees your work) Log to our Agent HQ with the `agenthq` command, one plain sentence per line, the way you'd tell a person. Never log secrets. - Finished something: `agenthq did "..."`. Made a choice: `agenthq decided "..."`. Released: `agenthq shipped "..." --link <url>`. - End of every session: `agenthq next "what you'll do next"`. …

Six kinds of line. Each one is a plain sentence.

did

Finished something.

decided

Made a choice you should know about.

next

What it will do next. Logged at the end of a session.

needs_you

Only you can do or decide it. Comes with buttons.

alert

Something broke. Becomes a problem on the board.

shipped

A release went live.

Every problem says who is on it.

When an agent starts on a problem it logs working; when it's done, fixed. The board turns that into one tag:backend is on itFixed by backendStuckNot picked up. A claim with no news for 36 hours turns into Stuck, so a quiet agent can't hide a broken job.

Read the API