Renewal brief with promises kept
Not in the plan. Uses the CommitOps ledger, the Sales as Code forecast and RepoOps incidents.
Use case
Renewal brief with promises kept: a workflow across CommitOps, Sales as Code, RepoOps, AI Source of Truth that starts from 60 days before a renewal date in the CRM.
Who would use it
Account managers and customer success leads 60 days before a renewal.
What value it provides
A brief with promises kept and broken, incidents that touched the account and the forecast odds, approved before any of it reaches the customer.
Why it matters to the user
You walk into the renewal knowing what the customer will raise, with the evidence in hand.
The problem
At renewal nobody has the record of what was promised, what was delivered and which incidents hit the customer.
Expected outcomes
- Renewals with a brief 60 days out
- Renewal rate for accounts with a brief
Each run records its outcome as met, not met or not measured.
How it runs
Products and connections
| Product | Role in this workflow | Docs |
|---|---|---|
| CommitOps | Promises kept and broken for the account | Reference · CommitOps docs |
| Sales as Code | Renewal odds and their drivers | Reference · Sales as Code docs |
| RepoOps | Incidents that touched the account | Reference · RepoOps docs |
| AI Source of Truth | Check each figure | Reference · AI Source of Truth docs |
Outside the family: HubSpot, Salesforce or Attio, Your email.
What a person approves
| Action | Default risk |
|---|---|
email.send | medium |
commitops.customer.notify | high |
Action keys are from the PromptCompute catalog.
How to access it from an agent
An agent will run this workflow through the PromptReports MCP server or API, with an ID agent token. The runner will then call each product for it. Proposed
// MCP: https://mcp.promptreports.ai/mcp (Proposed)
start_run({
workflow: "renewal-brief",
inputs: { "account": "Acme Freight", "renewal_date": "2027-02-01" },
dry_run: false
})
// returns { run_id, status: "running", approvals_url }
get_run({ run_id }) // poll, or subscribe to run eventscurl -X POST https://api.promptreports.ai/v1/runs \
-H "Authorization: Bearer $PROMPTREPORTS_AGENT_TOKEN" \
-d '{"workflow":"renewal-brief"}'Or call the products yourself, step by step:
| Product | Endpoint | Tools |
|---|---|---|
| CommitOps | https://commitops.ai/api/mcp | whoami list_assertions get_assertion promised_not_started |
| Sales as Code | To confirm | to confirm |
| RepoOps | https://mcp.repoops.ai/mcp | search_brain get_pre_edit_context propose_brain_entry get_incident_attribution |
| AI Source of Truth | https://aisourceoftruth.com/v1/family/facts | to confirm |
Set it up
- Sign in at app.promptreports.ai with PromptReports ID, and pick your org.
- Connect CommitOps, Sales as Code, RepoOps, AI Source of Truth on the Connections page. Link HubSpot, Salesforce or Attio, Your email through the product that uses it.
- Register the agent that will run it on the Agents page, and give it a version manifest.
- Set the approval policy for email.send, commitops.customer.notify. Start with Require approval; critical actions are never auto.
- Fill in the inputs (Account, Renewal date) and choose the trigger: 60 days before a renewal date in the CRM.
- Start a dry run. It will count no workflow request, and it shows which steps would record missing evidence.
- Start the run. Approve each gate in the approvals inbox, then read the signed record when it ends.