Skip to main content
Skip to the work
CommonTendHelp a community keep its rules, questions, and handoffs visible.

Community care

Put the rule, the duplicate check, and the human gate on the same queue.

Give CommonTend the rules in force and a few anonymized messages. It classifies each one, skips ids it has already seen, and holds every punishment until a person approves.

Sign in and you go straight back to the CommonTend conversation. Work happens in chat. This page never asks for your card details or email address.

EVERY ITEM GETS ONE STAMPThe queue does not invent a live-channel delete. Each supplied message leaves with a recorded disposition.

  • REPLYDraft a reply in the community tone
  • ESCALATEFlag a sensitive case for a person
  • NO-ACTIONLeave the item without a punishment

01 / DROP IN THE SLOT

Intake starts from rules and anonymized messages you supply.

Community moderators who need a rule-cited queue with duplicate-thread handling and an explicit reply, escalate, or no-action choice per item.

  • 01

    Community rules or taxonomy in force

  • 02

    Anonymized messages or comment ids

  • 03

    Whether the run is shadow, approval, or auto with written confirmation

02 / THREE SCRIPTS ON THE RAIL

Classify, hold the punishment, skip the duplicate id.

Repeated questions and borderline posts pile up without a recorded rule, a duplicate check, or a human decision on every punishment.

  1. 01

    classify.py maps supplied text onto spam, hate, question, or off_topic and always requires approval.

  2. 02

    moderate.py executes only after human_approved, or after auto written confirmation for spam or hate.

  3. 03

    db.py records message ids and returns inserted false for duplicates.

WHAT LEAVES THE PIGEONHOLE

The first working result is a queue, not a live mute.

Output 01

A category, proposed action, and requires_approval flag per message

Output 02

A queued or executed route that will not punish in approval without a human

Output 03

A seen-id log that skips duplicate message ids

VERIFIED ON THE THREE SCRIPTS

The holding rail was tested against classify, moderate, and db — not a live channel.

Catalog evidence from the community-moderation-bot preset. This is not a production moderation outcome and does not claim live channel access.

classify.py
main() forces requires_approval True after classify(). Categories: spam, hate, question, or off_topic.
moderate.py
Approval without human_approved returns queued, executed false. Auto without auto_written_confirmation is rejected. Auto only executes spam or hate.
db.py
mark_seen returns False when the message_id is already stored.

THE LATCH STAYS WITH YOU

CommonTend drafts the route. A person still opens the gate.

CommonTend gives community moderators a calmer way to handle repeated questions and borderline posts by placing the relevant rule beside a proposed response and escalation choice.

It does not

  • Automatic live-channel deletes, mutes, or bans without a human event
  • Cross-project message access or unattended auto mode

Before acting

  • Moderation suggestions can be wrong and require an accountable person to review them.
  • Members need a clear path to ask for reconsideration of a moderation decision.

BEFORE YOU DROP A MESSAGE IN

Questions

Does it delete posts by itself?

No. Approval mode queues the action with executed false until a human approves. Auto is rejected without written confirmation.

What happens if the same message arrives twice?

db.py keeps seen_ids and returns inserted false for the duplicate, so the same comment id is not punished twice.

Can it go fully automatic?

Only after a recorded written confirmation, and even then only spam and hate. Everything else stays queued.

STARTER / MONTHLY

Starter

Billing appears inside the signed-in workspace. Card payment runs through Stripe Checkout.

CommonTend

Signing in opens the CommonTend conversation. This page uses PostHog for product analytics (anonymous, optional). See Privacy.