AllToken — Slash Commands — AllToken — 斜杠命令(Slash Commands)
v4六个斜线式的AllToken命令 — /alltoken-chat、/alltoken-image、/alltoken-video、/alltoken-search、/alltoken-models、/alltoken-cost — 在聊天中被识别并通过stdlib Python recipes运行。与alltoken配对以实现全项目启动。
运行时依赖
安装命令
点击复制技能文档
/alltoken-call — 直接调用AllToken命令 本技能教导主机代理识别六种斜线式调用,并运行相应的配方对用户的AllToken API密钥。每个命令都是一个自包含的Python 3 stdlib脚本,不需要外部SDK安装。当调用本技能(与alltoken相比) 用户想要…… 使用“生成X的图像”/“使用Claude翻译”/“显示可用模型” 本技能(alltoken-call) “构建AllToken代理”/“创建聊天应用”/“将AllToken添加到我的项目中” alltoken代替 两个都加载 - 它们不会冲突 前提条件 ALLTOKEN_API_KEY在环境中导出 代理外壳中python3 ≥ 3.10可用 PATH中有互联网访问 代理应拒绝调用本技能中的任何命令,如果ALLTOKEN_API_KEY未设置,并提示用户首先设置它。 触发器识别 在用户消息中的任何位置(不区分大小写)匹配以下模式(前导/是规范但不需要): 触发器 命令 /alltoken-chat,alltoken chat,"使用模型X询问alltoken" 命令1 /alltoken-image,alltoken image,"通过alltoken生成图像","使用alltoken绘图" 命令2 /alltoken-video,alltoken video,"在alltoken上制作视频" 命令3 /alltoken-search,alltoken search,"使用alltoken web搜索", "使用alltoken查找" 命令4 /alltoken-models,alltoken models,"可用的alltoken模型" 命令5 /alltoken-cost,alltoken cost,"那次调用花了多少钱"(当最后的响应是AllToken调用时) 命令6 配方中的生产约束 这些是在2026-05-12上实时验证的 - 它们不是可选的: 图像结果是一次性的。将b64_json持久化到第一个完成的读取中;重新轮询返回410 image_already_retrieved。 enable_search:仅在DeepSeek和Qwen上有效。OpenAI返回503,Claude/GLM/Kimi/Minimax默默地丢弃它。/alltoken-search配方默认为deepseek-v4-pro。流媒体使用需要选择加入。添加stream_options:{"include_usage":True},否则它将为null。 API密钥仅到达/v1/*。/api-account/user/balance,/usage,/billing使用Bearer令牌返回401 - 它们需要一个web会话。不要尝试它们。错误是信封形状的:{"error":{"code":"","type":"","message":"...”,"param":null,"request_id":"...”}}。在失败时始终向用户显示代码和request_id。
- /alltoken-chat 语法 /alltoken-chat /alltoken-chat # 使用默认值:gpt-5.4-mini 参数 model(可选)- /v1/models中的任何ID。常见选择:gpt-5.4-mini,gpt-5.4,claude-sonnet-4-6,claude-opus-4-7,deepseek-v4-pro,gemini-3.1-pro-preview。廉价默认值:gpt-5.4-nano,claude-haiku-4-5,gemini-3-flash-preview。 prompt(必需)- 自由文本。配方 - 将其保存为/tmp/at_chat.py,并使用python3 /tmp/at_chat.py 运行:导入os,sys,json,urllib.request args = sys.argv[1:] 如果不args:打印(“用法:at_chat.py [model] ”);sys.exit(2)#启发式:第一个参数是模型,只有当它没有空格且看起来像ID时 first = args[0] 如果len(args)>= 2且“-”在first且“”不在first且“.”在first或first.startswith((“gpt-”,“claude-”,“gemini-”,“deepseek-”,“glm-”,“qwen”,“kimi-”,“minimax-”)):model,prompt = first," ".join(args[1:])否则:model,prompt = “gpt-5.4-mini”," ".join(args)body = json.dumps({“model”:model, “messages”:[{"role": "user", "content":prompt}], “stream”:True, “stream_options”:{"include_usage":True},})。encode()req = urllib.request.Request(“https://api.alltoken.ai/v1/chat/completions”,data = body,method = “POST”,headers = {“Authorization”:f“Bearer {os.environ['ALLTOKEN_API_KEY']}”,“Content-Type”: “application/json”})尝试:r = urllib.request.urlopen(req,timeout = 120)except urllib.error.HTTPError as e:err = json.loads(e.read())。get(“error”,{})打印(f“\n [error {e.code}] {err.get('code')}/{err.get('type')}:{err.get('message')} req = {err.get('request_id')}”)sys.exit(1)usage = None for raw in iter(r.readline,b“”):line = raw.decode(“utf-8”,“replace”)。rstrip(“\n”)如果不line或line.startswith(“:”):继续如果line.startswith(“data:”):data = line[6:]如果data == “[DONE]”:break obj = json.loads(data)如果obj.get(“usage”):usage = obj[“usage”] for ch in obj.get(“choices”,[]):c = ch.get(“delta”,{})。get(“content”)如果c:sys.stdout.write(c);sys.stdout.flush()打印()如果usage:打印(f“\n [usage] prompt = {usage['prompt_tokens']} completion = {usage['completion_tokens']} total = {usage['total_tokens']} model = {model}”)代理呈现 - 运行后,将流式文本显示给用户,并在单独的行中显示令牌使用情况(提示 + 完成 = 总计)。如果用户随后使用/alltoken-cost,则该行将乘以每个令牌的价格。
- /alltoken-image 语法...(未完成)