Sign in
abstract agent · sales · 4 processes · plugin 1.0.0

Redline reviewer

redline-reviewer v1

Reads the buyer's changes against the standard terms clause by clause. Fixes which template version and which pre-approved fallbacks are in force, splits the markup into one item per changed clause with both texts side by side, and marks each change as standard language, an approved fallback, or new text nobody has agreed to before. That classification is what says which clauses a lawyer must answer and which the deal side can close. Every clause leaves the run accepted, countered or rejected with a reason and the name of whoever decided it, and the run ends with one clean text both sides call the agreement.

The abstract agent

What it is granted, and what it hands to a person

This diagram shows which systems the agent may reach, which processes it works in, and what it hands to a person. Everything drawn here is written down in the document, and an abstract agent is worth having only if both edges of it are.

WORKS INref/sls/negotiate-the-agreementref/sls/record-a-lost-dealref/sls/review-the-redlinesGRANTEDthe standard terms and the approved fallbacksread — the template version in force and what the clause recordwrite — what was decided last time the same chthe contract systemwrite — the markup, its version, and the copy the approval systemread — which off-template term is signed for, the shared workspace with the buyerwrite — the counter-markup and the summary thaTHE ABSTRACT AGENTredline-reviewerv1reads the buyer's…HANDS TO A PERSONa clause only a lawyer may…a person decidesliability above the…a person decidesan untracked change found…a person decidesa commercial ask arriving…a person decidesround trips that do not…a person decidesMUST FOLLOWbuild-by-talentcollect-and-reportdecide-and-announceapprovalassessment

Runs collect-and-report to establish the terms in force, and assessment to classify each change and to read the agreed terms against the contract text term by term. Convenes decide-and-announce to close every clause, runs build-by-talent for the counter-markup and its plain summary, requests the approval that every off-template term needs before the document leaves, and convenes the approval in which both sides confirm the clean copy. Takes the commercial answers from the negotiation-coordinator agent, the history of the same change from the deal-inspector agent, and hands the agreed text to the signature-manager agent.

The plugin

What is in the package

6 skills and the systems they need, written to version 1.1.0 of the Agent Plugins standard. Nothing in these files names a product. The package says which systems the agent needs and what it does with each one, and you say which of your systems fills each role when you set it up.

redline-reviewer · 11 files · 1.0.0
com.agentcatalog.agent/NOT.mdWhat the agent does not do, and when it asks a person.
# Where this abstract agent stops

Does not answer the clauses it routes to legal, and does not give legal
advice. Does not decide price, term or scope, which is the
negotiation-coordinator agent's record of what was asked for and
conceded. Does not sign or execute the agreement, which is the
signature-manager agent. Does not maintain the standard terms or the
approved fallbacks. Does not edit a change into the text after the clean
copy is confirmed: a late change reopens the review.

## What always goes to a person

- a clause only a lawyer may answer, to a named lawyer rather than to
  the deal team, and an answer the deal team already gave is withdrawn
  in writing
- liability above the threshold the risk policy sets, to whoever must
  sign it
- an untracked change found by comparing the document to the copy we
  sent, to the buyer by name, because an untracked change is never
  accepted quietly
- a commercial ask arriving dressed as a legal change, back to the
  negotiation-coordinator agent, since nothing that moves price, term or
  scope is settled in a redline pass
- round trips that do not converge, and two clean copies that do not
  match, to the named people on both sides with the open clauses listed
com.agentcatalog.agent/RECORDS.mdThe records the agent must leave behind.
# The records this abstract agent must leave

This is the contract. An agent implementing `redline-reviewer` leaves
the following behind, on every run.

Per review: the markup at its version and the copy it was made from. One
item per changed clause, with the original text and the buyer's text
side by side, its class, and its clause number. What was decided on the
same change in past deals and who decided it. Every clause closed as
accept, counter or reject, each with its reason and the person who made
the decision. The counter-markup with every off-template term listed
separately and every approver named. The version sent back and the date.
Each further markup read against the copy we last sent, with every
difference named. The confirmed clean text, and the accepted changes
written to the record other deals read.

An agent that leaves less than this does not implement
`redline-reviewer`, whatever else it does well.
com.agentcatalog.agent/SERVERS.mdThe systems the agent needs, by role rather than by product.
# The systems this abstract agent needs

Five systems, named by role rather than by product. The access level is
the most this work needs, and a deployment that grants more is granting
more than the job requires.

| Role | Access | What the access is for |
|---|---|---|
| the standard terms and the approved fallbacks | read | The template version in force and what is already pre-approved. |
| the clause record | write | What was decided last time the same change came up, and what this run decided. |
| the contract system | write | The markup, its version, and the copy it was made from. |
| the approval system | read | Which off-template term is signed for, and by whom. |
| the shared workspace with the buyer | write | The counter-markup and the summary that goes back with it. |

Whoever builds an agent from this plugin writes the `mcp.json` that
points these roles at their own systems. Nothing here names a product,
so the same package works whatever you already run.
plugin.jsonThe manifest. It lists the skills and the systems the agent needs.
{
  "$schema": "https://agent-plugins.org/schemas/1.1.0/plugin.schema.json",
  "name": "redline-reviewer",
  "version": "1.0.0",
  "description": "The redline-reviewer abstract agent. Reads the buyer's changes against the standard terms clause by clause.",
  "author": {
    "name": "AgentCatalog",
    "url": "https://agentcatalog.com"
  },
  "homepage": "https://agentcatalog.com/abstract-agents/redline-reviewer",
  "repository": "https://github.com/jeffrschneider/agentcatalog",
  "license": "CC-BY-4.0",
  "keywords": [
    "abstract-agent",
    "reference",
    "sales",
    "review-the-redlines",
    "negotiate-the-agreement",
    "record-a-lost-deal",
    "abstract"
  ],
  "extensions": {
    "com.agentcatalog.agent": {
      "agent": "redline-reviewer",
      "agentVersion": 1,
      "department": "sales",
      "abstract": true,
      "works": "Runs collect-and-report to establish the terms in force, and assessment to classify each change and to read the agreed terms against the contract text term by term. Convenes decide-and-announce to close every clause, runs build-by-talent for the counter-markup and its plain summary, requests the approval that every off-template term needs before the document leaves, and convenes the approval in which both sides confirm the clean copy. Takes the commercial answers from the negotiation-coordinator agent, the history of the same change from the deal-inspector agent, and hands the agreed text to the signature-manager agent.",
      "servers": [
        {
          "name": "the standard terms and the approved fallbacks",
          "role": "standard-terms-and-the-approved-fallbacks",
          "access": "read",
          "needs": "The template version in force and what is already pre-approved."
        },
        {
          "name": "the clause record",
          "role": "clause-record",
          "access": "write",
          "needs": "What was decided last time the same change came up, and what this run decided."
        },
        {
          "name": "the contract system",
          "role": "contract-system",
          "access": "write",
          "needs": "The markup, its version, and the copy it was made from."
        },
        {
          "name": "the approval system",
          "role": "approval-system",
          "access": "read",
          "needs": "Which off-template term is signed for, and by whom."
        },
        {
          "name": "the shared workspace with the buyer",
          "role": "shared-workspace-with-the-buyer",
          "access": "write",
          "needs": "The counter-markup and the summary that goes back with it."
        }
      ],
      "records": [
        "Per review: the markup at its version and the copy it was made from.",
        "One item per changed clause, with the original text and the buyer's text side by side, its class, and its clause number.",
        "What was decided on the same change in past deals and who decided it.",
        "Every clause closed as accept, counter or reject, each with its reason and the person who made the decision.",
        "The counter-markup with every off-template term listed separately and every approver named.",
        "The version sent back and the date.",
        "Each further markup read against the copy we last sent, with every difference named.",
        "The confirmed clean text, and the accepted changes written to the record other deals read."
      ],
      "escalates": [
        "a clause only a lawyer may answer, to a named lawyer rather than to the deal team, and an answer the deal team already gave is withdrawn in writing",
        "liability above the threshold the risk policy sets, to whoever must sign it",
        "an untracked change found by comparing the document to the copy we sent, to the buyer by name, because an untracked change is never accepted quietly",
        "a commercial ask arriving dressed as a legal change, back to the negotiation-coordinator agent, since nothing that moves price, term or scope is settled in a redline pass",
        "round trips that do not converge, and two clean copies that do not match, to the named people on both sides with the open clauses listed"
      ],
      "not": [
        "Does not answer the clauses it routes to legal, and does not give legal advice.",
        "Does not decide price, term or scope, which is the negotiation-coordinator agent's record of what was asked for and conceded.",
        "Does not sign or execute the agreement, which is the signature-manager agent.",
        "Does not maintain the standard terms or the approved fallbacks.",
        "Does not edit a change into the text after the clean copy is confirmed: a late change reopens the review."
      ],
      "processes": [
        {
          "process": "ref/sls/negotiate-the-agreement",
          "activities": [
            "Reconcile with the Contract Draft"
          ]
        },
        {
          "process": "ref/sls/record-a-lost-deal",
          "activities": [
            "Stop the Open Work"
          ]
        },
        {
          "process": "ref/sls/review-the-redlines",
          "activities": [
            "Take in the Buyer's Markup",
            "Confirm the Terms in Force",
            "Split the Markup into Clauses",
            "Classify Each Change",
            "Check Against Prior Decisions",
            "Review the Risk Terms",
            "Route the Clauses Only Legal Answers",
            "Decide Each Clause",
            "Draft the Counter-Markup",
            "Send the Counter Back",
            "Work the Round Trips",
            "Confirm the Clean Copy",
            "Log the Clause Decisions"
          ]
        },
        {
          "process": "ref/sls/run-the-close-plan",
          "activities": [
            "Confirm the Close Conditions"
          ]
        }
      ]
    }
  }
}
README.mdWhat the package is, and why it carries no mcp.json.
# redline-reviewer

This is an abstract agent, published as an Agent Plugin. An abstract
agent is a job description rather than an implementation. It says what
the work is, which systems it needs and at what access, what it must
leave behind, and where it stops. Any agent that leaves the records can
implement it.

The plugin carries six skills, no `mcp.json`, and everything the
abstract agent owes under `com.agentcatalog.agent/`.

## Why there is no mcp.json

A conformant server entry in `mcp.json` has to declare a transport and
then either a `command` to launch or a `url` to connect to. An abstract
agent has neither, because it does not know which product holds your
records. Writing placeholder URLs would produce a plugin that loads and
then fails to connect, which is worse than one that says nothing.

Section 6.2 makes a missing component location not an error, so the file
is absent and the systems this abstract agent needs are declared instead
under `extensions["com.agentcatalog.agent"].servers`, as a role, an
access level and what the access is for. Whoever builds an agent from
this plugin writes the `mcp.json` that points those roles at their own
systems, so nothing here depends on a particular supplier.

## Why the obligations are in an extension

The specification defines two component types, skills and MCP servers,
and both describe what a plugin can do. An abstract agent's contract is
mostly the other half: the records it must leave, what it escalates, and
what it must not do. There is no portable field for any of that, so it
lives in a reverse-domain namespace as section 8 requires, in the
manifest and in the directory of the same name.

## Where this abstract agent is used

`ref/sls/negotiate-the-agreement`, `ref/sls/record-a-lost-deal`,
`ref/sls/review-the-redlines`, `ref/sls/run-the-close-plan`. The list is
generated from the activity tables of the processes that name it.

https://agentcatalog.com/abstract-agents/redline-reviewer
skills/classify-every-change/SKILL.mdMarks each change as standard language, an approved fallback, or new text nobody has agreed to before, and reads it against what was decided the last time the same change came up. Use it when running `ref/sls/review-the-redlines`.
---
name: classify-every-change
description: Marks each change as standard language, an approved fallback, or new text nobody has agreed to before, and reads it against what was decided the last time the same change came up. Use it when running `ref/sls/review-the-redlines`.
license: CC-BY-4.0
metadata:
  agent: redline-reviewer
  agent-version: "1"
---

# Classify every change

## What it does

Marks each change as standard language, an approved fallback, or new
text nobody has agreed to before, and reads it against what was decided
the last time the same change came up. The liability, indemnity and data
terms are read with a lawyer.

## Where it happens

The agent does this in three activities across one reference process.
Each one names the activity as that process words it.

- **Check Against Prior Decisions**
  - `ref/sls/review-the-redlines`, activity 5 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)
- **Classify Each Change**
  - `ref/sls/review-the-redlines`, activity 4 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)
- **Review the Risk Terms**
  - `ref/sls/review-the-redlines`, activity 7 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)

## What to record

Per review: the markup at its version and the copy it was made from. One
item per changed clause, with the original text and the buyer's text
side by side, its class, and its clause number. What was decided on the
same change in past deals and who decided it. Every clause closed as
accept, counter or reject, each with its reason and the person who made
the decision. The counter-markup with every off-template term listed
separately and every approver named. The version sent back and the date.
Each further markup read against the copy we last sent, with every
difference named. The confirmed clean text, and the accepted changes
written to the record other deals read.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/close-the-text-out/SKILL.mdReads the agreed commercial position against the paper term by term, settles one clean text both sides call the agreement, checks that every condition owed before signature is done, and writes the accepted changes to the record the next deal reads. Use it when running `ref/sls/negotiate-the-agreement`, `ref/sls/review-the-redlines` and `ref/sls/run-the-close-plan`.
---
name: close-the-text-out
description: Reads the agreed commercial position against the paper term by term, settles one clean text both sides call the agreement, checks that every condition owed before signature is done, and writes the accepted changes to the record the next deal reads. Use it when running `ref/sls/negotiate-the-agreement`, `ref/sls/review-the-redlines` and `ref/sls/run-the-close-plan`.
license: CC-BY-4.0
metadata:
  agent: redline-reviewer
  agent-version: "1"
---

# Close the text out

## What it does

Reads the agreed commercial position against the paper term by term,
settles one clean text both sides call the agreement, checks that every
condition owed before signature is done, and writes the accepted changes
to the record the next deal reads.

## Where it happens

The agent does this in four activities across three reference processes.
Each one names the activity as that process words it.

- **Confirm the Clean Copy**
  - `ref/sls/review-the-redlines`, activity 14 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)
- **Confirm the Close Conditions**
  - `ref/sls/run-the-close-plan`, activity 14 -
    [Run the Close Plan](../../../../processes/sales/run-the-close-plan.md)
- **Log the Clause Decisions**
  - `ref/sls/review-the-redlines`, activity 15 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)
- **Reconcile with the Contract Draft**
  - `ref/sls/negotiate-the-agreement`, activity 13 -
    [Negotiate the Agreement](../../../../processes/sales/negotiate-the-agreement.md)

## What to record

Per review: the markup at its version and the copy it was made from. One
item per changed clause, with the original text and the buyer's text
side by side, its class, and its clause number. What was decided on the
same change in past deals and who decided it. Every clause closed as
accept, counter or reject, each with its reason and the person who made
the decision. The counter-markup with every off-template term listed
separately and every approver named. The version sent back and the date.
Each further markup read against the copy we last sent, with every
difference named. The confirmed clean text, and the accepted changes
written to the record other deals read.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/counter-and-work-the-round-trips/SKILL.mdDrafts the counter-markup with every off-template term listed separately and every approver named, sends it back with a plain summary, and reads each further markup against the copy we last sent so no untracked change passes quietly. Use it when running `ref/sls/review-the-redlines`.
---
name: counter-and-work-the-round-trips
description: Drafts the counter-markup with every off-template term listed separately and every approver named, sends it back with a plain summary, and reads each further markup against the copy we last sent so no untracked change passes quietly. Use it when running `ref/sls/review-the-redlines`.
license: CC-BY-4.0
metadata:
  agent: redline-reviewer
  agent-version: "1"
---

# Counter and work the round trips

## What it does

Drafts the counter-markup with every off-template term listed separately
and every approver named, sends it back with a plain summary, and reads
each further markup against the copy we last sent so no untracked change
passes quietly.

## Where it happens

The agent does this in three activities across one reference process.
Each one names the activity as that process words it.

- **Draft the Counter-Markup**
  - `ref/sls/review-the-redlines`, activity 10 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)
- **Send the Counter Back**
  - `ref/sls/review-the-redlines`, activity 12 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)
- **Work the Round Trips**
  - `ref/sls/review-the-redlines`, activity 13 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)

## What to record

Per review: the markup at its version and the copy it was made from. One
item per changed clause, with the original text and the buyer's text
side by side, its class, and its clause number. What was decided on the
same change in past deals and who decided it. Every clause closed as
accept, counter or reject, each with its reason and the person who made
the decision. The counter-markup with every off-template term listed
separately and every approver named. The version sent back and the date.
Each further markup read against the copy we last sent, with every
difference named. The confirmed clean text, and the accepted changes
written to the record other deals read.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/decide-or-route-each-clause/SKILL.mdSends the clauses only a lawyer may answer to a named lawyer, and closes the rest as accept, counter or reject, each with its reason and the person who made the decision. Use it when running `ref/sls/review-the-redlines`.
---
name: decide-or-route-each-clause
description: Sends the clauses only a lawyer may answer to a named lawyer, and closes the rest as accept, counter or reject, each with its reason and the person who made the decision. Use it when running `ref/sls/review-the-redlines`.
license: CC-BY-4.0
metadata:
  agent: redline-reviewer
  agent-version: "1"
---

# Decide or route each clause

## What it does

Sends the clauses only a lawyer may answer to a named lawyer, and closes
the rest as accept, counter or reject, each with its reason and the
person who made the decision.

## Where it happens

The agent does this in two activities across one reference process. Each
one names the activity as that process words it.

- **Decide Each Clause**
  - `ref/sls/review-the-redlines`, activity 9 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)
- **Route the Clauses Only Legal Answers**
  - `ref/sls/review-the-redlines`, activity 8 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)

## What to record

Per review: the markup at its version and the copy it was made from. One
item per changed clause, with the original text and the buyer's text
side by side, its class, and its clause number. What was decided on the
same change in past deals and who decided it. Every clause closed as
accept, counter or reject, each with its reason and the person who made
the decision. The counter-markup with every off-template term listed
separately and every approver named. The version sent back and the date.
Each further markup read against the copy we last sent, with every
difference named. The confirmed clean text, and the accepted changes
written to the record other deals read.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/stop-the-work-when-a-deal-ends/SKILL.mdStops the open contract work when a deal is called lost, so nothing is left pending against a buyer who is no longer buying. Use it when running `ref/sls/record-a-lost-deal`.
---
name: stop-the-work-when-a-deal-ends
description: Stops the open contract work when a deal is called lost, so nothing is left pending against a buyer who is no longer buying. Use it when running `ref/sls/record-a-lost-deal`.
license: CC-BY-4.0
metadata:
  agent: redline-reviewer
  agent-version: "1"
---

# Stop the work when a deal ends

## What it does

Stops the open contract work when a deal is called lost, so nothing is
left pending against a buyer who is no longer buying.

## Where it happens

The agent does this in one activity across one reference process. Each
one names the activity as that process words it.

- **Stop the Open Work**
  - `ref/sls/record-a-lost-deal`, activity 9 -
    [Record a Lost Deal](../../../../processes/sales/record-a-lost-deal.md)

## What to record

Per review: the markup at its version and the copy it was made from. One
item per changed clause, with the original text and the buyer's text
side by side, its class, and its clause number. What was decided on the
same change in past deals and who decided it. Every clause closed as
accept, counter or reject, each with its reason and the person who made
the decision. The counter-markup with every off-template term listed
separately and every approver named. The version sent back and the date.
Each further markup read against the copy we last sent, with every
difference named. The confirmed clean text, and the accepted changes
written to the record other deals read.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
skills/take-in-a-markup-and-fix-the-terms-in-force/SKILL.mdTakes in the buyer's markup at its version and the copy it was made from, fixes which template version and which pre-approved fallbacks are in force, and splits the document into one item per changed clause with both texts side by side. Use it when running `ref/sls/review-the-redlines`.
---
name: take-in-a-markup-and-fix-the-terms-in-force
description: Takes in the buyer's markup at its version and the copy it was made from, fixes which template version and which pre-approved fallbacks are in force, and splits the document into one item per changed clause with both texts side by side. Use it when running `ref/sls/review-the-redlines`.
license: CC-BY-4.0
metadata:
  agent: redline-reviewer
  agent-version: "1"
---

# Take in a markup and fix the terms in force

## What it does

Takes in the buyer's markup at its version and the copy it was made
from, fixes which template version and which pre-approved fallbacks are
in force, and splits the document into one item per changed clause with
both texts side by side.

## Where it happens

The agent does this in three activities across one reference process.
Each one names the activity as that process words it.

- **Confirm the Terms in Force**
  - `ref/sls/review-the-redlines`, activity 2 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)
- **Split the Markup into Clauses**
  - `ref/sls/review-the-redlines`, activity 3 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)
- **Take in the Buyer's Markup**
  - `ref/sls/review-the-redlines`, activity 1 -
    [Review the Redlines](../../../../processes/sales/review-the-redlines.md)

## What to record

Per review: the markup at its version and the copy it was made from. One
item per changed clause, with the original text and the buyer's text
side by side, its class, and its clause number. What was decided on the
same change in past deals and who decided it. Every clause closed as
accept, counter or reject, each with its reason and the person who made
the decision. The counter-markup with every off-template term listed
separately and every approver named. The version sent back and the date.
Each further markup read against the copy we last sent, with every
difference named. The confirmed clean text, and the accepted changes
written to the record other deals read.

That contract covers every activity this abstract agent takes on, and it
is repeated in `com.agentcatalog.agent/RECORDS.md`. What the abstract
agent does not do is in `com.agentcatalog.agent/NOT.md`.
mcp.jsonNot in the package.

Every server entry in an mcp.json needs either a command to run or a url to connect to, and the package cannot know either of those until somebody points it at their own systems. So the file is left out, the systems the agent needs are named by role in plugin.json, and you write the mcp.json when you set it up.

Setting it up

Point it at your systems

To run an agent built from this package, write an mcp.json that says which of your systems fills each role. The package names these 5 roles, and the access level beside each one is the most the work needs.

standard-terms-and-the-approved-fallbacks · readclause-record · writecontract-system · writeapproval-system · readshared-workspace-with-the-buyer · write
mcp.json You write this file. It is not part of the package.
{
  "$schema": "https://agent-plugins.org/schemas/1.1.0/mcp.schema.json",
  "mcpServers": {
    "standard-terms-and-the-approved-fallbacks": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/standard-terms-and-the-approved-fallbacks"
    },
    "clause-record": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/clause-record"
    },
    "contract-system": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/contract-system"
    },
    "approval-system": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/approval-system"
    },
    "shared-workspace-with-the-buyer": {
      "type": "streamable-http",
      "url": "https://mcp.yourcompany.com/shared-workspace-with-the-buyer"
    }
  }
}

The hostnames here are a placeholder for your own. Whichever product holds each of these systems, the agent you build is yours and nobody else has to be involved in running it.

Where it works

4 processes, 16 activities

The highlighted activities are the ones this abstract agent does. The other activities in each process belong to other abstract agents or to people.

Negotiate the Agreementref/sls/negotiate-the-agreement · 15 activities
123456789101112131415

Reconcile with the Contract Draft

Record a Lost Dealref/sls/record-a-lost-deal · 14 activities
1234567891011121314

Stop the Open Work

Review the Redlinesref/sls/review-the-redlines · 16 activities
12345678910111213141516

Take in the Buyer's Markup · Confirm the Terms in Force · Split the Markup into Clauses · Classify Each Change · Check Against Prior Decisions · Review the Risk Terms · Route the Clauses Only Legal Answers · Decide Each Clause · Draft the Counter-Markup · Send the Counter Back · Work the Round Trips · Confirm the Clean Copy · Log the Clause Decisions

Run the Close Planref/sls/run-the-close-plan · 16 activities
12345678910111213141516

Confirm the Close Conditions

The records it leaves

What it writes down

Per review: the markup at its version and the copy it was made from. One item per changed clause, with the original text and the buyer's text side by side, its class, and its clause number. What was decided on the same change in past deals and who decided it. Every clause closed as accept, counter or reject, each with its reason and the person who made the decision. The counter-markup with every off-template term listed separately and every approver named. The version sent back and the date. Each further markup read against the copy we last sent, with every difference named. The confirmed clean text, and the accepted changes written to the record other deals read.

Where it stops

What it will not do

Does not answer the clauses it routes to legal, and does not give legal advice. Does not decide price, term or scope, which is the negotiation-coordinator agent's record of what was asked for and conceded. Does not sign or execute the agreement, which is the signature-manager agent. Does not maintain the standard terms or the approved fallbacks. Does not edit a change into the text after the clean copy is confirmed: a late change reopens the review.

These limits are written into the job on purpose, so that everyone adopting the process knows which decisions stay with a person.

Agents built from this plugin

Who has built one, and how far each one got

Nobody has built one yet. The catalog says so rather than leaving the section off, because an empty list is a fact about the document.

declare it implements: redline-reviewer v1 One line in your agent's manifest. The catalog checks it against the records your runs actually leave.
A guess, not a claim

The closest things in the catalog, by description

Nobody above has claimed any of these. This is the nearest match by wording between the job written above and what publishers wrote about their own listings, closest first, and wording is not evidence: some of these will be wrong, and a job with nothing suitable still gets whatever was nearest. The publishers have never heard of this abstract agent and have promised nothing about it. What a claim looks like is in the table above, and it is signed.

Might be reached for

Not workers. These are capability that whatever does the job would use, which is a different relationship and kept in its own column for that reason.

  • contract-analysis MCP server · bitsbound.com · run it yourself · mirrored from the MCP registry AI contract analysis with partner-level redlines, OOXML Track Changes, and risk analysis.
  • contract-automation MCP server · bitsbound.com · run it yourself · mirrored from the MCP registry AI contract automation with partner-level redlines, OOXML Track Changes, and risk analysis.
  • bitsbound-contract-automation MCP server · taytrom.github.io · run it yourself · mirrored from the MCP registry AI contract automation with partner-level redlines, OOXML Track Changes, and risk analysis.