- 复制 reader-digest-flow skill 到 skills/ 目录(含 SKILL.md + references/) - README 新增 Agent Skill 章节说明供 Agent 使用的工作流
1.8 KiB
1.8 KiB
IMA 凭证链:从 reader .env 到 IMA 上传
凭证来源
IMA 上传所需的凭证存储在多个位置,优先级如下:
| 优先级 | 位置 | 说明 |
|---|---|---|
| 1 | 环境变量 IMA_OPENAPI_CLIENTID / IMA_OPENAPI_APIKEY |
Hermes session 级 |
| 2 | ~/.config/ima/client_id / api_key |
ima-skill 的默认检查路径 |
| 3 | /home/ubuntu/zhu/github/reader/.env |
reader 项目配置,含完整的 IMA 凭证和 KB ID |
凭证内容(reader .env 中)
IMA_OPENAPI_CLIENTID=<32位hex>
IMA_OPENAPI_APIKEY=<base64编码的API密钥>
IMA_DAILY_KNOWLEDGE_BASE_ID=<base64编码的KB ID>
IMA_DAILY_KNOWLEDGE_BASE_NAME=daily
缺失时的处理流程
当 IMA 上传失败(-100 凭证缺失错误)时:
- 从 reader
.env读取凭证:grep -E '^(IMA_OPENAPI_CLIENTID|IMA_OPENAPI_APIKEY)=' /home/ubuntu/zhu/github/reader/.env - 同步到 ima-skill 默认检查路径:
echo "<client_id>" > ~/.config/ima/client_id echo "<api_key>" > ~/.config/ima/api_key - (可选)追加到 Hermes
.env以全局生效:echo "IMA_OPENAPI_CLIENTID=<client_id>" >> /root/.hermes/.env echo "IMA_OPENAPI_APIKEY=<api_key>" >> /root/.hermes/.env echo "IMA_DAILY_KNOWLEDGE_BASE_ID=<kb_id>" >> /root/.hermes/.env echo "IMA_DAILY_KNOWLEDGE_BASE_NAME=daily" >> /root/.hermes/.env
执行注意事项
- COS 凭证红线:
create_media返回的cos_credential中的token/secret_id/secret_key在terminal()输出中会被 Hermes 替换为***。必须用subprocess.run()捕获原始输出,或用execute_code内联操作。 - 凭证格式:
api_key是 base64 字符串(76 字符),kb_id也是 base64 字符串。不要截断或转码。