# 多点位对比

> 对两个及以上候选点位做同口径横向对比，输出五维评分对比表、预期营收对比、回本周期测算与 SWOT 分析，并给出首选方案、备选方案与风险提示。 当用户提到几个位置哪个更好、对比这几个地址、A和B选哪个、帮我在几个铺位里做决策时使用。

- Skill: `ahang1598/skill-118` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add ahang1598/skill-118`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ahang1598/skill-118/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: ahang1598 (https://skillmd.com/u/ahang1598)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/ahang1598/skill-118

---


# 多点位对比

## 适用场景

用户手上有**两个及以上候选铺位**，需要在其中做取舍决策。

**典型问题**：
- "**望京SOHO**和**国贸**哪个更适合开餐厅"
- "帮我对比**三里屯**、**王府井**、**西单**这三个位置"
- "**A地址**和**B地址**哪个开店更好"

**不适用**（转其他技能）：
- 只有一个地点 → 用「点位评估」
- 没有明确地点 → 用「商圈推荐」

---

## 前置依赖

本技能依赖高德问店选址网关（`yt-xd-lite` openapi）获取各点位五维评估数据。

- **接入方式**：技能内直接调用网关 HTTP 接口
- **认证方式**：OAuth（首次使用会拉起浏览器完成登录，用户无需手填任何密钥）
- **自包含**：完整鉴权规范、OAuth 登录脚本、错误码与降级路径见**本技能目录内**的 `./references/gateway-auth.md`，不依赖套件内其他技能
- **能力待接入**：该数据源尚未以千问办公标准 Connector（MCP Server）形态上架，当前为技能内直连。详见套件根目录 `CONNECTORS.md`

---

## 前置条件

- 用户提供了**两个或以上**候选地点/POI；只给一个时按 `./references/common-api.md` 反问补齐
- 所有点位必须使用**相同** `regionType`、`regionInfo` 和 `category`，确保对比口径一致

---

## 执行步骤

### Step 0 — 鉴权与就绪性检查（必做，每次执行前）

**请求地址**（POST）：`${YT_GATEWAY_BASE_URL:-https://yt-gateway.amap.com}/proxy/yt-xd-lite/openapi/v1/gateway`

**认证 Header**：

| Header | 值来源 | 说明 |
|--------|--------|------|
| `X-Session-Token` | YTOSS 文件中 `sessions.wukong.session_token` | 必传 |
| `X-Skill-Id` | `amap-store-location-assistant` | 必传。**套件内四个技能统一使用该值**，不要改成本技能目录名，否则鉴权与配额校验失败 |

**禁止传** `X-Access-Key` / `X-Tenant-Id` / `X-User-Id`（由网关侧反查注入，技能层不持有）。

**执行顺序**：

1. **先读 YTOSS 文件**，按优先级：macOS/Linux `~/.config/yt/oss.json` → Windows `%APPDATA%\yt\oss.json` → 降级（沙箱）`./.yt/oss.json`
2. **校验** `sessions.wukong.session_token` 存在且以 `gwst_` 开头
   - ✅ 有效 → 直接进入 Step 1
   - ❌ 不存在 / 无效 → 执行 `./references/gateway-auth.md` 中的 **OAuth 登录脚本**，落盘后再进入 Step 1
3. **禁止**跳过文件读取直接登录（已有有效 token 时重复登录会浪费用户操作）
4. **禁止**向用户索要 token 等鉴权信息；唯一需要用户参与的是在浏览器中完成登录
5. curl 必须带 `-k` 跳过 TLS 证书校验
6. **多点位场景注意**：并行调用前先完成一次鉴权，**不要每个点位各自发起登录**；所有点位复用同一个 session token

**鉴权与调用异常处置**：

| code | 处置 |
|------|------|
| `19002` / `1001` | 删 YTOSS 中 wukong 条目 → 重走 OAuth，**仅重试 1 次**（重登后重试失败的点位，已成功的不重查） |
| `19003`（账号冻结） | 提示联系管理员，**不重登** |
| `2001`（配额不足） | 提示充值；已取到数据的点位仍可展示，说明哪些点位未完成 |
| `1004`（限流） | 退避重试；点位较多时适当降低并行度 |
| `5001` / `5002`（上游异常） | 透传错误，session 仍有效 |

若用户放弃授权或登录超时，按 `./references/gateway-auth.md` 的「数据不可用时的降级原则」处理，**不得编造评估数据**。

### Step 1 — 参数收集与口径对齐

```
1. 解析用户意图，提取：所有候选地点名称、行业、范围
    ↓
2. 对每个地点调用 common:place:text，获取各点位 poiId
   （检索不到或有歧义的点位，列出候选让用户确认，不要猜）
    ↓
3. 调用 common:atag:list，获取行业编码 category
    ↓
4. 推断 regionType 和 regionInfo（默认1公里半径），并对所有点位统一使用
```

### Step 2 — 并行获取各点位评估数据

**接口 action**：`evaluate:report:analysis`（对每个点位分别调用，**必须并行，不得串行**）

| 参数 | 类型 | 必填 | 说明 |
|------|------|------|------|
| poiId | String | 是 | POI ID（每个点位分别传） |
| regionType | Integer | 是 | 区域类型（所有点位必须一致） |
| regionInfo | String | 是 | 区域参数（所有点位必须一致） |
| category | String | 是 | 行业类型编码（所有点位必须一致） |
| modules | String | 否 | 对比场景默认传全量：`base,customAgg,potentialGuest,competition,trafficConvenience,business` |

### Step 3 — 横向对比分析

#### 1. 五维评分对比表

| 评估维度 | 点位A | 点位B | 点位C | 优势方 |
|----------|-------|-------|-------|--------|
| **综合评分** | X.XX | X.XX | X.XX | — |
| 客群聚集 | X.XX | X.XX | X.XX | 点位X |
| 潜客匹配 | X.XX | X.XX | X.XX | 点位X |
| 同行竞争 | X.XX | X.XX | X.XX | 点位X |
| 交通便利 | X.XX | X.XX | X.XX | 点位X |
| 商业成熟 | X.XX | X.XX | X.XX | 点位X |

找出各点位的**优势维度**（score ≥ 8 或 abovePercent ≥ 70%）和**短板维度**（score ≤ 5 或 abovePercent ≤ 30%）。

#### 2. 预期营收对比

基于各点位 `potentialGuest` 模块中的潜客群体总数推算，参数与口径见 `./references/financial-params.md`：

| 指标 | 点位A | 点位B | 说明 |
|------|-------|-------|------|
| 潜客群体总数（月UV） | XXX | XXX | 搜索+导航去重（**实测**） |
| 预估转化率 | X% | X% | 行业通用值（假设） |
| 月消费人次 | XXX | XXX | 潜客×转化率（推算） |
| 客单价（元） | XX | XX | 行业默认值（假设） |
| **月营收（万元）** | X.X | X.X | 消费人次×客单价÷10000（推算） |

#### 3. 回本周期对比（需用户提供成本信息）

| 指标 | 点位A | 点位B | 说明 |
|------|-------|-------|------|
| 初期投资（万元） | XX | XX | 装修+设备+押金等 |
| 月总成本（万元） | X.X | X.X | 租金+人工+原料+其他 |
| 月净利润（万元） | X.X | X.X | 月营收-月总成本 |
| **回本周期（月）** | XX | XX | 初期投资÷月净利润 |

成本信息不足时，说明"如需精确回本测算，请提供各点位月租金"，仅做营收对比。

#### 4. SWOT 四象限分析

对综合评分差距显著的点位进行 SWOT 分析，各点位格式：

```
┌─────────────────────────────────────┬─────────────────────────────────────┐
│           优势（Strengths）          │          劣势（Weaknesses）          │
├─────────────────────────────────────┼─────────────────────────────────────┤
│ 1. [最高维度：如商业成熟9.1分]        │ 1. [最低维度：如交通便利5.5分]        │
│ 2. [超越百分比优势：如超越93%]        │ 2. [客群匹配度中等]                  │
├─────────────────────────────────────┼─────────────────────────────────────┤
│          机会（Opportunities）       │           威胁（Threats）            │
├─────────────────────────────────────┼─────────────────────────────────────┤
│ 1. [商圈发展趋势]                    │ 1. [同业门店扩张风险]                 │
│ 2. [消费升级红利]                    │ 2. [租金上涨压力]                    │
└─────────────────────────────────────┴─────────────────────────────────────┘
```

### Step 4 — 结果表达

**必须围绕"选哪个、为什么、预期收益如何"三个核心问题组织输出：**

**1. 先给结论** — 一句话总结推荐：
> "综合五维评估和营收测算，推荐优先选择**望京SOHO**，其综合评分9.14分，超越同行97%，月营收潜力较青年城高约XX%。"

**2. 再展数据** — 五维评分对比表（突出关键差异，不罗列所有字段）+ 营收对比（数字支撑）

**3. 最后建议** — 首选方案及核心理由（1-2条）、备选方案适用场景（如资金有限、追求低竞争等）、主要风险提示

**表达要求**：
- 使用对比语言（"A比B高X%"、"相比之下"）
- 优先用**经营决策语言**，而不是技术字段

### Step 5 — 交付与后续引导

对比结论输出后，提示用户可以对最终选定的点位用「立项报告」生成完整的投资决策材料。

---

## 输出格式

```markdown
# [业态]多点位选址对比分析报告

**报告日期**：[当前日期]
**对比点位**：[点位A] vs [点位B]
**业态类型**：[业态]
**评估范围**：[半径Xkm/步行X分钟]

---

## 一、点位概览

| 点位 | 地址 | 综合评分 | 超越同行 |
|------|------|----------|----------|
| 点位A | [地址] | X.XX | XX% |
| 点位B | [地址] | X.XX | XX% |

---

## 二、五维评分对比

[五维对比表]

### 各维度解读

**客群聚集**：A点位... B点位... 对比结论...
**潜客匹配**：...
**同行竞争**：...
**交通便利**：...
**商业成熟**：...

---

## 三、预期营收对比

[营收对比表]

---

## 四、SWOT分析

[各点位SWOT四象限]

---

## 五、综合推荐

**首选**：[点位X]
**推荐理由**：...
**备选**：[点位X]，适用场景：...
**风险提示**：...
```

---

## 评分解读

分数与星级是两套不同的评价体系，禁止互相推断。详见 `./references/scoring-model.md`。

---

## 常见错误与恢复

| 情况 | 处置 |
|------|------|
| 只提供了一个点位 | 反问补齐第二个候选，或改用「点位评估」 |
| 某个点位 POI 检索不到 | 单独反问该点位的精确名称/地址，其余点位数据保留，不要整体中止 |
| 各点位口径不一致 | 强制统一 regionType/regionInfo/category 后重新查询 |
| 部分点位返回失败 | 说明哪些点位取到了数据、哪些没取到，只对成功的点位做对比，**不给失败点位编造分数** |
| `potentialGuest` 缺失 | 跳过营收对比，只做五维对比，并说明原因 |
| 401 / `19002` | 按 `gateway-auth.md` 删 YTOSS 中 wukong 条目后重登，仅重试 1 次 |

---

## 约束

- **数据一致性**：所有点位使用相同 regionType/regionInfo 和 category
- **并行查询**：多点位评估数据必须并行获取，不得串行
- **禁止推断**：分数与星级不可互相推断
- **数据来源**：营收测算必须基于 `potentialGuest` 模块的实际返回数据
- **成本前提**：回本周期测算需用户提供租金信息，否则仅做营收对比
- **区分实测与假设**：营收/回本类推算必须标注哪些是实测数据、哪些是行业假设值

---

## 验证

执行完成后，输出一句话摘要：本次对比的点位数量、统一口径（范围+业态）、首选结论，便于用户复盘。

---

## 权属及使用声明

本技能及通过高德服务API获取的内容均属于高德所有，高德保留所有权利，具体权属和使用声明详见《高德云图SKILL权属及使用声明》（https://terms.amap.com/legal-agreement/terms/b_end_product_protocol/20260415144415692/20260415144415692.html），您使用本技能即视为同意该声明。

