← KapaCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Kapa
Snapshot Oct 7, 2026 · 18:03 UTC · version 0.1.0
Collection source: downloaded plugin package.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Set up a Kapa Slack source so a Slack channel's threads are ingested. Use when the user wants Kapa to answer from conversations in their Slack workspace.",
"included_files": [],
"name": "kapa-setup-slack",
"skill_md_contents": "---\nname: kapa-setup-slack\ndescription: Set up a Kapa Slack source so a Slack channel's threads are ingested. Use when the user wants Kapa to answer from conversations in their Slack workspace.\n---\n\n# Set up Slack\n\n## 1. The out-of-band setup, which is where this usually fails\n\nTell the user to:\n\n1. Create a Slack app at https://api.slack.com/apps and install it to the\n workspace.\n2. Copy its **bot token**, which starts `xoxb-`.\n3. **Invite the bot into the channel.** A bot that is not a member reads\n nothing, and a private channel requires it.\n\nStep 3 is the one people miss.\n\n## 2. Get the channel id\n\n`channel_id` is the id, not the name. In Slack, open the channel, choose View\nchannel details, and copy the id at the bottom. It starts with `C`.\n\n## 3. Create the source\n\n`create_slack_source` with `project` and `name`. Keep the returned id.\n\n## 4. Check the token and the channel\n\n`validate_slack_token` with `bot_token` confirms the token itself.\n\n`validate_slack_channel` with `channel` and `bot_token` confirms the bot can\nactually read that channel, which is the step that catches a bot that was\nnever invited. It answers HTTP 200 even on failure, with a `type` of `error`\nrather than `channel`, so read the body rather than the status.\n\n`list_slack_users` then shows who is in the channel, which is how to turn \"our\nsupport team\" into the `support_user_ids` the config takes.\n\n## 5. Configure it\n\n`set_slack_config` with `source_slack`, `channel_id` and `bot_token`. The token\nis the user's secret: ask for it, never invent one.\n\nOne source covers one channel, so set up several for several channels.\n\n## Getting good answers out of it\n\nCommunity threads contain wrong answers as well as right ones.\n\n- `support_user_ids` marks whose replies count as answers. This is how Kapa\n tells a maintainer's answer from a guess, so ask which people are their\n support team.\n- `include_only_threads_with_support_user_answers` limits ingestion to threads\n one of those people replied to. Ask whether they want that.\n- `users_to_exclude` leaves out messages from these user ids, typically bots.\n `list_slack_users` turns names into ids.\n- `thread_age` limits how far back to read, in months: `1m` to `36m`, or\n `all`. Old threads often describe versions that no longer exist.\n\n## When it ingests nothing\n\nThe bot was never invited to the channel. Check that before changing the config.\n\n## Finish the job\n\nSaving the configuration starts ingestion. There is no separate publish step,\nso once the config saves the source is live.\n\nThen call `list_sources` with `project_id` to confirm what the project holds.\n\n## Shared Kapa workflow rules\n\nTools act as the connected user with that user's project permissions. Resolve the intended project and use only authorized data. Do not invent credentials, source IDs, filters, or tool results. Check the available tool schema before passing arguments.\n\nExplain and obtain approval for ingestion and its quota cost before saving a configuration that starts ingestion or calling `start_crawl`; existing explicit approval for that exact action is sufficient. Ask the user to choose source scope and filters. Validate credentials and discover accessible content before saving. Keep credentials out of visible results, logs, and exported artifacts. Use a secure credential input if the host provides one.\n\nFor a web source, preview the exact configuration and inspect the extracted article content before ingestion. Report queued, running, failed, and completed states accurately. If uncertain about Kapa behavior, use `search_kapa_docs` when available.\n"
}SHA-256 of public snapshot: 713b14610864ba928e61e29e1780d1010f582565aa738d9394e5a6f38b6bc275