Discord Project Manager

Discord project collaboration infrastructure for OpenClaw agents. Manage Forum Channels, threads, participant permissions, and mention mode. Supports 3-tier...

MIT-0 · Free to use, modify, and redistribute. No attribution required.
1 · 304 · 1 current installs · 1 all-time installs
MIT-0
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description match the code and runtime instructions. The skill reads ~/.openclaw/openclaw.json to obtain Discord tokens and agent mappings, calls the Discord REST API to create forum channels, and patches the OpenClaw config to set channel permissions — all expected for a Discord project manager.
Instruction Scope
Runtime instructions and code legitimately read and write the OpenClaw config and call the Discord API. The SKILL.md and code also expose a '--all' mention-mode behavior that scans the live OpenClaw config and will apply permissions to any accounts found there (including manually configured bots). This is functionally consistent but means the skill will examine and act on all Discord account entries present in the config, not only entries in its own registry.
Install Mechanism
No install spec (instruction-only installer) — the package is delivered as code files and CLI scripts. No remote downloads or installers were declared. This is the lowest-risk install mechanism for a skill package.
Credentials
The skill requests read/write access to ~/.openclaw/openclaw.json and expects to obtain the Discord bot token from that config. That is proportional to the stated functionality, but it does mean the skill will read any other secrets stored in that JSON. There are no unrelated external credentials requested.
Persistence & Privilege
always is false and the skill does not request permanent platform-level privileges. It does perform config patches and sends SIGUSR1 (or falls back to 'openclaw gateway restart') to apply changes — this is required to make permission updates live but is a system-level action the user should accept deliberately.
Assessment
This skill appears to do exactly what it says, but it operates with powerful local privileges: it reads and writes your OpenClaw configuration (including the Discord bot token and any other data in that JSON) and triggers a gateway reload. Before installing or running it: 1) verify the skill source/owner and prefer installing from a trusted repo; 2) back up ~/.openclaw/openclaw.json (the code already writes backups, but keep your own); 3) review the included scripts (scripts/discord-pm.py and libs) to ensure behavior matches your policy; 4) run it first in a non-production environment or with a test guild/bot to confirm effects; 5) ensure file permissions on your OpenClaw config are restricted so only trusted code can read it; and 6) if you don't want the skill to change settings for every account, avoid using '--all' operations or review the registry before running bulk actions.

Like a lobster shell, security has layers — review code before you run it.

Current versionv2.1.6
Download zip
latestvk973nn6j2j3kdpev6ejxx79hhh821kf9

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Runtime requirements

Config[object Object]

SKILL.md

Discord Project Manager

Automated Discord project collaboration for OpenClaw multi-agent teams. Create Forum Channels and threads, manage who can speak where, and control mention-only mode — all from the CLI.

Prerequisites

  • OpenClaw with Discord channel configured
  • Discord bot with Manage Channels permission in the target guild
  • Python 3.8+

Quick Start

SKILL_DIR="/path/to/discord-project-manager"

# 1. Initialize (first time only)
python3 "$SKILL_DIR/scripts/discord-pm.py" config init
python3 "$SKILL_DIR/scripts/discord-pm.py" registry init
python3 "$SKILL_DIR/scripts/discord-pm.py" forum-channel set-default <forum_channel_id>

# 2. Create a project thread
python3 "$SKILL_DIR/scripts/discord-pm.py" thread create \
  --name "my-feature" \
  --owner agent-a \
  --participants "agent-a,agent-b"

This creates a thread in your default forum, gives agent-a free speech (owner), and sets agent-b to mention-only mode.

Commands

Configuration

discord-pm.py config init                # Auto-detect guild ID from OpenClaw config
discord-pm.py config get                 # Show current config
discord-pm.py config set-guild <id>      # Set guild ID manually
discord-pm.py config set-forum <id>      # Set default forum channel

Agent Registry

discord-pm.py registry init             # Auto-collect agent info from OpenClaw config
discord-pm.py registry list             # List all registered agents

Forum Channels

# Create a new Forum Channel (uses Discord REST API directly)
discord-pm.py forum-channel create <name> [--emoji <emoji>] [--description <text>]

# Manage forum channels
discord-pm.py forum-channel set-default <channel_id>
discord-pm.py forum-channel add <channel_id> <name>    # Register existing channel
discord-pm.py forum-channel remove <name>
discord-pm.py forum-channel list

Threads

# Create thread (uses default forum unless --forum-channel specified)
discord-pm.py thread create \
  --name <name> \
  --owner <agent> \
  --participants <agent1,agent2,...> \
  [--forum-channel <id>] \
  [--no-mention] \
  [--message <text>]

discord-pm.py thread archive <thread_id>    # Remove all permissions
discord-pm.py thread status <thread_id>     # Show permissions and participants

Permissions

discord-pm.py permissions add <thread_id> <agent1> [agent2...] [--no-mention]
discord-pm.py permissions remove <thread_id> <agent1> [agent2...]
discord-pm.py permissions mention-mode <thread_id> <on|off> <agents...|--all>

Project Registry

discord-pm.py project list [--active] [--archived] [--agent <name>]
discord-pm.py project info <thread_id>
discord-pm.py project describe <thread_id> <text>
discord-pm.py project update <thread_id> --next-action <text>

Projects are automatically registered when threads are created and updated when participants change or threads are archived. The --agent filter shows only projects where the agent is owner or participant, with role labels.

Batch operations: add and remove accept multiple agent names. A single config patch is applied for all agents, so only one gateway reload happens.

The --all flag on mention-mode scans the live OpenClaw config to find every account that currently has access to the thread, then sets mention mode for all of them — including accounts not in the agent registry (e.g. manually configured bots).

Architecture

3-Tier Project Structure

TierUse CaseExample
Forum ChannelLarge project with sub-teams📦-product-launch
ThreadIndividual task or sub-projectapi-refactor
Default ChannelQuick tasks, no isolation needed#dev-ops

Permission Model

  • Owner: requireMention: false — speaks freely, drives the conversation
  • Participants: requireMention: true — only responds when @mentioned
  • Non-participants: no channel access configured

This keeps threads focused: the owner leads, others contribute when asked.

How It Works

  1. Thread/Forum creation — threads via openclaw message CLI, forums via Discord REST API
  2. Permission management — patches OpenClaw config (channels.discord.accounts.<account>.guilds.<guild>.channels.<channel>)
  3. Config reload — triggers SIGUSR1 graceful restart (2-5s). Falls back to openclaw gateway restart if needed.

Data Files

data/
├── config.json     # Skill config (guild ID, default forum)
├── agents.json     # Agent registry (account IDs, user IDs, channels)
└── projects.json   # Project registry (threads, owners, participants, nextAction)

Both auto-generated by config init and registry init. Excluded from git (user-specific data).

Security & Permissions

This skill requires access to your OpenClaw configuration:

  • Reads ~/.openclaw/openclaw.json to obtain the Discord bot token and agent account mappings
  • Writes channel permission entries to the same config file (with file locking and atomic writes)
  • Triggers SIGUSR1 for graceful config reload (falls back to openclaw gateway restart)

The bot token is used exclusively for Discord REST API calls (forum channel creation). It is never logged, stored elsewhere, or transmitted to third parties.

Recommendations:

  • Back up ~/.openclaw/openclaw.json before first use
  • Ensure your Discord bot has only Manage Channels permission
  • Review the source code if you have concerns about config access

Troubleshooting

ProblemCheck
Thread creation failsIs the default forum set? (forum-channel set-default)
Mention mode not workingDoes the agent have mentionPatterns in OpenClaw config?
Forum creation 403Does the bot have Manage Channels permission in the guild?
Permission changes delayedConfig reload takes 2-5s. If still not working, run openclaw gateway restart

Source Structure

discord-project-manager/
├── SKILL.md
├── scripts/
│   ├── discord-pm.py     # Unified CLI
│   └── cli.sh            # Bash wrapper
├── lib/
│   ├── discord_api.py    # Discord API (CLI + REST)
│   ├── config.py         # OpenClaw config operations
│   ├── skill_config.py   # Skill-local config
│   ├── registry.py       # Agent registry
│   ├── thread.py         # Thread lifecycle
│   ├── permissions.py    # Permission management
│   ├── forum.py          # Forum channel management
│   ├── projects.py       # Project registry
│   └── validators.py     # Input validation
└── data/                 # Auto-generated, git-ignored

Version: 2.2.1 Last Updated: 2026-02-27

Files

13 total
Select a file
Select a file to preview.

Comments

Loading comments…