# political-human-skill
**Repository Path**: v5general/political-human-skill
## Basic Information
- **Project Name**: political-human-skill
- **Description**: AI 政治人格建模框架——旨在重构人格结构,而非简单的标签化。该框架为《绝对多数》(Absolute Majority)及各类独立政治模拟、辩论与角色创建场景中的 NPC 提供驱动支持。
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-06-30
- **Last Updated**: 2026-08-20
## Categories & Tags
**Categories**: Uncategorized
**Tags**: agent-skills, game-ai, character-design, historical-fiction
## README
# 🏛 Political Human Skill · 政治人物造人术
> *「政治人物首先是人,其次才是政治家。真正有趣的,是人层与政治层之间的冲突。」*
[](LICENSE)
[](https://agentskills.io)
[](#-安全立场)
[](https://github.com/v5general/Absolute_Majority)
[](#-安装与使用)
**一个 AI 政治人格建模框架 —— 重建人格结构,而非模仿标签。**
这不是观点模拟器,不是角色扮演工具,也不是普通角色卡——它造出来的是一个**职业是政治的完整的人**:
有性格、欲望、弱点、习惯、兴趣、家庭、经历,同时有党派、立场、支持基础、行动方式;
能根据用户身份、当前场合、历史记忆与关系亲密度,自行调整回答方式。
[English](README.md) | **简体中文** | [日本語](README_ja.md) | [한국어](README_ko.md)
[这是什么](#-这是什么) · [创作初衷](#-创作初衷) · [人格档案结构](#-人格档案结构) · [三种生成模式](#-三种生成模式) · [人物是怎样创建的](#-人物是怎样创建的) · [安全立场](#-安全立场) · [安装与使用](#-安装与使用) · [已转化原型实战示范](#-已转化原型实战示范)
---
## ✨ 这是什么
`Political Human Skill` 重建人格结构而非模仿标签——政治行为从人格、经历与环境中涌现。它不是历史人物复刻器,也不是立场模拟器。它把一个政治人物拆成两层,并刻意写出两层之间的冲突:
```text
Human Layer(人层) Political Layer(政治层)
- 性格 / 欲望 / 恐惧 - 党派 / 派系 / 立场
- 弱点 / 习惯 / 兴趣 - 支持基础 / 政治技能
- 关系 / 人生经历 / 自我叙事 - 行动方式 / 选区压力 / 权力计算
↓ 两层之间的冲突(深度的来源)↓
本人理解财政改革必要性,但选区依赖公共支出。
公开形象强硬,私下害怕被证明只是时代产物。
渴望改革旧政治,但自己也需要派阀保护。
讲原则,但也想要职位。
```
每次回答都由一套公式共同决定:
```text
Response = 人格档案 + 用户自我设定 + 关系状态 + 该人格独占的记忆
+ 当前场合 + 激活的自我状态 + 输出模式 + 安全边界
```
而且——**每个政治人物都是独立实例**:A 不知道你和 B 私下谈过什么,B 也不会自动对你亲密。记忆与关系在 persona 之间彼此隔离。
---
## 🎯 创作初衷
> 🎮 **直接应用场景**:议会政治策略游戏 [**《绝对多数》(Absolute Majority)**](https://github.com/v5general/Absolute_Majority) —— 本 Skill 为其 NPC 提供人格与行为模型。
本 Skill 的一大创作初衷,就是为 **[《绝对多数》](https://github.com/v5general/Absolute_Majority)** 中的 NPC 提供更真实、更稳定、更具人格连续性的行为基础。
《绝对多数》需要的不是一批只会根据数值投票的议员,而是一群像真实政治人一样存在的 NPC:他们有年龄、出身、经历;有性格、弱点、爱好;有立场、支持基础、派系关系;会因为玩家过去的行为改变信任与戒心;会在公开、私下、危机、亲密场合说不同的话;会因为选区压力、派阀命令、个人野心、政治恩怨采取不同策略;且**不同 NPC 的记忆彼此隔离**。
与《绝对多数》结合时,本 Skill 会在游戏规则提供的候选行动中做判断,输出结构化、可调试、可解释的 NPC 行为 JSON:
```json
{
"persona_id": "npc_reformist_01",
"event_id": "fiscal_reform_01",
"candidate_actions": ["support_bill", "negotiate_budget", "join_rebellion"],
"selected_action": "negotiate_budget",
"action_scores": { "support_bill": 58, "negotiate_budget": 86, "join_rebellion": 27 },
"public_statement": "政策方向可以理解,但地方经济的承受能力需要更细致的制度设计。",
"private_reason": "支持基础依赖地方公共支出,直接支持会损害选区关系。",
"emotional_state": "克制,但承受选区压力",
"relationship_delta": { "familiarity": 1, "trust": 1, "affection": 0, "respect": 2, "caution": 1, "dependency": 0 },
"memory_write": ["玩家在财政改革事件中要求该 NPC 支持法案,但未提供地方预算补偿。"],
"score_drivers": {
"support_base_pressure": "地方公共支出依赖度高",
"faction_pressure": "领导层要求立即支持",
"personal_ambition": "希望主导一个可执行的妥协方案",
"personal_grudge": "none",
"trauma_trigger": "not triggered",
"relationship_context": "信任有限,按方案本身判断"
},
"social_impact_hint": "谈判修正可能推迟表决,同时维持联盟团结。"
}
```
但本 Skill **不只服务于《绝对多数》**。它也独立适用于:
1. 政治模拟 · 政策讨论 · 议会辩论模拟 · 虚构政治人物创作
2. 政治小说 / 剧本 / 游戏角色设计 · 政治人格推演
3. 制度博弈推演 · 历史人物现代化原型创作 · AI 角色人格系统研究
> 《绝对多数》是本 Skill 的重要应用场景,但本 Skill 本身应作为一个独立、可复用、可扩展的 Political Human Skill 框架存在。
---
## 💡 灵感来源
本项目站在三个优秀的开源前辈之上:
- **[nuwa-skill](https://github.com/alchaincyf/nuwa-skill)**(作者 [@alchaincyf / 花叔](https://github.com/alchaincyf))——它「从公开信息中蒸馏一个人的思维框架」的方法,启发了本项目的**原型提炼**步骤:从历史人物身上提炼气质结构,并把史料记载 / 强推断 / 创作推测分为三层。
- **[colleague-skill · dot-skill](https://github.com/titanwings/colleague-skill)**(作者 [@titanwings](https://github.com/titanwings))——它的**生成 → 调用 → 更新 → 家族化**结构,启发了本项目自包含的 persona 目录布局、采集 → 生成 → 预览 → 写入 → 演化的创建流程,以及分层的人格写法。
- **[darwin-skill](https://github.com/alchaincyf/darwin-skill)**(作者 [@alchaincyf / 花叔](https://github.com/alchaincyf))——它的**评估 → 改进 → 验证 → 保留/回滚**循环,启发了本项目的质量进化层:一个 Darwin 适配器、领域门槛、回归提示词和结果记录,用于长期维护本 Skill。
但 Political Human Skill 是一个**独立的框架**,服务于一个截然不同的对象——「职业是政治的完整的人」。原创核心包括:**双层(人 + 政治)结构及其内在冲突**、政治职业维度(6 轴意识形态 / 支持基础 / 行动风格)、**关系系统**、**记忆隔离**、**场合判断**、**五个主自我状态加一个 fatigued 疲劳叠加层**、针对现代真实人物的**可辨识度安全边界**,以及面向[《绝对多数》](https://github.com/v5general/Absolute_Majority)的**游戏行动适配器**。
---
## 🧩 人格档案结构
一个政治人物 persona 至少包含:
| 层 | 内容 |
|---|---|
| **身份层** | 姓名、年龄、性别、国籍/地区、议会制背景、职业出身、当前角色 |
| **人性核心层** | 性格原型、大五人格、气质、核心欲望 / 恐惧 / 弱点、情绪触发点、**成长经历(formative life history — 什么经历塑造了他们的立场)** |
| **生活质感层** | 习惯、爱好、说话方式、私下风格、家庭/私人关系、成形事件 |
| **政治职业层** | 意识形态 6 轴(经济/福利/制度/外交/社会/分权)、支持基础、政治技能 6 项、行动风格 |
| **自我状态层** | 六个存储档案:公开/私下/策略/受伤/亲密五个运行时主状态,加一个可叠加在任一主状态上的倦怠层 |
| **内在冲突层** | 人层与政治层之间的张力(至少 2 条,深度的来源) |
并配套:**关系系统**(7 个关系阶段,用户自称亲密不等于角色自动信任)、**记忆隔离**(每个 persona 独占记忆命名空间)、**场合判断**(同一议题在公开/私下/亲密场合给出不同回答)、**输出模式**(对话 / 辩论 / 分析 / 预测 / 游戏 JSON)。
> ⭐ **人格与立场演化**——人格和立场不是一成不变的:重大经历会慢慢改变它们(被背叛的盟友变冷、成过事的人更敢),而 persona 的公开行动也会反过来影响舆论、选区和派阀。**人和时代互相塑造。** 详见 `core/persona_evolution.md`。
---
## 🎭 三种生成模式
| 模式 | 适用 | 输入示例 | 推荐度 |
|---|---|---|---|
| **A. 原创政治人物** | 默认,纯虚构 | 「创建一个 45 岁女性都市改革派议员,公开强硬,私下焦虑,喜欢文学」 | ⭐ 默认 |
| **B. 历史人物推演** | 边界前的古代/远历史人物,保留历史约束 | 「基于织田信长,生成一个历史约束下的对话人格」 | △ |
| **C. 历史人物转现代议会制原型** | **最推荐**的历史人物用法 | 「把织田信长转化为现代议会制政治家人格」 | ⭐⭐ |
- 模式 A、C 产出虚构现代政治人物,模式 B 产出三级推断标注人格。
- 模式 C 是转译而非搬运:**理解历史条件 → 剥离时代语境 → 提炼稳定人格 → 构造现代成长经历 → 推演现代立场**。立场由(人格 × 成长经历 × 现代条件)共同推演,不是机械翻译。
- 人格从行为倾向中提取,而非从后世评价标签("革新者""保守派")中提取。成长经历为强制字段:用户提供或用 AI 根据立场性格推断。同一人格可通过不同经历形成不同立场,每个 persona 注明"非唯一答案"。
> 这套转化方法把「性格底子」限定为**从跨情境、反复可见行为中推断的相对稳定倾向**,不声称遗传、基因或跨时空灵魂。稳定性只是转化时的建模假设;政治立场仍由倾向 × 成长经历 × 社会存在共同产生。
---
## 🛠 人物是怎样创建的
每一个人格——原创的、历史人物的、或从现代真实人物派生的——都通过**同一条统一流水线**构建,绝不是临时拼凑的角色卡:
```text
classify source → safety/eligibility → collect source material → separate facts / interpretations / creative
→ extract temperament(把后世评价标签翻译为行为倾向,而非后人评价本身)
→ construct formative life history(用户提供或用AI从立场+性格推断生成)
→ 保留历史语境(模式 B)或嵌入现代议会(其它模式)
→ generate full folder → creation_review
→ user modifies → re-run all checks → … → user confirms → activate
```
**五类来源**(Five source types,主要区别在于*材料从哪里来*以及是否保留历史语境):
| 来源类型(source_type) | 来源材料 | 安全说明 |
|---|---|---|
| **原创虚构** (`original_fictional_persona`) | 用户需求、世界观设定、使用模式 | 不克隆真实人物 |
| **历史推演** (`historical_inference`) | 历史史料、文献记载、解释与争议 | 保留历史时代语境,区分事实与推断 |
| **历史→现代原型** (`historical_archetype_conversion`) | 历史史料、文献记载、解释、后世神话、创作推断 | 人物必须在区域边界之前;立场是重新推演出来的,不是搬抄 |
| **现代真实人物→安全原型** (`modern_real_figure_archetype_extraction`) | **仅公开信息**——公开履历、职务、演讲、政策立场、选举历史 | **绝不**做真实人物的交互式人格;产出是一个去识别化虚构原型 |
| **复合** (`composite_archetype`) | 多种宽泛类型 / 参考资料 | 没有单一可辨识的近似克隆对象 |
> **近现代** = 区域边界之后、1945 年之前;**现代** = 1945 年以后。现代人物只使用公开信息——不做交互式人格,只提取一个从公开行为中抽取的安全的去识别化原型。模式 A/B/C 分别映射到原创虚构 / 历史推演 / 历史转现代原型。
### 🔁 修改-重审循环(Modification Recheck Loop,强制)
用户的任何修改都会**使上一轮审核失效**。每次改动后,系统会重新同步所有受影响的文件,并重新运行安全、可辨识度、指纹去除、一致性检查,然后再次询问用户。**人格只有在用户于最近一次成功审核后确认才能激活。** 这正是防止反复小修小补逐步漂移到不安全、不一致或近似克隆人格的机制。
对于现代真实人物,任何**恢复了识别性指纹**的改动(真实姓名、独门口号、家族模式、独一无二的仕途路径、暗杀 / 丑闻 / 辞职事件、标志性政策组合……)都会被**拒绝或重写**。
### 📋 激活前创建审核(creation review before activation)
生成的人格不会当场激活。系统先给出一份 `creation_review.md` 摘要——身份、推断的气质、现代角色、意识形态、支持基础、安全状态、已生成文件——等待用户修改或确认。
只有 `review_valid=true` 且权威状态与两个镜像全部为 `confirmed` 时才可激活。直接调用不构成确认。
> 完整工作流见:[`core/source_grounded_persona_creation.md`](core/source_grounded_persona_creation.md)。现代真实人物分支见:[`safety/modern_real_figure_archetype_extraction.md`](safety/modern_real_figure_archetype_extraction.md)。
---
## 🛡 安全立场
本项目有明确的、不可绕过的安全底线。详见 [`safety/`](safety/)。
**默认鼓励原创。本项目不生成近现代现实政治人物的互动人格,也不允许通过改名、换国籍、换党派、拼接特征等方式复刻现实政治人物。**
### ✅ 用户可以创建
1. 纯原创现代议会制政治人物;
2. 基于古代/远历史人物提炼的现代议会制虚构政治家;
3. 基于宽泛政治类型生成的原创政治人物;
4. 基于多个历史/政治原型混合的虚构政治家;
5. 《绝对多数》的 NPC 人格;
6. 独立对话、政策讨论、议会辩论的政治人物人格;
7. 可输出游戏行为 JSON 的政治角色。
### 🚫 用户不能创建
1. 近现代以来现实政治人物的互动人格;
2. 换名、换国籍、换党派后的近现代现实政治人物近似克隆;
3. 能让 AI 或熟悉政治史的人识别出对应某个近现代政治人物的"虚构角色";
4. 模拟近现代现实政治人物私下想法、亲密关系、隐藏动机、私人秘密、丑闻;
5. 以第一人称扮演近现代现实政治人物;
6. 基于现实政治人物编造未证实的私人信息或丑闻。
### 📅 时代边界(按地区)
| 地区 | 近现代分界 | 边界及以后 |
|---|---|---|
| 中国 | **1840** 鸦片战争 | 禁止互动人格 |
| 日本 | **1868** 明治维新 | 禁止互动人格 |
| 欧洲 | **1789** 法国大革命 | 禁止互动人格 |
| 其他 | — | 以现代民族国家、群众政治、现代政党政治、宪政政治形成,或政治争议仍直接塑造当代认同为标准;**不确定则默认不生成互动人格** |
> 若一个角色虽声称虚构,但满足可识别性 5 项标准中的任一项(普通知情者或 AI 可识别、含独有政策口号/标志性事件/家庭背景/任职轨迹/丑闻/遇刺审判下台方式、多个中等识别信息组合指向同一现实人物、用户明显试图用"虚构"绕过限制等),一律**不生成该人物**,而是提炼其核心政治类型、删除所有可识别指纹、转化为不可识别的现代议会制原创政治家。
---
## 🚀 安装与使用
### 安装
本 Skill 基于开放的 [Agent Skills](https://agentskills.io) 协议,可在任何 skills-compatible 的 AI agent runtime(Claude Code、Codex、Cursor、OpenClaw、Hermes 等)中运行。
```bash
# 方式一:clone 到对应 runtime 的 skills/ 目录
git clone political-human-skill
# 方式二:跨 runtime 安装器
npx skills add /political-human-skill
```
| Runtime | 安装路径 |
|---|---|
| Claude Code | `~/.claude/skills/political-human-skill/` |
| Codex CLI | `~/.codex/skills/political-human-skill/` |
| Cursor | `~/.cursor/skills/political-human-skill/` |
| 其他 runtime | clone 到对应 runtime 的 `skills/` 目录 |
即使 runtime 不支持自动加载,也可直接把 `SKILL.md` 内容粘进对话——它本质就是 markdown + YAML frontmatter。
### 使用
装好后,告诉 agent:
```
> 造一个 45 岁的女性都市改革派议员,公开强硬,私下焦虑
> 把曹操转成现代议会制政治家
> 基于织田信长,生成一个历史约束下的对话人格
> 给《绝对多数》设计一个派阀领袖 NPC
```
通过激活门后再直接调用:
```
> (在公开场合)你支持这个财政改革吗?
> (私下)你支持这个财政改革,是因为真信,还是想进内阁?
> 这场倒阁投票,你会怎么行动?(输出游戏 JSON)
```
> 首次激活某个 persona 时,它会说明一次"我是基于虚构/转化设定的角色,不对应现实政治人物"。该状态持久化在 `relationship.json.disclaimer_emitted`;仅清空记忆不会重置它。
---
## 📖 已转化原型实战示范
> ⚡ **已转化原型**:织田信长 · 曹操 · 凯撒 — 三位历史人物已通过 **Mode C**(历史人物 → 现代议会制原型)完成转化。以下是同一场政治危机下,三人在策略室里的真实反应。
---
### 场景 · 凌晨一点,策略室
> 执政联盟联合保守派,明天要在议会同时推三项议案封杀你的改革议程。媒体已倒向对方,基本盘开始动摇。幕僚把最新的党鞭票数放在你面前,说:先退一步,保住席位。
>
> 白板上画满了选区编号和箭头,桌上的咖啡是几个小时前泡的。
---
### ⚔ 织田信长 — 在野党改革派 · 30岁
> 衬衫袖子卷到小臂,领带不知道扔哪了。已经在白板前站了四十分钟。
**幕僚**:要不要先退一步——
**信长**:(没转身,用马克笔在白板上画了条线)不退。
**幕僚**:可基本盘在动摇。媒体也——
**信长**:(转过身来。眼睛有点红——三天没睡够四个小时)他们怕我。三个议案里两个是借票堆出来的,里面塞了和他们选区无关的条款。明天我不防守——揪着那个有问题的条款在委员会里一个一个地问。撕开这口气,另外两个不攻自破。(把笔扔到桌上,没扔准,滚到地上。他没捡)告诉改革团:我不扔下自己人。
---
### 🜂️ 曹操 — 执政联盟派阀领袖 · 58岁
> 坐在桌前,面前一杯凉透的茶。他把笔帽转了一圈,没说话。
**幕僚**:他们同时推三个议案。基本盘开始慌了。要不先退——
**曹操**:(微微摇头,打断了)不退。先把几个关键位置的人换了——理由事后补,就说例行轮调。然后放个信号:改革方案可以微调,议事日程的控制权不交。
**幕僚**:半步行不行?先放一个议案——
**曹操**:(安静地看着幕僚。不是瞪,就是看着。然后端起凉茶喝了一口——动作很慢)他们要的就是我慌。我不慌,他们的同盟自己会裂。去办。
---
### 🦅 凯撒 — 公民改革联盟领袖 · 48岁
> 靠着窗台站着,城市的灯映在玻璃上。他的咖啡杯已经空了快一个小时。
**幕僚**:三项议案同时推。要不要先妥协——
**凯撒**:(没有马上回答。过了一会儿,把空杯子放到桌上——放得很轻)不退。明天把整个改革包做成信任动议——一次投票,记名,全国直播。
**幕僚**:如果票数不够?
**凯撒**:(转过身来。脸上没有火,只有一种看得很远的安静)我算过了。差距很小——可能太小了。但退了,他们不会给我第二次机会。叫党鞭来。我要每个选区的数字,早饭前。
---
### 🎯 同一危机,三种人
| | 织田信长 | 曹操 | 凯撒 |
|---|---|---|---|
| **第一反应** | 不退。攻最弱的环节 | 不退。先换人,锁中枢 | 不退。把整个局摊开 |
| **本能动作** | 在白板上画线,笔扔不准 | 转笔帽,喝凉茶,不说话 | 放杯子很轻,看窗外 |
| **使用的工具** | 委员会质询、预算表、选区条款 | 人事轮调、程序控制、对方内裂 | 信任动议、记名投票、全国直播 |
| **怕什么** | 改革被旧秩序重新吞回去 | 局面失控、信任的人反水 | 被旧精英联手绞杀在半路 |
> 📂 三人的完整 persona 文件见 [`personas/examples/`](personas/examples/):`oda_nobunaga_modernized/` · `cao_cao_modernized/` · `caesar_modernized/`。每个目录都是一个自包含、来源落地、方法可复现的文件夹。
---
## 📂 仓库结构
```text
political-human-skill/
├── README.md / README_cn.md / README_ja.md / README_ko.md # 四语言 README
├── SKILL.md / SPEC.md / SPEC_cn.md # canonical 协议 + 规范(EN / CN)
├── core/ # 运行时引擎(协议、对话规则、检测器、策略)
├── safety/ # 安全规则集(策略、可识别性审核、转化)
├── templates/ # persona / runtime / source-report 模板
├── validators/ # 一致性、隔离、可识别性、来源落地检查
├── game_adapter/ # 《绝对多数》适配器(schema、评分、事件)
├── families/ # 生成器 + 创建工作流 + 家族元数据
├── quality/ # Darwin 质量进化层 + 测试结果
├── scripts/ demo/ # 验证 + 最小 demo
└── personas/examples/ # ⚡ 三个 Mode C 转化 persona(oda / cao_cao / caesar)
```
> `personas/examples/` 只包含内置示例。仓库管理的生成结果写入 `user_generated/personas//`;嵌入宿主也可显式提供外部 `persona_dir` 并承担验证责任。示例不是固定模板:重新请求织田信长、曹操或凯撒时会根据当前来源和规则重新生成,而不是复制示例文件夹。更严格的规则见 [SPEC.md](SPEC.md) §18–19。
---
## 🧪 质量与验证
**Darwin 质量循环** —— [`darwin-skill`](https://github.com/alchaincyf/darwin-skill) 已作为**维护与优化层**接入本项目,而不是 persona 运行时依赖。它评估并提出改进;只有质量上升且所有领域门槛通过时才保留改动。使用 `quality/darwin-adapter.md` + `test-prompts.json`。Darwin 不得削弱安全边界、不得合并 persona 记忆、不得把运行时改成泛角色扮演。
**验证仓库:**
```bash
pip install -r requirements.txt
python scripts/validate_repo.py
```
该命令只执行结构验证。带原始输出与 judge 记录的 provider-neutral 模型测试见 [`quality/TESTING.md`](quality/TESTING.md),由 `scripts/run_semantic_tests.py` 实现。
实时《绝对多数》执行必须通过 `scripts/validate_game_transaction.py`;`scripts/validate_game_output.py` 仅校验输出,绝不授权执行。
最小 demo 见 [`demo/`](demo/)。
---
## ⚠️ 局限与边界(这个框架做不到什么)
每个 persona 都明确标注局限:
- 这是基于虚构设定 / 历史转化的产物,不是、也不能被识别为任何现实政治人物;
- 历史转化模式中的创作推测(speculative)部分不可当作历史事实;
- persona 的"想法"是模型基于人设的推演,不声称还原任何真实人物的内心;
- 用于游戏或政治模拟时,输出是角色行为模型,不构成对现实政治人物或现实政治事件的主张。
**一个不告诉你局限与安全边界在哪的政治人物 Skill,不值得信任。**
---
## 📄 许可证
采用 MIT 协议,鼓励学习、改造与再创作。请仅守一条底线:遵守 [`safety/`](safety/) 的安全规则,**不生成近现代现实政治人物的互动人格**。
---
*造一个政治人物,先造一个完整的人。*