v0.0.2 · norns-ide

Agents work the columns. You decide what moves.

Each stage has its own agent. Connect a model, Polarion, Jira, GitHub. A card waits until you approve. The board below is the real Control Room — try it.

Preview — open a card, Settings, or a column Agent. Nothing writes to Polarion or Jira from this page.

Norns Control room
1 pulling 2 waiting admin

Delivery

Urd, Verdandi, and Skuld each run a real agent. Polarion and Jira ride along as tools. You still confirm before a card moves.

github.com/acme/checkout
Column 1
Column 2
Column 3
Row 1

Urd

Cursor · Jira

1

Verdandi

Cursor · Polarion

Skuld

Confirm writes

1
1. Real agents Each column calls Cursor or DeepSeek. Open Agent to pick the model and tools.
2. Polarion, Jira, GitHub Connect them in Settings. The running card is on Polarion 5E96-147 right now.
3. You still approve Yellow cards wait. Confirm writes keeps Polarion quiet until you press the button.

In v0.0.2 now

  • Install norns-ide from PyPI or TestPyPI; CLI is still norns
  • Local Control Room: norns init / norns run (browser; optional Electron)
  • Visual state machine, including parallel split and join
  • Human approve/reject gates; agent recommendation is advisory
  • Short recommend on board cards; live pulling wait; markdown handoff and journey in the drawer
  • Connect Cursor, DeepSeek, or OpenAI so a column actually runs
  • Polarion, Jira, and GitHub as tools on the column Agent
  • Confirm writes: Polarion and Jira wait for you before they land
  • Production refuses admin/admin and requires secure cookies

Not in this cut

  • Schema migrations — Alembic starts after this PyPI cut
  • Multi-user accounts, teams, or RBAC
  • A hosted Control Room. This is a local IDE, not SaaS

Install 0.0.2

Python 3.12+. The PyPI name is norns-ide (norns is taken). The command is norns. Init prints a generated admin password into ~/.norns/config.toml.

PyPI

uv tool install norns-ide
norns init
norns run

Or pip install norns-ide, then the same norns init / norns run.

TestPyPI

pip install -i https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ norns-ide==0.0.2
norns --version
norns init
norns run

--extra-index-url keeps dependencies on real PyPI. With uv: uv tool install --index-url https://test.pypi.org/simple --extra-index-url https://pypi.org/simple norns-ide==0.0.2.

From a checkout

git clone https://github.com/YanChao1999/Norns.git
cd Norns
uv tool install .
norns init
norns run

Developer checkout: uv sync then uv run norns init and uv run norns run (http://127.0.0.1:8765). UI rebuild: ./scripts/stage-ui.sh.