全 AI 编写,没写一行代码,go 后端,React 前端,ai 还是比较适合写 React
Skills 是 AI 对话功能的扩展机制,允许你为 AI 添加自定义知识(提示词)或可执行工具(脚本)。
Skills 目录位于 {FM_DATA_DIR}/skills/(默认 /opt/file-manager/skills/),启动时自动创建。
为 AI 注入额外的上下文知识,支持两种格式:
社区格式(推荐) — 子目录 + SKILL.md:
skills/
└── my-knowledge/
└── SKILL.md
SKILL.md 支持 YAML frontmatter:
---
name: my-knowledge
description: 自定义知识描述
---
这里是提示词内容,AI 对话时会自动加载。
根级文件(旧格式) — 直接放置 .md 或 .txt 文件:
skills/
└── my-prompt.md
单个提示词文件最大 20KB ,所有提示词总计最大 200KB 。
让 AI 能够调用自定义脚本执行操作(如读取 Excel 、调用外部 API 等)。脚本在 Docker 沙箱容器中隔离执行。
子目录格式(推荐) — meta.json + main.py / main.sh:
skills/
└── read_excel/
├── meta.json
└── main.py
meta.json 定义工具的名称、描述和参数:
{
"name": "read_excel",
"description": "读取 Excel 文件内容",
"parameters": {
"type": "object",
"properties": {
"file_path": {
"type": "string",
"description": "文件路径"
}
},
"required": ["file_path"]
}
}
main.py 中通过 ARGS 获取参数:
# ARGS 是一个 dict ,包含 AI 传入的参数
file_path = ARGS["file_path"]
# 你的处理逻辑...
print(result)
main.sh 中通过 $ARGS 环境变量获取 JSON 参数:
echo "$ARGS" | jq -r '.file_path'
# 你的处理逻辑...
根级文件(旧格式) — .py/.sh + 同名 .json:
skills/
├── read_excel.py
└── read_excel.json
脚本工具 Skill 在 Docker 沙箱容器中执行,需要:
fm-sandbox,可通过 FM_SANDBOX_CONTAINER 环境变量修改)/skills/ 路径示例:
docker run -d --name fm-sandbox \
-v /opt/file-manager/skills:/skills:ro \
python:3.11-slim \
sleep infinity
| 变量名 | 说明 | 默认值 |
|---|---|---|
FM_DATA_DIR |
应用数据目录,存放数据库、Skills 、配置等 | /opt/file-manager |
FM_PORT |
服务监听端口 | 8080 |
FM_JWT_SECRET |
JWT 签名密钥。未设置时每次启动随机生成,重启后所有已签发的 Token 失效 | 随机 32 字节 |
FM_SANDBOX_CONTAINER |
AI Skills 脚本执行所用的 Docker 沙箱容器名称 | fm-sandbox |
示例:
export FM_DATA_DIR=/data/file-manager
export FM_PORT=9090
export FM_JWT_SECRET=your-secret-key
export FM_SANDBOX_CONTAINER=my-sandbox
大家可以在这里体验一下 https://huggingface.co/spaces/wuhenba/webos https://wuhenba-webos.hf.space/ 密码: Admin@123
二进制包也在这里可以下载
1
Moyyyyyyyyyyye PRO 我更希望自己的产品介绍自己写,ai 写的看的有用的信息密度太低了,个人见解
|