Inspiration

The internet does not need another contract-review chatbot.

Every year, software auto-renews on idle seats because an AE sent “standard” paper and Slack said just sign it. Summarizers will agree with the AE. Lever will not.

What it does

Lever is a SaaS renewal desk. Priya Raman, Head of Ops at Harbor Labs, dumps the Northwatch MSA, last year’s invoice, a host census, the AE’s 36-month / 18% email, and a Slack thread. A model may extract terms and draft a counter. Harbor playbook v3 — TypeScript, tested — scores each clause LEVER or ACCEPT. If the model accepts 15-day notice because it was called standard, the desk shows OVERRIDE. SEND is refused until a human stamps every lever. The vendor email is a draft. Lever never posts it.

Walk vs sign on the Harbor file is about $35,808 in year one. Pricing starts at $49/mo.

How we built it

  1. Dump five exhibits (MSA, invoice, usage, AE email, Slack).
  2. Extract terms with evidence spans. Model verdicts are claims.
  3. scoreLevers() in TypeScript applies Harbor playbook v3. OVERRIDE when the model disagrees.
  4. Counsel drafts an internal memo and a counter-email.
  5. canSend() blocks export until every LEVER is stamped.

Stack: Next.js, TypeScript, optional Gemini for live extract, Node test runner. The desk autoplay (/desk?play=1) runs client-side with no API key.

Challenges

The hard product decision was not extraction quality. It was the gate: the model can draft the renewal; it cannot send it. Unstamped LEVERs stay HOLD. After stamps, Lever still only produces a READY draft — it never emails the vendor.

Try it

Open the live replay — no API key:

Or locally: npm test && npm run dev.

Built With

Share this project:

Updates

Submission history