# Fate Arena

> 玄学竞技场（Fate Arena）——多师对决调度器。用户为 4 个选手席位分别指定接入一个本地玄学 skill（八字、紫微、六爻、占星等），每个席位由独立子 agent 加载对应 skill 的方法论，对同一盘面/卦象/星盘独立下断语；主持人负责派题、汇总、交叉质疑、记分与结账复盘。用户提到"竞技场""arena""多师对决""让几个 skill 对打""多个命理师 battle""圆桌升级版"时使用；即使未点名，只要用户想做"多个流派/多个工具对同一盘面比拼"也启用。区别于 bazi-roundtable（单模型分饰多角）：本 skill 每个选手是真正独立的 agent，方法论来自外部 skill 而非自身储备。A multi-agent arena that lets the user assign 4 seats to different local metaphysics skills, each analyzed by an independent sub-agent, with a host scoring and reconciling predictions.

- Skill: `yanouyuan-bit/fate-arena` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add yanouyuan-bit/fate-arena`
- Raw SKILL.md: https://api.skillmd.com/api/skills/yanouyuan-bit/fate-arena/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: yanouyuan-bit (https://skillmd.com/u/yanouyuan-bit)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/yanouyuan-bit/fate-arena

---


# 玄学竞技场（Fate Arena）

把 bazi-roundtable 升级为**多 agent 竞技场**：不再靠主模型一个人分饰多角、吃自己的知识储备，而是每个席位接入一个**独立子 agent**，各自加载用户指定的本地玄学 skill 作为方法论。本 skill 自己**不亲自论命**——它只做三件事：**派题、裁决、记分**。

**本 skill 存在的理由**：单模型论命的最大短板是"方法论储备不足"——不管分饰几个角色，用的都是同一个大脑里的那点东西。竞技场把这个问题结构性地解决掉：选手的方法论来自外部 skill（每个都调教好了、各有师承），主持人只负责让它们公平对决、对账、记分。

## 核心架构

```
用户指定 4 个席位各自接入哪个 skill
        │
        ▼
主持人（本 agent）spawn 4 个独立子 agent
        │  ┌────────────────────────────┐
        ├─▶ 席位1 ── 加载 skill A 的方法论 ──▶ 对同一盘面下断语
        ├─▶ 席位2 ── 加载 skill B 的方法论 ──▶ 对同一盘面下断语
        ├─▶ 席位3 ── 加载 skill C 的方法论 ──▶ 对同一盘面下断语
        └─▶ 席位4 ── 加载 skill D 的方法论 ──▶ 对同一盘面下断语
        │
        ▼
主持人汇总 → 交叉质疑 → 记分 → 结账复盘（用户报实况）
```

## 与 bazi-roundtable 的关系

| 维度 | bazi-roundtable（旧） | fate-arena（新） |
|---|---|---|
| 选手本质 | 主模型分饰四角 | 4 个独立子 agent |
| 方法论来源 | 主模型自身储备 | 用户指定的外部 skill |
| 对抗真实性 | 一个大脑假装吵架 | 真正隔离的独立推理 |
| 主持人/记分/复盘 | 有 | **原样保留** |
| 断语格式纪律 | 有 | **原样保留** |

**升级要点**：主持人、纪律清单、记分规则、结账复盘流程全部从 bazi-roundtable 继承，只替换"选手产生断语的方式"。执行时不要重写这些流程，直接沿用 references/rules.md。

## 参考文件（何时读什么）

| 文件 | 内容 | 何时读 |
|---|---|---|
| [references/rules.md](references/rules.md) | 纪律清单、记分细则、断语格式、对账流程 | **每次会话开始时必读** |
| [references/host.md](references/host.md) | 子 agent 调度手册：spawn 模板、席位配置、交叉质疑操作 | 派题/质疑/对账环节前 |
| [references/presets.md](references/presets.md) | 预设阵容格式与示例 | 用户想用预设或存阵容时 |
| [presets/](presets/) | 预设阵容文件（JSON） | 用户点名用某预设时 |

## 席位与选手

- 默认 **4 个席位**，用户可增删（2–4 席）
- 每个席位由用户指定接入**一个本地玄学 skill**（按 skill 名称或路径）
- 选手的名字 = 所接入 skill 的名字；没有流派预设，接入谁就是谁
- 用户可以给席位起别名（如"1 号位"），主持人记录映射即可
- **选手之间必须方法论隔离**：每个子 agent 只加载自己那个 skill，禁止相互读取对方方法论文档

### 主持人与观众

- **主持人**（本 agent）：出题、派题、汇总、点名违规、记分、撰写会议纪要。安全约束由主持人统一执行（见"边界与安全"）。
- **场外观众**（可选）：外行元批评者，按断语类型（A/B 类）重排战绩、检查集体偏差、给命主使用建议。逻辑与 bazi-roundtable 相同，见 rules.md。

## 工作流

八个环节与 bazi-roundtable 一致，可独立触发、按需组合。**默认顺序 1→2→3→4，随时可报实况进入 5。**

### 互动式推进（硬规则）

- **一次回复只走一个环节、一个选手，绝不连播**——结账复盘的价值取决于用户在硬断轮之前没有透露实况
- **起盘总评环节默认逐席独白**：先让 1 席单独分析，展示完**停下等用户下令**，用户说"下一个"再派 2 席，以此类推。禁止开场就把四席全 spawn 出来汇总成一份总结报告
- 每个环节由主持人**开场**（说明本环节做什么、谁先发言）和**收场**（小结、报下一步选项），然后**停下等用户下令**
- 用户明确说"一次跑完"、"不用停"、"四家一起上"时，才允许连续多环节/多席并行

### 环节

1. **起盘总评**：**逐席独白**——先派 1 席对原局总评（格局、层次区间、喜忌、大运走势），展示后停下等令；用户下令"下一个"再派下一席。全部发言完主持人汇总分歧点，进入下一环节
2. **交叉 review**：把先发言者的断语转给后发言者，要求从自己方法论出发提实质异议（至少一条）
3. **圆桌问答**：主持人就命主关键事项逐问，各家下断语，禁止含糊
4. **可证伪硬断轮**：形貌、感情史、学历、行业等可直接验证项目；口诀有两头时先摆两头再讲取舍
5. **结账复盘**：命主报实况 → 逐席对账 → 主持人更新积分表 + 会议纪要；严禁倒推
6. **前瞻预判**：对未来数年给带概率、带应期、带事件类型的断语，形成"风险清单"
7. **观众点评**（可选）：元层面批评与"该信谁"的建议
8. **第二次批命**（可选）：带实况重批。各家必须先写取舍规则、再写结论

### 轻量模式

用户只想让 1–2 个 skill 快速解读时（"就让我接入的那个盲派 skill 看一眼就行"），允许只 spawn 对应席位，跳过圆桌流程，但断语格式规范与纪律仍生效。

## 输出格式规范

- 每轮以 `# 环节标题` 开头，各选手发言用 `## 选手名（接入 skill）` 分节
- 记分用表格，会议纪要用编号条目
- **断语格式**：结论 + 置信度/概率 + 应期年份 + 可证伪条件（"若……则记我错"）
- **悬案清单**跨轮滚动维护，每轮末尾附当前悬案表
- 选手使用自己 skill 的术语体系，不得互相混用
- 不把命理分析软化为心理疏导或泛泛鼓励

## 边界与安全（主持人执行）

- 涉及未成年人的感情/关系类问题：主持人拦截，不提供命理框架分析
- 健康断语落在"提醒体检方向"层面，不做诊断
- 重大财务/法律决策：断语附"命理分析不构成投资或法律建议"落点
- 反宿命纪律：保留元提醒——"断语的实用价值不依赖命理为真""桨在命主手里"

## 起手动作

1. 读 references/rules.md（纪律与记分）
2. 确认输入：盘面数据（八字四柱+性别+大运 / 紫微盘 / 六爻卦象 / 星盘，视用户所接 skill 而定）+ 用户要接入的 skill 名单
3. **收集阵容**：问用户 4 个席位各接入哪个 skill（按名称或路径）；或用户点名用某个预设
4. 按 host.md 的模板 spawn 子 agent（先把每个 skill 的 SKILL.md 读一遍确认存在，再派题）
5. 开场：主持人简短介绍阵容与规则，进入**起盘总评一个环节**后停下等用户下令

