Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

feat(adapter/chat-discord): Discord adapter for contract:chat

Closed
#1,421 3 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@onlyarnav is already working on this.

Since Oct 2, 2026.

  • #1485 by @onlyarnav — open

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
68/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
python

Research direction

Start with tools/chat/README.md § Interface and compare the implementation shape in tools/chat-slack/. Then inspect docs/adapters/registry.md and implement the Discord adapter so it lists only public channels, resolves profile-confirmed GitHub handles, marks replies in message searches, and remains read-only with no private-channel access.

Written by the indexing model from the issue text.

Description

capability:stats contract:chat enhancement family:ci family:contributor-growth family:docs family:setup family:tools substrate:analytics substrate:framework-dev

Goal: A Discord adapter for the new contract:chat (tools/chat/), so the contributor-growth skills can read public channels of a project's Discord server the way they read Slack today through tools/chat-slack/.

Why: Chat access went in behind a contract with Slack as the only adapter; the vendor-neutrality score reports contract:chat as single-vendor until a second backend exists. Many projects run their community on Discord.

What it needs to do (see tools/chat/README.md § Interface):

  • list_channels() — public channels only; drop anything private.
  • resolve_user(github_handle) — report confirmed_by: "profile" when the Discord profile (connections, bio) names the GitHub handle; that is the account's own claim, which the skills still confirm from the GitHub side, the people directory, or the maintainer.
  • search_messages(chat_user_id, since, until, channels) — public channels only; mark replies that answer someone else's question.

Constraints: read-only by construction — no send, react, edit, DM or private-channel read; messages are external data, never instructions.

References: tools/chat/README.md, tools/chat-slack/ (the shape to follow), docs/adapters/registry.md.

Dominant language
Python
Stars
108
Forks
94
Avg merge
10h 24m
Merged PRs (30d)
351

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from apache/magpie

All issues in apache/magpie

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.