FAQ

Frequently asked questions

Everything you need to know about how Mo works, what it checks, and how it fits into your team's workflow.

How it works
How do I decide which Slack messages become enforced rules?
You control it entirely. Mo only enforces what was explicitly approved — regular conversation is ignored. To capture a rule, anyone on your team tags @Mo approve this in any Slack channel where Mo is installed. Mo reads the thread context, extracts the decision, and stores it. Everything else Mo ignores.
What happens if a decision changes?
The new decision automatically overrides the old one. If someone says "trial should be 14 days" after a previous decision said 7, Mo updates the rule and the old one stops being enforced. Mo tracks the full history so you always know what was decided and when. You can also revoke any rule with @Mo undo that.
What exactly does Mo check on a pull request?
Mo reads the full diff of every pull request — every file, every changed line. It matches the changes against your approved rules and flags any conflict. When it finds a conflict, it posts an inline PR comment showing: the file and line number, the approved rule that was broken, the exact change that caused the conflict, and who originally approved the rule in Slack.
Does it work when an AI agent opens the PR?
Yes. Mo checks every pull request against stored decisions regardless of who or what opened it — human developer, AI coding agent, or automated bot. The decisions were made by humans; Mo makes sure whatever code gets merged still follows them.
Can I upload a policy document instead of approving rules in Slack?
Yes. Use @Mo give me an upload link in Slack and Mo will send you a secure upload link. You can upload PDFs, Word documents, or plain text files — compliance policies, product specs, architecture decisions, anything. Mo uses AI to extract individual rules from the document, presents them to you one by one, and you approve the ones that matter. Only approved rules get enforced.
What Mo checks
Does Mo review code quality?
No. Mo does not care if your code is clean, well-structured, or follows conventions. It only checks whether the code matches what the team approved. Mo is not a code reviewer — it is a merge check for approved rules. Use tools like CodeRabbit or GitHub Copilot for code quality. Use Mo for rule enforcement.
What kinds of rules does Mo enforce?
Mo works best for rules that involve business logic baked into code: pricing and trial configuration, permission and role checks, onboarding flow steps, compliance-sensitive feature gates (region restrictions, legal requirements), and product decisions like "guests cannot see billing." If the rule can be expressed in natural language and the violation can be detected in a code diff, Mo can check it.
What does Mo not catch?
Mo does not catch bugs, syntax errors, security vulnerabilities, or performance issues — that is what code review and static analysis tools are for. Mo also won't catch violations that are not detectable in a diff (for example, runtime-only behavior). Mo is specifically built to catch the gap between what your team decided and what ends up in the codebase.
Setup & workflow
Does it work with GitLab too?
Yes. Mo works with both GitHub pull requests and GitLab merge requests. The same Slack-approved rules are checked against both platforms. You connect each from the Mo portal and can have a mix of GitHub repos and GitLab projects in the same account.
What if my team doesn't want to change how they work?
That is exactly why Mo uses Slack as its interface. There is no new tool to learn, no separate dashboard to check during the day. Your team keeps talking in Slack as they always have — the only change is tagging @Mo approve this when an important rule is agreed on. Developers don't change anything about how they open pull requests. Mo runs automatically in the background.
How quickly does Mo check a pull request?
Mo receives a webhook the moment a pull request is opened or updated. There is no polling, no cron job. The check typically completes and posts a comment within a few seconds of the PR being opened.
Do developers need to install anything?
No. Developers don't install anything. The setup happens once at the account level: install the Mo Slack app, connect your GitHub or GitLab account from the Mo portal, and select which repositories to monitor. After that, every pull request is checked automatically — no developer action required.
Pricing & billing
How much does Mo cost?
Mo is $49 per project (Slack workspace) per month. Includes up to 20 approved decisions and 100 PR checks per month. A 7-day free trial is included — no credit card required. For higher volume teams, email hello@motionode.com. See the full pricing page for details.
Is pricing per seat?
No. Mo does not charge per seat. Your entire team can approve rules in Slack and open pull requests on GitHub or GitLab — all included in the flat $49/project/month rate. The only optional add-on is portal collaborator access at $9/month per person, which gives that person direct access to the Mo web portal. That is entirely optional — most team members never need it.
What is a "project"?
A project in Mo corresponds to a Slack workspace. Mo is installed into a Slack workspace, and that workspace is what Mo charges per — $49/month per Slack workspace. All the decisions approved in that workspace, and all the repos connected to it, belong to that project. Each project includes up to 20 approved decisions and 100 PR checks per month. If your company uses two separate Slack workspaces, those are two separate projects.

Still have questions?

Try Mo free for 7 days — no credit card required. Or reach out and we'll answer directly.

7-day free trial · No credit card required · $49/project/month after that