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.

# billing-rules Thread
Jordan 2:44 PM

Guest users cannot see billing settings.

Maya 2:45 PM

Agreed. @Mo approve this

Mo
Mo 2:45 PM
✓ Decision captured

"Guest users cannot see billing settings."

Mo
Decision
stored
Ready for
PR check
Pull request #183 ⬤ Open
Mo
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.