본문으로 건너뛰기
cccskills
무료GitHub에 공개

agent-slack

Slack CLI for agents: read URLs/threads/history/unreads/later/canvases/workflows, create/edit canvases from Markdown, search messages/files, download attachments, lookup users, list/create/invite channels, open DMs, compose messages, manage Slack-native drafts, schedule sends, and explicit sends/edits/deletes/reactions/mark-read/uploads.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

연동 도구Slack
설치 방법 보기

포함된 파일(3)

  • SKILL.md4.8 KB
  • references/output.md2.3 KB
  • references/targets.md1.7 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

agent-slack

Use agent-slack from $PATH. If it is missing, install it with:

curl -fsSL https://raw.githubusercontent.com/stablyai/agent-slack/main/install.sh | sh

Fallback: npm i -g agent-slack (Node >= 22.5).

Run agent-slack --help or the relevant subcommand help before guessing a command or flag. If a capability named here is absent from installed help, report version skew instead of guessing. Do not self-update the CLI without explicit authorization.

Safety

  • Read and search freely.
  • Perform write actions only when explicitly requested: sends, edits, deletes, reactions, invitations, channel or canvas creation/editing, mark-read operations, scheduling or canceling delivery, uploads, Later state/reminder changes, DM/group-DM creation, and workflow run. Workflow runs can execute downstream actions.
  • For compose- or review-only requests, return proposed text without invoking Slack, or use message draft create to add a Slack-native draft the user can review and send (nothing is posted). message compose is send-capable; use it only when the user explicitly asks to open the interactive editor. In CI or another noninteractive environment, do not invoke it without separate authorization to send immediately: CI skips the editor and sends supplied text.
  • With AGENT_SLACK_SAFE_MODE=1 (or the global --safe-mode flag) set, safe mode is enforced at the tool level: message send is redirected to the draft editor and message edit/message delete are blocked. Use it when nothing should post without human review.

Workflow

  1. Run agent-slack auth whoami. If needed, import credentials with auth import-desktop, auth import-brave, auth import-chrome, or auth import-firefox, then run auth test.
  2. Prefer a Slack message URL when one is available. It carries the workspace, channel, and timestamp needed by most message operations.
  3. Choose the narrowest read operation: message get for one message, message list for a full thread or channel history, and search messages or search files for discovery.
  4. Use output limits such as --limit, --max-body-chars, and --max-content-chars to avoid unnecessary context.
  5. For a requested write, execute only the requested mutation and verify the resulting JSON metadata.

For scheduled writes, prefer --schedule with an ISO 8601 timestamp and explicit offset when timezone matters. Named --schedule-in phrases use the executing environment's local timezone; confirm that it matches the user's intent.

Named later remind --in values such as tomorrow or monday also use the executing environment's local timezone at 9:00. Confirm that timezone or pass an explicit Unix timestamp.

Use --no-unfurl with message send or message compose when the user wants Slack link and media previews suppressed. It cannot be combined with message send --attach.

Ordinary message send and message edit calls auto-convert lists. message send --blocks and message edit --blocks use supplied Block Kit blocks, while message send --attach sends its initial comment without automatic list conversion. Inside auto-converted lists, use Slack's <URL|label> syntax because CommonMark [label](URL) links are not converted into labeled link elements.

Slack-native drafts (message draft list|create|update|delete) manage drafts that appear in the user's Slack client; create posts nothing. create and update accept repeatable --attach <path>; on update the files are added to the draft's existing attachments rather than replacing them. They use undocumented session endpoints and require browser-style auth (xoxc/xoxd).

canvas edit uses Slack's public canvases.edit API and applies exactly one operation per call. The default replace operation replaces the whole canvas; section-targeted inserts/replacements and deletes require the section ID returned by Slack's Canvas tooling, while rename takes --title. Content operations take exactly one --file or --markdown source. It requires a standard token with canvases:write; imported browser credentials can create standalone canvases but cannot edit.

Conditional references

  • Read references/targets.md only when choosing between a message URL, channel, or user target, or when resolving multiple workspaces.
  • Read references/output.md only when handling returned message or canvas metadata, resolved users, or downloaded and failed attachments.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

이 스킬의 문제 신고