Skip to content

Releases: triptechtravel/slackbuzz-cli

v0.10.4

20 Mar 02:15

Choose a tag to compare

Changelog

  • 203e614 fix(resolve): fall back to channel when bare name fails user resolution

v0.10.3

17 Mar 21:44

Choose a tag to compare

Changelog

v0.10.2

17 Mar 21:38

Choose a tag to compare

Changelog

  • 2086765 fix(send): unescape literal \n and \t in CLI arguments

v0.10.1

15 Mar 22:50

Choose a tag to compare

Changelog

  • fa768a5 fix(send): convert - bullets to • for Slack, remove digest command

v0.10.0

15 Mar 22:41

Choose a tag to compare

Changelog

  • b714566 feat(send): auto-convert Markdown to Slack mrkdwn with --blocks and --raw flags
  • 58af258 feat: add file upload command with multi-file and thread support

v0.9.5

06 Feb 04:37

Choose a tag to compare

Changelog

  • 89509d0 fix(api): preserve 401 response body instead of swallowing as auth expired

v0.9.4

05 Feb 01:58

Choose a tag to compare

Documentation

  • README: Added send shortcut, doctor command, self-DM behavior docs, and updated required scopes
  • SKILL.md: Documented self-DM via bot behavior
  • docs/commands.md: Added send shortcut and doctor command reference, self-DM behavior
  • docs/getting-started.md: Added doctor verification step, uses send shortcut
  • docs/ai-agents.md: Added agent mode (SLACKBUZZ_AGENT=1) and diagnostics sections
  • docs/security.md: Updated required scopes, noted separate bot/user identity storage

Tests

  • TestLooksLikeUser — validates DM target detection for @NAMEs, user IDs, channel IDs
  • TestIsMissingScopeError — validates missing_scope error detection (direct, wrapped, contained)
  • TestFormatResolveError — validates actionable error messages for channel resolution failures
  • TestFormatSendError — validates context-aware error messages for DM vs channel send failures
  • TestAuthConfigRoundTrip — validates bot/user identity fields persist through save/load
  • TestAuthConfigClear — validates all fields cleared including bot identity
  • TestAuthConfigBotAndUserSeparate — validates bot and user info don't overwrite each other in auth.yml

v0.9.3

05 Feb 01:52

Choose a tag to compare

Bug Fixes

  • Auth storage: Bot and user identity are now stored separately in keyring and auth.yml. Previously, StoreUserInfo was called for both token types, so whichever was stored last would overwrite the other — causing self-DM detection and ResolveUserID() to return the wrong identity.
  • Self-DM detection: Now uses client.AuthUserID() (live auth.test call) instead of reading stored user info, making it reliable regardless of storage state.
  • ResolveUserID: Only uses the user token now (not bot token), since bot token returns the bot's identity, not the human's.

Internal

  • New keyring keys: bot_user_id, bot_user_name for bot identity
  • New auth.yml fields: bot_user_id, bot_user_name
  • StoreBotUserInfo() / GetBotUserInfo() functions
  • Login and app create flows now store bot vs user info to the correct keys
  • Tests for separate bot/user info storage

v0.9.2

05 Feb 01:40

Choose a tag to compare

Fix: add im:write to bot scopes so the bot can open DM conversations for self-DM. You need to add im:write to your bot token scopes in Slack app settings and re-install.

v0.9.1

05 Feb 01:36

Choose a tag to compare

Fix: re-open DM channel via bot client for self-DM. The bot needs its own DM channel ID — the one from the user token's conversations.open isn't valid for the bot client.