# https://github.com/gossipcat-ai/gossipcat-ai 项目说明书

生成时间：2026-07-28 01:43:04 UTC

## 目录

- [系统概览与整体架构](#page-1)
- [共识引擎与信号管道](#page-2)
- [技能、记忆与提示组装](#page-3)
- [仪表板、中继服务器与运维](#page-4)

<a id='page-1'></a>

## 系统概览与整体架构

### 相关页面

相关主题：[共识引擎与信号管道](#page-2), [技能、记忆与提示组装](#page-3), [仪表板、中继服务器与运维](#page-4)

<details>
<summary>相关源码文件</summary>

以下源码文件用于生成本页说明：

- [README.md](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/README.md)
- [CLAUDE.md](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/CLAUDE.md)
- [DESIGN.md](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/DESIGN.md)
- [package.json](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/package.json)
- [apps/cli/src/index.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/apps/cli/src/index.ts)
- [apps/cli/src/mcp-server-sdk.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/apps/cli/src/mcp-server-sdk.ts)
</details>

# 系统概览与整体架构

## 项目定位与核心价值

gossipcat 是一个面向多智能体协作场景的代码评审与共识工具，核心目标在于：让多个 LLM 智能体针对同一份代码改动相互审阅、互相记录信号、形成多轮共识，并把共识结果落盘为后续会话可追溯的状态。系统的入口同时支持两种形态——本地 CLI 与面向上游 Agent 的 MCP 服务器，二者共用同一份 orchestrator 业务逻辑，避免双实现漂移。资料来源：[README.md:1-40]()

## 整体架构与代码组织

仓库采用 monorepo 结构，由根目录的 `package.json` 统一管理工作区脚本、共享脚本与依赖，并通过 `apps/` 与 `packages/` 两个目录区分交付形态。`apps/cli` 提供本地可执行命令与 MCP 服务器 SDK；`packages/orchestrator` 承载核心的共识引擎、信号管道、技能加载、会话持久化与图片附件策略。资料来源：[package.json:1-60]()

```mermaid
graph LR
  A[上游 Agent / 开发者] --> B[CLI 入口]
  B --> C[MCP Server SDK]
  C --> D[Orchestrator 包]
  D --> E[ConsensusEngine]
  D --> F[Signal Pipeline]
  D --> G[Skill Loader]
  D --> H[Session Store]
  H --> I[(.gossip/ 目录)]
```

`apps/cli/src/index.ts` 在启动时初始化命令树与 MCP 传输层，将工具调用与本地命令统一路由到 orchestrator 包内的处理器；版本号、release 渠道与二进制分发信息也由此处装配。资料来源：[apps/cli/src/index.ts:1-80]()

## 关键子系统

### MCP 服务器接口

`apps/cli/src/mcp-server-sdk.ts` 负责把 gossipcat 的能力暴露为 MCP 工具，使 Claude、Cursor、Codex 等上游 Agent 能够以工具调用方式触发评审、保存会话、记录信号、配置密钥。MCP 传输层在此完成 schema 注册、错误格式化、超时控制与鉴权后端选择，是上游 Agent 与本地共识引擎之间的协议边界。资料来源：[apps/cli/src/mcp-server-sdk.ts:1-120]()

### 共识引擎与信号管道

共识引擎负责编排多 Agent 跨评审（cross-review）阶段，使用 `--- SKILLS ---` 块向 Phase-2 提示注入 Agent 技能内容，并在每一轮结束后收集 `hallucination_caught`、`disagreement` 等信号写入信号管道。信号管道对每条信号按类别（accuracy / performance）评估并更新对应 Agent 的画像，画像会被后续会话读取以影响共识权重。资料来源：[DESIGN.md:1-180]()

### 会话、技能与记忆子系统

会话子系统将每次评审的输入、产出、共识哈希与待办项持久化到 `.gossip/` 目录的 Markdown 文件中；`gossip_session_save` 会重写 `next-session.md`，把已解决项移除、把新开放项归档。技能（skills）与记忆（memory）注入路径会在 Phase 提示中拼接内容，因此对不可信输入必须做分隔符净化处理；社区已记录两条路径处理强度不对称的隐患。资料来源：[CLAUDE.md:1-160]()

## 已知架构风险与社区共识

社区近期揭示了几处与整体架构强耦合的风险点，建议在阅读此页时一并参考：

- **性能信号对 orchestrator 误开熔断器**：信号管道当前接受针对伪 Agent `orchestrator` 的 performance 类信号，导致熔断器在真实误报上被静默触发（见 issue #697）。资料来源：[DESIGN.md:180-220]()
- **跨评审技能注入只在 1/5 构造点接入**：`ConsensusEngine` 在生产路径上仅部分构造点接入了 `getAgentSkillsContent`，构成死代码与评审成本不对称风险（见 issue #666）。资料来源：[CLAUDE.md:160-220]()
- **技能 vs 记忆注入路径不对称**：技能路径通过 `sanitizeContent` 对提示结构分隔符做了净化，记忆路径尚未对应处理，存在提示注入面（见 issue #680）。资料来源：[CLAUDE.md:220-260]()
- **信号管道将设计分歧误判为准确率扣分**：当前没有"双方都合理但结论不同"的信号类型，会让真实的设计权衡被计入 accuracy 扣分（见 issue #678）。资料来源：[DESIGN.md:220-260]()

理解整体架构时，建议把上述四点视为"已知骨架上的裂纹"，它们并不否定架构的分层，而是提醒读者在评估共识可信度与 Agent 画像时，必须把这些偏差纳入考量。资料来源：[DESIGN.md:1-40]()

---

<a id='page-2'></a>

## 共识引擎与信号管道

### 相关页面

相关主题：[系统概览与整体架构](#page-1), [技能、记忆与提示组装](#page-3)

<details>
<summary>相关源码文件</summary>

以下源码文件用于生成本页说明：

- [packages/orchestrator/src/dispatch-pipeline.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/dispatch-pipeline.ts)
- [packages/orchestrator/src/consensus-engine.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/consensus-engine.ts)
- [packages/orchestrator/src/consensus-coordinator.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/consensus-coordinator.ts)
- [packages/orchestrator/src/consensus-types.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/consensus-types.ts)
- [packages/orchestrator/src/consensus-auto-verify.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/consensus-auto-verify.ts)
- [packages/orchestrator/src/signal-helpers.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/signal-helpers.ts)
</details>

# 共识引擎与信号管道

## 概述与角色定位

共识引擎（ConsensusEngine）与信号管道（Signal Pipeline）共同构成 gossipcat 多代理编排器中"裁决与信誉"子系统。前者负责把多个 review agent 的独立产出对齐为一份带引用支撑的共识结论；后者负责把这些结论以及运行过程中的偏差事件归一化为可审计、可计分的信号，回写进持久化层供后续会话读取。两者的协同目标是在多次 dispatch 之间形成可追踪的质量反馈回路，避免单代理幻觉或设计分歧被静默吞掉。

资料来源：[packages/orchestrator/src/consensus-engine.ts:1-40]()
资料来源：[packages/orchestrator/src/signal-helpers.ts:1-30]()

## 共识引擎的两阶段流水线

共识引擎典型构造在调度管线尾部，由 `consensus-engine.ts` 暴露的 `ConsensusEngine` 类驱动。第一阶段汇总各 agent 报告，第二阶段执行交叉评审，并可注入由 `getAgentSkillsContent()` 提供的 `--- SKILLS ---` 块。`consensus-coordinator.ts` 负责跨阶段状态机、票数聚合与超时回退；`consensus-types.ts` 定义了 `ConsensusRound`、`AgentVote`、`CitationRef` 等共用结构。

```mermaid
flowchart LR
  D[dispatch-pipeline.ts<br/>多代理产出] --> E[ConsensusEngine<br/>Phase 1 汇总]
  E --> C[consensus-coordinator.ts<br/>票数聚合/超时]
  C --> X[Phase 2 交叉评审<br/>+ SKILLS 注入]
  X --> V[consensus-auto-verify.ts<br/>自校验引用]
  V --> S[signal-helpers.ts<br/>归一化为信号]
  S --> P[(performance-writer.ts<br/>持久化)]
```

需要注意的是，`getAgentSkillsContent` 仅在 5 个 `ConsensusEngine` 构造点中的 1 个上被接线（见 issue #666），意味着 Phase-2 的技能注入在多数生产路径上是死代码——这是当前实现的一个已知缺口。

资料来源：[packages/orchestrator/src/consensus-engine.ts:60-140]()
资料来源：[packages/orchestrator/src/consensus-coordinator.ts:1-80]()
资料来源：[packages/orchestrator/src/consensus-types.ts:1-60]()

## 自动校验与信号归一化

`consensus-auto-verify.ts` 在共识完成后对引用路径做绝对化解析，并把命中度回填到每条引用的状态字段。校验结果随后进入 `signal-helpers.ts`，按 `signal_class` 分为两类：

- `accuracy`：通常由 `disagreement`、`hallucination_caught` 等事件触发，扣减主体 agent 的准确率分；
- `performance`：包含时延、token 成本等运行时指标，用于熔断器（circuit breaker）计数。

`DEFAULT_KEYWORDS.citation_grounding` 仅列出词干形式，`getPattern()` 会以 `/\b<escaped>\b/i` 编译，因此 `fabricate`、`hallucinated` 等屈折形态不会命中——这是 issue #681 描述的限制，会降低真实引用错位被信号捕获的概率。

资料来源：[packages/orchestrator/src/consensus-auto-verify.ts:1-90]()
资料来源：[packages/orchestrator/src/signal-helpers.ts:40-160]()

## 已知边界与社区关注点

三个高频问题直接落在该子系统上：

1. **pseudo-agent 信号泄漏（#697）**：`gossip_signals` 接受针对 `agent_id: 'orchestrator'` 的 `performance` 类信号，会静默推动其熔断器计数，但 `orchestrator` 并非真实执行单元，导致虚假熔断。
2. **设计分歧被误计为准确率扣分（#678）**：`disagreement` 信号目前无条件从主体 agent 的 accuracy 中扣分，无法表达"两个 agent 给出不同但都合理的方案"这种未决议价。
3. **不可见源码污染（#693）**：`performance-writer.ts` 在偏移 12059 处含有原始 NUL 字节，`grep -r` 会跳过该文件，曾造成两次误报共识通过。

此外，`agent-memory` 注入路径仍缺少 `sanitizeContent` 形式的分隔符清洗（见 issue #680），与 `skill-loader.ts` 路径的不对称处理使信号管道在反序列化侧仍暴露于提示注入。

资料来源：[packages/orchestrator/src/dispatch-pipeline.ts:1-50]()
资料来源：[packages/orchestrator/src/signal-helpers.ts:120-200]()

---

<a id='page-3'></a>

## 技能、记忆与提示组装

### 相关页面

相关主题：[系统概览与整体架构](#page-1), [共识引擎与信号管道](#page-2)

<details>
<summary>相关源码文件</summary>

以下源码文件用于生成本页说明：

- [packages/orchestrator/src/skill-engine.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/skill-engine.ts)
- [packages/orchestrator/src/skill-loader.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/skill-loader.ts)
- [packages/orchestrator/src/skill-catalog.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/skill-catalog.ts)
- [packages/orchestrator/src/skill-counters.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/skill-counters.ts)
- [packages/orchestrator/src/skill-freshness.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/skill-freshness.ts)
- [packages/orchestrator/src/skill-gap-tracker.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/skill-gap-tracker.ts)
</details>

# 技能、记忆与提示组装

## 概述与范围

`packages/orchestrator` 子包内的技能系统负责在多代理共识（consensus）流程中，把经过验证的「技能片段」与「代理记忆」拼装进发给 LLM 的提示（prompt）。它横跨加载、目录索引、计数器、鲜度评估、缺口追踪五个子模块，并通过 `SkillEngine` 与 `ConsensusEngine` 对接。所有来自 LLM 自生成、外部文件或用户输入的可疑文本在进入提示前必须经过分层消毒（sanitize）。本页聚焦该系统的静态结构以及已暴露的真实风险点。

## 技能子模块拆分

| 文件 | 职责 |
|------|------|
| `skill-engine.ts` | 顶层编排，对外暴露 `getAgentSkillsContent` 钩子 |
| `skill-loader.ts` | 物理加载 + 消毒入口，包含 `sanitizeContent` |
| `skill-catalog.ts` | 技能元数据检索、命名空间 |
| `skill-counters.ts` | 调用频率/成功率统计，供鲜度判断使用 |
| `skill-freshness.ts` | 基于计数器的鲜度衰减与刷新策略 |
| `skill-gap-tracker.ts` | 记录「应具备但缺失」的技能，用于下轮补齐 |

`SkillEngine` 是这六者的粘合层；`SkillLoader` 是唯一接触到原始字节的位置，因此所有去消毒责任都集中于此。`SkillCatalog` 把已注册技能与代理 ID 关联，避免在每次共识轮询中全量扫描。

## 加载与消毒：`sanitizeContent`

`skill-loader.ts` 中的 `sanitizeContent` 在 #679 中被硬化，负责剥离/转义可能与提示分隔符冲突的字符串（例如 `--- SKILLS ---`、`</system>` 等结构锚点）。其加固动机详见 issue #679 与社区报告 #680：代理记忆（agent-memory）注入路径在当时**未复用** `sanitizeContent`，导致同类不可信内容以另一条入口进入提示。#680 明确指出该路径已经在本仓库内被污染，修复方向是把同一消毒函数复用于记忆路径。资料来源：[packages/orchestrator/src/skill-loader.ts:sanitizeContent]()、[issue #680](https://github.com/gossipcat-ai/gossipcat-ai/issues/680)。

## 提示组装与共识引擎接线

在 Phase‑2 交叉评审（cross‑review）阶段，`ConsensusEngine` 通过 `this.config.getAgentSkillsContent` 拉取本轮要注入的技能文本，包装为 `--- SKILLS --- ... --- END SKILLS ---` 块后插入提示。issue #666 指出该钩子仅在 5 处 `ConsensusEngine` 构造点中的 1 处被接好——生产路径上其余 4 处构造虽签名兼容但默认回退到空内容，导致交叉评审技能注入在主链路上事实上是死代码。该缺口的修复被显式延后到 #666 之后的独立 PR，以保留 #659 / #665 的可审阅性。资料来源：[packages/orchestrator/src/consensus-engine.ts:getAgentSkillsContent]()、[issue #666](https://github.com/gossipcat-ai/gossipcat-ai/issues/666)。

## 鲜度、计数与缺口闭环

`SkillCounters` 记录每次技能被引用是否解决了对应子任务；`SkillFreshness` 周期性读取计数并按指数衰减判定技能是否需要再生成；`SkillGapTracker` 则把失败但无对应技能的请求归档，作为下轮 `skill-catalog.ts` 增量注册的素材。社区问题 #681 揭示了一个相邻但独立的失败模式：`DEFAULT_KEYWORDS.citation_grounding` 仅列出词根，`getPattern()` 又强制编译为 `/\b<escaped>\b/i`，导致 16 个自然变体中 12 个无法触发关键词——这并非消毒问题，但同属「提示组装语义层」的脆弱点。资料来源：[packages/orchestrator/src/skill-counters.ts]()、[packages/orchestrator/src/skill-freshness.ts]()、[packages/orchestrator/src/skill-gap-tracker.ts]()、[issue #681](https://github.com/gossipcat-ai/gossipcat-ai/issues/681)。

```mermaid
flowchart LR
  A[SkillCatalog] --> B[SkillEngine]
  C[SkillCounters] --> D[SkillFreshness]
  E[SkillGapTracker] --> D
  F[SkillLoader.sanitizeContent] --> B
  B --> G[ConsensusEngine.getAgentSkillsContent]
  G --> H[--- SKILLS --- 块]
  H --> I[LLM 提示]
```

## 已知风险与后续工作

1. **跨评审技能死代码**（#666）：1/5 构造点接线。需统一接线工厂或默认实现非空。  
2. **记忆路径未消毒**（#680）：把 `sanitizeContent` 复用到 `agent-memory` 注入点。  
3. **关键词变体漏检**（#681）：在 `getPattern()` 层允许同义词表或 stem 匹配。  
4. **关键词/技能污染**（#697）：`gossip_signals` 允许 `performance` 类信号打向 `orchestrator` 伪代理，间接影响技能选择决策；修复前请勿依此做回路反馈。资料来源：[issue #697](https://github.com/gossipcat-ai/gossipcat-ai/issues/697)。

---

<a id='page-4'></a>

## 仪表板、中继服务器与运维

### 相关页面

相关主题：[系统概览与整体架构](#page-1)

<details>
<summary>相关源码文件</summary>

以下源码文件用于生成本页说明：

- [packages/relay/src/server.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/relay/src/server.ts)
- [packages/relay/src/router.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/relay/src/router.ts)
- [packages/relay/src/ws.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/relay/src/ws.ts)
- [packages/relay/src/connection-manager.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/relay/src/connection-manager.ts)
- [packages/relay/src/message-rate-limiter.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/relay/src/message-rate-limiter.ts)
- [packages/orchestrator/src/performance-writer.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/performance-writer.ts)
- [packages/orchestrator/src/skill-loader.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/orchestrator/src/skill-loader.ts)
- [packages/cli/src/commands/dashboard.ts](https://github.com/gossipcat-ai/gossipcat-ai/blob/main/packages/cli/src/commands/dashboard.ts)
</details>

# 仪表板、中继服务器与运维

gossipcat-ai 把多 agent 协作拆成三层：中继层（relay）承担消息路由与传输，编排层（orchestrator）沉淀信号与性能写入，观测层（dashboard / CLI）把状态聚合成可审计视图。本页沿"传输 → 信号 → 持久化与展示"的顺序串联它们，并标注社区已暴露的运维陷阱。

## 中继服务器与连接管理

`packages/relay/src/server.ts` 启动 HTTP/WS 服务并把请求分发给 `router.ts`，后者按 provider 规则匹配派单目标，使 OpenAI / Gemini / Anthropic / Ollama 等自定义 provider 都能被同一通道承载 资料来源：[packages/relay/src/server.ts:1-80](). WS 长连接的读写循环在 `ws.ts` 中实现 资料来源：[packages/relay/src/ws.ts:1-60](), 连接生命周期（重连、心跳、保活、淘汰）集中在 `connection-manager.ts` 资料来源：[packages/relay/src/connection-manager.ts:1-120](). 单连接消息频率由 `message-rate-limiter.ts` 约束，防止个别 agent 占用过多带宽 资料来源：[packages/relay/src/message-rate-limiter.ts:1-90]().

v0.6.12 起 relay 支持图片附件（OpenAI / Gemini / Anthropic / Ollama 接收方可消费截图与示意图）；v0.6.13 通过 PR #655 将 image 路径的 confinement 改为**失败关闭**——`projectRoot` 无法解析时拒绝所有候选路径而非放行。该策略只覆盖 relay 派发的图片，并不影响直接 provider 调用。

## 编排信号与熔断运维

`gossip_signals` CLI 把 agent 反馈映射为结构化事件，供 ConsensusEngine 评分与熔断器决策。已知缺陷：

- **熔断误开**：`hallucination_caught` 等 performance 信号会被 `orchestrator` 伪 agent 接收并计入错误率（#697）。当前实现不区分真实 agent 与 pseudo-agent，导致熔断器被"自己"记下的问题跳闸。
- **分歧误计**：`disagreement` 信号一律对 subject agent 的 accuracy 计负（#678）。尚未为"未裁决的设计权衡"留出中性记录口。
- **注入污染**：agent-memory 注入路径缺少 prompt 边界符清洗（#680）。与之对比，skills 路径由 `skill-loader.ts` 中的 `sanitizeContent` 守卫 资料来源：[packages/orchestrator/src/skill-loader.ts:1-200](), #679 已加固；对 memory 路径尚未跟进。

## 性能持久化与审计追踪

`packages/orchestrator/src/performance-writer.ts` 将每轮共识/派单的关键指标落到磁盘 资料来源：[packages/orchestrator/src/performance-writer.ts:1-200](), 是 dashboard 与两轮共识校验的数据源。社区曾在 offset 12059 发现裸 NUL 字节，导致 `file` 把它识别为二进制、`grep -r` 静默跳过（#693）。排查习惯建议：

- 出现"无匹配"先查文件类型；非文本时改用 `rg --binary` 或 `xxd` 检视。
- 把文件当作结构化事件流消费而不是"可 grep 源码"，避免误把"命中 0 行"当作行为正常。

## 仪表板与会话 CLI

`packages/cli/src/commands/dashboard.ts` 把 performance 文件与 `.gossip/` 目录聚合成视图 资料来源：[packages/cli/src/commands/dashboard.ts:1-150](), 主要展示熔断状态、按 agent 的 accuracy 分布与最近信号。`.gossip/next-session.md` 是会话语境载体，但 `gossip_session_save` 当前的实现是整段覆写（#684），**不会**把上一轮遗留子弹点合并回新文件——遗留项必须显式重新敲入 `notes:` 才会被下一轮携带。这点在多人协作接力时尤其容易踩坑。

```mermaid
flowchart LR
  A[Agent A] -->|HTTP/WS| R[relay/server.ts]
  B[Agent B] -->|HTTP/WS| R
  R -->|provider 派单| ORCH[orchestrator/ConsensusEngine]
  ORCH -->|signals| W[performance-writer.ts]
  ORCH -->|sanitize| SK[skill-loader.ts]
  W --> D[CLI dashboard.ts]
  G[/gossip/next-session.md] --> D
  D -->|view| OP[Operator]
```

> 调试分歧类问题时，建议同时检查 `disagreement` 与 `accuracy_penalty` 两条信号链路：前者目前无 escape hatch，后者是熔断器的主要输入；如果熔断器意外跳闸，再比对 issue #697 描述的 "orchestrator 伪 agent" 场景。

---

<!-- evidence_pipeline_checked: true -->
<!-- evidence_injected: true -->

---

## Doramagic 踩坑日志

项目：gossipcat-ai/gossipcat-ai

摘要：发现 31 个潜在踩坑项，其中 1 个为 high/blocking；最高优先级：安全/权限坑 - 失败模式：security_permissions: Agent-memory injection path has no delimiter sanitization — and is already contaminated in th...。

## 1. 安全/权限坑 · 失败模式：security_permissions: Agent-memory injection path has no delimiter sanitization — and is already contaminated in th...

- 严重度：high
- 证据强度：source_linked
- 发现：Developers should check this security_permissions risk before relying on the project: Agent-memory injection path has no delimiter sanitization — and is already contaminated in this repo
- 对用户的影响：Developers may expose sensitive permissions or credentials: Agent-memory injection path has no delimiter sanitization — and is already contaminated in this repo
- 证据：failure_mode_cluster:github_issue | https://github.com/gossipcat-ai/gossipcat-ai/issues/680 | Agent-memory injection path has no delimiter sanitization — and is already contaminated in this repo

## 2. 安装坑 · 失败模式：installation: gossipcat v0.6.12 — relay image attachments

- 严重度：medium
- 证据强度：source_linked
- 发现：Developers should check this installation risk before relying on the project: gossipcat v0.6.12 — relay image attachments
- 对用户的影响：Upgrade or migration may change expected behavior: gossipcat v0.6.12 — relay image attachments
- 证据：failure_mode_cluster:github_release | https://github.com/gossipcat-ai/gossipcat-ai/releases/tag/v0.6.12 | gossipcat v0.6.12 — relay image attachments

## 3. 安装坑 · 失败模式：installation: gossipcat v0.6.13 — image path policy hardening

- 严重度：medium
- 证据强度：source_linked
- 发现：Developers should check this installation risk before relying on the project: gossipcat v0.6.13 — image path policy hardening
- 对用户的影响：Upgrade or migration may change expected behavior: gossipcat v0.6.13 — image path policy hardening
- 证据：failure_mode_cluster:github_release | https://github.com/gossipcat-ai/gossipcat-ai/releases/tag/v0.6.13 | gossipcat v0.6.13 — image path policy hardening

## 4. 安装坑 · 失败模式：installation: gossipcat v0.6.7

- 严重度：medium
- 证据强度：source_linked
- 发现：Developers should check this installation risk before relying on the project: gossipcat v0.6.7
- 对用户的影响：Upgrade or migration may change expected behavior: gossipcat v0.6.7
- 证据：failure_mode_cluster:github_release | https://github.com/gossipcat-ai/gossipcat-ai/releases/tag/v0.6.7 | gossipcat v0.6.7

## 5. 安装坑 · 失败模式：installation: gossipcat v0.7.0

- 严重度：medium
- 证据强度：source_linked
- 发现：Developers should check this installation risk before relying on the project: gossipcat v0.7.0
- 对用户的影响：Upgrade or migration may change expected behavior: gossipcat v0.7.0
- 证据：failure_mode_cluster:github_release | https://github.com/gossipcat-ai/gossipcat-ai/releases/tag/v0.7.0 | gossipcat v0.7.0

## 6. 安装坑 · 失败模式：installation: v0.6.10 — utility-summary fallback + OpenAI Responses API for GPT-5.x

- 严重度：medium
- 证据强度：source_linked
- 发现：Developers should check this installation risk before relying on the project: v0.6.10 — utility-summary fallback + OpenAI Responses API for GPT-5.x
- 对用户的影响：Upgrade or migration may change expected behavior: v0.6.10 — utility-summary fallback + OpenAI Responses API for GPT-5.x
- 证据：failure_mode_cluster:github_release | https://github.com/gossipcat-ai/gossipcat-ai/releases/tag/v0.6.10 | v0.6.10 — utility-summary fallback + OpenAI Responses API for GPT-5.x

## 7. 安装坑 · 失败模式：installation: v0.6.11 — skill-parser: stop dropping+warning on incomplete-frontmatter skills

- 严重度：medium
- 证据强度：source_linked
- 发现：Developers should check this installation risk before relying on the project: v0.6.11 — skill-parser: stop dropping+warning on incomplete-frontmatter skills
- 对用户的影响：Upgrade or migration may change expected behavior: v0.6.11 — skill-parser: stop dropping+warning on incomplete-frontmatter skills
- 证据：failure_mode_cluster:github_release | https://github.com/gossipcat-ai/gossipcat-ai/releases/tag/v0.6.11 | v0.6.11 — skill-parser: stop dropping+warning on incomplete-frontmatter skills

## 8. 安装坑 · 来源证据：Signal pipeline scores a legitimate design disagreement as an accuracy penalty

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安装相关的待验证问题：Signal pipeline scores a legitimate design disagreement as an accuracy penalty
- 对用户的影响：可能增加新用户试用和生产接入成本。
- 证据：community_evidence:github | https://github.com/gossipcat-ai/gossipcat-ai/issues/678 | 来源类型 github_issue 暴露的待验证使用条件。

## 9. 安装坑 · 来源证据：gossip_session_save regenerates next-session.md wholesale — carried-over open items are silently dropped unless re-type…

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安装相关的待验证问题：gossip_session_save regenerates next-session.md wholesale — carried-over open items are silently dropped unless re-typed into notes
- 对用户的影响：可能增加新用户试用和生产接入成本。
- 证据：community_evidence:github | https://github.com/gossipcat-ai/gossipcat-ai/issues/684 | 来源类型 github_issue 暴露的待验证使用条件。

## 10. 配置坑 · 可能修改宿主 AI 配置

- 严重度：medium
- 证据强度：source_linked
- 发现：项目面向 Claude/Cursor/Codex/Gemini/OpenCode 等宿主，或安装命令涉及用户配置目录。
- 对用户的影响：安装可能改变本机 AI 工具行为，用户需要知道写入位置和回滚方法。
- 证据：capability.host_targets | https://github.com/gossipcat-ai/gossipcat-ai | host_targets=mcp_host, claude_code, claude, cursor

## 11. 配置坑 · 失败模式：configuration: Cross-review skills injection is dead code on the production path — getAgentSkillsContent wir...

- 严重度：medium
- 证据强度：source_linked
- 发现：Developers should check this configuration risk before relying on the project: Cross-review skills injection is dead code on the production path — getAgentSkillsContent wired at 1 of 5 ConsensusEngine construction sites
- 对用户的影响：Developers may misconfigure credentials, environment, or host setup: Cross-review skills injection is dead code on the production path — getAgentSkillsContent wired at 1 of 5 ConsensusEngine construction sites
- 证据：failure_mode_cluster:github_issue | https://github.com/gossipcat-ai/gossipcat-ai/issues/666 | Cross-review skills injection is dead code on the production path — getAgentSkillsContent wired at 1 of 5 ConsensusEngine construction sites

## 12. 配置坑 · 失败模式：configuration: citation_grounding keywords miss most real inflections — 12 of 16 natural phrasings don't fire

- 严重度：medium
- 证据强度：source_linked
- 发现：Developers should check this configuration risk before relying on the project: citation_grounding keywords miss most real inflections — 12 of 16 natural phrasings don't fire
- 对用户的影响：Developers may misconfigure credentials, environment, or host setup: citation_grounding keywords miss most real inflections — 12 of 16 natural phrasings don't fire
- 证据：failure_mode_cluster:github_issue | https://github.com/gossipcat-ai/gossipcat-ai/issues/681 | citation_grounding keywords miss most real inflections — 12 of 16 natural phrasings don't fire

## 13. 配置坑 · 失败模式：configuration: gossip_signals accepts performance-class signals for the 'orchestrator' pseudo-agent, silentl...

- 严重度：medium
- 证据强度：source_linked
- 发现：Developers should check this configuration risk before relying on the project: gossip_signals accepts performance-class signals for the 'orchestrator' pseudo-agent, silently opening its circuit breaker
- 对用户的影响：Developers may misconfigure credentials, environment, or host setup: gossip_signals accepts performance-class signals for the 'orchestrator' pseudo-agent, silently opening its circuit breaker
- 证据：failure_mode_cluster:github_issue | https://github.com/gossipcat-ai/gossipcat-ai/issues/697 | gossip_signals accepts performance-class signals for the 'orchestrator' pseudo-agent, silently opening its circuit breaker

## 14. 配置坑 · 失败模式：configuration: key list / key set never report which store they resolved — and on Windows the messages name...

- 严重度：medium
- 证据强度：source_linked
- 发现：Developers should check this configuration risk before relying on the project: key list / key set never report which store they resolved — and on Windows the messages name a keychain that is never used
- 对用户的影响：Developers may misconfigure credentials, environment, or host setup: key list / key set never report which store they resolved — and on Windows the messages name a keychain that is never used
- 证据：failure_mode_cluster:github_issue | https://github.com/gossipcat-ai/gossipcat-ai/issues/667 | key list / key set never report which store they resolved — and on Windows the messages name a keychain that is never used

## 15. 能力坑 · 能力判断依赖假设

- 严重度：medium
- 证据强度：source_linked
- 发现：README/documentation is current enough for a first validation pass.
- 对用户的影响：假设不成立时，用户拿不到承诺的能力。
- 证据：capability.assumptions | https://github.com/gossipcat-ai/gossipcat-ai | README/documentation is current enough for a first validation pass.

## 16. 运行坑 · 来源证据：Raw NUL byte in performance-writer.ts makes it invisible to grep -r (caused 2 false consensus findings)

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个运行相关的待验证问题：Raw NUL byte in performance-writer.ts makes it invisible to grep -r (caused 2 false consensus findings)
- 对用户的影响：可能增加新用户试用和生产接入成本。
- 证据：community_evidence:github | https://github.com/gossipcat-ai/gossipcat-ai/issues/693 | 来源类型 github_issue 暴露的待验证使用条件。

## 17. 维护坑 · 维护活跃度未知

- 严重度：medium
- 证据强度：source_linked
- 发现：未记录 last_activity_observed。
- 对用户的影响：新项目、停更项目和活跃项目会被混在一起，推荐信任度下降。
- 证据：evidence.maintainer_signals | https://github.com/gossipcat-ai/gossipcat-ai | last_activity_observed missing

- 严重度：medium
- 证据强度：source_linked
- 发现：no_demo
- 证据：downstream_validation.risk_items | https://github.com/gossipcat-ai/gossipcat-ai | no_demo; severity=medium

## 19. 安全/权限坑 · 存在评分风险

- 严重度：medium
- 证据强度：source_linked
- 发现：no_demo
- 对用户的影响：风险会影响是否适合普通用户安装。
- 证据：risks.scoring_risks | https://github.com/gossipcat-ai/gossipcat-ai | no_demo; severity=medium

## 20. 安全/权限坑 · 来源证据：Agent-memory injection path has no delimiter sanitization — and is already contaminated in this repo

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安全/权限相关的待验证问题：Agent-memory injection path has no delimiter sanitization — and is already contaminated in this repo
- 对用户的影响：可能影响升级、迁移或版本选择。
- 证据：community_evidence:github | https://github.com/gossipcat-ai/gossipcat-ai/issues/680 | 来源类型 github_issue 暴露的待验证使用条件。

## 21. 安全/权限坑 · 来源证据：Cross-review skills injection is dead code on the production path — getAgentSkillsContent wired at 1 of 5 ConsensusEngi…

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安全/权限相关的待验证问题：Cross-review skills injection is dead code on the production path — getAgentSkillsContent wired at 1 of 5 ConsensusEngine construction sites
- 对用户的影响：可能影响授权、密钥配置或安全边界。
- 证据：community_evidence:github | https://github.com/gossipcat-ai/gossipcat-ai/issues/666 | 来源类型 github_issue 暴露的待验证使用条件。

## 22. 安全/权限坑 · 来源证据：citation_grounding keywords miss most real inflections — 12 of 16 natural phrasings don't fire

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安全/权限相关的待验证问题：citation_grounding keywords miss most real inflections — 12 of 16 natural phrasings don't fire
- 对用户的影响：可能影响授权、密钥配置或安全边界。
- 证据：community_evidence:github | https://github.com/gossipcat-ai/gossipcat-ai/issues/681 | 来源类型 github_issue 暴露的待验证使用条件。

## 23. 安全/权限坑 · 来源证据：gossip_signals accepts performance-class signals for the 'orchestrator' pseudo-agent, silently opening its circuit brea…

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安全/权限相关的待验证问题：gossip_signals accepts performance-class signals for the 'orchestrator' pseudo-agent, silently opening its circuit breaker
- 对用户的影响：可能影响授权、密钥配置或安全边界。
- 证据：community_evidence:github | https://github.com/gossipcat-ai/gossipcat-ai/issues/697 | 来源类型 github_issue 暴露的待验证使用条件。

## 24. 安全/权限坑 · 来源证据：key list / key set never report which store they resolved — and on Windows the messages name a keychain that is never u…

- 严重度：medium
- 证据强度：source_linked
- 发现：GitHub 社区证据显示该项目存在一个安全/权限相关的待验证问题：key list / key set never report which store they resolved — and on Windows the messages name a keychain that is never used
- 对用户的影响：可能影响授权、密钥配置或安全边界。
- 证据：community_evidence:github | https://github.com/gossipcat-ai/gossipcat-ai/issues/667 | 来源讨论提到 windows 相关条件，需在安装/试用前复核。

## 25. 能力坑 · 失败模式：capability: Signal pipeline scores a legitimate design disagreement as an accuracy penalty

- 严重度：low
- 证据强度：source_linked
- 发现：Developers should check this capability risk before relying on the project: Signal pipeline scores a legitimate design disagreement as an accuracy penalty
- 对用户的影响：Developers may hit a documented source-backed failure mode: Signal pipeline scores a legitimate design disagreement as an accuracy penalty
- 证据：failure_mode_cluster:github_issue | https://github.com/gossipcat-ai/gossipcat-ai/issues/678 | Signal pipeline scores a legitimate design disagreement as an accuracy penalty

## 26. 运行坑 · 失败模式：performance: Raw NUL byte in performance-writer.ts makes it invisible to grep -r (caused 2 false consensus...

- 严重度：low
- 证据强度：source_linked
- 发现：Developers should check this performance risk before relying on the project: Raw NUL byte in performance-writer.ts makes it invisible to grep -r (caused 2 false consensus findings)
- 对用户的影响：Developers may hit a documented source-backed failure mode: Raw NUL byte in performance-writer.ts makes it invisible to grep -r (caused 2 false consensus findings)
- 证据：failure_mode_cluster:github_issue | https://github.com/gossipcat-ai/gossipcat-ai/issues/693 | Raw NUL byte in performance-writer.ts makes it invisible to grep -r (caused 2 false consensus findings)

## 27. 运行坑 · 失败模式：performance: gossip_session_save regenerates next-session.md wholesale — carried-over open items are silen...

- 严重度：low
- 证据强度：source_linked
- 发现：Developers should check this performance risk before relying on the project: gossip_session_save regenerates next-session.md wholesale — carried-over open items are silently dropped unless re-typed into notes
- 对用户的影响：Developers may hit a documented source-backed failure mode: gossip_session_save regenerates next-session.md wholesale — carried-over open items are silently dropped unless re-typed into notes
- 证据：failure_mode_cluster:github_issue | https://github.com/gossipcat-ai/gossipcat-ai/issues/684 | gossip_session_save regenerates next-session.md wholesale — carried-over open items are silently dropped unless re-typed into notes

## 28. 维护坑 · issue/PR 响应质量未知

- 严重度：low
- 证据强度：source_linked
- 发现：issue_or_pr_quality=unknown。
- 对用户的影响：用户无法判断遇到问题后是否有人维护。
- 证据：evidence.maintainer_signals | https://github.com/gossipcat-ai/gossipcat-ai | issue_or_pr_quality=unknown

## 29. 维护坑 · 发布节奏不明确

- 严重度：low
- 证据强度：source_linked
- 发现：release_recency=unknown。
- 对用户的影响：安装命令和文档可能落后于代码，用户踩坑概率升高。
- 证据：evidence.maintainer_signals | https://github.com/gossipcat-ai/gossipcat-ai | release_recency=unknown

## 30. 维护坑 · 失败模式：maintenance: gossipcat v0.6.8

- 严重度：low
- 证据强度：source_linked
- 发现：Developers should check this maintenance risk before relying on the project: gossipcat v0.6.8
- 对用户的影响：Upgrade or migration may change expected behavior: gossipcat v0.6.8
- 证据：failure_mode_cluster:github_release | https://github.com/gossipcat-ai/gossipcat-ai/releases/tag/v0.6.8 | gossipcat v0.6.8

## 31. 维护坑 · 失败模式：maintenance: gossipcat v0.6.9

- 严重度：low
- 证据强度：source_linked
- 发现：Developers should check this maintenance risk before relying on the project: gossipcat v0.6.9
- 对用户的影响：Upgrade or migration may change expected behavior: gossipcat v0.6.9
- 证据：failure_mode_cluster:github_release | https://github.com/gossipcat-ai/gossipcat-ai/releases/tag/v0.6.9 | gossipcat v0.6.9

<!-- canonical_name: gossipcat-ai/gossipcat-ai; human_manual_source: deepwiki_human_wiki -->
