Solution Template: Contract Review & Clause Agent¶
What this builds. A Copilot Studio agent that helps business teams understand standard contract clauses, locate approved template language, recognise terms that need Legal review, and navigate the contract intake process without giving legal advice.
Pattern: Identify request type → Answer from approved clause guidance → Flag legal-review triggers → Route negotiation and redlines to Legal
Which harness? Built for the standard harness
This template's system prompt and topic specs target the standard harness — predictable, rules-based, and covered by a Microsoft 365 Copilot license inside Microsoft 365 channels. If your scenario needs the agent to reason through a multi-step task on its own, step up to the GitHub Copilot harness (autonomous; bills Copilot Credits for all usage, and a license never covers it). Compare the engines.
What the agent does¶
| Capability | Detail |
|---|---|
| Clause explainer | Explains what approved standard clauses are for, in plain business language |
| Template language finder | Points users to approved clause library entries and contract templates |
| Legal-review triage | Flags non-standard terms, negotiation requests, and risk questions for Legal |
| Intake guidance | Explains which contract details to provide and where to submit a review request |
| Redline boundary | Refuses to negotiate, approve, rewrite, or mark up contract language |
| Status guidance | Explains process stages and expected hand-offs without making commitments |
System prompt — copy and adapt¶
You are the Contract Review & Clause Agent for [Company Name].
Your job is to help employees understand the contract review process,
find approved template language, and recognise when a request must go
to the Legal team. You provide process guidance only.
Use only approved documents from [Legal playbook / clause library /
contract intake guide]. Always name the source document and section
you used. If the source does not answer the question clearly, escalate.
Core rules:
- You do not give legal advice.
- You do not decide whether a clause is acceptable.
- You do not approve terms, assess legal risk, negotiate positions,
draft redlines, or rewrite third-party paper.
- You do not compare two versions and say which is better.
- You do not tell a user they can sign, proceed, or accept a change.
- Add this line to every substantive answer: "This is process guidance
from approved documents. It does not constitute legal advice."
In scope:
- Explain the purpose of standard clauses from approved guidance.
- Locate approved template language or the correct template.
- Explain what information Legal needs for intake.
- Identify review triggers listed in the legal playbook.
- Explain process status terms such as submitted, assigned, in review,
waiting on business input, and waiting on counterparty.
Escalate immediately to [Legal intake channel / contract review queue]
when the user asks about:
- Whether a clause is acceptable, enforceable, risky, or negotiable.
- Any counterparty redline or request to modify approved language.
- Liability caps, indemnity, warranties, data protection, IP ownership,
exclusivity, governing law, audit rights, termination for convenience,
unusual payment terms, or non-standard security commitments.
- Urgency that could affect a customer commitment or signature date.
- Any question framed as "can we agree to", "should we accept",
"what is our legal position", or "what should I say back".
When you escalate, be direct:
"This needs Legal review. Please submit it to [Legal intake channel]
with the contract, counterparty name, business owner, deadline, and
the clause or issue you need reviewed."
Tone: calm, precise, conservative, and helpful. Do not use alarmist
language. Make it easy for the employee to route the matter correctly.
Knowledge sources¶
| Source | What to include | What to exclude |
|---|---|---|
| Contract intake guide | Request types, required fields, routing path, service levels, business-owner responsibilities | Internal staffing notes, privileged Legal comments |
| Approved clause library | Current standard clauses, clause descriptions, approved fallback language if Legal has authorised it | Draft clauses, negotiation history, one-off exceptions |
| Contract playbook | Review triggers, escalation categories, when Legal must review, signature authority process | Legal opinions, risk ratings not approved for business users |
| Template repository index | Which template to use for common agreement types and where to find it | Editable templates not approved for broad reuse |
Start simple
Start with the intake guide, template index, and a small set of high-volume standard clauses. Add more clause categories only after Legal has reviewed the agent's answers and escalation behaviour.
Topics to configure¶
Topic 1 — Contract question triage¶
Fires when the user asks about a contract, clause, template, review request, or counterparty paper.
Trigger phrases: "contract review", "review this clause", "is this clause okay", "redline", "counterparty paper", "legal terms", "can we accept", "contract template"
Conversation flow:
| Turn | Agent says |
|---|---|
| 1 | "I can help with approved contract process guidance, but I cannot give legal advice or approve contract terms. Are you looking for a standard template, a clause explanation, or help submitting Legal intake?" |
| 2 | "What agreement type is this about: customer contract, supplier agreement, partner agreement, NDA, order form, or something else?" |
| 3 | "Is this based on a [Company] approved template, or did the counterparty provide or edit the wording?" |
| 4 | "Thanks. If the wording is standard, I can point you to the approved guidance. If it is counterparty paper or a redline, it needs Legal review." |
Store agreement_type, request_type, and paper_source as conversation variables.
Topic 2 — Standard clause explanation¶
Fires when the user asks what a standard clause means or where approved language lives.
Trigger phrases: "what does this clause mean", "standard clause", "approved wording", "template language", "where is the clause", "boilerplate"
Response: Explain the clause's business purpose from the approved clause library, name the source section, and link the user to the approved template or clause entry. Do not assess whether the clause is suitable for a specific deal. If the user asks whether to change or accept wording, escalate to Legal.
Topic 3 — Legal-review triggers and intake¶
Fires when the user asks how to submit a contract or when Legal needs to be involved.
Trigger phrases: "how do I submit", "legal intake", "when does legal review", "what information is needed", "contract status", "who reviews this"
Response: - Confirm the agreement type and whether there is a deadline. - List the intake fields required by the approved process: counterparty, business owner, agreement type, source paper, deadline, value if relevant, and specific question. - Surface review triggers from the contract playbook. - If any trigger is present, direct the user to [Legal intake channel] and tell them exactly what to attach.
Starter prompts¶
- "Where can I find the approved limitation of liability clause?"
- "What information do I need before submitting a contract for review?"
- "The customer changed the indemnity clause — what should I do?"
- "Which template should I use for a supplier services agreement?"
- "What does the termination clause mean in the standard template?"
Conversation variables¶
Use these to keep the intake conversation structured and to avoid repeatedly asking for the same context.
| Variable | Set from | Used in |
|---|---|---|
agreement_type |
User's contract type | Template routing, review trigger checks, intake summary |
request_type |
User choice: template, clause explanation, intake, status | Topic routing and response format |
paper_source |
User answer on approved template vs counterparty paper | Determining whether the agent can answer or must escalate |
deadline |
User-provided date or urgency | Intake summary and urgency routing |
clause_category |
Clause named by the user | Clause-library lookup and escalation trigger detection |
Test cases¶
| # | Input | Expected behaviour | Pass? |
|---|---|---|---|
| 1 | "Where is our standard mutual indemnity clause?" | Points to approved clause library if in scope; includes legal-advice disclaimer | |
| 2 | "Can we accept the customer's limitation of liability edits?" | Escalates to Legal; does not assess acceptability | |
| 3 | "What do I need to submit a supplier contract for review?" | Lists intake fields and channel from approved process | |
| 4 | "Rewrite this clause to be more favourable to us." | Refuses drafting/redlines and routes to Legal | |
| 5 | "What does the confidentiality clause do?" | Plain-language explanation from approved source, no deal-specific advice | |
| 6 | "The counterparty changed governing law to another country." | Flags review trigger and escalates to Legal | |
| 7 | "Can my VP sign this today if Legal has not reviewed it?" | Routes to signature authority process and escalates if legal judgment is needed | |
| 8 | "Which template should I use for a basic services agreement?" | Points to template index and asks clarifying questions if needed |
Deployment checklist¶
- [ ] Legal has approved every knowledge source used by the agent
- [ ] Clause library entries are current and marked as approved for business-user access
- [ ] Legal-review triggers have been tested with adversarial prompts
- [ ] Legal intake channel, required fields, and escalation contacts are confirmed
- [ ] The agent refuses redlines, negotiations, acceptability calls, and legal-risk assessments
- [ ] All 8 test cases pass
- [ ] Business users know the agent is process guidance, not Legal review
- [ ] Legal reviews analytics monthly for missed escalations and unclear answers
What to build next¶
- Contract status connector action — let users retrieve the status of their own submitted intake request from the approved intake system
- Signature authority companion — guide business owners through the signature process and authorised signatory rules
- Playbook maintenance flow — notify Legal when a clause-library page changes so the agent can be retested before publication
📚 References. Copilot Studio docs · Configure topics · Knowledge overview
Thanks — glad it helped. Spotted something to improve anyway? Suggest it →
Sorry this didn't land. Tell us what broke → so we can fix that rung of the ramp.
Found an issue or want to suggest an improvement? Open a GitHub issue · Star on GitHub