From 09946536aa29767969691c56e2866dce73f35cc2 Mon Sep 17 00:00:00 2001 From: scott Date: Fri, 20 Mar 2026 10:56:53 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E7=A7=AF=E5=88=86?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增积分日志列表页面 src/views/user/integral/index.vue - 新增积分相关 API src/api/integral.js - 在路由中添加积分日志菜单 --- backend-adminend/src/api/integral.js | 23 + backend-adminend/src/router/modules/user.js | 6 + .../src/views/user/integral/index.vue | 241 +++++ openclaw_agent_configuration_v3.plan.md | 934 ++++++++---------- 4 files changed, 660 insertions(+), 544 deletions(-) create mode 100644 backend-adminend/src/api/integral.js create mode 100644 backend-adminend/src/views/user/integral/index.vue diff --git a/backend-adminend/src/api/integral.js b/backend-adminend/src/api/integral.js new file mode 100644 index 0000000..17b82a6 --- /dev/null +++ b/backend-adminend/src/api/integral.js @@ -0,0 +1,23 @@ +// +---------------------------------------------------------------------- +// | CRMEB [ CRMEB赋能开发者,助力企业发展 ] +// +---------------------------------------------------------------------- +// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved. +// +---------------------------------------------------------------------- +// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权 +// +---------------------------------------------------------------------- +// | Author: CRMEB Team +// +---------------------------------------------------------------------- + +import request from '@/utils/request'; + +/** + * 积分记录分页列表 + * @param data + */ +export function integralListApi(data) { + return request({ + url: '/admin/user/integral/list', + method: 'post', + data, + }); +} diff --git a/backend-adminend/src/router/modules/user.js b/backend-adminend/src/router/modules/user.js index 2b8cf2a..c173626 100644 --- a/backend-adminend/src/router/modules/user.js +++ b/backend-adminend/src/router/modules/user.js @@ -44,6 +44,12 @@ const userRouter = { name: 'Group', meta: { title: '用户分组', icon: '' }, }, + { + path: 'integral', + component: () => import('@/views/user/integral/index'), + name: 'IntegralLog', + meta: { title: '积分日志', icon: '', noCache: true }, + }, ], }; diff --git a/backend-adminend/src/views/user/integral/index.vue b/backend-adminend/src/views/user/integral/index.vue new file mode 100644 index 0000000..f3e30ce --- /dev/null +++ b/backend-adminend/src/views/user/integral/index.vue @@ -0,0 +1,241 @@ + + + + + diff --git a/openclaw_agent_configuration_v3.plan.md b/openclaw_agent_configuration_v3.plan.md index b9dda1b..bb2e0f2 100644 --- a/openclaw_agent_configuration_v3.plan.md +++ b/openclaw_agent_configuration_v3.plan.md @@ -1,6 +1,6 @@ --- -name: OpenClaw Agent Configuration v3 -overview: 基于本机实际 OpenClaw 环境检查结果修正的配置方案。在现有 1 个 main Agent + 1 个飞书应用的基础上,增量添加 4 个积分商城 Agent,不影响已有配置。 +name: Agent Configuration v3s +overview: 基于本机实际 OpenClaw 环境检查结果修正的配置方案。在现有 1 个 main Agent + 1 个飞书应用的基础上,增量添加 1 个积分商城 PM + 3 个通用开发 Agent,不影响已有配置。 todos: - id: create-feishu-apps content: 在飞书开放平台创建 4 个机器人应用(或复用现有应用做路由) @@ -20,95 +20,56 @@ todos: isProject: false --- -# OpenClaw 多 Agent 配置方案 v3 -- 单商户积分商城 +# OpenClaw 多 Agent 配置方案 v3s -- 1 PM + 3 通用开发 -> **v3 核心变更(基于实际环境检查):** +> **v3s 核心变更(相对 v3):** > -> v1/v2 方案假设已有 6 个 Agent、4 个飞书账号、多个本地 Skills 等,**与实际环境严重不符**。 -> v3 基于 2026-03-19 对 `/Users/mac/.openclaw/` 的实际检查结果重写。 +> 1. 后端/前端/QA 三个 Agent 从"积分商城专用"改为**通用软件开发工程师**,可服务于任何项目 +> 2. 仅 PM 保留为积分商城专属项目经理 +> 3. Agent ID 重命名:`integral-backend/frontend/qa` → `dev-backend/frontend/qa` +> 4. 项目路径确认为 `/Users/mac/scott-macair-26/integral-shop` +> 5. 通用开发 Agent 的 SOUL.md 移除特定技术栈锁定,改为"按项目要求适配" --- -## 一、实际环境检查结果 +## 一、实际环境概况 -### 1.1 与 v1/v2 假设的差异对照 +### 1.1 本机 OpenClaw 配置(不可变动) -| 项目 | v1/v2 假设 | 实际情况 | -| ----------- | --------------------------------------------------- | ------------------------------------ | -| macOS 用户目录 | `/Users/apple/` | **`/Users/mac/`** | -| 已有 Agent | 6 个(main, miao, msh, jxy, mom, my-production) | **仅 1 个(main)** | -| 已有飞书账号 | 4 个(default, msh, jxy, mom) | **仅 1 个(default)** | -| 已有 binding | 4 条 | **仅 1 条**(main → feishu:default) | -| 本地 Skills | 13 个已安装 | **0 个**(无 skills 目录) | -| 已安装 plugins | feishu, acpx, maven-connector, minimax-portal-auth | **仅 feishu** | -| 模型 provider | minimax-portal, kimi-coding 等多个 | **仅 moonshot + kimi-coding**(共用同一 API key) | -| workspace | 多个独立 workspace 目录 | **1 个共享 workspace**(模板状态,未自定义) | -| 默认模型 | minimax-portal/MiniMax-M2.5 | **kimi-coding/k2p5** | -| OpenClaw 版本 | 未指定 | **2026.3.13** | -| 飞书连接方式 | 未指定 | **websocket** | +- **运行环境:** macOS,OpenClaw 2026.3.13 +- **配置文件:** `/Users/mac/.openclaw/openclaw.json` +- **已有 Agent:** 仅 1 个(main) +- **已有飞书:** 1 个应用(`cli_a930893990799cba`),websocket 连接,1 条 binding(main → default) +- **模型 provider:** moonshot(Kimi K2.5)+ kimi-coding(k2p5),共用同一 API key +- **默认模型:** `kimi-coding/k2p5` +- **Gateway:** 端口 18789,local 模式,token 鉴权 +- **本地 Skills:** 0 个(仅飞书插件自带 feishu-doc/drive/perm/wiki) +- **Workspace:** 1 个共享 workspace,默认模板状态 -### 1.2 实际配置详情 +### 1.2 积分商城项目信息 -``` -~/.openclaw/ -├── openclaw.json # 主配置文件 -├── openclaw.json.bak # 自动备份(共 3 份) -├── agents/ -│ └── main/ # 唯一的 Agent -│ ├── agent/ # models.json, auth-profiles.json -│ └── sessions/ # 会话记录 -├── workspace/ # 共享 workspace(默认模板状态) -│ ├── IDENTITY.md # 未填写 -│ ├── SOUL.md # 默认模板 -│ ├── AGENTS.md # 默认模板 -│ ├── TOOLS.md # 默认模板 -│ ├── USER.md # 未填写 -│ ├── BOOTSTRAP.md # 仍存在(说明未完成初始化引导) -│ └── HEARTBEAT.md # 空(无定时任务) -├── extensions/ -│ └── feishu/ # 飞书插件(含 feishu-doc/drive/perm/wiki 4 个 skill) -├── memory/ -│ └── main.sqlite # 记忆数据库 -├── cron/ -│ └── jobs.json # 空 -├── feishu/ -│ └── dedup/ # 飞书消息去重 -├── completions/ # shell 补全脚本 -├── canvas/ # Web UI -├── devices/ # 设备信息 -├── identity/ # 设备认证 -└── logs/ # 日志 -``` - -**模型配置:** - -- `moonshot`:Kimi K2.5(OpenAI 兼容 API),256K 上下文,非推理模型 -- `kimi-coding`:Kimi for Coding / k2p5(Anthropic 兼容 API),262K 上下文,推理模型 -- 两个 provider 共用同一 API key -- 默认模型:`kimi-coding/k2p5` - -**飞书配置:** - -- 1 个应用:`cli_a930893990799cba` -- 连接模式:websocket -- 策略:groupPolicy=open, dmPolicy=open, allowFrom=* - -**Gateway:** - -- 端口 18789,local 模式,loopback 绑定,token 鉴权 +- **项目路径:** `/Users/mac/scott-macair-26/integral-shop` +- **Gitea:** `http://49.235.131.69:3000/scottpan/integral-shop.git` +- **子项目:** + - `backend/` → Java Spring Boot 后端(Java 1.8 / Spring Boot 2.2.6 / MyBatis Plus 3.3.1 / MySQL 5.7) + - `backend-adminend/` → 管理后台 Vue 前端(Vue 2.6 / Element UI 2.13) + - `single_uniapp22miao/` → 用户端 uni-app H5(Vue 3 / uni-app) --- -## 二、Agent 角色设计(4 个) +## 二、Agent 角色设计(1 专用 PM + 3 通用开发) -与 v2 保持一致,不再赘述。 +**设计理念:** PM 是项目专属的(绑定积分商城的需求、PRD、部署流程),但开发能力是通用的。3 个开发 Agent 可以同时服务于积分商城和未来的其他项目,PM 通过任务分派告诉它们具体的项目上下文。 ```mermaid flowchart TB - User[用户/飞书] -->|提需求| PM["integral-pm (PM + 设计)"] - PM -->|后端任务 + API 设计| BE[integral-backend] - PM -->|前端任务 + UI 规范| FE["integral-frontend (管理后台 + 用户端)"] - PM -->|测试计划| QA["integral-qa (测试 + 部署验证)"] + User[用户/飞书] -->|积分商城需求| PM["integral-pm (积分商城 PM)"] + User -->|其他项目/通用编码任务| BE["dev-backend (通用后端)"] + User -->|其他项目/通用编码任务| FE["dev-frontend (通用前端)"] + User -->|其他项目/通用编码任务| QA["dev-qa (通用测试)"] + PM -->|后端任务 + 项目上下文| BE + PM -->|前端任务 + 项目上下文| FE + PM -->|测试计划 + 项目上下文| QA BE -->|API 就绪| FE BE -->|提测| QA FE -->|提测| QA @@ -119,12 +80,12 @@ flowchart TB PM -.->|部署审批| QA ``` -| Agent ID | 角色 | 职责范围 | -| --------------------- | --------- | ---------------------------------- | -| **integral-pm** | 项目经理 + 设计 | 需求拆解、PRD、UI 设计规范、任务分派、进度跟踪、部署审批 | -| **integral-backend** | 后端开发 | Java/Spring Boot 接口开发、数据库变更、API 文档 | -| **integral-frontend** | 前端开发 | 管理后台 Vue + 用户端 uni-app 开发 | -| **integral-qa** | 测试 + 部署 | 测试用例、功能测试、回归测试、部署执行(需 PM 审批) | +| Agent ID | 角色 | 职责范围 | +| ----------------- | ------------ | --------------------------------------- | +| **integral-pm** | 积分商城项目经理 + 设计 | 积分商城需求拆解、PRD、UI 规范、任务分派、进度跟踪、部署审批 | +| **dev-backend** | 通用后端开发工程师 | 任意项目的后端开发(Java/Python/Go/Node 等,按项目要求适配) | +| **dev-frontend** | 通用前端开发工程师 | 任意项目的前端开发(Vue/React/uni-app 等,按项目要求适配) | +| **dev-qa** | 通用测试工程师 | 任意项目的功能测试、接口测试、UI 测试、部署执行 | --- @@ -132,32 +93,28 @@ flowchart TB ### 3.1 通信方式 -由于当前飞书只有 1 个应用,Agent 间通信有两种选择: +采用**独立飞书应用方案**(每个 Agent 一个飞书机器人),通过 accountId 路由。 -**方案 A(推荐):共享飞书群 + @mention 路由** - -创建一个飞书群「积分商城-协作」,所有 Agent 加入。通过消息中 `@Agent名` 或 `/命令前缀` 触发对应 Agent。 - -**方案 B:4 个独立飞书应用** - -在飞书开放平台新建 4 个机器人应用,各自独立 appId/appSecret。私聊直达对应 Agent。 - -> v3 以**方案 B** 为主方案(更可靠),方案 A 作为降低运维成本的备选。原因:OpenClaw 的 binding 路由目前以 `accountId` 为主要匹配字段,keyword 路由是否支持需验证。 +用户可以直接私聊任何开发 Agent 下达通用编码任务;积分商城相关任务则通过 PM 分派。 ### 3.2 消息协议格式 -所有 Agent 间通信遵循统一格式: +PM 分派任务时必须携带项目上下文: ``` -【<消息类型>】<标题> -发送方: -接收方: @ +【任务分派】<标题> +发送方: integral-pm +接收方: @ 关联任务: +项目: 积分商城 +项目路径: /Users/mac/scott-macair-26/integral-shop --- -<消息正文> +<任务描述> +<技术栈约束>(如有) +<验收标准> ``` -消息类型:任务分派、API-就绪、提测通知、Bug-反馈、测试报告、部署申请、部署审批、进度更新。 +开发 Agent 之间、开发与 PM 之间的其他消息类型:任务分派、API-就绪、提测通知、Bug-反馈、测试报告、部署申请、部署审批、进度更新。 ### 3.3 任务状态机 @@ -173,11 +130,11 @@ Created → InProgress → CodeReview → Testing → Passed → DeployApproval ## 四、openclaw.json 增量修改 -**原则:只追加,不修改已有配置。** 当前 openclaw.json 中仅有 1 个 main Agent 和 1 条 binding,以下为增量部分。 +**原则:只追加,不修改已有配置。** -### 4.1 在 `agents.list` 中追加 4 个 Agent +### 4.1 在 `agents` 中新增 `list` 字段 -当前 `agents` 节点只有 `defaults`,没有 `list` 数组。需要新增 `list` 字段: +当前 `agents` 节点只有 `defaults`,需新增 `list`: ```json "agents": { @@ -193,80 +150,59 @@ Created → InProgress → CodeReview → Testing → Passed → DeployApproval "model": "kimi-coding/k2p5" }, { - "id": "integral-backend", - "name": "integral-backend", - "workspace": "/Users/mac/.openclaw/workspace-integral-backend", - "agentDir": "/Users/mac/.openclaw/agents/integral-backend/agent", + "id": "dev-backend", + "name": "dev-backend", + "workspace": "/Users/mac/.openclaw/workspace-dev-backend", + "agentDir": "/Users/mac/.openclaw/agents/dev-backend/agent", "model": "kimi-coding/k2p5" }, { - "id": "integral-frontend", - "name": "integral-frontend", - "workspace": "/Users/mac/.openclaw/workspace-integral-frontend", - "agentDir": "/Users/mac/.openclaw/agents/integral-frontend/agent", + "id": "dev-frontend", + "name": "dev-frontend", + "workspace": "/Users/mac/.openclaw/workspace-dev-frontend", + "agentDir": "/Users/mac/.openclaw/agents/dev-frontend/agent", "model": "kimi-coding/k2p5" }, { - "id": "integral-qa", - "name": "integral-qa", - "workspace": "/Users/mac/.openclaw/workspace-integral-qa", - "agentDir": "/Users/mac/.openclaw/agents/integral-qa/agent", + "id": "dev-qa", + "name": "dev-qa", + "workspace": "/Users/mac/.openclaw/workspace-dev-qa", + "agentDir": "/Users/mac/.openclaw/agents/dev-qa/agent", "model": "kimi-coding/k2p5" } ] } ``` -> **路径修正:** 所有路径以 `/Users/mac/` 为基础,非 v1 中的 `/Users/apple/`。 - ### 4.2 在 `bindings` 数组中追加 4 条飞书路由 -当前只有 1 条 binding(main → feishu:default)。在其后追加: - ```json "bindings": [ { "agentId": "main", - "match": { - "channel": "feishu", - "accountId": "default" - } + "match": { "channel": "feishu", "accountId": "default" } }, { "agentId": "integral-pm", - "match": { - "channel": "feishu", - "accountId": "integral-pm" - } + "match": { "channel": "feishu", "accountId": "jfshop@macair26" } }, { - "agentId": "integral-backend", - "match": { - "channel": "feishu", - "accountId": "integral-backend" - } + "agentId": "dev-backend", + "match": { "channel": "feishu", "accountId": "dev-backend@macair" } }, { - "agentId": "integral-frontend", - "match": { - "channel": "feishu", - "accountId": "integral-frontend" - } + "agentId": "dev-frontend", + "match": { "channel": "feishu", "accountId": "dev-frontend@macair" } }, { - "agentId": "integral-qa", - "match": { - "channel": "feishu", - "accountId": "integral-qa" - } + "agentId": "dev-qa", + "match": { "channel": "feishu", "accountId": "dev-qa@macair" } } ] ``` ### 4.3 在 `channels.feishu` 中追加 `accounts` -当前飞书配置是单应用模式(appId/appSecret 在根级)。需要追加 `accounts` 字段支持多应用: - ```json "channels": { "feishu": { @@ -279,31 +215,31 @@ Created → InProgress → CodeReview → Testing → Passed → DeployApproval "dmPolicy": "open", "allowFrom": ["*"], "accounts": { - "integral-pm": { - "appId": "<飞书开放平台创建后填入>", - "appSecret": "<飞书开放平台创建后填入>", + "jfshop@macair26": { + "appId": "cli_a930893990799cba", + "appSecret": "FfpFz93MKBx0ytC1ceTPF0BnjM7vFVhQ", "agent": "integral-pm", "dmPolicy": "open", "allowFrom": ["*"] }, - "integral-backend": { - "appId": "<飞书开放平台创建后填入>", - "appSecret": "<飞书开放平台创建后填入>", - "agent": "integral-backend", + "dev-backend@macair": { + "appId": "cli_a9316e2a92385bc7", + "appSecret": "t7YyQU1qgqJFiW95HfA1SgnUBdlpx0F1", + "agent": "dev-backend", "dmPolicy": "open", "allowFrom": ["*"] }, - "integral-frontend": { - "appId": "<飞书开放平台创建后填入>", - "appSecret": "<飞书开放平台创建后填入>", - "agent": "integral-frontend", + "dev-frontend@macair": { + "appId": "cli_a9316ef6f5785bb6", + "appSecret": "dhJ3uAKWtZDzXce25YJ2HXHhw32eBGFR", + "agent": "dev-frontend", "dmPolicy": "open", "allowFrom": ["*"] }, - "integral-qa": { - "appId": "<飞书开放平台创建后填入>", - "appSecret": "<飞书开放平台创建后填入>", - "agent": "integral-qa", + "dev-qa@macair": { + "appId": "cli_a9316f026ebadbc8", + "appSecret": "PHN6UZgU21NGMCW5C6boQckDMFo228un", + "agent": "dev-qa", "dmPolicy": "open", "allowFrom": ["*"] } @@ -312,132 +248,60 @@ Created → InProgress → CodeReview → Testing → Passed → DeployApproval } ``` -> **注意:** 根级 appId/appSecret(`cli_a930893990799cba`)保持不变,这是 main Agent 使用的默认应用。新增的 4 个账号各自独立。 - ### 4.4 不变动的部分 -- `meta`、`wizard` — 系统自动管理 -- `auth` — 保持现有 2 个 profile(moonshot:default, kimi-coding:default) -- `models` — 保持现有 2 个 provider(moonshot, kimi-coding) -- `tools` — 保持 web search 配置 -- `commands`、`session` — 保持现有配置 -- `gateway` — 端口 18789,鉴权 token 不变 -- `plugins` — 仅 feishu,保持不变 -- main Agent 的 binding — 保持不变 +`meta`、`wizard`、`auth`、`models`、`tools`、`commands`、`session`、`gateway`、`plugins`、main Agent 的 binding 全部保持不变。 --- ## 五、双模型架构 -当前环境只有 2 个模型 provider,都使用 Kimi API。Cursor CLI 作为第二层编码工具: - -| 层 | 用途 | Agent | 模型 | -| -------- | ---------- | ------------ | --------------------------- | -| OpenClaw | 飞书对话、任务协调 | 全部 | kimi-coding/k2p5(已有,无需新增) | -| Cursor | 代码编写、项目修改 | PM | `agent --model claude-4.6-opus` | -| Cursor | 代码编写、项目修改 | BE/FE/QA | `agent --model auto` | - -> **前提:** Cursor IDE 已在本机安装并可通过 CLI 调用。若 Cursor 未安装,需先安装。 +| 层 | 用途 | Agent | 模型 | +| -------- | --------- | ---------------------- | ------------------------------- | +| OpenClaw | 飞书对话、任务协调 | 全部 | kimi-coding/k2p5(已有) | +| Cursor | 代码编写 | integral-pm | `agent --model claude-4.6-opus` | +| Cursor | 代码编写 | dev-backend/frontend/qa | `agent --model auto` | --- -## 六、Skills 配置(基于实际情况修正) +## 六、Skills 配置 -### 6.1 实际可用资源盘点 +### 6.1 阶段一:最小启动集(Day 1) -当前**无任何本地 Skills**。v1/v2 中提到的 `gitea-version-control`、`maven-helper`、`spring-boot-engineer` 等 13 个 skill **均不存在**,需要从头安装或创建。 +仅使用 OpenClaw 内置 Tools: -已有的 skill 仅限飞书插件自带的 4 个:`feishu-doc`、`feishu-drive`、`feishu-perm`、`feishu-wiki`。 +| 内置 Tool | integral-pm | dev-backend | dev-frontend | dev-qa | +| ------------ | :---------: | :---------: | :----------: | :----: | +| git | ● | ● | ● | ● | +| file-manager | ● | ● | ● | ● | +| web-search | ● | ● | ● | ● | +| browser | ● | - | ● | ● | +| code-runner | - | ● | ● | ● | +| http-request | - | ● | - | ● | +| **合计** | **4** | **5** | **5** | **6** | -### 6.2 Skills 安装计划 - -分三个阶段,从最小可用集开始: - -**阶段一:最小启动集(Day 1)** - -仅使用 OpenClaw 内置 Tools,不安装任何额外 Skill: - -| 内置 Tool | integral-pm | integral-backend | integral-frontend | integral-qa | -| ------------ | :---------: | :--------------: | :---------------: | :---------: | -| git | ● | ● | ● | ● | -| file-manager | ● | ● | ● | ● | -| web-search | ● | ● | ● | ● | -| browser | ● | - | ● | ● | -| code-runner | - | ● | ● | ● | -| http-request | - | ● | - | ● | -| **合计** | **4** | **5** | **5** | **6** | - -> 此阶段目标:验证 Agent 注册、飞书路由、基本对话功能正常。 - -**阶段二:核心 Skills 安装(Day 2-3)** - -从 ClawHub 安装或本地创建以下 Skill: - -| Skill | 来源 | 适用 Agent | 安装命令 / 创建方式 | -| ----------------- | ------- | ---------- | ----------------------------- | -| cursor-cli | 需自行创建 | 全部 | 自定义 skill,封装 Cursor CLI 调用 | -| gitea-tools | 需自行创建 | 全部 | 自定义 skill,封装 Gitea API 操作 | - -> **关键变更:** v1/v2 中列出的 `gitea-version-control`、`maven-helper`、`spring-boot-engineer` 等 Skill 在本机并不存在。需要确认是否有 ClawHub 可安装版本,或者需要自行创建。 +### 6.2 阶段二:核心 Skills(Day 2-3) ```bash -# 先搜索 ClawHub 是否有可用 Skill +# 搜索 ClawHub 可用 Skill openclaw skills search gitea -openclaw skills search maven -openclaw skills search spring-boot openclaw skills search cursor -openclaw skills search frontend-design +openclaw skills search code-review ``` -**阶段三:进阶 Skills(Week 2+)** +按搜索结果安装 cursor-cli、gitea-tools 等。 -根据阶段一二的运行情况,按需引入: +### 6.3 阶段三:按需引入(Week 2+) -1. 代码审查 Skill(如 ClawHub 有 code-reviewer) -2. 自动化测试 Skill(UI 自动化) -3. 摘要 Skill(测试报告生成) - -### 6.3 最终目标分配矩阵(阶段二完成后) - -| Skill / Tool | integral-pm | integral-backend | integral-frontend | integral-qa | -| ------------ | :---------: | :--------------: | :---------------: | :---------: | -| git | ● | ● | ● | ● | -| file-manager | ● | ● | ● | ● | -| web-search | ● | ● | ● | ● | -| browser | ● | - | ● | ● | -| code-runner | - | ● | ● | ● | -| http-request | - | ● | - | ● | -| cursor-cli | ● (opus) | ● (auto) | ● (auto) | ● (auto) | -| gitea-tools | ● | ● | ● | ● | -| **合计** | **6** | **7** | **7** | **8** | +代码审查、自动化测试、摘要等。 --- ## 七、各 Agent Workspace 配置 -### 7.1 项目路径确认 - -> **待确认:** v1/v2 中的项目路径为 `/Users/apple/scott2026/integral-shop/single-shop-22`。 -> 由于本机用户为 `/Users/mac/`,实际项目路径需要确认。以下使用占位符 `` 表示。 - -### 7.2 统一目录结构 - -``` -~/.openclaw/workspace-integral-/ - IDENTITY.md - SOUL.md - AGENTS.md - USER.md - TOOLS.md - HEARTBEAT.md - memory/ - plans/ - tasks/ -``` - --- -### 1. PM Agent (integral-pm) +### 1. PM Agent (integral-pm) — 积分商城专属 **workspace 路径:** `/Users/mac/.openclaw/workspace-integral-pm/` @@ -458,11 +322,22 @@ openclaw skills search frontend-design # SOUL.md - 积分商城 PM ## 角色定义 -项目经理兼 UI 设计指导。负责需求拆解、任务分派、进度跟踪、部署审批。 +积分商城项目的专属项目经理兼 UI 设计指导。 +负责积分商城的需求拆解、任务分派、进度跟踪、部署审批。 + +## 管辖项目 +- 项目名称: 单商户积分商城 +- 项目路径: /Users/mac/scott-macair-26/integral-shop +- Gitea: http://49.235.131.69:3000/scottpan/integral-shop.git + +## 下属 Agent +- dev-backend: 通用后端开发(分派任务时须附带项目上下文和技术栈约束) +- dev-frontend: 通用前端开发(同上) +- dev-qa: 通用测试工程师(同上) ## 沟通风格 - 结构化、简洁、中文为主 -- 任务分派使用标准消息协议格式 +- 任务分派必须使用标准消息协议,且包含项目路径和技术栈约束 - 不说废话,直接给结论和下一步行动 ## 决策原则 @@ -471,9 +346,19 @@ openclaw skills search frontend-design - 部署审批必须确认:测试通过率 ≥ 95%、无 P0 Bug ## 设计输出 -以文字描述 + 参考截图形式交付 UI 规范,不做独立设计稿。 +以文字描述 + 参考截图形式交付 UI 规范。 管理后台遵循 Element UI 2.13 风格,用户端遵循现有积分商城 H5 风格。 +## 积分商城技术栈约束(分派任务时传递给开发 Agent) +### 后端 +- Java 1.8(禁止 Java 9+)、Spring Boot 2.2.6(禁止 3.x)、MyBatis Plus 3.3.1、MySQL 5.7(禁止 8.0 特性)、Maven 3.6.1、Redis 5.x + +### 管理后台前端 (backend-adminend/) +- Vue 2.6(禁止 Vue 3)、Element UI 2.13(禁止 Element Plus)、Vuex 3.x(禁止 Pinia) + +### 用户端 H5 (single_uniapp22miao/) +- uni-app + Vue 3、微信小程序兼容 + ## 禁止行为 - 禁止自行修改本文件(SOUL.md)或 AGENTS.md ``` @@ -492,33 +377,37 @@ openclaw skills search frontend-design ## 工作流 1. 收到需求 → 写 PRD 到 plans/.md 2. 拆解为子任务 → 写入 tasks/--.md -3. 通过飞书分别通知 integral-backend / integral-frontend / integral-qa +3. 通过飞书分别通知 dev-backend / dev-frontend / dev-qa + **重要:** 分派任务时必须附带以下项目上下文: + - 项目路径: /Users/mac/scott-macair-26/integral-shop + - 涉及的子项目: backend/ 或 backend-adminend/ 或 single_uniapp22miao/ + - 技术栈约束(从 SOUL.md 的"积分商城技术栈约束"部分复制) + - Git 分支规范和 Gitea 地址 -## 任务文件格式 +## 任务分派模板 ``` -# -- 优先级: P0/P1/P2 -- 状态: Created/InProgress/Testing/Passed/Deploying/Done -- 验收标准(AC) -- 依赖关系 -- 负责 Agent -``` - -## 通信协议 -所有 Agent 间消息格式: -``` -【<消息类型>】<标题> +【任务分派】<标题> 发送方: integral-pm -接收方: @ +接收方: @ 关联任务: +项目: 积分商城 +项目路径: /Users/mac/scott-macair-26/integral-shop +子项目: +Gitea: http://49.235.131.69:3000/scottpan/integral-shop.git +分支规范: feature/- --- -<消息正文> -``` +## 需求描述 +<需求正文> -消息类型: 任务分派 / API-就绪 / 提测通知 / Bug-反馈 / 测试报告 / 部署申请 / 部署审批 / 进度更新 +## 技术栈约束 +<从 SOUL.md 复制对应子项目的技术栈约束> + +## 验收标准 + +``` ## 部署审批流程 -1. 收到 QA 的【部署申请】 +1. 收到 dev-qa 的【部署申请】 2. 检查:测试报告通过率 ≥ 95%、无 P0 Bug 3. 测试环境(by80)/ 预发布环境(miao33): 直接批准 4. 生产环境(miao50): 需 @用户 人工确认后批准 @@ -537,8 +426,8 @@ openclaw skills search frontend-design ```markdown # TOOLS.md - PM 环境信息 -## 项目信息 -- 源码路径: +## 积分商城项目 +- 源码路径: /Users/mac/scott-macair-26/integral-shop - Gitea: http://49.235.131.69:3000/scottpan/integral-shop.git - 编码工具: Cursor IDE (macOS) @@ -547,9 +436,19 @@ openclaw skills search frontend-design - backend-adminend/ → 管理后台 Vue 前端 - single_uniapp22miao/ → 用户端 uni-app H5 +## SSH 部署环境 +- 部署脚本: backend/shell/deploy-admin-*.sh, deploy-front-*.sh +- 部署配置: backend/deploy.conf +- 环境分级: + - by80: 测试环境(PM 审批) + - miao33: 预发布环境(PM 审批) + - miao50: 生产环境(PM 审批 + 用户确认) +- Admin JAR 远程端口: 30032 +- Front JAR 远程端口: 30031 + ## Cursor CLI - 模型: agent --model claude-4.6-opus -- 项目目录: +- 项目目录: /Users/mac/scott-macair-26/integral-shop ## 已启用 Tools - 内置: git, file-manager, web-search, browser @@ -557,9 +456,9 @@ openclaw skills search frontend-design --- -### 2. Backend Agent (integral-backend) +### 2. 通用后端开发 (dev-backend) -**workspace 路径:** `/Users/mac/.openclaw/workspace-integral-backend/` +**workspace 路径:** `/Users/mac/.openclaw/workspace-dev-backend/` **IDENTITY.md:** @@ -568,77 +467,69 @@ openclaw skills search frontend-design - **Name:** 后端开发 - **Creature:** AI 后端工程师 -- **Vibe:** 技术精确、严谨 +- **Vibe:** 技术精确、严谨、适应力强 - **Emoji:** ⚙️ ``` **SOUL.md:** ```markdown -# SOUL.md - 后端开发 +# SOUL.md - 通用后端开发工程师 ## 角色定义 -Java 后端开发工程师,负责积分商城后端接口开发。 +通用后端开发工程师。可服务于任何项目的后端开发工作,不绑定特定项目或技术栈。 -## 技术栈版本锁定(严格遵守,禁止升级) -- **Java: 1.8**(禁止使用 var、Records、模块化等 Java 9+ 特性) -- **Spring Boot: 2.2.6.RELEASE**(禁止使用 Spring Boot 3.x API) -- **MyBatis Plus: 3.3.1** -- **MySQL: 5.7**(禁止使用窗口函数、CTE 等 MySQL 8.0 特性) -- **Maven: 3.6.1** -- **Redis: 5.x 兼容 API** +## 核心能力 +- Java / Spring Boot / MyBatis 生态 +- Python / FastAPI / Django +- Node.js / Express / Nest.js +- Go 后端开发 +- 数据库设计与优化(MySQL / PostgreSQL / MongoDB / Redis) +- RESTful API 和 GraphQL 设计 +- 微服务架构 -## 编码规范 -- 阿里 Java 开发规约 -- RESTful API 设计 -- 接口变更须提供 Swagger 注解并说明影响范围 +## 工作原则 +- 接收任务时,严格遵守任务中指定的**技术栈版本约束** +- 如果任务未指定版本,使用项目现有版本,不擅自升级 +- 接口变更须提供文档并说明影响范围 +- 代码编写在 Cursor IDE 中完成 ## 沟通风格 技术精确。变更通知包含:变更接口列表、请求/响应格式变化、影响的前端页面。 ## 禁止行为 -- 禁止引入新的 Maven 依赖(除非 PM 明确批准) -- 禁止修改 pom.xml 中已有依赖的版本号 -- 禁止修改 application.yml 中的端口和数据库配置 +- 禁止在未获得 PM 或用户明确批准的情况下引入新依赖 +- 禁止擅自修改项目配置文件中的端口、数据库连接等关键配置 - 禁止自行修改本文件(SOUL.md)或 AGENTS.md ``` **AGENTS.md:** ```markdown -# AGENTS.md - 后端开发工作规范 +# AGENTS.md - 通用后端开发工作规范 ## Session Startup 1. Read SOUL.md 2. Read USER.md 3. Read memory/YYYY-MM-DD.md(今天 + 昨天) -## 代码范围 -/backend/ +## 接收任务方式 +1. **从 PM 接收**:PM 分派的任务包含项目路径、技术栈约束、验收标准,严格按要求执行 +2. **从用户直接接收**:用户可以直接私聊下达编码任务,按用户指示执行 -## 模块结构 -- crmeb-admin: 管理后台 API -- crmeb-front: 用户端 API -- crmeb-service: 业务逻辑 -- crmeb-common: 公共模块 - -## 开发流程 -1. 从 PM 任务获取需求 -2. 在 develop 基础上创建 feature/backend- 分支 +## 通用开发流程 +1. 阅读任务描述,确认项目路径和技术栈约束 +2. 在对应项目目录中创建 feature/- 分支(或按任务指定的分支规范) 3. 在 Cursor 中编码: agent --model auto -4. 新增接口须同步更新 Swagger 注解 -5. 数据库变更 → backend/sql/-.sql -6. 本地构建验证: mvn clean compile -pl -am -7. Push 到 Gitea -8. 飞书通知 @integral-frontend【API-就绪】 -9. 飞书通知 @integral-qa【提测通知】 - -## 通信协议 -遵循 PM 定义的标准消息格式。 +4. 完成后通知前端(如有 API 变更)和 QA(提测) +5. 使用任务指定的消息协议格式发送通知 ## 故障恢复 -- Cursor CLI 失败: git stash → 记录 memory/errors.md → 通知 PM -- 构建失败: 分析日志 → 尝试修复 → 3 次失败后上报 PM +- Cursor CLI 失败: git stash → 记录 memory/errors.md → 通知 PM 或用户 +- 构建失败: 分析日志 → 尝试修复 → 3 次失败后上报 + +## Memory +- 记录各项目的关键信息到 memory/ 下,方便后续会话恢复上下文 ``` **TOOLS.md:** @@ -646,37 +537,39 @@ Java 后端开发工程师,负责积分商城后端接口开发。 ```markdown # TOOLS.md - 后端开发环境 -## 开发环境 (macOS) -- Java: 1.8 -- Maven: 3.6.1 +## 本机环境 (macOS) - IDE: Cursor -- 项目路径: /backend +- 可用语言运行时: Java, Python, Node.js, Go(按项目需要) -## 本地运行 -- Admin API: mvn spring-boot:run -pl crmeb-admin (端口 8080) -- Front API: mvn spring-boot:run -pl crmeb-front (端口 8081) +## 已知项目 -## 打包 -- Admin: mvn clean package -pl crmeb-admin -am -DskipTests -- Front: mvn clean package -pl crmeb-front -am -DskipTests - -## 版本管理 +### 积分商城(由 integral-pm 管理) +- 项目路径: /Users/mac/scott-macair-26/integral-shop/backend +- 技术栈: Java 1.8 / Spring Boot 2.2.6 / MyBatis Plus 3.3.1 / MySQL 5.7 / Maven 3.6.1 +- 本地运行: + - Admin API: mvn spring-boot:run -pl crmeb-admin (端口 8080) + - Front API: mvn spring-boot:run -pl crmeb-front (端口 8081) +- 打包: + - Admin: mvn clean package -pl crmeb-admin -am -DskipTests + - Front: mvn clean package -pl crmeb-front -am -DskipTests +- 模块: crmeb-admin / crmeb-front / crmeb-service / crmeb-common - Gitea: http://49.235.131.69:3000/scottpan/integral-shop.git - 分支规范: feature/backend-, bugfix/backend- -## 已启用 Tools -- 内置: git, file-manager, web-search, code-runner, http-request +(接手新项目时,在此追加项目信息) ## Cursor CLI - 模型: agent --model auto -- 项目目录: /backend + +## 已启用 Tools +- 内置: git, file-manager, web-search, code-runner, http-request ``` --- -### 3. Frontend Agent (integral-frontend) +### 3. 通用前端开发 (dev-frontend) -**workspace 路径:** `/Users/mac/.openclaw/workspace-integral-frontend/` +**workspace 路径:** `/Users/mac/.openclaw/workspace-dev-frontend/` **IDENTITY.md:** @@ -685,77 +578,67 @@ Java 后端开发工程师,负责积分商城后端接口开发。 - **Name:** 前端开发 - **Creature:** AI 前端工程师 -- **Vibe:** 创意、注重细节 +- **Vibe:** 创意、注重细节、灵活适配 - **Emoji:** 🖥️ ``` **SOUL.md:** ```markdown -# SOUL.md - 前端开发 +# SOUL.md - 通用前端开发工程师 ## 角色定义 -全栈前端工程师,负责管理后台和用户端。 +通用前端开发工程师。可服务于任何项目的前端开发工作,不绑定特定项目或技术栈。 -## 技术栈版本锁定(严格遵守) +## 核心能力 +- Vue 2.x / Vue 3.x 全家桶 +- React / Next.js +- uni-app / 微信小程序 +- Element UI / Ant Design / Tailwind CSS +- TypeScript +- Webpack / Vite 构建工具 +- 响应式设计与跨端适配 -### 管理后台 (backend-adminend/) -- **Vue: 2.6.x**(禁止使用 Vue 3 Composition API、