1. Windows 上装 SpecKit 到底卡在哪
SpecKit(也就是 spec-kit)是 GitHub 官方出的规格驱动开发工具,简单说就是让你先用自然语言把需求写成 spec,再让 AI 按 spec 生成代码,适合想把 Claude Code、Cursor 这类编码助手用得更规范的人。它在 macOS、Linux 上装起来挺顺,但到了 Windows,很多人第一步就卡住:PowerShell 执行策略拦脚本、uv 装完当前窗口不认、uv tool install从 git 拉包超时、装完specify命令找不到。我自己在 Windows Terminal 里折腾过一轮,最后是靠 uv 加本地克隆仓库才跑通。
这篇就按真实操作顺序走一遍:先用 PowerShell 装 uv,再用 uv 装 specify-cli,中间失败就退回本地克隆安装,最后把 TaoToken 的统一 Key 通道配好,让 SpecKit 调模型时不用在多个 Key 之间来回换。全程命令可直接复制,遇到报错我在第 5 节列了排查表。
2. 前置准备:uv 与 TaoToken 统一 Key 通道
2.1 为什么用 uv 而不是 pip
uv 是 Astral 出的 Python 包与工具管理器,用 Rust 写的,装 CLI 工具比 pip 快很多,而且uv tool install会把工具装进独立环境,不会污染你系统里的 Python。SpecKit 官方推荐的就是 uv,所以这一步别省。
2.2 TaoToken 在这里的角色
SpecKit 本身不绑定模型,它通过环境变量读 API 通道。TaoToken 提供统一的 Key 和 API 入口,你只要把 base_url 和 key 配一次,SpecKit、Claude Code 这些工具都能复用同一条通道,不用每个工具单独填。官网在 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,API 入口是 https://taotoken.net/api 。先去控制台建一个 Key,后面配置文件要用。
注意:Key 只存在本地配置文件里,别写进会提交到 git 的仓库。
3. 可复制配置:PowerShell 装 uv 与 SpecKit
3.1 装 uv
用管理员权限打开 Windows Terminal 或 PowerShell,执行官方安装脚本:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"-ExecutionPolicy ByPass是临时绕过当前会话的执行策略,只对这条命令生效,不改系统全局设置。装完验证:
uv --version能打印出版本号就说明 uv 到位了。如果提示uv 不是内部或外部命令,把 PowerShell 关掉重开一次,让 PATH 刷新。
3.2 装 specify-cli(在线方式)
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git这一步是从 GitHub 直接拉源码构建。国内网络下经常卡在 clone 阶段或超时,如果你看到长时间无输出然后报错,直接跳到 3.3 用本地克隆。
3.3 在线失败就本地克隆安装
先用 git 把仓库拉到本地,路径自己定,我这里放在G:\AI\spec-kit:
git clone https://github.com/github/spec-kit.git G:\AI\spec-kit克隆完成后回到 PowerShell,从本地目录安装:
uv tool install specify-cli --from G:\AI\spec-kit--from后面跟本地路径时,uv 会直接读本地源码构建,不再走网络,成功率高很多。装完验证:
specify --help能列出子命令就说明 SpecKit 装好了。
3.4 配置 TaoToken 统一 Key 通道
SpecKit 通过环境变量读模型通道。在 PowerShell 里设置当前会话变量:
$env:OPENAI_BASE_URL = "https://taotoken.net/api" $env:OPENAI_API_KEY = "你的TaoToken Key"想持久化到用户级,用setx:
setx OPENAI_BASE_URL "https://taotoken.net/api" setx OPENAI_API_KEY "你的TaoToken Key"setx写入后要新开窗口才生效。如果你更习惯用配置文件,可以在项目根目录建一个.env骨架:
# TaoToken 统一通道 OPENAI_BASE_URL=https://taotoken.net/api OPENAI_API_KEY=sk-你的Key # SpecKit 相关 SPECIFY_MODEL=gpt-4o-mini提示:
.env记得加进.gitignore,别跟着代码提交上去。
4. 验证请求:确认 SpecKit 真的通了
4.1 检查工具链
uv --version specify --help两条都正常输出,说明 uv 和 SpecKit 都在 PATH 里。
4.2 检查环境变量
echo $env:OPENAI_BASE_URL echo $env:OPENAI_API_KEY确认打印的是 TaoToken 的地址和你自己的 Key,不是空值。
4.3 发一次真实请求
进到你的项目目录,比如wx-task,初始化 SpecKit:
cd G:\projects\wx-task specify init如果它提示需要模型调用,就会走你配的 TaoToken 通道。想单独验证通道是否通,可以用 curl 打一次:
curl https://taotoken.net/api/v1/models ` -H "Authorization: Bearer $env:OPENAI_API_KEY"返回模型列表 JSON 就说明 Key 和通道都正常。这一步过了,再回 Claude Code 里重启,输入/skills就能看到 SpecKit 的技能挂载进来了。
5. 本篇常见错排查
| 报错现象 | 原因 | 处理 |
|---|---|---|
uv 不是内部或外部命令 | PATH 未刷新 | 关掉 PowerShell 重开,或手动把 uv 安装目录加进 PATH |
uv tool install卡住/超时 | 从 GitHub 拉包网络不稳 | 改用 3.3 本地克隆安装 |
specify 不是内部或外部命令 | uv tool 的 bin 目录不在 PATH | 执行uv tool update-shell后重开窗口 |
| 执行脚本被策略拦截 | ExecutionPolicy 限制 | 用-ExecutionPolicy ByPass单次绕过,别改全局 |
| 请求返回 401 | Key 没配或写错 | 重新echo $env:OPENAI_API_KEY核对 |
| 请求返回 404 | base_url 写错 | 确认是https://taotoken.net/api,不要多加/v1前缀重复 |
/skills看不到 SpecKit | Claude Code 没重启 | 完全退出再启动,让它重新读环境变量 |
我踩过的坑是uv tool install在线装三次都超时,换成本地克隆一次就过。所以如果你也卡在拉包,别硬等,直接走本地路径。
6. 接下来怎么用这条通道
SpecKit 装好只是起点,真正省事的是把 TaoToken 当成统一 Key 通道:SpecKit、Claude Code、其他编码工具都读同一组环境变量,换工具不用换 Key。想长期跑编码和 Agent 任务,可以去看看 Coding Plan,把额度规划好;如果只是想先验证模型通不通,用模型对话页面发一条消息最快;接入过程中遇到 Key 或 base_url 的问题,直接翻接入文档对照参数。通道配一次,后面所有工具复用,这才是统一 Key 通道的价值。