Skip to content

Feature Request: Add username and icon_url support to chatStream API #2752

@yamadashy

Description

@yamadashy

Summary

The chatStream() API currently does not support customizing the bot's display name and icon, unlike chat.postMessage. This makes it difficult to implement multi-agent systems where different agents need distinct visual identities.

Current Behavior

// chat.postMessage supports username and icon customization
await client.chat.postMessage({
  channel: 'C123456',
  text: 'Hello from Agent A',
  username: 'Agent A',
  icon_url: 'https://example.com/agent-a-icon.png'
});

// chatStream does not support these parameters
const streamer = client.chatStream({
  channel: 'C123456',
  recipient_team_id: 'T123456',
  recipient_user_id: 'U123456',
  thread_ts: '1234567890.123456',
  // username: 'Agent A',  // Not available
  // icon_url: 'https://...'  // Not available
});

Desired Behavior

Add username and icon_url parameters to chatStream() to allow bot identity customization:

const streamer = client.chatStream({
  channel: 'C123456',
  recipient_team_id: 'T123456',
  recipient_user_id: 'U123456',
  thread_ts: '1234567890.123456',
  username: 'Agent A',
  icon_url: 'https://example.com/agent-a-icon.png'
});

Use Case

Building a multi-agent AI assistant where different agents (e.g., "Research Agent", "Code Agent", "Writing Agent") need to be visually distinguishable to users. Currently, all streaming messages appear from the same bot identity.

Additional Context

  • chat.postMessage already supports these parameters via the Authorship type
  • This feature would maintain consistency across Slack's messaging APIs
  • Related to multi-agent and AI assistant use cases

Thank you for considering this feature request!

Requirements

Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you are agreeing to those rules.

Metadata

Metadata

Assignees

No one assigned

    Labels

    duplicateAn issue for the same purpose already exists, and a link is in the commentsenhancementM-T: A feature request for new functionalityserver-side-issue

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions