2.5k
GitHub Stars
2
Bundled Files
2 months ago
Catalog Refreshed
3 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill openclaw/skills --skill slack-extended- _meta.json280 B
- SKILL.md4.7 KB
Overview
This skill extends Slack automation with file uploads, collaborative canvas management, and link bookmark operations. It complements basic messaging and reactions by letting a bot share files, create or edit canvases, and add or organize channel bookmarks programmatically. It requires specific OAuth scopes for each feature and uses the bot token to call the Slack API.
How this skill works
Scripts call Slack API endpoints with the stored bot token to perform operations: files are uploaded to channels and return file metadata and permalinks; canvases are created, edited, sectioned, and deleted using canvas APIs and support Markdown formatting; bookmarks are listed, added, edited, and removed via the bookmarks API (link-only). The scripts accept channel IDs, canvas IDs, section IDs, file paths, and other arguments to control behavior.
When to use it
- Share generated reports, charts, or logs directly into a Slack channel programmatically.
- Create or update collaborative canvases for sprint notes, design docs, or meeting minutes.
- Append or replace specific sections of a canvas when updating shared documents.
- Manage channel link bookmarks for quick access to docs, specs, or dashboards.
- Automate backups or archival uploads of artifacts into Slack channels.
Best practices
- Always use channel IDs (C...) rather than channel names to avoid channel_not_found errors.
- Ensure required OAuth scopes are granted and the app is reinstalled after scope changes.
- Store and rotate the bot token securely; verify ~/.openclaw/openclaw.json if not authenticated.
- List canvas sections before edit operations to obtain correct section_id values.
- Limit canvas tables to Slack’s cell limit and prefer Markdown-supported elements for consistency.
Example use cases
- Upload a CSV of model results to #backtests and post a comment with the permalink.
- Create a Sprint Notes canvas with initial goals and later append status updates programmatically.
- Replace an outdated canvas section with revised documentation after a review.
- Add a bookmark to a shared design spec so the team can access it from the channel header.
- List and export bookmarks in a channel to build an external index or archive.
FAQ
files:write for uploads, canvases:write for canvas operations, and bookmarks:write and bookmarks:read for bookmarks.
Why do I get channel_not_found?
Use the channel ID (e.g., C07ABC123) instead of the channel name; verify the bot is a member if needed.