Dev House banner
SinghAbhinav04 SinghAbhinav04

Dev House

Development community

Description

Give Claude Code a dev team: members you create, on the models you choose, with their own roles, skills and permissions.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

Hackeroom

Hire a dev team. Run it on whatever agent you already have.

You create the members. Each one gets a name, a role you write in markdown, skills you attach, an engine, a model, and a permission mode. They fill seats in a workflow, work in real CLI sessions, share what they learn, and you watch the whole thing happen in an office.

There is no built-in squad. The team is whoever you hire.

![The office view during a run: six members at their desks, one on the couch, and the run narrating itself underneath](.github/media/demo.gif)

*Hovering a member shows what they are doing, how long the turn has run, and what it has cost. There is also a [scripted walkthrough](https://singhabhinav04.github.io/SinghAbhinav04/hackeroom.html) if you want the shape of a run without installing anything.*


No Claude Code? No problem

Three engines, one team:

Claude Code claude Opus, Sonnet, Haiku, Fable
OpenCode opencode anything your providers reach — OpenRouter, Fireworks, OpenCode Zen
Antigravity agy Gemini 3.x, plus Claude and GPT-OSS through Google

**And you can mix them in the same run.** Your planner can think on Opus while your reviewer runs a free Gemini and your coder sits on whatever OpenRouter model you feel like today. Pick the engine per member, from a dropdown, and the model list follows.

**One gate. Three engines. Same rules.** Every one of them routes through the same capability manifest — not three implementations that can drift, one set of rules with three thin translators in front of it. A coder that cannot write outside the project on Claude Code cannot write outside the project on Antigravity either.

Every argument name in those translators was read off the running binary rather than the docs, because all three name things differently — `file_path`, `filePath`, `TargetFile` — and a wrong name means the gate reads an empty path, which resolves inside the project, which it allows.