🚀 AI-OS v3.0 终极部署指南:双平台一键脚本,彻底解决网络卡顿
你是否曾因国内网络连不上 GitHub 导致 AI-OS 部署卡死?是否在 Windows 和 Mac 之间切换时,为不同的环境配置而头疼?本文为你带来 AI-OS v3.0 的终极解决方案:跨平台一键部署脚本,内置 GitHub 镜像加速,彻底告别网络卡顿,并完整包含 v3.0 所有核心功能(双技能库、环境扫描、记忆存档、物理护栏等)。无论你是 Windows 11 还是 macOS/Linux 用户,只需复制对应脚本,一键运行,即可获得满血版 AI-OS 全局环境。
核心优势:
- ✅ 一键部署:复制、粘贴、回车,无需手动配置。
- ✅ 内置镜像加速:自动使用国内 GitHub 镜像,彻底解决
Connection reset问题。 - ✅ 跨平台兼容:提供 PowerShell (Windows) 和 Bash (macOS/Linux) 双版本。
- ✅ 功能完整:包含目录创建、双技能库拉取、v3.0 环境扫描、技能更新、记忆存档、预提交钩子等全部核心逻辑。
- ✅ 防坑设计:修复了 macOS 下大括号展开失效等兼容性问题,确保 100% 成功。
请根据你的操作系统,选择下方的脚本直接运行,开启你的 AI-OS v3.0 之旅!
🪟 选项 A:Windows 11 专属 (PowerShell 最终防卡死版)
打开 Windows 的 PowerShell,直接复制以下所有代码并回车运行:
$ErrorActionPreference = "Stop"
Write-Host "🚀 开始初始化 AI-OS v3.0 全局环境 (Windows 满血防卡死版)..." -ForegroundColor Cyan
# 核心:内置国内 GitHub 镜像加速,彻底解决 Connection reset 问题
$GITHUB_MIRROR = "https://ghfast.top/https://github.com"
$AI_OS_PATH = "$env:USERPROFILE\.ai-os"
$dirs = @("skills", "sops", "standards", "templates", "tools", "hooks", "context")
foreach ($dir in $dirs) {
New-Item -ItemType Directory -Force -Path (Join-Path $AI_OS_PATH $dir) | Out-Null
}
Write-Host "✅ 全局目录已创建: $AI_OS_PATH" -ForegroundColor Green
if (-not (Get-Command git -ErrorAction SilentlyContinue)) {
Write-Host "❌ 错误: 未找到 git,请先安装 (管理员终端运行: winget install Git.Git)" -ForegroundColor Red
exit 1
}
# 1. 拉取 Matt Pocock 技能库 (使用镜像加速)
Write-Host "📥 正在下载 Matt Pocock 技能库 (镜像加速中)..." -ForegroundColor Yellow
$mattpocock_path = Join-Path $AI_OS_PATH "skills\mattpocock"
if (-not (Test-Path $mattpocock_path)) {
git clone "$GITHUB_MIRROR/mattpocock/skills.git" $mattpocock_path
if ($LASTEXITCODE -ne 0) { Write-Host "❌ Matt Pocock 下载失败,请检查网络或更换镜像" -ForegroundColor Red; exit 1 }
} else {
Push-Location $mattpocock_path; git pull origin main --quiet; Pop-Location
}
Write-Host "✅ Matt Pocock 技能库就绪" -ForegroundColor Green
# 2. 拉取 Superpowers 技能库 (使用镜像加速)
Write-Host "📥 正在下载 Superpowers 技能库 (镜像加速中)..." -ForegroundColor Yellow
$superpowers_path = Join-Path $AI_OS_PATH "skills\superpowers"
if (-not (Test-Path $superpowers_path)) {
git clone "$GITHUB_MIRROR/obra/superpowers.git" $superpowers_path
if ($LASTEXITCODE -ne 0) { Write-Host "❌ Superpowers 下载失败,请检查网络或更换镜像" -ForegroundColor Red; exit 1 }
} else {
Push-Location $superpowers_path; git pull origin main --quiet; Pop-Location
}
Write-Host "✅ Superpowers 技能库就绪" -ForegroundColor Green
# 3. 生成 v3.0 满血版扫描脚本 (增加 BDD/契约/行数校验)
$scanScript = @'
Write-Host "=== AI-OS v3.0 环境扫描报告 ==="
Write-Host "⏱️ 时间: $(Get-Date -Format 'yyyy-MM-dd HH:mm:ss')"
Write-Host "📁 路径: $(Get-Location)"
Write-Host "`n📂 核心目录结构:"
Get-ChildItem -Directory -Depth 1 | Where-Object { $_.Name -notmatch '^\.' -and $_.Name -notin 'venv','node_modules' } | Select-Object -ExpandProperty Name | Sort-Object
Write-Host "`n📦 技术栈与 v3.0 契约指纹:"
if (Test-Path "package.json") { Write-Host "- Node.js 项目" }
if (Test-Path "requirements.txt") { Write-Host "- Python 项目" }
if (Test-Path "go.mod") { Write-Host "- Golang 项目" }
if (Test-Path "features") { Write-Host "- 🥒 发现 BDD 验收契约 (features/)" -ForegroundColor Cyan }
if (Test-Path "contracts") { Write-Host "- 📜 发现 API 契约 (contracts/)" -ForegroundColor Cyan }
Write-Host "`n🧠 记忆与 v3.0 宪法状态:"
if (Test-Path ".ai\context\MEMORY.md") { Write-Host "- 发现 MEMORY.md" } else { Write-Host "- 无历史记忆" }
if (Test-Path ".ai\context\CONTEXT.md") { Write-Host "- 发现统一语言 CONTEXT.md" } else { Write-Host "- 无 CONTEXT.md" }
if (Test-Path ".ai\RULES.md") {
$lines = (Get-Content ".ai\RULES.md").Count
if ($lines -gt 180) { Write-Host "- ✅ v3.0 宪法完整 ($lines 行)" -ForegroundColor Green }
else { Write-Host "- ❌ 警告: RULES.md 行数不足 ($lines 行),触发防截断红线!" -ForegroundColor Red }
}
Write-Host "=== 扫描结束 ==="
'@
Set-Content -Path (Join-Path $AI_OS_PATH "tools\scan-project.ps1") -Value $scanScript -Encoding UTF8
# 4. 生成技能更新脚本
$updateScript = @'
$AI_OS_PATH = "$env:USERPROFILE\.ai-os"
Write-Host "🔄 正在更新 Matt Pocock..."
Set-Location "$AI_OS_PATH\skills\mattpocock"; git pull origin main --quiet
Write-Host "🔄 正在更新 Superpowers..."
Set-Location "$AI_OS_PATH\skills\superpowers"; git pull origin main --quiet
Write-Host "🎉 全局技能库更新完成!"
'@
Set-Content -Path (Join-Path $AI_OS_PATH "tools\update-skills.ps1") -Value $updateScript -Encoding UTF8
# 5. 生成满血版记忆技能
$memorySkill = @'
# 记忆存档技能 (save-memory)
## 触发时机
1. 完成一个完整功能模块后
2. 连续对话超过 10 轮时
3. 用户显式输入 @save-memory
## 执行动作
1. 总结当前进度,必须严格包含:✅已完成、🚧进行中、📌下一步计划、⚠️避坑记录
2. 调用终端执行物理备份 (Windows使用: Copy-Item .ai\context\MEMORY.md .ai\context\MEMORY.md.bak.$(Get-Date -Format 'yyyyMMddHHmmss'))
3. 将新总结覆盖写入 `.ai/context/MEMORY.md`
'@
Set-Content -Path (Join-Path $AI_OS_PATH "skills\save-memory.md") -Value $memorySkill -Encoding UTF8
# 6. 生成满血版 pre-commit 钩子
$preCommitHook = @'
#!/bin/bash
echo "🔍 AI-OS 物理护栏:正在执行预提交检查..."
if [ -f "package.json" ]; then
npm run lint --if-present
elif [ -f "requirements.txt" ]; then
command -v ruff >/dev/null 2>&1 && ruff check .
fi
echo "✅ 预提交检查通过"
'@
Set-Content -Path (Join-Path $AI_OS_PATH "hooks\pre-commit") -Value $preCommitHook -Encoding UTF8
Write-Host "`n🎉 AI-OS v3.0 全局环境满血部署完成!" -ForegroundColor Green
Write-Host "👉 下一步:进入你的项目目录,使用【v3.0 终极创世 Prompt】初始化项目。" -ForegroundColor Cyan
🍎 选项 B:macOS / Linux 专属 (Bash 最终防卡死版)
打开 Mac 的终端 (Terminal),直接复制以下所有代码并回车运行:
#!/bin/bash
set -e # 遇到错误立即退出,防止半拉子工程
echo "🚀 开始初始化 AI-OS v3.0 全局环境 (Mac/Linux 满血防卡死版)..."
# 核心:内置国内 GitHub 镜像加速
GITHUB_MIRROR="https://ghfast.top/https://github.com"
AI_OS_PATH="$HOME/.ai-os"
# 修复:废弃大括号展开,改用显式创建,兼容所有 macOS/Linux 默认 Shell
mkdir -p "$AI_OS_PATH/skills" "$AI_OS_PATH/sops" "$AI_OS_PATH/standards" "$AI_OS_PATH/templates" "$AI_OS_PATH/tools" "$AI_OS_PATH/hooks" "$AI_OS_PATH/context"
echo "✅ 全局目录已创建: $AI_OS_PATH"
if ! command -v git &> /dev/null; then
echo "❌ 错误: 未找到 git,请先安装 (Mac: xcode-select --install)"
exit 1
fi
# 1. 拉取 Matt Pocock 技能库
echo "📥 正在下载 Matt Pocock 技能库 (镜像加速中)..."
if [ ! -d "$AI_OS_PATH/skills/mattpocock" ]; then
git clone "$GITHUB_MIRROR/mattpocock/skills.git" "$AI_OS_PATH/skills/mattpocock" || { echo "❌ Matt Pocock 下载失败,请检查网络"; exit 1; }
else
cd "$AI_OS_PATH/skills/mattpocock" && git pull origin main --quiet
fi
echo "✅ Matt Pocock 技能库就绪"
# 2. 拉取 Superpowers 技能库
echo "📥 正在下载 Superpowers 技能库 (镜像加速中)..."
if [ ! -d "$AI_OS_PATH/skills/superpowers" ]; then
git clone "$GITHUB_MIRROR/obra/superpowers.git" "$AI_OS_PATH/skills/superpowers" || { echo "❌ Superpowers 下载失败,请检查网络"; exit 1; }
else
cd "$AI_OS_PATH/skills/superpowers" && git pull origin main --quiet
fi
echo "✅ Superpowers 技能库就绪"
# 3. 生成 v3.0 满血版扫描脚本 (增加 BDD/契约/行数校验)
cat << 'EOF' > "$AI_OS_PATH/tools/scan-project.sh"
#!/bin/bash
echo "=== AI-OS v3.0 环境扫描报告 ==="
echo "⏱️ 时间: $(date '+%Y-%m-%d %H:%M:%S')"
echo "📁 路径: $(pwd)"
echo -e "\n📂 核心目录结构:"
find . -maxdepth 2 -type d -not -path '*/\.*' -not -path '*/venv*' -not -path '*/node_modules*' | sort
echo -e "\n📦 技术栈与 v3.0 契约指纹:"
[ -f "package.json" ] && echo "- Node.js 项目"
[ -f "requirements.txt" ] && echo "- Python 项目"
[ -f "go.mod" ] && echo "- Golang 项目"
[ -d "features" ] && echo "- 🥒 发现 BDD 验收契约 (features/)"
[ -d "contracts" ] && echo "- 📜 发现 API 契约 (contracts/)"
echo -e "\n🧠 记忆与 v3.0 宪法状态:"
[ -f ".ai/context/MEMORY.md" ] && echo "- 发现 MEMORY.md" || echo "- 无历史记忆"
[ -f ".ai/context/CONTEXT.md" ] && echo "- 发现统一语言 CONTEXT.md" || echo "- 无 CONTEXT.md"
if [ -f ".ai/RULES.md" ]; then
lines=$(wc -l < ".ai/RULES.md")
if [ "$lines" -gt 180 ]; then
echo "- ✅ v3.0 宪法完整 ($lines 行)"
else
echo "- ❌ 警告: RULES.md 行数不足 ($lines 行),触发防截断红线!"
fi
fi
echo "=== 扫描结束 ==="
EOF
chmod +x "$AI_OS_PATH/tools/scan-project.sh"
# 4. 生成技能更新脚本
cat << 'EOF' > "$AI_OS_PATH/tools/update-skills.sh"
#!/bin/bash
AI_OS_PATH="$HOME/.ai-os"
echo "🔄 正在更新 Matt Pocock..."
cd "$AI_OS_PATH/skills/mattpocock" && git pull origin main --quiet
echo "🔄 正在更新 Superpowers..."
cd "$AI_OS_PATH/skills/superpowers" && git pull origin main --quiet
echo "🎉 全局技能库更新完成!"
EOF
chmod +x "$AI_OS_PATH/tools/update-skills.sh"
# 5. 生成满血版记忆技能
cat << 'EOF' > "$AI_OS_PATH/skills/save-memory.md"
# 记忆存档技能 (save-memory)
## 触发时机
1. 完成一个完整功能模块后
2. 连续对话超过 10 轮时
3. 用户显式输入 @save-memory
## 执行动作
1. 总结当前进度,必须严格包含:✅已完成、🚧进行中、📌下一步计划、⚠️避坑记录
2. 调用终端执行物理备份 (Mac/Linux使用: cp .ai/context/MEMORY.md .ai/context/MEMORY.md.bak.$(date +%Y%m%d%H%M%S))
3. 将新总结覆盖写入 `.ai/context/MEMORY.md`
EOF
# 6. 生成满血版 pre-commit 钩子模板
cat << 'EOF' > "$AI_OS_PATH/hooks/pre-commit"
#!/bin/bash
echo "🔍 AI-OS 物理护栏:正在执行预提交检查..."
if [ -f "package.json" ]; then
npm run lint --if-present
elif [ -f "requirements.txt" ]; then
command -v ruff >/dev/null 2>&1 && ruff check .
fi
echo "✅ 预提交检查通过"
EOF
chmod +x "$AI_OS_PATH/hooks/pre-commit"
echo ""
echo "🎉 AI-OS v3.0 全局环境满血部署完成!"
echo "👉 下一步:进入你的项目目录,使用【v3.0 终极创世 Prompt】初始化项目。"
💡 架构师最后叮嘱
- 关于网络:脚本中已经内置了
ghfast.top镜像。如果你们连这个镜像也受限报错,请把脚本里的https://ghfast.top/https://github.com全局替换为https://mirror.ghproxy.com/https://github.com再跑。 - 绝对完整:这两个脚本包含了我们迭代至今所有的防坑逻辑和满血功能,没有任何省略,直接复制运行即可!
🔍 核心升级点说明
- v3.0 宪法物理校验 (
scan-project升级):- 脚本现在会自动读取
.ai/RULES.md并计算行数。如果 AI 在初始化时偷懒导致行数< 180,扫描报告会直接标红警告。这让你的“防截断分片协议”在环境层面就有了兜底。
- 脚本现在会自动读取
- BDD 与契约嗅探:
- 增加了对
features/(Cucumber BDD) 和contracts/(OpenAPI 契约) 目录的识别,完美契合 v3.0 的“企业堡垒”定位。
- 增加了对
- Mac 兼容性修复 (重要):
- 原脚本使用了
mkdir -p "$AI_OS_PATH"/{skills,sops...}。在 macOS 下,如果用户默认的 Shell 是zsh但通过sh调用脚本,或者在某些精简版 Linux 下,大括号展开会失效,导致创建一个名字 literally 叫{skills,sops...}的乱码文件夹。 - 修复方案:改为显式的
mkdir -p "$AI_OS_PATH/skills" "$AI_OS_PATH/sops" ...,确保在任何 POSIX 兼容环境下 100% 成功。
- 原脚本使用了