Skip to main content
Glama
JASMINE145-ACT

WorkBuddy Quotation MCP

README.md
# WorkBuddy 报价旁路包(PC · GitHub 优先 · 与 Mixing 隔离)

> **仓库:** https://github.com/JASMINE145-ACT/workbuddy-quote-pack (私有)  
> **交付方式:** 员工 `git clone` 后用 WorkBuddy **打开本仓库根目录**(若在 monorepo 内则为 `workbuddy-quote-pack` 子目录)。  
> WorkBuddy 会读 `AGENTS.md` + `.mcp.json`(仍需员工填密钥并批准 MCP)。  
> **非目标:** iOS;打进 Mixing NSIS。

## 员工步骤

```text
1. 安装 Bun(PATH 或 %LOCALAPPDATA%\.bun\bin\bun.exe)— dist 必须用 Bun,不能用 Node
2. git clone https://github.com/JASMINE145-ACT/workbuddy-quote-pack.git
3. WorkBuddy 打开该仓库根目录
4. pip install -r requirements.txt(建议 Python 3.11)
5. MCP env:ORG_USERNAME + LLM_SELECTOR_API_KEY + LLM_SELECTOR_BASE_URL + LLM_SELECTOR_MODEL
6. 无 monorepo:设 CCB_REPO_ROOT,或 IT 跑 stage-runtime-from-repo.ps1 → runtime/
```

排障见 `TROUBLESHOOTING.md`(Bun vs Node、stdout 污染、selector 环境变量等)。

首次登录:

```powershell
$env:ORG_USERNAME = "<user>"
$env:ORG_PASSWORD = "<pass>"
python .\ensure-org-session.py
python .\smoke-org-api-source.py
# → source=org_api
```

详细清单见 `REQUIREMENTS.md`。

## WorkBuddy 会读什么

| 文件 | 作用 |
|------|------|
| `AGENTS.md` | 项目级助手说明(指向 system-prompt) |
| `.mcp.json` | 项目 MCP:`quotation` → `start-quotation-mcp.ps1` |
| `system-prompt.md` | 完整查价 SOP |
| `ALLOWED_TOOLS.md` | 工具白名单(含库存) |
| `env.example` | 环境变量说明(无密钥) |
| `requirements.txt` | Python 依赖 |
| `TROUBLESHOOTING.md` | Connection closed / Bun / selector 清单 |

**不会自动出现的:** org 密码、selector key、Accurate `AOL_*` —— 必须员工自配。

## 运行时(无 CCB 安装)

`start-quotation-mcp.ps1` 解析顺序:

1. 本目录 `runtime/`(IT 可用 `stage-runtime-from-repo.ps1` 生成,**勿提交 token**)  
2. 已装的 CCB-Wanding(一般没有)  
3. 上层 monorepo(`RepoRoot` / 默认 `D:\Projects\claude-code-best`)

推荐:**员工直接 clone 含本目录的 monorepo**(或 sparse checkout),这样不必 stage zip。

## 架构

```text
WorkBuddy 打开本目录
  → AGENTS.md + .mcp.json
  → start-quotation-mcp.ps1
       · ensure org JWT → %LOCALAPPDATA%\CCB-Wanding\workbuddy\
       · PRICE_LKG_DIR 隔离
       · 进程级 selector / AOL
  → quotation-server stdio → source=org_api
```

## IT / 仓库维护

- 本包只改 `ccb-installer/workbuddy-quote-pack/`(+ 本 task 文档);禁止改 Mixing agent / NSIS。  
- zip(`pack-zip.ps1`)仅作离线备份,**不是**主交付。  
- 推 GitHub:私有仓即可;**不要**提交 `.org-session.token` / `.env` / 真实 key(已在 `.gitignore`)。

## 验收

1. `smoke-org-api-source.py` → `source=org_api`  
2. 无 selector → start 报 `Missing selector key`  
3. WorkBuddy 聊天「直接50」→ 锁码 + B 价(配齐 key 后)

## Rollback

删 `%LOCALAPPDATA%\CCB-Wanding\workbuddy\` + 卸项目 MCP。不影响 Mixing。