HOW IT WORKS
From chat decisions to pull request verification.
Mo connects the moment a team approves something in chat with the moment code is about to merge. What was decided no longer gets lost between the conversation and the pull request.
Chat is where approval happens. PR verification is where drift gets caught.
Jordan 2:44 PM
Guest users cannot see billing settings.
Maya 2:45 PM
Agreed. @Mo approve this
Mo 2:45 PM
✓ Decision captured
"Guest users cannot see billing settings."
Decision
stored
↓
Ready for
PR check
Pull request #183⬤ Open
mo-bot bot
— Conflicts found
Conflicts with approved decision
Approved: Guest users cannot see billing settings
PR exposes: billing settings to guests
CONFLICT WITH APPROVED DECISION
The missing link is not approval
Most teams already approve things in chat.
The missing step is carrying that approval forward to the pull request.
Without that link:
- the decision stays in the thread
- the reviewer may not know it exists
- the code can drift
- the mismatch gets discovered late
Mo adds that missing link.
What counts as a chat decision
- Product behavior
"Guest users cannot see billing settings." - Pricing
"Trial period must stay at 7 days." - Permissions
"Only admins can export users." - Onboarding
"Users must confirm email before starting a trial." - Restricted logic
"Restricted regions must not access this feature."
What Mo does with it
👁
Part 1
Capture
Mo stores the approved decision when the team explicitly approves it in chat.
📌
Part 2
Track
Mo keeps that decision available for future pull request checks.
✓
Part 3
Verify
When a pull request opens, Mo checks whether the code still follows the approved decision.
Why this matters
A pull request can be clean and still wrong.
A feature can be complete and still drift from what was approved.
A reviewer can miss a decision they never saw.
A customer can be the first person to notice the mismatch.
Mo catches that earlier.
Before Mo / After Mo
Before Mo
- Decision approved in chat
- Pull request opens later
- Reviewer focuses on code
Mismatch ships
After Mo
- Decision approved in chat
- Mo stores it
- Pull request opens later
Mo verifies it before merge
Best for teams that decide in chat
This model works especially well for teams where product, ops, founders, and engineering regularly settle important behavior in Slack. Instead of moving those decisions into a separate system, Mo makes them useful at merge time.
Common outcomes teams want
01
Catch drift early
Flag the mismatch before it reaches QA or production.
02
Make approvals useful later
Approved decisions do not stay trapped in the thread.
03
Protect important behavior
Pricing, permissions, onboarding, and restricted flows stay aligned.
04
Keep the workflow light
No new planning layer or extra review system.
FAQ
Does every message become a rule?
No. Only what is explicitly approved becomes enforceable.
Do developers need to do anything different?
No. Developers keep working in GitHub or GitLab. Mo adds the verification step before merge.
Is this better than just writing it in a ticket?
Tickets track work. Mo verifies whether the final pull request still matches the approved decision.
Can teams still upload written rules?
Yes. Chat-first remains the main flow, but documents can also be used when needed.
Used internally at Advante across 12+ projects including:
Approvals should not stop at the chat thread.
Use Mo to turn approved chat decisions into pull request verification before merge.