
nanmicoder/skills-agent-proto 是从 https://github.com/nanmicoder/skills-agent-proto. 导入的 Agent Skill 候选人。
概览
nanmicoder/skills-agent-proto 是从 https://github.com/nanmicoder/skills-agent-proto. 导入的 Agent Skill 候选人。
概述(AI 翻译)
使用 LangChain 1.0 构建的 Skills Agent,演示 Skills 三层加载机制的底层原理。默认使用 Anthropic,也支持 OpenAI / OpenAI-compatible 接口。
B站视频: Skills到底怎么实现?我写了个Agent跑给你看
特性
- 多 Provider 支持: 默认 Anthropic,支持 OpenAI / OpenAI 兼容基础 URL
- 扩展思维:Anthropic模型可显示思考过程(蓝色面板)
- 流式输出: 令牌级实时显示响应
- 工具调用可视化: 显示工具名称、参数、执行结果
- 三层 Skills 加载: Level 1 元数据注入 → Level 2 指令加载 → Level 3 脚本执行
快速开始
1.安装
2.配置模型 API
默认文档仍以 Anthropic 为例;如果你使用接口AI 这类 OpenAI-compatible 代理,也可以切到 OpenAI 协议。
Anthropic(默认)
创建 .env 文件:
使用第三方代理中转,我推荐使用 接口AI,注册绑定github得3刀试用券
兼容旧配置,下面这些变量仍然可用:
OpenAI / OpenAI 兼容
如果你要切到 OpenAI 协议,把 provider、model 和 base URL 切过去即可。接口AI 示例:
开启 OpenAI thinking 时,项目默认会走 Responses API,并自动把上面的 base URL 规范成 https://api.jiekou.ai/openai/v1,这样 gpt-5.4 的 reasoning 和 tool calling 可以同时工作。
也支持 OpenAI 专属变量:
如果你的代理只支持 chat/completions,可以显式关闭:
这种模式下 MODEL_BASE_URL / OPENAI_BASE_URL 可以填到兼容服务的 base 层级,例如 https://api.jiekou.ai/openai 或 https://api.jiekou.ai/openai/v1。如果误填到完整 endpoint,例如 .../v1/chat/completions,项目会自动裁剪回 SDK 需要的 .../v1,避免重复拼接路径。
3.交互式验证
启动后会显示当前实际使用的 provider:model,方便确认是否已经切到 OpenAI。
三层加载演示
本页由 AI 翻译,技术细节请以原文为准。
README
以下为原文 README 节选,完整内容请查看原文。
LangChain Skills Agent
使用 LangChain 1.0 构建的 Skills Agent,演示 Skills 三层加载机制的底层原理。默认使用 Anthropic,也支持 OpenAI / OpenAI-compatible 接口。
特性
- 多 Provider 支持: 默认 Anthropic,支持 OpenAI / OpenAI-compatible Base URL
- Extended Thinking: Anthropic 模型可显示思考过程(蓝色面板)
- 流式输出: Token 级实时显示响应
- 工具调用可视化: 显示工具名称、参数、执行结果
- 三层 Skills 加载: Level 1 元数据注入 → Level 2 指令加载 → Level 3 脚本执行
快速开始
1. 安装
git clone https://github.com/NanmiCoder/skills-agent-proto.git
cd skills-agent-proto
uv sync
2. 配置模型 API
默认文档仍以 Anthropic 为例;如果你使用接口AI 这类 OpenAI-compatible 代理,也可以切到 OpenAI 协议。
Anthropic(默认)
创建 .env 文件:
使用第三方代理中转, 我推荐使用 接口AI,注册绑定github得3刀试用券
MODEL_PROVIDER=anthropic
MODEL_NAME=claude-sonnet-4-5-20250929
MODEL_API_KEY=sk-xxx
MODEL_BASE_URL=https://api.jiekou.ai/anthropic
兼容旧配置,下面这些变量仍然可用:
ANTHROPIC_AUTH_TOKEN=sk-xxx
ANTHROPIC_BASE_URL=https://api.jiekou.ai/anthropic
CLAUDE_MODEL=claude-sonnet-4-5-20250929
OpenAI / OpenAI-compatible
如果你要切到 OpenAI 协议,把 provider、model 和 base URL 切过去即可。接口AI 示例:
MODEL_PROVIDER=openai
MODEL_NAME=gpt-5.4
MODEL_API_KEY=sk-xxx
MODEL_BASE_URL=https://api.jiekou.ai/openai
开启 OpenAI thinking 时,项目默认会走 Responses API,并自动把上面的 base URL 规范成 https://api.jiekou.ai/openai/v1,这样 gpt-5.4 的 reasoning 和 tool calling 可以同时工作。
也支持 OpenAI 专属变量:
OPENAI_API_KEY=sk-xxx
OPENAI_BASE_URL=https://api.jiekou.ai/openai
OPENAI_MODEL=gpt-5.4
OPENAI_REASONING_EFFORT=medium
如果你的代理只支持 chat/completions,可以显式关闭:
OPENAI_USE_RESPONSES_API=false
这种模式下 MODEL_BASE_URL / OPENAI_BASE_URL 可以填到兼容服务的 base 层级,例如 https://api.jiekou.ai/openai 或 https://api.jiekou.ai/openai/v1。如果误填到完整 endpoint,例如 .../v1/chat/completions,项目会自动裁剪回 SDK 需要的 .../v1,避免重复拼接路径。
3. 交互式验证
uv run langchain-skills --interactive
启动后会显示当前实际使用的 provider:model,方便确认是否已经切到 OpenAI。
三层加载演示
启动后可以观察到完整的三层加载过程:
Level 1: 启动时 - 元数据注入
✓ Discovered 6 skills
- tornado-erp-module-dev
- web-design-guidelines
- news-extractor
...
Skills 的 name + description 已注入 system prompt,模型知道有哪些能力可用。
Level 2: 请求匹配时 - 指令加载
You: 总结这篇文章 https://mp.weixin.qq.com/s/ohsU1xRrYu9xcVD7qu5lNw
● load_skill(news-extractor)
└ # Skill: news-extractor
## Instructions
从主流新闻平台提取文章内容...
用户请求匹配到 skill 描述,模型主动调用 load_skill 获取完整指令。
Level 3: 执行时 - 脚本运行
● Bash(uv run .../extract_news.py https://mp.weixin.qq.com/s/ohsU1xRrYu9xcVD7qu5lNw)
└ [OK]
[SUCCESS] Saved: output/xxx.md
模型根据指令执行脚本,脚本代码不进入上下文,只有输出进入。
CLI 命令
# 交互式模式(推荐)
uv run langchain-skills --interactive
# 单次执行
uv run langchain-skills "列出当前目录"
# 禁用 Thinking(降低延迟;OpenAI 默认走标准流式输出)
uv run langchain-skills --no-thinking "执行 pwd"
# 查看发现的 Skills
uv run langchain-skills --list-skills
推荐工具
换一个关键词,或者移除筛选条件。
安装
npx skillfish add nanmicoder/skills-agent-proto