Feature: Bot System — Identity, SDK, API Docs, and Management UI #47
Labels
No labels
area:api
area:core
area:docs
area:infra
area:ux
dependencies
documentation
duplicate
good first issue
help wanted
invalid
question
rust
status:complete
status:partial
status:planned
type:bug
type:design
type:feature
type:infra
type:refactor
type:research
type:ux
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
icub3d/decentcom#47
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Migrated from GitHub issue icub3d/decentcom#66
Original Author: @icub3d
Original Date: 2026-04-17T00:12:41Z
Feature: Bot System — Identity, SDK, API Docs, and Management UI
Overview
Enable automated bot accounts to connect to decentcom servers, interact with channels, and respond to events. Bots are treated as regular identities using Ed25519 challenge-response auth but with a
bot: trueflag for UI and permission purposes.Background
decentcom's identity model is built on Ed25519 key pairs. Bots are technically identities that can sign challenges. This feature formalizes their role in the system, providing a
botflag for UI badges and specialized rate limits.Requirements
bot: trueflag (Self-declared by users for now)utoipadecentcom-bot-sdk) wraps the REST + WebSocket gateway in a bot-friendly interfacedecentcom-bot) that handles the auth handshake and pipes events to scriptsDesign
API / Interface Changes
Userobjects gain anis_bot: boolfield in profiles and message author objects.is_bot: truein their profile update.Data Model Changes
userstable: Addbot(INTEGER/BOOLEAN) column.Related Research
Component Changes
Server (
server/):server/src/storage/models.rs: Addbot: booltoUser.server/src/messages/handlers.rs: Includeis_botin author metadata.Bot SDK (
bot-sdk/— new crate):Client (
client/):client/src/components/members/MemberItem.tsx: add BOT badge.client/src/components/messages/MessageItem.tsx: add BOT badge on author.Task List
Phase A — Identity and UI
botcolumn touserstableUserstorage model and Profile update handler to support the flagPhase B — SDK and Tooling
Phase C — Documentation
utoipafor OpenAPI generation/openapi.jsonendpoint to the serverTest List
is_bot: truepersists in the databaseGET /api/v1/membersincludesbotfield