Skip to content

Update docs and skills for Slack extended API#85

Merged
devxoul merged 6 commits intomainfrom
docs/update-slack-extended-api
Mar 22, 2026
Merged

Update docs and skills for Slack extended API#85
devxoul merged 6 commits intomainfrom
docs/update-slack-extended-api

Conversation

@devxoul
Copy link
Owner

@devxoul devxoul commented Mar 22, 2026

Summary

Sync all documentation, skills, and plugin README with the newly merged Slack extended API commands (#84).

SDK Docs (docs/content/docs/sdk/slack.mdx)

  • Add full SlackClient API reference — all 45+ methods organized by domain (messages, channels, users, files, pins, bookmarks, reminders, emoji, etc.) with signatures, parameters, and return types
  • Add 6 real-world examples: deploy notifier, project channel setup, real-time bot, morning digest, triage with search, file pipeline
  • Add 5 new types to exports: SlackPin, SlackBookmark, SlackScheduledMessage, SlackReminder, SlackUserProfile
  • Add note clarifying emoji format difference between SDK (colon-wrapped) and CLI (auto-wrapped)

CLI Docs (docs/content/docs/cli/)

  • Add missing commands to slack.mdx: auth logout, workspace remove, message get, message replies, channel history/open/users
  • Add missing flags: --thread on message list, --type dm on channel list, --cursor on drafts/saved
  • Fix scheduled-delete argument name to match source (<scheduled-message-id>)
  • Add --limit flag to slackbot message replies

Skills

  • Fix 15 broken jq paths in agent-slack/references/common-patterns.md — remove non-existent .data wrapper and .success field checks, use correct output shapes (.ts, .[], .workspace, .recent_messages)
  • Add --cursor pagination flags to drafts list and saved list in agent-slack SKILL.md
  • Add Pattern 7 (multi-bot switching) and Pattern 8 (message get + thread replies) to slackbot common-patterns

Plugin README (.claude-plugin/README.md)

  • Expand Slack section with channel management, pins, bookmarks, reminders, scheduled messages, emoji, user profiles
  • Fix slackbot reaction claim (list subcommand does not exist)
  • Add missing WhatsApp and WhatsApp Bot sections with skill links

Summary by cubic

Syncs SDK/CLI docs, skills, and plugin README to the new Slack extended API. Adds a full SlackClient reference with examples, updates CLI commands/flags, fixes Slack/Slackbot skill patterns, and expands the plugin README with WhatsApp notes.

  • Docs

    • Added complete SlackClient API reference (45+ methods) with 6 examples; clarified that most methods auto-retry on rate limits; added types (SlackPin, SlackBookmark, SlackScheduledMessage, SlackReminder, SlackUserProfile) and fixed minor example issues.
    • Updated CLI docs: auth logout, workspace remove, message get, message replies, channel history/open/users; flags --type dm, --cursor on drafts/saved; fixed scheduled-delete arg name; added --limit to slackbot replies; removed undocumented message list --thread.
    • Expanded .claude-plugin/README.md Slack section (channel management, pins, bookmarks, reminders, scheduled messages, emoji, user profiles, activity); corrected Slackbot reactions claim (no list); added WhatsApp/WhatsApp Bot sections with skill links and corrected capabilities (WhatsApp: search chats; WhatsApp Bot: send-only).
    • Note: No platform source code changes; SKILL.md and docs updated only.
  • Skills

    • agent-slack: fixed jq paths and error checks (use .ts, remove .data and .success), aligned with new shapes (.workspace, .recent_messages); added --cursor to drafts list and saved list in SKILL.md.
    • agent-slackbot: added Pattern 7 (multi-bot switching) and Pattern 8 (message get + thread replies); corrected jq 'length' usage in reply count.

Written for commit e077aba. Summary will update on new commits.

devxoul added 5 commits March 22, 2026 14:55
Document all 45+ SlackClient methods organized by domain (messages,
channels, users, files, pins, bookmarks, reminders, etc.) with
signatures, parameters, and return types.

Add 6 real-world examples: deploy notifier, project channel setup,
real-time bot, morning digest, triage with search, and file pipeline.
Add missing commands to slack.mdx: auth logout, workspace remove,
message get, message replies, channel history/open/users, and flags
(--thread, --type dm, --cursor). Fix scheduled-delete argument name.
Add --limit flag to slackbot message replies.
Fix 15 broken jq paths in common-patterns.md: remove non-existent
.data wrapper and .success field checks, use correct output shapes
(.ts, .[], .workspace, .recent_messages). Add --cursor pagination
flags to drafts list and saved list in SKILL.md.
Add Pattern 7 (multi-bot setup, switching, per-command override) and
Pattern 8 (fetch single message and thread replies by timestamp).
Expand Slack section with channel management, pins, bookmarks,
reminders, scheduled messages, emoji, user profiles, and activity
tracking. Fix slackbot reaction claim (list does not exist). Add
WhatsApp and WhatsApp Bot sections with skill documentation links.
Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

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

7 issues found across 7 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name=".claude-plugin/README.md">

<violation number="1" location=".claude-plugin/README.md:81">
P2: This line is inaccurate: WhatsApp Bot is send-only and does not support reading chats or message history.</violation>

<violation number="2" location=".claude-plugin/README.md:82">
P2: This bullet documents a `message search` capability that the WhatsApp CLI does not implement; only `chat search` exists.</violation>
</file>

<file name="skills/agent-slackbot/references/common-patterns.md">

<violation number="1" location="skills/agent-slackbot/references/common-patterns.md:227">
P2: The reply-count example uses `jq -s 'length'`, which counts input documents instead of array elements and returns the wrong count.</violation>
</file>

<file name="docs/content/docs/cli/slack.mdx">

<violation number="1" location="docs/content/docs/cli/slack.mdx:81">
P2: The new `message list --thread` example is out of sync with the CLI: `--thread` is parsed but not applied, so this command does not actually filter by thread.</violation>
</file>

<file name="skills/agent-slack/references/common-patterns.md">

<violation number="1" location="skills/agent-slack/references/common-patterns.md:19">
P2: The new `.error`-based check can report success when the command actually failed, because CLI errors are emitted to stderr and `RESULT` may be empty.</violation>
</file>

<file name="docs/content/docs/sdk/slack.mdx">

<violation number="1" location="docs/content/docs/sdk/slack.mdx:23">
P2: The docs claim all SlackClient methods have automatic rate-limit retry, but at least `downloadFile` does not use the retry wrapper. This can mislead users about failure behavior.</violation>

<violation number="2" location="docs/content/docs/sdk/slack.mdx:51">
P3: This snippet redeclares `const messages` in the same scope, so the documented example is not valid TypeScript when pasted.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

- Fix WhatsApp Bot section to send-only (no read capability)
- Fix WhatsApp search claim to 'Search chats' (not messages)
- Fix jq -s 'length' to jq 'length' in slackbot patterns
- Remove undocumented message list --thread from CLI docs
- Use positive .ts check instead of .error check in error patterns
- Change 'All methods' to 'Most API methods' for retry claim
- Fix duplicate const messages declaration in SDK example
Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

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

1 issue found across 5 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="skills/agent-slack/references/common-patterns.md">

<violation number="1" location="skills/agent-slack/references/common-patterns.md:20">
P2: The failure message still parses `$RESULT` with `jq` even when `$RESULT` is empty, which can emit a jq parse error instead of a clean fallback error string.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

else
echo "Failed: $(echo "$RESULT" | jq -r '.error.message')"
if [ -z "$RESULT" ] || ! echo "$RESULT" | jq -e '.ts' > /dev/null 2>&1; then
echo "Failed: $(echo "$RESULT" | jq -r '.error // "unknown_error"')"
Copy link

@cubic-dev-ai cubic-dev-ai bot Mar 22, 2026

Choose a reason for hiding this comment

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

P2: The failure message still parses $RESULT with jq even when $RESULT is empty, which can emit a jq parse error instead of a clean fallback error string.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At skills/agent-slack/references/common-patterns.md, line 20:

<comment>The failure message still parses `$RESULT` with `jq` even when `$RESULT` is empty, which can emit a jq parse error instead of a clean fallback error string.</comment>

<file context>
@@ -16,8 +16,8 @@ agent-slack message send general "Deployment completed successfully!"
-if echo "$RESULT" | jq -e '.error' > /dev/null 2>&1; then
-  echo "Failed: $(echo "$RESULT" | jq -r '.error')"
+if [ -z "$RESULT" ] || ! echo "$RESULT" | jq -e '.ts' > /dev/null 2>&1; then
+  echo "Failed: $(echo "$RESULT" | jq -r '.error // "unknown_error"')"
   exit 1
 else
</file context>
Suggested change
echo "Failed: $(echo "$RESULT" | jq -r '.error // "unknown_error"')"
echo "Failed: $(echo "$RESULT" | jq -r '.error // "unknown_error"' 2>/dev/null || echo "unknown_error")"
Fix with Cubic

@devxoul devxoul merged commit ac6c5c2 into main Mar 22, 2026
3 checks passed
@devxoul devxoul deleted the docs/update-slack-extended-api branch March 22, 2026 06:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant