From 21dafe38f996a1e2bdf078383829d7739f37dbed Mon Sep 17 00:00:00 2001 From: lidf Date: Mon, 6 Apr 2026 21:48:30 +0800 Subject: [PATCH] =?UTF-8?q?v1.1:=20=E7=AE=80=E5=8C=96=E5=88=86=E5=8F=91=20?= =?UTF-8?q?=E2=80=94=20curl=20=E4=B8=80=E8=A1=8C=E5=91=BD=E4=BB=A4?= =?UTF-8?q?=E5=AE=89=E8=A3=85=EF=BC=8C=E6=97=A0=E9=9C=80=20Git?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - install.sh: 支持 curl 下载模式 + 跨平台检测 + 保护用户记忆 - README: 2 步安装流程(装客户端 + 粘贴命令) - 新增 mafia_agent_installer Skill --- README.md | 58 ++++++---- agent/install.sh | 114 ++++++++++++-------- agent/skills/mafia_agent_installer/SKILL.md | 39 +++++++ 3 files changed, 145 insertions(+), 66 deletions(-) create mode 100644 agent/skills/mafia_agent_installer/SKILL.md diff --git a/README.md b/README.md index 2178f52..0279744 100644 --- a/README.md +++ b/README.md @@ -2,28 +2,35 @@ 基于 TOC(约束理论)五步思考过程的 **产品上新黑手党提案** AI 顾问。 -## 快速安装 +## 快速安装(2 步) +### 第 1 步:安装 CoPaw 客户端 + +前往 [CoPaw 官网](https://copaw.agentscope.io) 下载桌面客户端,双击安装并完成初始化。 + +### 第 2 步:一行命令导入 Agent + +打开终端(Mac 的"终端.app" / Windows 的 PowerShell),粘贴以下命令并回车: + +**Mac / Linux:** ```bash -# 1. 克隆仓库 -git clone ssh://git@git.brainwork.club:10022/lidf/chanpinhsd.git -cd chanpinhsd - -# 2. 一键安装(自动安装 CoPaw + 配置 Agent) -bash agent/install.sh - -# 3. 启动 -copaw app -# 在左上角切换到 "黑手党提案专家",开始使用 +curl -fsSL https://git.brainwork.club/lidf/chanpinhsd/-/archive/main/chanpinhsd-main.tar.gz | tar xz -C /tmp && bash /tmp/chanpinhsd-main/agent/install.sh ``` +**如果你有 Git(开发者推荐):** +```bash +git clone ssh://git@git.brainwork.club:10022/lidf/chanpinhsd.git ~/mafia-proposal && bash ~/mafia-proposal/agent/install.sh +``` + +安装完成后,回到 CoPaw 客户端**刷新页面**,在左上角切换到「**黑手党提案专家**」即可使用。 + ## 使用方式 -启动 CoPaw 后,切换到「黑手党提案专家」,发送类似以下消息: +切换到「黑手党提案专家」后,发送类似以下消息: > 我想为天维美跨境保健品做一个黑手党提案 -Agent 会按照 TOC 五步法引导你完成: +Agent 会按 TOC 五步法引导你完成: 1. **准备阶段**:概念对齐 → JTBD 四要素 → UDE 诊断 2. **方向性提案**:冲突图 → 惯例揭示 → 例外激发 @@ -33,14 +40,20 @@ Agent 会按照 TOC 五步法引导你完成: ## 更新 +**有 Git(推荐):** ```bash -cd chanpinhsd && git pull && bash agent/install.sh +cd ~/mafia-proposal && git pull && bash agent/install.sh +``` + +**无 Git:** +```bash +curl -fsSL https://git.brainwork.club/lidf/chanpinhsd/-/archive/main/chanpinhsd-main.tar.gz | tar xz -C /tmp && bash /tmp/chanpinhsd-main/agent/install.sh ``` ## 目录结构 ``` -agent/ # Agent 配置(核心资产) +agent/ ├── AGENTS.md # 人设 + TOC 方法论 ├── SOUL.md # Agent 灵魂 ├── PROFILE.md # 输出风格 @@ -48,15 +61,14 @@ agent/ # Agent 配置(核心资产) ├── agent.json # CoPaw 运行配置 ├── skill.json # 技能注册清单 ├── install.sh # 一键安装脚本 -└── skills/ # 5 个 Skills - ├── ude_diagnosis/ - ├── conflict_cloud/ - ├── convention_breaker/ - ├── negative_branch/ - └── proposal_assembler/ +└── skills/ + ├── ude_diagnosis/ # UDE 诊断(准备3) + ├── conflict_cloud/ # 冲突图构建(步骤1) + ├── convention_breaker/ # 惯例打破(步骤2-3) + ├── negative_branch/ # 负面分支消除(步骤4) + ├── proposal_assembler/ # 提案组装(步骤5) + └── mafia_agent_installer/# 安装器 Skill docs/ # 原始方法论文档 -cases/ # 案例输出库 -iteration_reports/ # 方法论迭代报告 ``` ## 方法论版本 diff --git a/agent/install.sh b/agent/install.sh index 7429a17..30ea0e1 100755 --- a/agent/install.sh +++ b/agent/install.sh @@ -1,6 +1,8 @@ #!/usr/bin/env bash -# 黑手党提案 Agent — 一键安装脚本 -# 用法: bash install.sh +# 黑手党提案 Agent — 一键安装/更新脚本 +# 支持两种调用方式: +# 1. git clone 后:bash agent/install.sh +# 2. curl 下载后:bash /tmp/chanpinhsd-main/agent/install.sh set -euo pipefail GREEN='\033[0;32m' @@ -16,49 +18,65 @@ COPAW_HOME="${COPAW_HOME:-$HOME/.copaw}" AGENT_ID="mafia-expert" WORKSPACE_DIR="$COPAW_HOME/workspaces/$AGENT_ID" SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" -REPO_DIR="$(cd "$SCRIPT_DIR/.." && pwd)" + +# ── 检测操作系统 ────────────────────────────────────────────────────── +OS="$(uname -s)" +case "$OS" in + Darwin) info "检测到 macOS" ;; + Linux) info "检测到 Linux" ;; + MINGW*|MSYS*|CYGWIN*) warn "检测到 Windows (Git Bash/MSYS),部分功能可能受限" ;; + *) error "不支持的操作系统: $OS" ;; +esac # ── 检查 CoPaw 是否已安装 ────────────────────────────────────────────── -if ! command -v copaw &>/dev/null && [ ! -f "$COPAW_HOME/bin/copaw" ]; then - info "CoPaw 未安装,正在安装..." - curl -fsSL https://raw.githubusercontent.com/agentscope-ai/CoPaw/main/scripts/install.sh | bash - export PATH="$COPAW_HOME/bin:$PATH" - info "正在初始化 CoPaw..." - copaw init --defaults --accept-security -else - info "CoPaw 已安装" - export PATH="$COPAW_HOME/bin:$PATH" -fi - -# ── 检查 CoPaw 是否已初始化 ──────────────────────────────────────────── if [ ! -f "$COPAW_HOME/config.json" ]; then - info "正在初始化 CoPaw..." - copaw init --defaults --accept-security + if command -v copaw &>/dev/null || [ -f "$COPAW_HOME/bin/copaw" ]; then + info "CoPaw 已安装但未初始化,正在初始化..." + export PATH="$COPAW_HOME/bin:$PATH" + copaw init --defaults --accept-security + else + error "CoPaw 未安装。请先安装 CoPaw 桌面客户端:https://copaw.agentscope.io" + fi +else + info "CoPaw 已就绪" fi -# ── 创建 mafia-expert 工作区 ─────────────────────────────────────────── -info "创建 $AGENT_ID 工作区..." +# ── 创建工作区并复制文件 ─────────────────────────────────────────────── +info "配置 $AGENT_ID 工作区..." mkdir -p "$WORKSPACE_DIR/active_skills" mkdir -p "$WORKSPACE_DIR/cases" mkdir -p "$WORKSPACE_DIR/iteration_reports" mkdir -p "$WORKSPACE_DIR/memory" -# 复制 Agent 配置文件 -cp "$SCRIPT_DIR/AGENTS.md" "$WORKSPACE_DIR/AGENTS.md" -cp "$SCRIPT_DIR/SOUL.md" "$WORKSPACE_DIR/SOUL.md" -cp "$SCRIPT_DIR/PROFILE.md" "$WORKSPACE_DIR/PROFILE.md" -cp "$SCRIPT_DIR/HEARTBEAT.md" "$WORKSPACE_DIR/HEARTBEAT.md" -cp "$SCRIPT_DIR/MEMORY.md" "$WORKSPACE_DIR/MEMORY.md" -cp "$SCRIPT_DIR/agent.json" "$WORKSPACE_DIR/agent.json" -cp "$SCRIPT_DIR/skill.json" "$WORKSPACE_DIR/skill.json" +# 核心配置 +for f in AGENTS.md SOUL.md PROFILE.md HEARTBEAT.md agent.json skill.json; do + if [ -f "$SCRIPT_DIR/$f" ]; then + cp "$SCRIPT_DIR/$f" "$WORKSPACE_DIR/$f" + fi +done -# 复制 Skills -cp -r "$SCRIPT_DIR/skills/"* "$WORKSPACE_DIR/active_skills/" +# MEMORY.md 只在首次创建(不覆盖用户积累的记忆) +if [ ! -f "$WORKSPACE_DIR/MEMORY.md" ]; then + cp "$SCRIPT_DIR/MEMORY.md" "$WORKSPACE_DIR/MEMORY.md" 2>/dev/null || echo "# 黑手党提案专家长期记忆" > "$WORKSPACE_DIR/MEMORY.md" +fi + +# Skills(每次全量覆盖,保证最新) +if [ -d "$SCRIPT_DIR/skills" ]; then + for skill_dir in "$SCRIPT_DIR/skills"/*/; do + skill_name="$(basename "$skill_dir")" + # installer skill 不复制到 mafia-expert,它属于 default agent + if [ "$skill_name" = "mafia_agent_installer" ]; then + continue + fi + mkdir -p "$WORKSPACE_DIR/active_skills/$skill_name" + cp "$skill_dir"* "$WORKSPACE_DIR/active_skills/$skill_name/" 2>/dev/null || true + done +fi info "文件复制完成" # ── 注册到 config.json ───────────────────────────────────────────────── -info "注册 $AGENT_ID 到 CoPaw..." +info "注册 Agent..." python3 -c " import json, os @@ -69,36 +87,46 @@ with open(config_path, 'r') as f: agent_id = '$AGENT_ID' ws_dir = '$WORKSPACE_DIR' +changed = False if agent_id not in cfg['agents']['profiles']: cfg['agents']['profiles'][agent_id] = { 'id': agent_id, 'workspace_dir': ws_dir, 'enabled': True } - if agent_id not in cfg['agents']['agent_order']: - cfg['agents']['agent_order'].append(agent_id) + changed = True + +if agent_id not in cfg['agents']['agent_order']: + cfg['agents']['agent_order'].append(agent_id) + changed = True + +if changed: with open(config_path, 'w') as f: json.dump(cfg, f, indent=2, ensure_ascii=False) print(' ✅ 注册成功') else: - print(' ✅ 已注册,跳过') + print(' ✅ 已注册,配置已更新') " -# ── 记录仓库路径(用于 Heartbeat git pull)───────────────────────────── +# ── 记录来源路径(便于后续更新)───────────────────────────────────────── +REPO_DIR="$(cd "$SCRIPT_DIR/.." && pwd)" echo "$REPO_DIR" > "$WORKSPACE_DIR/.repo_path" -info "仓库路径已记录: $REPO_DIR" + +# ── 清理临时文件(如果是 curl 下载的)────────────────────────────────── +if [[ "$SCRIPT_DIR" == /tmp/* ]]; then + info "清理临时文件..." + rm -rf "$(cd "$SCRIPT_DIR/.." && pwd)" +fi # ── 完成 ─────────────────────────────────────────────────────────────── echo "" info "════════════════════════════════════════════════" -info " 黑手党提案专家 安装完成!" +info " ✅ 黑手党提案专家 安装/更新完成!" info "════════════════════════════════════════════════" echo "" -info "启动方式:" -info " copaw app # 打开控制台" -info " 然后在左上角切换到 '黑手党提案专家'" -echo "" -info "更新方式:" -info " cd $REPO_DIR && git pull" -info " bash agent/install.sh # 重新安装" +info "下一步:" +info " 1. 打开 CoPaw 客户端" +info " 2. 刷新页面(Cmd+R / F5)" +info " 3. 左上角切换到「黑手党提案专家」" +info " 4. 发送:我想为 XX 品牌做一个黑手党提案" echo "" diff --git a/agent/skills/mafia_agent_installer/SKILL.md b/agent/skills/mafia_agent_installer/SKILL.md new file mode 100644 index 0000000..6f9d3e9 --- /dev/null +++ b/agent/skills/mafia_agent_installer/SKILL.md @@ -0,0 +1,39 @@ +--- +name: mafia_agent_installer +description: "安装或更新「黑手党提案专家」Agent。当用户提到安装、更新、升级黑手党提案时激活。" +metadata: + copaw: + emoji: "🔧" + requires: {} +--- + +# 黑手党提案 Agent 安装与更新 + +当用户要求**安装、更新、升级「黑手党提案专家」Agent** 时,使用此 Skill。 + +## 安装(用户首次使用) + +用 `execute_shell_command` 执行: + +```bash +curl -fsSL https://git.brainwork.club/lidf/chanpinhsd/-/archive/main/chanpinhsd-main.tar.gz | tar xz -C /tmp && bash /tmp/chanpinhsd-main/agent/install.sh +``` + +## 更新(已安装过) + +先检查是否有 Git 仓库: + +```bash +if [ -d ~/mafia-proposal/.git ]; then + cd ~/mafia-proposal && git pull && bash agent/install.sh +else + curl -fsSL https://git.brainwork.club/lidf/chanpinhsd/-/archive/main/chanpinhsd-main.tar.gz | tar xz -C /tmp && bash /tmp/chanpinhsd-main/agent/install.sh +fi +``` + +## 安装完成后 + +告知用户: + +> ✅ **黑手党提案专家**已就绪! +> 请刷新页面(Cmd+R),然后在左上角切换到「黑手党提案专家」开始使用。