Dealroom

io.github.sergiomaldov1.0.0更新於 Oct 5, 2026

Draft and negotiate contracts clause by clause; a published formula proposes the compromise.

已驗證Streamable HTTP可網頁執行Business & CommerceProductivity & Workflow

概覽

AI 產生的概覽

讓助理逐條起草與協商雙方合約,並由演算法提出加權折衷方案。

功能
Dealroom 是以遠端 MCP 端點提供的雙方非同步合約協商平台。它支援結構化的逐條協商流程:選擇技能範本與司法管轄區建立交易、邀請對方、提交條款偏好與堅定程度、由加權折衷演算法建議條款,然後達成共識並產生合約以供簽署。內建範本包括 NDA、DPA 與 MSA,合約支援英語與卡斯提亞西班牙語雙語。
適用情境
當助理需要協助雙方起草或協商協議(例如 NDA、DPA 或 MSA),且希望採用附折衷建議的結構化、可稽核協商流程,而非自由起草時,適合使用。
執行需求
透過 streamable HTTP 連線至 dealroom.todo.law 的遠端 MCP 端點。身分驗證使用 Authorization 標頭,內容為 Bearer 加上 Dealroom API 金鑰。託管服務依合約計費,使用預付點數;若自行架設 AGPL 套件,則需要 Node.js 20+、PostgreSQL、Resend 帳號,以及 DATABASE_URL、NEXTAUTH_SECRET、RESEND_API_KEY 等環境變數。
安裝前請注意
Authorization 標頭攜帶 Dealroom API 金鑰,應視為機密。託管服務依合約計費,於合約首次下載或開始簽署時一次付清,使用以十份為一包販售的預付點數,因此助理可能產生費用。協商與簽署會變更合約資料,並可能產生具法律拘束力的文件;簽署前應審閱條款。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Dealroom,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "dealroom": {
      "type": "http",
      "url": "https://dealroom.todo.law/api/v1/agent/mcp"
    }
  }
}

README

Dealroom

[License: AGPL v3]

Two-party async contract negotiation platform with weighted compromise algorithm.

Features

  • Contract Negotiation — Structured clause-by-clause negotiation workflow
  • Weighted Compromise — Algorithm suggests fair compromises based on party firmness and option bias
  • Contract Skills — Built-in templates (NDA, DPA, MSA, etc.) plus premium skills for your own instance
  • Bilingual Contracts — English and Castilian Spanish; the contract language is chosen when the deal is created and both parties negotiate in it
  • Two-Level Admin — Platform admins manage marketplace; supervisors monitor deals
  • Self-Hostable — AGPL-licensed sovereign kit for running on your own hardware (see below)

Hosted and the kit

  • Hosted (dealroom.todo.law) charges per contract. Drafting and negotiating are free. Each contract is paid once, when it is first downloaded or when its signature starts; every skill, premium ones included, is covered by that price. Agents pay per contract with prepaid credits sold in packs of ten (see docs/agent-api.md, "Paying per contract"). There is no monthly plan.
  • The kit (self-hosted) has no caps. Premium skills are sold only for the kit: 60 a year each in the kit (in your currency) on the todo.law storefront, installed and activated offline with a licence file.

The free-pilot limits (edit window, record ceilings) apply only to the hosted build (Vercel production, VERCEL_ENV=production, or AUTH_COOKIE_DOMAIN=.todo.law) while hosted billing is off; once billing is on they no longer apply. The rules live in src/lib/pilot.ts and src/config/features.ts.

Note: the earlier dual-brand system (todo.law + northend.law) was retired in May 2026; the codebase now ships a single brand (src/config/brand.ts documents the rationale and the restore path).

Tech Stack

  • Framework: Next.js 16 (App Router)
  • Language: TypeScript
  • API: tRPC
  • Database: PostgreSQL + Prisma
  • Auth: NextAuth (magic link, invite code, Google OAuth)

Getting Started

Prerequisites

  • Node.js 20+
  • PostgreSQL database
  • Resend account (for magic link emails)

Installation

bash
# Install dependenciesnpm install
# Set up environment variablescp .env.example .env
# Push database schemanpx prisma generate && npx prisma db push
# Seed initial datanpx prisma db seed
# Start development servernpm run dev

Open http://localhost:3000 to access the app.

Self-Hosting (Sovereign Kit)

Law firms can run Dealroom entirely on their own hardware with the Docker-based sovereign kit — app + PostgreSQL + migrator (+ optional Caddy TLS), published on port 8486, health-gated via /api/health:

bash
cd deploy/sovereigncp .env.example .env   # fill in secretsdocker compose up -d

See deploy/sovereign/README.md for the full runbook (backups, restore, cron wiring, hardening checklist). docs/deployment.md covers the hosted/Vercel path.

Environment Variables

DATABASE_URL=postgresql://...NEXTAUTH_SECRET=...NEXTAUTH_URL=http://localhost:3000RESEND_API_KEY=...[email protected]GOOGLE_CLIENT_ID=...GOOGLE_CLIENT_SECRET=...SKILLS_DIR=/path/to/skills          # Optional: premium skills directorySTRIPE_SECRET_KEY=...               # Optional: in-app billing (ignored on hosted dealroom.todo.law)

Administration

Create Platform Admin

bash
npm run admin:create -- [email protected] --name="Admin Name"

Access the platform admin portal at /admin.

Create Supervisor

bash
npm run supervisor:create -- [email protected] --name="Jane Smith"

Or create via the admin portal at /admin/supervisors.

Supervisors access their portal at /supervise and can only view deals assigned to them.

Documentation

DocumentDescription
deployment.mdHosted (Vercel) and self-hosted postures, environment variables
administration.mdTwo-level admin system, deal lifecycle, signing
lawyer-involvement.mdThree stages of lawyer involvement (EN)
intervencion-abogado.mdTres fases de intervención de abogado/a (ES)
agent-api.mdAgent Negotiation REST API reference
skills-and-licensing.mdSkill packages, licensing, activation, i18n

Project governance: SECURITY.md · CONTRIBUTING.md · NOTICES.md · CHANGELOG.md

Project Structure

src/├── app/                    # Next.js App Router pages│   ├── (admin)/           # Platform admin portal│   ├── (supervisor)/      # Supervisor portal│   ├── (dashboard)/       # User dashboard│   └── api/               # API routes├── components/            # React components├── config/│   ├── brand.ts           # Brand router│   ├── brands/            # Brand config (todo.ts; single brand since May 2026)│   └── features.ts        # Feature flags├── lib/                   # Shared utilities└── server/    ├── routers/           # tRPC routers    └── services/          # Business logicprisma/├── schema.prisma          # Database schema└── seed.ts               # Seed dataskills/                    # Built-in contract templatesdocs/                      # Documentation

Key Concepts

Deal Flow

  1. Create — Initiator creates deal, selects skill and jurisdiction
  2. Invite — Respondent receives invitation link
  3. Submit — Both parties submit clause preferences and firmness levels
  4. Negotiate — Algorithm suggests compromises; parties can also propose changes to open fields (negotiable parameters)
  5. Agree — Parties accept final terms
  6. Sign — Contract generated for signing

Compromise Algorithm

stake = ((5-flexibility)/5 × 0.6) + (|bias| × 0.4)

Each party sets a firmness level (1–5) per clause; the UI shows firmness while the database stores flexibility (6 − firmness). The party with higher stake wins the clause; equal stakes trigger a balanced compromise. A global fairness pass rebalances if one party wins disproportionately.

Administration Levels

RolePortalAccess
Platform Admin/adminManage skill catalog, customers, supervisors
Supervisor/superviseMonitor assigned deals only
User/dealsOwn negotiations only

License

Copyright (c) 2025-2026 Rindogatan LLC

This project is licensed under the GNU Affero General Public License v3.0.

Under AGPL §13, if you run a modified Dealroom as a network service you must offer its Corresponding Source to your users. The /licenses page carries that offer (the footers no longer link to it since 2026-10-01); point it at your fork with NEXT_PUBLIC_SOURCE_URL at build time, and add a visible link if your deployment needs one. Third-party attribution lives in NOTICES.md.

來源:README.md,提交 8a63880

工具

0
工具後設資料尚未被收錄。

版本歷史

1
  1. v1.0.0最新Oct 5, 2026