slack-personal

💬 零配置 Slack 终端管家

🥥5总安装量 2评分人数 2
100% 的用户推荐

开源 macOS 专属 Slack CLI 工具,自动提取桌面应用凭证实现无令牌认证,支持消息读写、搜索、草稿管理等完整工作流。

B

存在边界风险,建议在隔离环境中验证

  • 来自可信组织或认证账号,需要结合权限范围判断
  • ⚠️ Token 明文缓存在本地文件,存在信息泄露风险,建议定期清理 `~/.local/slk/token-cache.json`
  • ⚠️ Keychain 访问权限若设为 "Always Allow",任何用户进程均可静默提取 Slack 凭证
  • ⚠️ 依赖 `execSync`/`/`spawnSync` 执行系统命令(security/sqlite3/python3 等),存在潜在的 PATH 劫持风险
  • ✅ 仅访问 `slack.com` 官方 API,无第三方数据外泄
  • ✅ 代码完全开源可审计,零隐藏依赖,功能与描述一致

使用说明

核心用法

slk(slack-personal)是一款专为 macOS 设计的会话型 Slack 命令行工具,通过自动提取 Slack 桌面应用的 LevelDB 存储和 macOS Keychain 中的加密凭证,实现无需手动配置令牌或 OAuth 的即开即用体验。用户可通过简洁的命令完成频道/DM 读取、消息发送、线程追踪、全局搜索、未读提醒检查、草稿管理、表情回应等完整 Slack 交互操作。

核心工作流包括:使用 slk channels//slk dms 浏览会话列表,,slk read 配合 --threads 或日期过滤获取上下文,,slk search 快速定位历史信息,,slk activity//slk unread 监控工作动态,,slk draft 系列命令实现人机协作的审核发送机制。特别适合构建定时心跳检查、日报/周报自动生成、关键线程监控等自动化场景。

显著优点

1. 零配置认证:自动从 Slack 桌面应用提取 xoxc- 会话令牌,省去繁琐的 Slack App 创建和权限申请流程
2. 完整功能覆盖:涵盖读取、发送、搜索、草稿、回应、置顶、收藏等 20+ 项 Slack 核心操作

3. 人机协作设计slk draft 将消息推入 Slack 官方编辑器 UI,支持人工审核后再发送,降低自动化风险

4. 零依赖架构:纯 Node.js 内置模块实现,无第三方依赖包,部署轻量、审计简单

5. 开源透明:MIT 协议,代码完全公开,功能与实现一致,无隐藏行为

潜在缺点与局限性

1. 平台锁定:仅支持 macOS,依赖 Keychain 和 Electron 存储路径,Windows/Linux 用户无法使用
2. 会话脆弱性:基于用户会话令牌,Slack 登出或令牌轮换即失效,需重新认证

3. 草稿冲突:若 Slack 客户端保持某对话窗口打开,,slk draft drop 可能因 draft_has_conflict 失败

4. 功能边界:作为用户代理而非 Bot,无法使用 Slack 应用特有的交互组件(如按钮、模态框)

5. 外部依赖:依赖系统预装的 securitysqlite3opensslcurlpython3 等命令

适合的目标群体

  • macOS 重度 Slack 用户:需要高频、批量处理 Slack 信息的开发者、产品经理、团队负责人
  • 自动化工作流构建者:希望将 Slack 集成到定时任务、日报生成、信息聚合脚本中的工程师
  • 隐私敏感型用户:不愿授权第三方云服务访问 Slack,偏好本地凭证管理的场景
  • CLI 爱好者:习惯终端操作,追求效率最大化的技术从业者

使用风险

1. 凭证暴露风险:Token 明文缓存在 ~/.local/slk/token-cache.json,系统入侵时可能被窃取
2. Keychain 权限过度:选择 "Always Allow" 后,任何用户进程均可静默提取 Slack 凭证

3. 子进程注入:依赖 execSync//spawnSync` 执行系统命令,若 PATH 被篡改可能执行恶意程序

4. 网络稳定性:Slack API 限流或网络波动可能影响自动化脚本的可靠性

5. 版本兼容性:Slack 桌面应用更新可能改变存储格式,导致认证提取失效

slack-personal 内容

文件夹图标bin文件夹
文件夹图标src文件夹
手动下载zip · 22.2 kB
slk.jstext/javascript
请选择文件