Skip to content

Add /help categorized command menu #40

Description

@Kingvic300

Summary

Add a /help command listing all available bot commands, categorized, before the command surface grows past the point where users can guess what exists.

Background

Today the bot has zero interactive commands (only the passive new_chat_members handler). Issue #4 ("Add /pr and /repo on-demand Telegram commands") is the first to introduce commands at all, and this batch adds several more (/ping, /uptime, /claim, /unclaim, /goodfirstissue, /stats, /license, /coc, /feedback, /botbug). Without a /help command, none of these are discoverable — a new group member has no way to know they exist.

Proposed Solution

A bot.command("help", ...) handler that returns a static, categorized list of available commands and their descriptions, maintained alongside command registration (either a manually-updated list or generated from a shared command registry if one gets introduced).

Technical Scope

  • src/telegram/client.ts — new bot.command("help", ...) handler
  • Depends on the other command-adding issues in this batch for the actual content of the menu; can ship with whatever commands already exist and be extended incrementally
  • Tests: help output includes all currently-registered commands

Acceptance Criteria

  • /help lists every registered command with a one-line description
  • Commands are grouped by category (GitHub info, community, bot management, etc.)
  • Output stays under Telegram's message length limit as commands are added
  • Unit test verifies the help text stays in sync with registered commands (or documents the manual-update requirement if not automated)
  • CI passes
  • Code follows project conventions

Edge Cases

  • Command list grows long enough to approach Telegram's 4096-character message limit — consider pagination or category-specific /help <category> if so
  • New commands added without updating /help — flag this risk explicitly rather than silently allowing drift

Risks

  • If the command list isn't generated from a single source of truth, it will drift from reality as commands are added/removed over time — worth deciding up front whether to accept manual maintenance or invest in a registry

Deliverables

  • Feature implementation
  • Unit tests

Labels

enhancement, backend, good first issue

Priority

Medium — becomes necessary as soon as more than one or two commands exist; sequence after the first commands land.


Estimated Completion: 96 hours

Telegram: https://t.me/txioCommunity


Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial Campaign | FWC26Campaign: Official Campaign | FWC26Third CampaignCampaign: Third Campaign

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions