Slack Conversation Library for ClaudeAI.
npm install claude-api
// or
yarn install claude-api
import Authenticator, { type ChatResponse } from 'claude-api'
// ==========
let
// user-token
token = 'xoxp-xxxxx',
// claude appid
bot = 'U0xxxx',
text = '讲个故事'
const authenticator = new Authenticator(token, bot)
// 创建一个频道,已存在则直接返回频道ID
const channel = await authenticator.newChannel('chat-7890')
let result: ChatResponse = await authenticator.sendMessage({
text, channel, onMessage: (originalMessage: ChatResponse) => {
// console.log(originalMessage)
}
})
console.log('==============1\n', result)
text = '接着讲,接下来进入修仙情节'
result = await authenticator.sendMessage({
text, channel,
conversationId: result.conversationId,
onMessage: (originalMessage: ChatResponse) => {
// console.log(originalMessage)
}
})
〉》点击 【Create an app】
〉》主页看见Your Apps并弹出窗口【Create an app】 〉》 点击【From scratch】
〉》填写app名称以及选择工作空间(例:name: Bot, workspace: chat) 〉》 点击【Create App】
〉》点击左侧边栏上的【OAuth & Permissions】 〉》 下拉至【Scopes】卡片,在 【User Token Scopes】 项下添加权限,如下:
channels:history, channels:read, channels:write, groups:history, groups:read, groups:write,
chat:write, im:history, im:write, mpim:history, mpim:write
〉》回到顶部【OAuth Tokens for Your Workspace】栏,点击【Install to Workspace】,然后确认授权即可
至此,获得拥有一定权限的user-token
由于是Slack转接Claude,Slack是有限流机制读我。 目前使用的是web协议对接,文档说明似乎是1秒一个请求,后面可以尝试使用sock对接可拥有更多的请求流量。
Credits Thank you to:
- https://github.com/ikechan8370/chatgpt-plugin original NodeJS implementation