Skip to content

feat: add thinking steps support as chunks to chat stream with plan and task blocks#1824

Merged
zimeg merged 10 commits into
mainfrom
feat-ai-apps-thinking-steps
Feb 10, 2026
Merged

feat: add thinking steps support as chunks to chat stream with plan and task blocks#1824
zimeg merged 10 commits into
mainfrom
feat-ai-apps-thinking-steps

Conversation

@zimeg

@zimeg zimeg commented Jan 29, 2026

Copy link
Copy Markdown
Member

Summary

This PR adds support for thinking steps using chunks with chat stream or as blocks for other messages. This includes:

Testing

👾 Check out this sample: slack-samples/bolt-python-assistant-template#43

from slack_sdk.models.messages.chunk import TaskUpdateChunk

streamer = client.chat_stream(
    channel="C0123456789",
    recipient_team_id="T0123456789",
    recipient_user_id="U0123456789",
    thread_ts="1234567890.123456",
    task_display_mode="timeline",
)

streamer.append(
    chunks=[
        TaskUpdateChunk(
            id="task-1",
            title="Processing...",
            status="in_progress",
        ),
    ],
)

streamer.stop(
    chunks=[
        TaskUpdateChunk(
            id="task-1",
            title="Done!",
            status="complete",
        ),
    ],
)
from slack_sdk.models.blocks import (
    RichTextBlock,
    RichTextElementParts,
    RichTextSectionElement,
    TaskCardBlock,
    UrlSourceElement,
)
...
client.chat_postMessage(
    channel="C0123456789",
    blocks=[
        TaskCardBlock(
            task_id="000",
            title="Living life well...",
            status="error",
            details=RichTextBlock(
                elements=[
                    RichTextSectionElement(
                        elements=[
                            RichTextElementParts.Text(text="Dreamt of touching grass"),
                        ],
                    ),
                ],
            ),
            sources=[
                UrlSourceElement(
                    text="An online encyclopedia",
                    url="https://wikipedia.org",
                ),
            ],
            output=RichTextBlock(
                elements=[
                    RichTextSectionElement(
                        elements=[
                            RichTextElementParts.Text(text="Good things once happened"),
                        ],
                    ),
                ],
            ),
        ),
    ],
)

Category

  • slack_sdk.web.WebClient (sync/async) (Web API client)
  • slack_sdk.models (UI component builders)
  • /docs (Documents)
  • tests/integration_tests (Automated tests for this library)

Requirements

  • I've read and understood the Contributing Guidelines and have done my best effort to follow them.
  • I've read and agree to the Code of Conduct.
  • I've run python3 -m venv .venv && source .venv/bin/activate && ./scripts/run_validation.sh after making the changes.

@zimeg zimeg self-assigned this Jan 29, 2026
@zimeg zimeg requested review from a team as code owners January 29, 2026 19:43
@zimeg zimeg added enhancement M-T: A feature request for new functionality docs M-T: Documentation work only semver:minor web-client Version: 3x labels Jan 29, 2026
@zimeg zimeg marked this pull request as draft January 29, 2026 19:43
@codecov

codecov Bot commented Jan 29, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 89.80892% with 16 lines in your changes missing coverage. Please review.
✅ Project coverage is 83.95%. Comparing base (c697f35) to head (7bf75e6).
⚠️ Report is 1 commits behind head on main.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
slack_sdk/models/messages/chunk.py 73.33% 16 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1824      +/-   ##
==========================================
+ Coverage   83.91%   83.95%   +0.04%     
==========================================
  Files         115      116       +1     
  Lines       13080    13221     +141     
==========================================
+ Hits        10976    11100     +124     
- Misses       2104     2121      +17     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@zimeg zimeg marked this pull request as ready for review February 10, 2026 18:49
@zimeg zimeg added this to the 3.40.0 milestone Feb 10, 2026

@srtaalej srtaalej left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great PR description! thanks for these changes 🦋 💟

@zimeg zimeg left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀 soon....

Comment thread slack_sdk/version.py Outdated
@zimeg

zimeg commented Feb 10, 2026

Copy link
Copy Markdown
Member Author

@srtaalej Woot! Let's get this merged and released! 🚀

@zimeg zimeg merged commit af6a7bb into main Feb 10, 2026
17 checks passed
@zimeg zimeg deleted the feat-ai-apps-thinking-steps branch February 10, 2026 21:46
@zimeg zimeg mentioned this pull request Feb 10, 2026
7 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs M-T: Documentation work only enhancement M-T: A feature request for new functionality semver:minor Version: 3x web-client

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants