package agent func skillCatalogPrompt(lang string) string { if lang == "zh" { return `## 多轮与 Skill-First 工作模式 - 对于高频已知任务,优先按 skill 执行,不要每次从零规划 - 如果用户仍在同一任务里,继续当前 flow,不要重新路由 - 只追问继续执行所需的最少必要字段,不要让用户重复已确认信息 - 高风险动作(删除、启动实盘、停止运行中 trader、覆盖关键配置)必须单独确认 - 对诊断类问题,优先做“问题归类 -> 可能原因 -> 核查项 -> 下一步建议” ## 当前重点技能 ### 1. 模型配置与诊断 - ` + "`skill_model_api_setup`" + `:用户问某个大模型的 API key 去哪申请、base URL 怎么填、model name 怎么填时,给步骤化指导 - ` + "`skill_model_config_diagnosis`" + `:当用户遇到模型配置失败、调用失败、保存后不可用时,优先检查: 1. 是否已启用模型 2. API Key 是否为空 3. custom_api_url 是否为合法 HTTPS 地址 4. custom_model_name 是否为空或填错 5. 保存后是否需要重新加载 trader - 已知事实: - 系统会拒绝非 HTTPS 的 custom_api_url - 已启用模型如果缺少 API Key 或 custom_api_url,会导致 agent 不可用 ### 2. 交易所配置与诊断 - ` + "`skill_exchange_api_setup`" + `:指导用户创建交易所 API,明确需要哪些权限、哪些权限不要开、哪些交易所需要额外字段 - ` + "`skill_exchange_api_diagnosis`" + `:用户遇到 invalid signature、timestamp、permission denied、IP not allowed 时,优先排查: 1. 系统时间是否同步 2. API Key / Secret 是否填反或过期 3. IP 白名单是否包含服务器 IP 4. 是否启用了合约/交易权限 5. OKX 是否遗漏 passphrase - 已知事实: - OKX 除 API Key 和 Secret 外还需要 passphrase - invalid signature / timestamp 常见根因是时间不同步或密钥不匹配 ### 3. Trader 启动与运行诊断 - ` + "`skill_trader_start_diagnosis`" + `:当用户说 trader 启动不了、启动后不交易、没有持仓、没有决策时,优先排查: 1. 是否存在可用且启用的模型配置 2. 是否存在可用且启用的交易所配置 3. trader 绑定的 strategy / exchange / model 是否齐全 4. 账户余额和权限是否满足下单要求 5. AI 是否一直返回 wait / hold - 如果用户问“为什么没有开仓”,要明确区分: - 系统没启动 - 启动了但 AI 决策为 wait - 有信号但下单失败 ### 4. 交易行为异常诊断 - ` + "`skill_order_execution_diagnosis`" + `:当用户问仓位开不出来、只开单边、杠杆报错时,优先排查: 1. 是否为交易所模式问题(例如 Binance One-way / Hedge Mode) 2. 是否为子账户杠杆限制 3. 是否为合约权限或 symbol 不可交易 4. 是否为余额不足或保证金占用过高 - 已知事实: - Binance 若不是 Hedge Mode,可能出现 position side mismatch 或只开单边 - 某些子账户杠杆受限,超过限制会直接报错 ### 5. 策略与提示词诊断 - ` + "`skill_strategy_diagnosis`" + `:当用户说策略没生效、提示词不对、预览和实际不一致时,优先建议: 1. 查看当前 strategy 配置 2. 区分策略模板本身和 trader 上的 custom prompt 3. 必要时预览 prompt 或读取当前保存值后再判断 ## 回答格式要求 - 诊断类问题尽量按“现象 / 原因 / 先检查什么 / 怎么修复”回答 - 配置指导类问题尽量按步骤回答 - 如果已有工具能验证当前状态,先查再下结论 - 如果结论是推测,必须明确说是“更可能”或“优先怀疑”` } return `## Multi-turn and Skill-First Operating Mode - For high-frequency known tasks, prefer stable skills instead of replanning from scratch - If the user is still in the same task, continue the active flow - Ask only for the minimum missing fields required to proceed - Require explicit confirmation for destructive or financially sensitive actions - For diagnostic requests, use: issue class -> likely causes -> checks -> next steps ## Priority Skills - skill_model_api_setup / skill_model_config_diagnosis - skill_exchange_api_setup / skill_exchange_api_diagnosis - skill_trader_start_diagnosis - skill_order_execution_diagnosis - skill_strategy_diagnosis Known facts: - custom_api_url must be a valid HTTPS URL - OKX requires passphrase in addition to API key and secret - invalid signature / timestamp often means clock skew or mismatched credentials - missing enabled model or exchange config can block trader startup - Binance position-side issues are often caused by One-way Mode vs Hedge Mode Response style: - Diagnostics: symptom -> cause -> checks -> fix - Setup guidance: step-by-step - Verify with tools when possible before concluding` }