shaharia-lab/slackcli
TypeScript0 / 0
Bun 기반 Slack CLI로 토큰 자동 추출·다중 워크스페이스 관리·JSON 출력으로 자동화와 AI 에이전트 통합을 지원
TL;DR
SlackCLI는 TypeScript와 Bun으로 만든 독립형 커맨드라인 도구로, 표준 Slack 토큰과 브라우저 세션 토큰을 모두 지원하며 cURL 파싱으로 토큰 추출을 자동화합니다. 채널 조회·메시지 읽기·발송·편집·리액션·Canvas 읽기 등 실무에 필요한 기능을 제공하고 JSON 출력으로 AI 에이전트나 스크립트와 곧바로 연동할 수 있습니다. Homebrew와 플랫폼별 사전 빌드를 통해 빠르게 설치해서 쓸 수 있고, 실전 자동화에는 적절한 OAuth scopes와 토큰 갱신 정책을 준비해야 합니다.
핵심 포인트
- 레포지토리는 독립 실행형 CLI 도구 유형으로, Slack 워크스페이스에 터미널에서 직접 접근하도록 설계되어 있습니다. TypeScript로 작성되었고 런타임으로 Bun을 사용하므로 사전 빌드된 바이너리나 Homebrew 패키지로 바로 설치해서 사용할 수 있습니다. 개발 환경에서는 Bun v1+와 TypeScript 5.x가 필요하며 소스 빌드와 플랫폼별 빌드를 지원합니다.
- 인증은 표준 Slack 앱 토큰(xoxb/xoxp)과 브라우저 세션 토큰(xoxd/xoxc) 두 가지를 모두 지원하며, 브라우저에서 복사한 cURL 명령을 자동으로 파싱해 토큰과 워크스페이스 정보를 추출할 수 있습니다. 표준 토큰은 Slack 앱에서 OAuth 스코프를 설정해 장기 운영용으로 쓰기 적합하고, 브라우저 토큰은 빠른 설정과 테스트용으로 편리하지만 세션 만료와 갱신이 필요합니다. 실전 자동화에서는 필요한 OAuth scopes와 채널 권한이 갖춰져 있는지 확인해야 안전하게 운영할 수 있습니다.
- 주요 기능은 채널/대화 목록 조회, 메시지 읽기·발송·편집, 스레드 응답, 이모지 리액션 추가, 파일 업로드와 Slack Canvas 문서를 마크다운 또는 JSON으로 읽어오는 기능을 포함하며 출력 포맷으로 JSON·table·text를 제공해 AI 에이전트나 자동화 파이프라인과 바로 연결할 수 있습니다. JSON 출력에는 타임스탬프(ts)와 thread_ts 같은 메타가 포함되어 후속 스크립트가 메시지 추적과 스레드 관리를 자동화하기 쉽습니다. 이러한 구조 덕분에 CI/CD 스크립트나 봇·에이전트가 터미널 환경에서 Slack과 상호작용하도록 통합하기 용이합니다.
- 제약과 주의점으로는 이 프로젝트가 Slack 공식 도구가 아니라는 점과 브라우저 토큰이 브라우저 세션에 종속되어 만료될 수 있다는 README의 안내가 있습니다. 메시지 편집은 인증된 사용자 또는 앱이 남긴 메시지에만 작동하고, 파일 업로드 등 일부 기능은 추가 OAuth 권한이 필요합니다. 자체 업데이트 기능은 바이너리 위치에 대한 쓰기 권한이 필요하므로 Homebrew로 설치했을 때는 brew upgrade를 권장하는 활용 지침이 제공됩니다.
106
Stars
35
Forks
+204
Trending
0
조회수
106 watchers8 open issues
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.