feat: docs update

This commit is contained in:
zhayujie
2026-02-27 16:03:47 +08:00
parent d891312032
commit 6db22827f2
97 changed files with 2801 additions and 1354 deletions

View File

@@ -0,0 +1,33 @@
---
title: 图像识别
description: 使用 OpenAI 视觉模型识别图片
---
# openai-image-vision
使用 OpenAI 的 GPT-4 Vision API 分析图片内容,理解图像中的物体、文字、颜色等元素。
## 依赖
| 依赖 | 说明 |
| --- | --- |
| `OPENAI_API_KEY` | OpenAI API 密钥 |
| `curl`、`base64` | 系统命令(通常已预装) |
配置方式:
- 通过 `env_config` 工具配置 `OPENAI_API_KEY`
- 或在 `config.json` 中填写 `open_ai_api_key`
## 支持的模型
- `gpt-4.1-mini`(推荐,性价比高)
- `gpt-4.1`
## 使用方式
配置完成后,向 Agent 发送图片即可自动触发图像识别。
<Frame>
<img src="https://cdn.link-ai.tech/doc/20260202213219.png" width="800" />
</Frame>

67
docs/skills/index.mdx Normal file
View File

@@ -0,0 +1,67 @@
---
title: 技能概览
description: CowAgent 技能系统介绍
---
技能Skill为 Agent 提供无限的扩展性。每个 Skill 由说明文件(`SKILL.md`)、运行脚本(可选)、资源(可选)组成,描述如何完成特定类型的任务。
Skill 与 Tool 的区别Tool 是由代码实现的原子操作如读写文件、执行命令Skill 则是基于说明文件的高级工作流,可以组合调用多个 Tool 来完成复杂任务。
## 内置技能
位于项目 `skills/` 目录下,根据依赖条件自动判断是否启用:
| 技能 | 说明 | 依赖 |
| --- | --- | --- |
| [`skill-creator`](/skills/skill-creator) | 通过对话创建自定义技能 | 无 |
| [`openai-image-vision`](/skills/image-vision) | 使用 OpenAI 视觉模型识别图片 | `OPENAI_API_KEY` |
| [`linkai-agent`](/skills/linkai-agent) | 对接 LinkAI 平台智能体 | `LINKAI_API_KEY` |
| [`web-fetch`](/skills/web-fetch) | 抓取网页文本内容 | `curl`(默认启用) |
## 自定义技能
由用户通过对话创建,存放在工作空间中(`~/cow/skills/`),可实现任何复杂的业务流程和第三方系统对接。
## 技能加载优先级
1. **工作空间技能**(最高):`~/cow/skills/`
2. **项目内置技能**(最低):`skills/`
同名技能按优先级覆盖。
## 技能文件结构
```
skills/
├── my-skill/
│ ├── SKILL.md # Skill description (frontmatter + instructions)
│ ├── scripts/ # Execution scripts (optional)
│ └── resources/ # Additional resources (optional)
```
### SKILL.md 格式
```markdown
---
name: my-skill
description: Brief description of the skill
metadata:
emoji: 🔧
requires:
bins: ["curl"]
env: ["MY_API_KEY"]
primaryEnv: "MY_API_KEY"
---
# My Skill
Detailed instructions...
```
| 字段 | 说明 |
| --- | --- |
| `name` | 技能名称,需与目录名一致 |
| `description` | 技能描述Agent 据此决定是否调用 |
| `metadata.requires.bins` | 依赖的系统命令 |
| `metadata.requires.env` | 依赖的环境变量 |
| `metadata.always` | 是否始终加载(默认 false |

View File

@@ -0,0 +1,49 @@
---
title: LinkAI 智能体
description: 对接 LinkAI 平台的多智能体技能
---
# linkai-agent
将 [LinkAI](https://link-ai.tech/) 平台上的智能体作为 Skill 使用实现多智能体决策。Agent 根据智能体的名称和描述智能选择,通过 `app_code` 调用对应的应用或工作流。
## 依赖
| 依赖 | 说明 |
| --- | --- |
| `LINKAI_API_KEY` | LinkAI 平台 API 密钥,在 [控制台](https://link-ai.tech/console/interface) 创建 |
| `curl` | 系统命令(通常已预装) |
配置方式:
- 通过 `env_config` 工具配置 `LINKAI_API_KEY`
- 或在 `config.json` 中填写 `linkai_api_key`
## 配置智能体
在 `skills/linkai-agent/config.json` 中添加可用的智能体:
```json
{
"apps": [
{
"app_code": "G7z6vKwp",
"app_name": "LinkAI客服助手",
"app_description": "当用户需要了解LinkAI平台相关问题时才选择该助手"
},
{
"app_code": "SFY5x7JR",
"app_name": "内容创作助手",
"app_description": "当用户需要创作图片或视频时才使用该助手"
}
]
}
```
## 使用方式
配置完成后Agent 会根据用户的问题自动选择合适的 LinkAI 智能体进行回答。
<Frame>
<img src="https://cdn.link-ai.tech/doc/20260202234350.png" width="750" />
</Frame>

View File

@@ -0,0 +1,33 @@
---
title: 创建技能
description: 通过对话创建自定义技能
---
# skill-creator
通过自然语言对话快速创建、安装或更新技能。
## 依赖
无额外依赖,始终可用。
## 使用方式
- 将工作流程固化为技能:"帮我把这个部署流程创建为一个技能"
- 对接第三方 API"根据这个接口文档创建一个技能"
- 安装远程技能:"帮我安装 xxx 技能"
## 创建流程
1. 告诉 Agent 你想创建的技能功能
2. Agent 自动生成 `SKILL.md` 说明文件和运行脚本
3. 技能保存到工作空间的 `~/cow/skills/` 目录
4. 后续对话中 Agent 会自动识别并使用该技能
<Frame>
<img src="https://cdn.link-ai.tech/doc/20260202202247.png" width="800" />
</Frame>
<Tip>
详细开发文档可参考 [Skill 创造器说明](https://github.com/zhayujie/chatgpt-on-wechat/blob/master/skills/skill-creator/SKILL.md)。
</Tip>

33
docs/skills/web-fetch.mdx Normal file
View File

@@ -0,0 +1,33 @@
---
title: 网页抓取
description: 抓取网页文本内容
---
# web-fetch
使用 curl 抓取网页并提取可读文本内容,轻量级的网页访问方式,无需浏览器自动化。
## 依赖
| 依赖 | 说明 |
| --- | --- |
| `curl` | 系统命令(通常已预装) |
该技能设置了 `always: true`,只要系统有 `curl` 命令即默认启用。
## 使用方式
当 Agent 需要获取某个 URL 的网页内容时会自动调用,无需额外配置。
## 与 browser 工具的区别
| 特性 | web-fetch技能 | browser工具 |
| --- | --- | --- |
| 依赖 | 仅 curl | browser-use + playwright |
| JS 渲染 | 不支持 | 支持 |
| 页面交互 | 不支持 | 支持点击、输入等 |
| 适用场景 | 获取静态页面文本 | 操作动态网页 |
<Tip>
对于大多数网页内容获取场景web-fetch 就够用了。只有需要 JS 渲染或页面交互时才需要 browser 工具。
</Tip>