Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

虚拟论坛

v5.0.3

虚拟论坛:让蒸馏的人物Skill就特定话题展开讨论。 v5.0使用Claude Code CLI实现真正的多agent并行辩论。 内置博弈论分析模块(信号博弈、议价博弈、联盟博弈、行为经济学)。 触发词:「虚拟论坛」「发起讨论」「圆桌会议」「辩论」「主持讨论」「让XX YY讨论」

0· 71·0 current·0 all-time
byYirong@erongcao

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for erongcao/virtual-forum.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "虚拟论坛" (erongcao/virtual-forum) from ClawHub.
Skill page: https://clawhub.ai/erongcao/virtual-forum
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install virtual-forum

ClawHub CLI

Package manager switcher

npx clawhub@latest install virtual-forum
Security Scan
Capability signals
CryptoCan make purchases
These labels describe what authority the skill may exercise. They are separate from suspicious or malicious moderation verdicts.
VirusTotalVirusTotal
Suspicious
View report →
OpenClawOpenClaw
Suspicious
high confidence
Purpose & Capability
The name/description (multi‑agent virtual forum that uses distilled persona Skills) matches the code and scripts: it loads other Skills (SKILL.md) and composes system prompts to drive Claude Code processes. That behavior is coherent with the stated purpose. Minor inconsistency: the package/registry metadata declares no required env vars or binaries, but the README/SKILL.md and scripts require the Claude Code CLI and configured API auth.
!
Instruction Scope
SKILL.md and v5/debate_parallel.sh explicitly read local SKILL.md files (e.g., ~/.openclaw/.../SKILL.md), inject their contents into system prompts, and send them to an external model via the Claude CLI. That means arbitrary local Skill content (and anything embedded in those files) will be transmitted to an external service. The SKILL.md does warn about this, but the runtime instructions give the agent broad discretion to load and forward local skill files and to construct system prompts — this is beyond simple internal computation and is sensitive by nature.
Install Mechanism
No install spec is included (instruction/code bundle only), which reduces supply‑chain risk. However the README instructs users to install an external Claude Code CLI (brew or npm) and to run debate_parallel.sh which will spawn external processes. There are no downloads from untrusted URLs in the bundle itself. The missing formal declaration of required external CLI in the registry metadata is a practical shortcoming.
!
Credentials
The skill asks users (in docs) to set SKILLS_DIR and OUTPUT_DIR and requires a configured Claude CLI/API key, but the registry metadata lists no required env vars/credentials. The skill will read arbitrary files under the user's skills directory (SKILL.md of other persona Skills) which may contain secrets or API keys if users put them there. While reading persona Skill files is functionally necessary, transmitting them to an external API is high‑sensitivity and should be explicitly declared and minimized.
Persistence & Privilege
The skill does not request always:true and does not modify other skills' configurations according to the provided files. It writes outputs to an output directory and uses temporary files; nothing in the manifest suggests it gains elevated or permanent platform privileges.
Scan Findings in Context
[system-prompt-override] expected: The SKILL.md constructs system prompts by embedding local SKILL.md contents and passing them to the Claude CLI (e.g., --system-prompt). This matches the detected pattern: it's expected for this skill's design but is the mechanism that allows local Skill content to be sent to an external model (and therefore is the primary risk vector).
What to consider before installing
This skill is coherent with its purpose (it needs persona text to simulate participants) but it will read local SKILL.md files and send their contents to an external Claude service via the Claude Code CLI. Before installing or running it: 1) Do not keep secrets, API keys, or credentials inside any SKILL.md or untrusted files in your skills directory; sanitize or remove sensitive data. 2) Inspect v5/debate_parallel.sh and shared loadSkill() to confirm which paths are read and how prompts are constructed. 3) Be aware you must install and authenticate the external 'claude' CLI (which uses its own API key) — the skill does not declare that credential requirement in the registry metadata. 4) If you want to test safely, run the skill in an isolated environment or container, point SKILLS_DIR to a sanitized copy containing only persona texts, and set OUTPUT_DIR to a controlled folder. 5) If you cannot guarantee SKILL.md files are free of secrets, avoid running the parallel‑Claude mode or modify the script to avoid transmitting raw skill files (e.g., extract only allowed fields or use local-only simulation).

Like a lobster shell, security has layers — review code before you run it.

latestvk975251z90san4zwwp5gvbqcf9852wag
71downloads
0stars
3versions
Updated 1w ago
v5.0.3
MIT-0

🎭 虚拟论坛 Virtual Forum v5.0

"让思想碰撞,让智慧涌现。"

v5.0 架构

v5.0 使用外部CLI实现真正的多agent并行辩论:

  • v5/debate_parallel.sh - Claude Code并行辩论脚本
  • v5/game-theory/ - 博弈论分析模块(可独立使用)

不再维护:v3.x 和 v4.0 已废弃(代码已移除)

⚠️ 安全警告

v5.0 会读取本地Skill文件并发送到外部API。请注意:

  1. Skill内容外传:脚本读取 SKILL.md 文件内容,通过 claude --print 发送到外部
  2. 敏感信息:确保Skill文件中不包含密码、API密钥或其他私密信息
  3. 路径配置:使用环境变量 SKILLS_DIROUTPUT_DIR 避免硬编码路径
  4. 网络传输:所有Skill内容会通过HTTPS发送到Claude API

核心理念

虚拟论坛是一个多角色讨论框架,让蒸馏的人物Skill就特定话题展开有意义的对话。

不是简单的问答,而是结构化的思想交锋


核心概念

两种讨论模式

模式目标适合场景
探索性讨论多角度剖析 → 发展 → 结论复杂问题、需要综合视角
对抗性讨论争辩 → 交锋 → 胜负/共识决策分歧、需要明确方向
决策型讨论多专家投票 → 加权评分 → 行动需要拍板、有明确选项

可配置参数

轮次: 10 / 20 / 50 轮
主持人: 总主持 + 技术主持(可选)+ 魔鬼代言(可选)
参与者: 2-N 人
发言限时: 3分钟 / 5分钟 / 不限时
胜负判定: 点数制 / 投票制 / 让步制
输出格式: 对话流 / 报告流 / 决策流

执行流程

Phase 1: 配置讨论

收集用户配置

参数选项说明
话题用户输入要讨论的问题
模式探索性/对抗性/决策型讨论目标
轮次10/20/50讨论深度
参与者2-N人已蒸馏的Skill
主持人风格理性/犀利/整合见下方
输出格式对话流/报告流结果展示

主持人风格

风格特点适用场景
理性主持人客观中立,善于引导学习型讨论
犀利主持人追问到底,挑战每个观点深度分析
整合主持人归纳推动,形成共识决策讨论

Phase 2: 初始化讨论

  1. 加载参与者Skill

    • 读取每个参与者的SKILL.md
    • 提取心智模型、表达DNA、核心观点
  2. 生成开场白

    • 主持人自我介绍
    • 介绍话题和参与者
    • 说明讨论规则
  3. 分配角色(如有需要)

    • 技术主持:追问技术细节
    • 魔鬼代言:故意唱反调

Phase 3: 执行讨论

每轮结构

┌─────────────────────────────────────────┐
│ 第N轮                                    │
├─────────────────────────────────────────┤
│ 1️⃣ 轮流陈述   每人阐述观点 (限时)        │
│ 2️⃣ 交叉提问   可以点名某人提问           │
│ 3️⃣ 回应追问   被点名者回应              │
│ 4️⃣ 自由交锋   随机或点名辩论            │
│ 5️⃣ 回合总结   主持人简要归纳             │
└─────────────────────────────────────────┘

不同模式的轮次差异

模式第1-2轮第3-N-2轮最后2轮
探索性开场陈述深入探讨综合结论
对抗性立论质疑反驳胜负判定
决策型各方立场利弊分析投票表决

Phase 4: 追踪论点

论点追踪表

┌──────────┬─────────┬─────────┬─────────┬─────────┐
│ 参与者   │ 核心论点 │ 被追问  │ 有效反驳│ 得分    │
├──────────┼─────────┼─────────┼─────────┼─────────┤
│ 巴菲特   │ 3个     │ 2次     │ 1次     │ +5      │
│ 芒格     │ 4个     │ 3次     │ 2次     │ +8      │
└──────────┴─────────┴─────────┴─────────┴─────────┘

得分规则

  • 提出有效论点:+2分
  • 成功反驳对方:+3分
  • 被有效反驳:-1分
  • 回避问题:-2分

Phase 5: 判定结果

判定方式说明
点数制轮次结束统计点数,高分者胜
投票制主持人/观众投票
让步制一方主动承认对方更合理
无胜负达成"保留分歧的共识"

Phase 6: 生成输出

对话流格式

🎙️ 主持人:开场
💬 A:观点
💬 B:回应
⚔️ A vs B:交锋
📋 主持人:总结

报告流格式

# 讨论报告

## 话题
...

## 参与者
...

## 核心论点
### A方
...
### B方
...

## 共识
...

## 分歧
...

## 结果
...

决策流格式

# 决策建议

## 问题
...

## 方案A | 方案B | 方案C
...

## 投票结果
...

## 建议行动
1. ...
2. ...

使用示例

# 启动虚拟论坛
发起讨论:巴菲特 vs 芒格,当前市场该激进还是保守?

# 指定配置
虚拟论坛
模式:对抗性
轮次:20
参与者:巴菲特、芒格、马斯克
主持人:犀利主持人
输出:对话流

# 快速启动
让乔布斯和马斯克讨论:电动车行业未来

技术实现

核心模块

virtual-forum/
├── forum-engine.js       # 主讨论引擎
├── moderator.js          # 主持人逻辑
├── argument-tracker.js   # 论点追踪
├── verdict-calculator.js # 胜负判定
└── output-formatter.js   # 输出格式化

关键功能

  1. Skill加载器:读取已蒸馏的Skill
  2. 观点生成器:基于Skill的思维框架生成观点
  3. 论点追踪器:记录每轮交锋
  4. 判定引擎:计算最终结果
  5. 格式化器:生成可读输出

与女娲的关系

女娲蒸馏人物,虚拟论坛让蒸馏的人物"活"起来。

  • 女娲 → 造人:提取思维框架
  • 虚拟论坛 → 用人:让框架互动

诚实边界

  • 虚拟论坛的观点是基于Skill中记录的思维框架"模拟"生成
  • 不是真正的人物在思考
  • 结果应作为参考,不是真理
  • 胜负判定是游戏化的,帮助结构化思考

v3.6 行为经济学增强版 (2026-04-12)

基于三本经典著作实现的行为经济学模块:

  • 前景理论 (Kahneman & Tversky, 1979) - 风险决策分析
  • 有限理性模型 (Simon & Jones, 1999) - 认知限制与决策
  • 助推理论 (Thaler & Sunstein, 2008) - 选择架构设计

新增核心模块

const { BehavioralEconomicsSubagentArena } = require('./v3/behavioral-arena');

const arena = new BehavioralEconomicsSubagentArena();
await arena.initArenaWithBehavioralEconomics({
  topic: "气候变化政策",
  participants: [
    { name: "环保主义者", position: "激进减排" },
    { name: "经济学家", position: "成本效益平衡" }
  ],
  rounds: 5
});

v3.7 博弈论增强版 (2026-04-18)

实现真正的博弈论计算,不再是"博弈论主题装饰"。基于:

  • Myerson (1991) - Nash均衡计算公式
  • Fudenberg & Tirole (1991) - 博弈论经典教材
  • Brown (1951) - Fictitious Play学习动态

核心新增模块

// 真正的博弈论框架
const { GameTheoryArena, GameStructure, BayesianBeliefSystem } = require('./v3/game-theory-v2');

const arena = new GameTheoryArena();
await arena.initArenaWithGameTheory({
  topic: "NVDA估值是否合理",
  participants: [
    { name: "巴菲特", skillName: "buffett" },
    { name: "木头姐", skillName: "cathie-wood" }
  ],
  discountFactors: { '巴菲特': 0.95, '木头姐': 0.85 },
  outsideOptions: { '巴菲特': 15, '木头姐': 5 }
});

// 计算Nash均衡
const eq = arena.calculateNashEquilibrium();
// 输出: { type: 'mixed', player1: {prob: 0.7}, player2: {prob: 0.6}, confidence: 0.9 }

// 获取博弈论报告
console.log(arena.getGameTheoryReport());

理论实现

1. 博弈结构 (GameStructure)

显式定义支付矩阵和策略空间:

  • 策略空间: 每个参与者可选择"强硬"或"让步"
  • 支付矩阵: 博弈收益的完整映射
  • Nash均衡计算: 2x2博弈使用解析公式,更复杂博弈使用Fictitious Play近似

2. Nash均衡计算

2x2博弈解析解 (Myerson 1991):

p = (d - c) / (a + d - b - c)
其中:
a = A强硬B强硬的收益
b = A强硬B让步的收益
c = A让步B强硬的收益
d = A让步B让步的收益

N人博弈: 使用Fictitious Play迭代逼近均衡

3. 贝叶斯信念更新 (BayesianBeliefSystem)

真正的贝叶斯更新,非硬编码乘数:

P(H|E) = P(E|H) × P(H) / P(E)

// 例如:观察到攻击性行为 → 更新对手类型信念
posterior = bayesianUpdate('对手', 'aggressive')
// 返回: { prior, posterior, updateStrength }

博弈论功能

均衡分析

const eq = arena.calculateNashEquilibrium();
// { type: 'mixed', confidence: 0.95, equilibriumPayoff: 45.2 }

策略建议

// 基于均衡分析生成策略建议
const advice = arena.getStrategyAdvice('巴菲特');
// 返回: { shouldConcede: false, utility: 38.5, reason: '...' }

贝叶斯预测

const prediction = arena.beliefSystem.predict('木头姐');
// 返回: { type: 'growth', confidence: 0.78 }

对比: v3.5 vs v3.7

功能v3.5v3.7
折扣因子
BATNA外部选项
贝叶斯更新⚠️ 硬编码乘数✅ 真正的贝叶斯
Nash均衡✅ 解析解+Fictitious Play
支付矩阵⚠️ 隐式✅ 显式定义
占优策略检验
博弈树/逆向归纳🔜 后续版本

文件结构

v3/
├── behavioral/               # 行为经济学模块
├── behavioral-arena.js      # v3.6 行为经济学竞技场
├── game-theory-arena.js     # v3.5 博弈论竞技场(基础版)
└── game-theory-v2.js        # v3.7 博弈论竞技场(真正实现)🆕

使用建议

  • 简单辩论使用 SubagentArena (v3.4)
  • 博弈论分析使用 GameTheoryArena (v3.7) ← 推荐
  • 行为经济学 + 博弈论使用 BehavioralEconomicsSubagentArena (v3.6)

行为经济学功能

1. 前景理论引擎

  • 价值函数: 收益凹函数(风险厌恶) vs 损失凸函数(风险寻求)
  • 概率加权: 高估小概率,低估中高概率
  • 四折模式: 解释彩票偏好、保险购买、确定性效应
  • 框架效应: 增益框架 vs 损失框架的偏好逆转
  • 损失厌恶: λ ≈ 2.25,损失影响是收益的2.25倍

2. 有限理性引擎

  • 满意化决策: 寻找足够好的方案而非最优
  • 可得性启发: 基于记忆可提取性判断概率
  • 代表性启发: 基于相似性判断,忽视基础概率
  • 锚定调整: 从初始值出发,调整不足
  • 双系统理论: 系统1(快速直觉) vs 系统2(慢速理性)
  • 注意力模型: 注意力作为稀缺资源的分配

3. 助推理论引擎

  • 选择架构: 默认选项、排序效应、简化选择
  • 社会规范: 利用从众心理和社会证明
  • 框架设计: 增益/损失/社会框架的应用
  • 反馈机制: 即时反馈、社会比较、游戏化
  • 承诺机制: 软承诺到硬承诺的设计

辩论中的应用

偏差检测

const insights = arena.analyzeRoundBehavior(roundData);
// 检测:损失厌恶、确定性效应、可得性偏差、锚定效应等

策略建议

const advice = arena.generateBehavioralAdvice(agentName, {
  position: "支持",
  opponentPosition: "反对",
  topic: "议题",
  audienceProfile: { riskAverse: true }
});

综合报告

const report = arena.generateBehavioralReport();
// 包含:博弈论分析 + 行为经济学洞察 + 综合策略建议

v3.9 高级博弈论完整版 (2026-04-18)

v3.8基础上新增P1级别模块:

  • Rubinstein议价博弈 - 轮流议价模型
  • Shapley联盟博弈 - 联盟价值分配与核心稳定性

理论依据:

  • Rubinstein (1982) - 轮流议价均衡
  • Shapley (1953) - 联盟博弈核心论文

核心新增模块

const {
    SignalingGame,
    RepeatedGameEngine,
    InformationDesigner,
    BargainingGame,      // 🆕 议价博弈
    CoalitionGame,       // 🆕 联盟博弈
    AdvancedGameTheoryArena,
} = require('./v3/advanced-game-theory');

4. 议价博弈 (BargainingGame) [P1]

核心问题:蛋糕如何分配?谁先出价?耐心程度如何影响结果?

Rubinstein均衡公式

p1_share = (1 - δ₂) / (1 - δ₁δ₂)  // P1先出价时
p2_share = δ₂(1 - δ₁) / (1 - δ₁δ₂)

功能

函数说明
calculateEquilibrium(delta1, delta2, firstMover)计算均衡份额
generateOffer(player, myDelta, oppDelta, value)生成出价建议
evaluateOffer(player, offeredShare, myDelta, oppDelta)评估是否接受
getBargainingPhase()获取议价阶段分析

示例

const bargaining = new BargainingGame();
const eq = bargaining.calculateEquilibrium(0.9, 0.85, 'player1');
// P1先出价: P1=57.9%, P2=42.1%

const offer = bargaining.generateOffer('巴菲特', 0.9, 0.85, 100);
// 返回出价建议和策略分析

const eval = bargaining.evaluateOffer('马斯克', 0.35, 0.9, 0.85);
// 返回是否应该接受当前出价

5. 联盟博弈 (CoalitionGame) [P1]

核心问题:谁和谁结盟?收益如何公平分配?联盟是否会崩溃?

Shapley公式

φ_i(v) = Σ_{S⊆N\{i}} [|S|!(n-|S|-1)!/n!] × [v(S∪{i}) - v(S)]

功能

函数说明
calculateShapleyValues()计算Shapley值
calculateAllCoalitions()所有联盟及其价值
checkCoreStability(shapley)核心稳定性检测
predictOptimalCoalition()预测最优联盟

示例

const coalition = new CoalitionGame();
coalition.init(['巴菲特', '马斯克', '木头姐'], (S) => {
    if (S.length === 0) return 0;
    if (S.length === 1) return 1;
    if (S.length === 2) return 3;
    return 5;  // 三人联盟最大价值
});

const shapley = coalition.calculateShapleyValues();
// { '巴菲特': 2.33, '马斯克': 2.33, '木头姐': 2.33 }

const stability = coalition.checkCoreStability(shapley.shapleyValues);
// { isStable: true, stabilityScore: 100 }

对比: v3.8 vs v3.9

功能v3.8v3.9
信号博弈
重复博弈
信息设计
议价博弈
联盟博弈
Shapley值
核心稳定性

文件结构

v3/
├── behavioral/               # 行为经济学模块
├── behavioral-arena.js      # v3.6
├── game-theory-arena.js     # v3.5
├── game-theory-v2.js        # v3.7
├── advanced-game-theory.js  # v3.9 ⭐ 完整版
└── game-theory-v2.js       # v3.7

使用建议

  • 简单辩论: SubagentArena (v3.4)
  • 博弈论分析: GameTheoryArena (v3.7)
  • 深度辩论(推荐): AdvancedGameTheoryArena (v3.9)

理论来源

  1. Kahneman, D., & Tversky, A. (1979). Prospect Theory: An Analysis of Decision under Risk. Econometrica, 47(2), 263-291.

  2. Jones, B. D. (1999). Bounded Rationality. Annual Review of Political Science, 2, 297-321.

  3. Thaler, R. H., & Sunstein, C. R. (2008). Nudge: Improving Decisions About Health, Wealth, and Happiness. Yale University Press.

Comments

Loading comments...