Contract redline summary
@dealdesk/contract-redline-summary
Compare two versions of a contract (or one redline with insert and delete markup) clause by clause. Lists every change sorted by risk topic (liability, indemnity, termination, renewal, IP, data, payment) with the numbers that moved, then explains each in plain English with a suggested response. Not legal advice.
- Activity
- New: be the first to try it
- Installs
- 0 installs
- Likes
- 0 likes
- Clones
- 0 clones
What it makes
Real output from this kit
- Sample file3 KB, download to openRedlineFrom the kit's tests
- Sample file1 KB, download to openRedlineFrom the kit's tests
- Sample file912 bytes, download to openRedlineFrom the kit's tests
How this works
- It is a skill: written instructions Claude reads when your request matches what the skill is for. You do not call it by name; just ask for the task.
- While it works, it reads and changes files in the places it lists, nowhere else.
- It runs these commands on your computer: node scripts/clause-diff.mjs.
- Nothing runs until you choose to use it, and you can remove it any time.
SKILL.md
Contract redline summary
Turns a redlined contract into a short list a deal team can act on: what changed, how risky it is, and what to say back. The script finds and sorts the changes so nothing is missed; you explain them.
When to use
- A customer or their counsel returned a marked-up MSA, order form, DPA, or SOW.
- Before a deal review or a call with legal, to know which changes matter.
- Not a replacement for a lawyer. For high-risk changes the answer is often "send to legal", and that is a fine answer.
Inputs
One of:
- Two versions as plain text:
data/original.txtanddata/revised.txt. From Word: open the redline, Review, choose "Original" and save as plain text, then choose "No Markup" and save again. From PDF, copy the text. - One redline with markup:
{++added++}and{--removed--}(or[+added+]and[-removed-]) indata/redline.md.
If the user pastes text into chat, save it to data/ first. Ask which side the user is on (seller or buyer) if it is not clear; it changes the advice.
Steps
- Save the inputs in
data/. Check both versions look complete (same opening clause, similar length). Run one of:
node scripts/clause-diff.mjs data/original.txt data/revised.txt --out out --name redline node scripts/clause-diff.mjs --markup data/redline.md --out out --name redline- Read
out/redline.json. Every entry has the clause, type (changed,added,removed,renumbered), risk (high,medium,low), topics, added and removed text, and numbers before and after. - Read each change yourself. The risk tag is a keyword guide, not a judgment. Decide in one sentence what the change means for the user's side, and raise or lower the risk if the keyword tag is wrong. Say when you did.
- Write
out/redline-summary.mdusing the template below and show it. - If the deal also changed commercially (payment terms, discounts, renewal caps), suggest running
discount-approval-checkwith the new terms.
Output format
# Redline summary: <contract>, <customer> (<date>)
**Bottom line:** 4 high-risk changes need legal; 2 are commercial and can be handled by the deal team.
| # | Clause | Change | Risk | What it means for us | Suggested response |
| --- | --- | --- | --- | --- | --- |
| 1 | 5 Limitation of Liability | Cap raised from 1x to 2x fees; data and confidentiality breaches uncapped | High | Unlimited exposure on any data incident | Legal. Offer a separate super-cap (for example 3x) instead of uncapped |
| 2 | 4 Termination | Customer may terminate for convenience on 90 days notice | High | Multi-year value is no longer committed | Accept only after month 12, or with a fee |
| 3 | 2 Fees and Payment | Net 30 to Net 60; late interest removed | Medium | Slower cash | Counter at Net 45; needs finance approval |
**Unchanged but worth a look:** <anything the user asked about that did not change>Guardrails
- Always say "not legal advice" once, and route high-risk items to the user's legal contact rather than giving a final answer.
- Quote the contract exactly when you describe a change. Never paraphrase a number.
- If the two versions look like different documents (very few clauses matched), stop and ask the user to check the files.
- Do not send anything to the customer. Draft responses only.
README.md
Contract redline summary
Compares the contract you sent with the one that came back, clause by clause, and sorts every change by risk. Then it explains each change in plain English and suggests a response, so deal teams know what to accept, counter, or send to legal.
Who it is for
Account executives, deal desk, and founders handling customer paper without a lawyer on every call. Not legal advice: high-risk items still go to your counsel.
Example
Input: examples/original.txt and examples/revised.txt (a short MSA, seven clauses, with the customer's edits).
Output: 6 changes, 4 high risk:
- 3 Term and Renewal: non-renewal notice 60 to 30 days; new 3% renewal cap
- 4 Termination: customer may terminate for convenience on 90 days notice
- 5 Limitation of Liability: cap raised to two times fees; data breaches uncapped
- 7 Governing Law: Delaware to New York
- 2 Fees and Payment (medium): Net 30 to Net 60, late interest removed
- 8 Insurance (medium, added): $5,000,000 cyber liability insurance
Also works on one redline file that uses {++added++} and {--removed--} markup (examples/redline.md).
What it can access
- Runs
node scripts/clause-diff.mjs(Node built-ins only, no network). - Reads
data/(plus the kit's ownexamples/), writesdata/andout/.
Setup
None. Save both versions as plain text in data/.
Files
- README.md
- SKILL.md
- examples/original.txt
- examples/redline.md
- examples/revised.txt
- kit.json
- scripts/clause-diff.mjs
Did it work?
0worked for them0did not work
Sign in to say whether it worked for you.
Nobody has said yet. Tried it? Tell the next person.
