Skip to content

[Slack plugin] File-upload comments omit “Sent using @ChatGPT” attribution #36751

Description

@h8192-adorie

What version of the Codex App are you using (From “About Codex” dialog)?

Codex Desktop 26.727.51351 (bundle 6119), bundled CLI codex-cli 0.145.0.

Official Slack plugin bundle: 0.1.4.

What subscription do you have?

ChatGPT workspace account. The exact plan is not exposed in the local client diagnostics available to me.

What platform is your computer?

Darwin 25.5.0 arm64 arm

What issue are you seeing?

The official Slack plugin applies inconsistent AI-origin attribution depending on the Slack action used.

A normal outbound message sent through slack_send_message is posted with the expected footer:

sigtest-text-only-01
Sent using @ChatGPT

However, a comment posted by slack_complete_file_upload through its initial_comment parameter is posted as the authenticated Slack user with no ChatGPT attribution. I reproduced this with both a PNG image and a TXT attachment:

sigtest-image-caption-01
Files: attribution-test.png
sigtest-file-caption-01
Files: attribution-test.txt

All three controls were sent to the same self-DM, from the same Codex task, authenticated Slack user, workspace, and connector. The only relevant variable was the action path. An earlier PDF upload with an accompanying comment in a different DM showed the same omission.

This is a provenance/transparency gap: an AI-originated Slack message can appear indistinguishable from a manually authored message whenever it is delivered as a file-upload comment.

Private workspace IDs, user IDs, and permalinks are intentionally omitted from this public report, but can be supplied privately if needed.

What steps can reproduce the bug?

  1. In Codex Desktop, install and connect the official Slack plugin with message-send and file-upload actions enabled.
  2. Ask Codex to send a benign text-only message to your Slack self-DM.
  3. Confirm that Slack renders the message with Sent using @ChatGPT.
  4. Ask Codex to upload a PNG to the same self-DM and set a benign initial_comment.
  5. Read the DM history and observe that the image comment has no ChatGPT attribution.
  6. Repeat with a TXT attachment and another initial_comment.
  7. Observe that the TXT comment also has no ChatGPT attribution.

Observed control matrix:

Action Payload Attribution
slack_send_message Text only Present
slack_complete_file_upload PNG + initial_comment Missing
slack_complete_file_upload TXT + initial_comment Missing
Historical slack_complete_file_upload PDF + comment, different DM Missing

The behavior reproduced on 2026-08-03 (Australia/Perth).

What is the expected behavior?

ChatGPT-originated Slack writes should follow one consistent provenance policy regardless of whether text is sent through chat:write or as the initial_comment of a file upload.

Given the current text-message behavior, file-upload comments should also include the same Sent using @ChatGPT attribution. If a different policy is intentional, it should be documented and applied consistently.

Additional information

I checked the available public OpenAI repositories before filing:

  • openai/plugins is public and contains the Slack plugin manifest, skills, and app registration, but not the Slack action implementation. GitHub Issues are disabled for that repository.
  • openai/codex describes Codex Apps as a host-owned Apps MCP server and contains generic tool/file-parameter bridging. There is no Slack-specific slack_send_message or slack_complete_file_upload implementation, nor the Sent using footer logic, in the public source.
  • The actual action implementation therefore appears to live in the hosted ChatGPT Apps MCP / Plugin Service rather than the open-source Codex client.

Suggested server-side fix:

  1. Apply the same attribution builder used by slack_send_message to non-empty initial_comment values in slack_complete_file_upload.
  2. Resolve the ChatGPT Slack app user ID centrally; do not require model-generated or workspace-specific mention IDs.
  3. Add integration coverage for text-only messages, image uploads with comments, generic file uploads with comments, and uploads without comments.
  4. Make the operation idempotent so retries or future client-side formatting do not duplicate the footer.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    appIssues related to the Codex desktop appbugSomething isn't workingskillsIssues related to skills

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions