Docs thatstay true to your Salesforce org.

LivingContext closes the loop between every commit, every metadata change, and the runbooks they make wrong — proposing the anchor-precise edits so your docs always describe the system you actually have.

No managed package requiredYour repo is canonMCP + llms.txt ready
cr/cr_8b4e
2 edits
runbooks · opp-approval.md

How to approve an opportunity over $250 000

Opportunities over $250 000 route to the Sales-Director Regional-VP for approval. Approval uses single-approver two-of-three quorum as of approval process v3.1.

Required fields: Stage, CloseDate, ContractTerm__c.

Anchored edit · edit 1 of 2op = replace
{ "anchor": "Sales-Director",
  "new":    "Regional-VP" }
↘ Reads from · writes to
Salesforce DXTooling APIConfluenceSF KnowledgeGitHubGitLabBitbucketNotionMarkdownSetup Audit TrailSalesforce DXTooling APIConfluenceSF KnowledgeGitHubGitLabBitbucketNotionMarkdownSetup Audit Trail
↘ Understands every
Apex ClassesApex TriggersFlowsApproval ProcessesValidation RulesCustom ObjectsCustom FieldsPicklistsPermission SetsSharing RulesLightning PagesLightning Web ComponentsOmniScriptsProcess BuildersApex ClassesApex TriggersFlowsApproval ProcessesValidation RulesCustom ObjectsCustom FieldsPicklistsPermission SetsSharing RulesLightning PagesLightning Web ComponentsOmniScriptsProcess Builders
The product

Six surfaces. One loop. No quarterly doc audits.

Each surface is independently usable. Adopt one — the changelog agent, the MCP server, the tag panel — and add the others as your team is ready.

Doc-Sync Mapper

From the file you just changed, to the runbooks that mention it.

Two-tier retrieval — graph traversal first, change-driven fallback second. One mapper handles every entity type: Apex, Flows, Fields, Validation Rules, Approval Processes.

opp-approval.md
discount-policy.md
case-lifecycle.md
apex-discount.md
APPROVALOpp_Over_250k
FIELDDiscount_pct__c
FLOWCase_Auto_Close
APEXDiscountCalc.cls
Typed verdict

Five labels. Five queues. Less noise.

Reviewers triage by intent, not by alert fatigue. Per-workspace calibration on false-positives.

NowWrong24
NowIncomplete11
NowMisleading6
StaleButCorrect38
FalsePositive9
MCP read surface

Your AI assistants stop guessing.

Claude Desktop, Cursor, Zed — point them at the MCP server and they only see docs known to be in sync with the metadata they describe.

> claude opp-approval over $250k
Structured edit proposals

The model can't rewrite your doc. It can only point and surge.

Anchor-based ops { op, anchor, new }. Reviewers triage each edit independently — a noisy fifth edit doesn't block the four good ones.

edit 1 of 2 · replaceNowWrong
{ op: "replace",
anchor: "Sales-Director",
new: "Regional-VP" }
Coverage dashboard

What's documented. What isn't.

Per-entity coverage at a glance. The next-action queue is driven by data, not who shouted loudest in #sf-platform.

Apex
73%
Objects
88%
Flows
41%
Validation
20%
Approval
92%
Git mirror

Your repo is the canonical store.

Confluence and SF Knowledge stay editable. Git carries history, diff, blame, rollback — portable even if you leave.

# git log --oneline docs/
7e4f2b1lc: approve edit 1/2 on opp-approval.md
4d9a2c3lc: approve edit 2/2 on opp-approval.md
2a1f001Add ContractTerm__c to checklist
9b0e44aInitial import from Confluence
Changelog Agent

SF-flavored release notes, on every tag.

Built on git-cliff. Groups commits by SF entity, not conventional-commit type. Drop the Action in your repo.

.github/workflows/notes.yml
uses: livingcontext/changelog-action@v0
with:
range: v1.4.0..v1.5.0
enrich: true
preview
Apex · DiscountCalc — return early on null amount
The closed write loop · how it works

From the commit
to the corrected doc.
Continuously.

No quarterly audits. No “who-shouted-loudest” queue. Every change is either accounted for, surfaced as a known false-positive, or already on its way to publish.

34sto flag
1m 12sper edit
<3%false positive
01webhook
POST /webhooks/git
{ "sha": "7e4f2b1", "ref": "main" }
200 OK · 12ms
Detect

Every commit and metadata change is observed in near-real-time.

02mapper
opp-approval.md
discount-policy.md
Opp_Over_250k
Discount_pct__c
Map

Two-tier retrieval walks the doc-code graph, then change-driven fallback.

03verdict
NowWrongNowIncompleteStaleButCorrect
Classify

Each affected doc receives a typed staleness verdict.

04anchor
{ op: "replace",
anchor: "Sales-Director",
new: "Regional-VP" }
Propose

Anchor-based edits — the model surges existing strings, never rewrites.

05approve
Edit 1 · approve
Edit 2 · approve
Edit 3 · reject×
Approve

Reviewers approve or reject each edit; the queue waits for the doc.

06publish
opp-approval.md✓ Confluence
discount-policy.md✓ SF Knowledge
↘ mirrored to git · sha 4d9a2c3
Publish

Confluence / SF Knowledge updated; every change mirrored to git.

“Other tools detect doc drift. We close the loop — every change is either resolved or it stays in the queue. Forever.”

← the design constraint we never bend
↘ How it works

From commit to corrected doc.

01 · the change
It starts with a normal Tuesday.

An engineer ships a metadata change.

An Apex class is renamed, an approval process gains a quorum step, a validation rule expands. Somewhere — in a runbook nobody opened this quarter — a sentence just became wrong.

34sMean detect latency
step 01·shipped 12s ago
~/sf-revops · gitlive
force-app/main/default/approvalProcesses/Opp_Over_250k.xml
<approvalStep>
  <name>Director Approval</name>
  <assignedApprover>
-   <approver>Sales-Director</approver>
+   <approver>Regional-VP</approver>
  </assignedApprover>
- <approverType>singleApprover</approverType>
+ <approverType>quorum</approverType>
+ <quorum>2-of-3</quorum>
</approvalStep>
git push origin mainshipped to acme/sf-revops · 12 sec ago
02 · the mapping
The doc-code graph wakes up.

We find the docs that just turned false.

Two-tier retrieval: the graph names exact candidates from prior tagging; change-driven fallback catches anything inferred from the diff text. One mapper, every entity type.

94%Recall @ k=4
step 02·4 docs traversed
livingcontext · mapperlive
Two-tier retrieval · 4 docs traversed
opp-approval.mdOpp_Over_250kgraph
discount-policy.mdOpp_Over_250kfallback
kb/12831.mdOpp_Over_250kgraph
sales-handbook.mdskipped
03 · the verdict
Five labels, not a boolean.

Each doc earns a typed verdict.

NowWrong, NowIncomplete, NowMisleading, StaleButCorrect, FalsePositive. Reviewers triage by intent — not by alert fatigue or a quarterly audit reminder.

<3%False positives
step 03·3 docs flagged
livingcontext · verdictslive
Verdicts assigned · 3 docs flagged
opp-approval.mdNowWrong
evidenceSales-Director → Regional-VP
discount-policy.mdNowIncomplete
evidencemissing quorum step
kb/12831.mdNowMisleading
evidencereads as single-approver still
04 · the publish
Approved edits land. Git remembers.

Confluence updates. Git remembers.

The reviewer approves the edits they want. Confluence and SF Knowledge update; the customer's own git repo records every change forever — diff, blame, rollback intact.

100%Mirrored to git
step 04·2 docs synced
livingcontext · publishlive
Publish · 3 of 4 edits approved · 2 docs updated
opp-approval.mdConfluencesynced · 18s ago
discount-policy.mdSF Knowledgesynced · 14s ago
# git log --oneline docs/
4d9a2c3  lc: approve edit 2/2 on opp-approval.md
7e4f2b1  lc: approve edit 1/2 on opp-approval.md
01
5
Typed verdicts

NowWrong / NowIncomplete / NowMisleading / StaleButCorrect / FalsePositive

02
<3%
False-positive rate

After per-workspace calibration on real reviewer behavior.

03
70%
Graph coverage in ~1h

Onboarding wizard scans + infers + calibrates in one sitting.

04
0
Doc-stores you have to migrate

Confluence and SF Knowledge stay as editing surfaces. Git is the mirror.

Changelog Agent · independently deployable

Release notes that understand Salesforce.

Built on git-cliff. Groups commits by Salesforce entity — Apex, Custom Objects, Custom Fields, Flows, Validation Rules, Approval Processes — not by raw conventional-commit type. Drop the GitHub Action into a workflow; get notes back as a PR comment, a build artifact, or a release-page body.

required
No SF org
required
No managed pkg
license
MIT
terminal · livingcontext-changelog
~/sf-revops $
git-cliff v2.4.0 — pre-processor: salesforce-aware
grouped 47 commits across 6 SF entities
## v1.5.0 — May 18 2026
### Approval Processes
- Opp_Over_250k: route to Regional-VP w/ 2-of-3 quorum (7e4f2b1)
- Discount_Above_30: require Manager + Director (a019b3c)
### Apex
- DiscountCalc.cls: return early on null amount (4d9a2c3)
- OppApprovalRouter.cls: drop legacy single-approver branch (3f1b8e2)
### Custom Fields
- Opportunity.ContractTerm__c: required = true (812e993)
### Validation Rules
- Opp_Quorum_Threshold: enforce on Stage = Closed-Won (5d2c001)
posted to PR #284 · 1.2s
MCP read surface

For assistants that shouldn't guess.

Point Claude Desktop, Cursor, Zed, the IDE agent of the week at the LivingContext MCP server. They only see docs known to be in sync with the metadata they describe — no confident hallucinations from a runbook that was true in March.

Claude DesktopCursorZedClaude Code
mcp · livingcontext-acme
processing…
llms.txt · for every other agent

Docs that ship as clean Markdown. With a file just for the machines.

Your repo is the source of truth, so docs ship as Markdown natively — no scraping a rendered DOM, no fighting a CMS export. At every publish, LivingContext writes a /llms.txt index in the emerging convention, so Claude, Cursor, Perplexity, ChatGPT — and the next agent that hasn't shipped yet — can read your verified docs with zero integration work.

your repo, your format
Native Markdown
on every publish
Auto-generated
index + bundled body
/llms.txt + /llms-full.txt
stale docs filtered out
Verified-only
ClaudeCursorPerplexityChatGPTZedany LLM
acme/sf-revops · branch:main
/docs/runbooks/
opp-approval.md
discount-policy.md
case-auto-close.md
/docs/reference/
fields.md
approvals.md
/docs/kb/
12831.md
11402.md
/llms.txt
/llms-full.txt
What gets generated
/llms.txt↘ index of every verified doc, w/ one-line descriptions
/llms-full.txt↘ same, but with every doc body inlined for one-shot retrieval
Filters
only docs marked in_sync are included
NowWrong / NowMisleading docs are hidden
regenerated on every merge to main
~/sf-revops/llms.txtauto · regenerated 18s ago
# LivingContext for Acme RevOps

> Verified Salesforce docs for the Acme RevOps org.
> All entries are in-sync with metadata as of 7e4f2b1.
## Runbooks - [Opportunity approval over $250k](/docs/runbooks/opp-approval.md): How to approve opps over $250k. Routes to Regional-VP w/ 2-of-3 quorum. - [Discount policy](/docs/runbooks/discount-policy.md): Approval matrix and routing rules by discount tier. - [Case auto-close](/docs/runbooks/case-auto-close.md): Conditions for automatic case closure. ## Reference - [Custom fields glossary](/docs/reference/fields.md): All custom fields with type, description, validation. - [Approval processes](/docs/reference/approvals.md): Active approval processes by entity. ## Optional - [Legacy approval flow](/docs/legacy/old-approval.md): Removed Apr 2026. Kept for audit only.
Vs. the existing world

Other tools manage docs.
We make them true again.

Staleness signal
us5 typed verdicts
Mintlify / DeepDocsneeds-update boolean
Swimmdrift alert
Manual auditquarterly hand-audit
Edit shape
usanchor-based edits
Mintlify / DeepDocsfree-form rewrite
Swimmsnippet-anchored
Manual auditrewrite by hand
Salesforce metadata
usgraph-aware (Apex, Flows, Approvals, VR, Fields)
Mintlify / DeepDocsrepo-only
Swimmcode-only
Manual audittribal knowledge
Assistant integration
usMCP read surface
Mintlify / DeepDocs
Swimm
Manual audit
Canonical doc store
uscustomer git mirror
Mintlify / DeepDocsvendor-hosted
Swimmvendor-hosted
Manual auditthe wiki, on a good day
Adoption shape
usGitHub Action → full loop
Mintlify / DeepDocsall-or-nothing
Swimmall-or-nothing
Manual auditn/a
⁄⁄ Closed beta · Q3 2026

Stop trusting docs.
Start verifying them.

Drop your email. We'll run a calibration pass on your repo and send back a draft coverage report within seven days.

We never read your code or store metadata without consent.