Skip to content

Repository files navigation

The Parliament Bot

一个面向大型 Discord 社区的社区治理与管理机器人, 集成了提案、投票、辩诉法庭等治理工具,以及身份组管理、跨服同步、内容审核、赛事管理等一整套社区运营功能。


✨ 功能模块

🏛️ 社区治理

模块 说明 主要命令
提案系统 (proposal) 用户提交提案,经审核后发布到论坛并进行社区支持投票 /提案-设置表单入口/审核议案/提案-撤回提案
辩诉法庭 (court) 成员可申请"上庭",通过支持票达标后进入公开投票裁决流程 /上庭-申请上庭/上庭-setallowcourtrole
投票系统 (voting) 自定义投票,支持匿名/实名、实时/结束显示、定时自动结束 /投票-开启投票

👥 成员与身份组

模块 说明 主要命令
自助身份组申请 (selfRole) 用户自助申请身份组,支持前置身份组、频道活跃度、社区投票等复杂条件 /自助身份组申请-创建管理面板/自助身份组申请-创建自助身份组面板/自助身份组申请-配置向导
身份组同步 (roleSync) 在主服务器与多个分服务器间镜像同步身份组,含队列调度、审计与回滚 /身份组同步(多子命令)
受控邀请 / 防炸群 (controlledInvite) 分服仅允许持有效邀请记录者加入,对非法加入自动踢出/封禁 /分服受控邀请/受控邀请开关/查看我的分服受控邀请状态

🛡️ 管理与风纪

模块 说明 主要命令
处罚 (punishment) 一体化处罚命令(警告/禁言),支持跨服务器同步与公告 /处罚/风纪/风纪配置
自助管理 (selfModeration) 成员对违规消息以反应达阈值后触发投票,自动删除/禁言 /删除搬屎消息/禁言搬屎用户/搬石公投配置
自动清理 (autoCleanup) 按违禁关键词/正则实时扫描并删除消息,支持全服/选定频道历史清理 /频道冲水-添加违禁关键字/频道冲水-设置清理频道/频道冲水-切换自动清理
帖子反应审核 (creatorReview) 限定来源论坛/服务器的投稿帖子审核流程 /创作者审核(多子命令)

🏆 赛事与内容

模块 说明 主要命令
赛事管理 (contest) 赛事申请、审核、频道创建、作品投稿与稿件管理,支持许可论坛与外部服务器投稿 /赛事-设置赛事申请入口/赛事-设置赛事审核员身份组/赛事-初始化赛事标签
频道 AI 总结 (channelSummary) 读取指定时段消息,调用 AI 生成讨论摘要,支持预设 /总结频道内容/总结预设

🧰 工具与维护

模块 说明 主要命令
自助文件上传 (selfFileUpload) 用户自助上传文件/备份,支持匿名与退出追踪 /自助补档
机器人消息管理 (botMessage) 管理组共同维护机器人发出的常驻消息(规则/公告),含编辑、发送、论坛发帖、整体替换、撤销与改动留痕 /机器人消息、右键菜单 编辑机器人消息

🔐 所需 Gateway Intents

本 Bot 需要在 Discord 开发者后台开启以下两个特权 Intent

  • Server Members Intent — 用于跨服身份组同步、受控邀请防炸群、自助身份组统计、风纪处罚。
  • Message Content Intent — 用于违禁词自动清理、频道内容总结、内容归档。

🛠️ 技术栈

  • 运行环境: Node.js
  • 核心库: discord.js v14
  • 数据存储: better-sqlite3(SQLite)+ JSON 文件(本地)
  • AI 总结: openai / @google/genai(兼容 OpenAI 接口)
  • 仪表盘: express(roleSync 身份组数据库页面)

🚀 安装与配置

  1. 克隆仓库并安装依赖:

    npm install
  2. 复制环境变量模板并填写:

    cp .env.sample .env
  3. 必填环境变量:

    DISCORD_TOKEN=<Bot 栏获得的 Token>
    CLIENT_ID=<General Information 栏的 Application ID>
    GUILD_IDS=<命令注册目标服务器ID,逗号分隔,如 123...,456...>
    

    当前采用严格模式:必须配置 GUILD_IDS,否则启动失败。 其余可选配置(AI 总结、身份组同步、成员缓存策略等)详见 .env.sample 内注释。

  4. 启动:

    npm start          # 默认(--max-old-space-size=1024)
    npm run start-big  # 大型服务器建议(4096MB 堆内存)

📁 项目结构

src/
├── core/        # 核心:入口 index.js、事件分发、数据库与权限工具
├── modules/     # 各功能模块(见上方功能表)
└── shared/      # 共享命令与组件
data/            # 本地数据库(SQLite)与配置(JSON)

📜 数据与隐私

本 Bot 仅为实现功能而收集必要数据(Discord ID、身份组、配置、活跃度统计等),存储于运行 主机的本地数据库,不出售或分享给第三方(AI 总结功能会将消息发送至所配置的 AI 接口除外)。 完整说明见 隐私政策 / Privacy Policy

About

类脑 会议区功能机器人

Resources

Stars

31 stars

Watchers

1 watching

Forks

Packages

Used by

Contributors

Languages