publishlisted
Install: claude install-skill 1shooperman/shooperman-claude-plugins
## Arguments
The user invoked this with: $ARGUMENTS
Parse `<markdown-file>` and `<channel>` from `$ARGUMENTS`. Both are required — if either is missing, ask the user before proceeding.
- `<channel>` may be a channel name (`my-channel`, `#my-channel`) or a Slack channel ID (`C123...`, `G123...`).
## Workflow
1. **Check for `SLACK_BOT_TOKEN`** before anything else — use the `slack-publish:agent-token-checker` agent. If it reports "Token missing", **stop here** and show the user this guidance:
If this exits non-zero, **stop here** and show the user this guidance:
> **`SLACK_BOT_TOKEN` is not set.** To publish to Slack you need a bot token. Here's how to get one:
>
> 1. Go to **https://api.slack.com/apps** and click **Create New App → From a manifest**
> 2. Select your workspace and paste the contents of `slack-app-manifest.yaml` (in the plugin directory)
> 3. Click **Install to Workspace** and copy the **Bot User OAuth Token** (starts with `xoxb-`)
> 4. Invite the bot to your target channel: `/invite @Markdown Publisher`
> 5. Set the token in one of these ways:
> - **Shell environment**: `export SLACK_BOT_TOKEN='xoxb-...'`
> - **`.env` file** in your working directory: `SLACK_BOT_TOKEN=xoxb-...`
> - **Pass at runtime**: re-run with `--env-file /path/to/file.env`
>
> Once the token is set, try again.
2. Verify the markdown file exists at the given path.
3. Run the publisher script, quoting each argument as a discrete shell w