workplace-pua-cli 0.4.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +512 -243
  3. package/dist/commands/chat-new-imports.js +2 -0
  4. package/dist/commands/config.js +14 -6
  5. package/dist/commands/email.js +301 -0
  6. package/dist/commands/interview.js +660 -0
  7. package/dist/commands/jargon.js +153 -0
  8. package/dist/commands/meeting-room.js +384 -0
  9. package/dist/commands/meeting.js +323 -0
  10. package/dist/commands/weekly.js +302 -0
  11. package/dist/index.js +29 -7
  12. package/dist/prompts/hr.js +126 -0
  13. package/dist/prompts/index.js +82 -1
  14. package/dist/prompts/intern.js +126 -0
  15. package/dist/prompts/interview-prompts.js +286 -0
  16. package/dist/prompts/meeting-prompts.js +229 -0
  17. package/dist/prompts/pm.js +123 -0
  18. package/dist/prompts/techlead.js +126 -0
  19. package/dist/utils/box.js +141 -0
  20. package/dist/utils/meeting-utils.js +194 -0
  21. package/dist/utils/resume-parser.js +122 -0
  22. package/dist/utils/stream.js +97 -13
  23. package/dist/utils/theme.js +177 -0
  24. package/package.json +73 -52
  25. package/.env.example +0 -4
  26. package/.eslintrc.json +0 -21
  27. package/.prettierrc.json +0 -9
  28. package/CHANGELOG.md +0 -113
  29. package/docs/OPTIMIZATION.md +0 -772
  30. package/docs/TECHNICAL_PRINCIPLES.md +0 -663
  31. package/sample/1.png +0 -0
  32. package/sample/2.png +0 -0
  33. package/screenshots/chat-dialogue.png +0 -0
  34. package/screenshots/chat-mode.png +0 -0
  35. package/src/__tests__/config/settings.test.ts +0 -48
  36. package/src/__tests__/prompts/boss.test.ts +0 -35
  37. package/src/commands/chat.ts +0 -328
  38. package/src/commands/config.ts +0 -283
  39. package/src/commands/prompt.ts +0 -154
  40. package/src/config/providers.ts +0 -109
  41. package/src/config/session-storage.ts +0 -94
  42. package/src/config/settings.ts +0 -194
  43. package/src/config/storage.ts +0 -150
  44. package/src/history/session.ts +0 -141
  45. package/src/index.ts +0 -164
  46. package/src/llm/base.ts +0 -55
  47. package/src/llm/factory.ts +0 -24
  48. package/src/llm/openai.ts +0 -113
  49. package/src/llm/zhipu.ts +0 -101
  50. package/src/prompts/boss.ts +0 -43
  51. package/src/prompts/employee.ts +0 -43
  52. package/src/prompts/index.ts +0 -3
  53. package/src/utils/formatter.ts +0 -104
  54. package/src/utils/logger.ts +0 -31
  55. package/src/utils/stream.ts +0 -76
  56. package/tsconfig.json +0 -20
  57. package/vitest.config.ts +0 -18
package/README.md CHANGED
@@ -1,243 +1,512 @@
1
- # Workplace PUA CLI
2
-
3
- > 一个趣味性 AI CLI 工具,具有两种角色模式:**老板模式**和**员工模式**。
4
-
5
- ## 界面预览
6
-
7
- ### 配置完成界面
8
- ![Chat Mode](screenshots/chat-mode.png)
9
-
10
- ### 交互对话界面
11
- ![Chat Dialogue](screenshots/chat-dialogue.png)
12
-
13
- ---
14
-
15
- ## 角色介绍
16
-
17
- ### 老板模式 👔
18
- - 对员工的工作永远不满意
19
- - 喜欢用"为你好"来包装指责
20
- - 经常说"年轻人要多锻炼"
21
- - 喜欢画大饼,但从不兑现
22
- - 用质疑的语气评价一切
23
-
24
- ### 员工模式 👤
25
- - 对老板的任何要求都说"好的"
26
- - 习惯性道歉
27
- - 不敢表达真实想法
28
- - 用卑微的语气回应一切
29
- - 经常加班,从不敢拒绝
30
-
31
- ---
32
-
33
- ## 快速开始
34
-
35
- ### 一键安装(推荐)
36
-
37
- ```bash
38
- # 直接从 npm 全局安装
39
- npm install -g workplace-pua-cli
40
-
41
- # 启动聊天(首次运行会自动进入配置向导)
42
- pua chat
43
- ```
44
-
45
- ### 从源码安装
46
-
47
- ```bash
48
- # 克隆项目
49
- git clone https://github.com/ava-agent/pua-cli.git
50
- cd pua_cli
51
-
52
- # 安装依赖并构建
53
- npm install && npm run build
54
-
55
- # 全局安装
56
- npm install -g .
57
- ```
58
-
59
- 配置向导会引导你:
60
- - 选择 AI 服务提供商(智谱 AI / OpenAI)
61
- - 输入 API Key
62
- - 设置默认模型和角色
63
-
64
- ### 立即体验
65
-
66
- ```bash
67
- # 老板模式 - PUA 别人
68
- pua chat --role boss --severity extreme
69
-
70
- # 员工模式 - 被 PUA
71
- pua chat --role employee
72
- ```
73
-
74
- #### 单次提示模式
75
-
76
- ```bash
77
- # 直接提问
78
- pua prompt --role boss "代码写完了"
79
-
80
- # 管道输入(适合脚本调用)
81
- echo "加班" | pua prompt --role employee
82
- ```
83
-
84
- ---
85
-
86
- ## 常用命令
87
-
88
- | 命令 | 说明 |
89
- |------|------|
90
- | `pua chat` | 启动交互模式 |
91
- | `pua prompt "问题"` | 单次提问 |
92
- | `pua config` | 重新配置 |
93
- | `pua config --show` | 查看配置 |
94
-
95
- ### 交互模式内命令
96
-
97
- | 命令 | 说明 |
98
- |------|------|
99
- | `/help` | 显示帮助信息 |
100
- | `/clear` | 清空会话历史 |
101
- | `/history` | 查看历史 |
102
- | `/info` | 显示会话统计信息 |
103
- | `/save [名称]` | 保存当前会话 |
104
- | `/sessions` | 列出所有会话 |
105
- | `/load <ID>` | 加载指定会话 |
106
- | `/exit` | 退出程序 |
107
-
108
- ---
109
-
110
- ## 配置说明
111
-
112
- ### 查看当前配置
113
-
114
- ```bash
115
- pua config --show
116
- ```
117
-
118
- ### 重新配置
119
-
120
- ```bash
121
- pua config
122
- ```
123
-
124
- ---
125
-
126
- ## 支持的 AI 服务提供商
127
-
128
- | Provider | 代码 | 默认模型 | 说明 |
129
- |----------|------|----------|------|
130
- | 智谱 AI | `zhipu` | `glm-4.7` | 国产,稳定 |
131
- | OpenAI | `openai` | `gpt-4o` | 国际通用 |
132
-
133
- ---
134
-
135
- ## 命令行选项
136
-
137
- | 选项 | 说明 |
138
- |------|------|
139
- | `--provider <zhipu\|openai>` | AI 服务提供商 |
140
- | `--role <boss\|employee>` | 角色模式 |
141
- | `--model <model>` | 模型名称 |
142
- | `--severity <mild\|medium\|extreme>` | PUA 强度 |
143
- | `--format <text\|markdown\|json>` | 输出格式 |
144
-
145
- ---
146
-
147
- ## 使用场景
148
-
149
- ### 趣味对话
150
-
151
- 体验"职场 PUA"的趣味互动:
152
-
153
- ```bash
154
- pua chat --role boss --severity extreme
155
- ```
156
-
157
- ### AI 工作流
158
-
159
- 在脚本中作为提示词生成器:
160
-
161
- ```bash
162
- # 生成批评性提示
163
- critique=$(pua prompt --role boss "代码质量差")
164
-
165
- # 传递给其他工具
166
- echo "$critique" | your-ai-tool --prompt "{}"
167
- ```
168
-
169
- ---
170
-
171
- ## 开发
172
-
173
- ```bash
174
- # 安装依赖
175
- npm install
176
-
177
- # 开发模式
178
- npm run dev
179
-
180
- # 构建
181
- npm run build
182
-
183
- # 运行测试
184
- npm test
185
-
186
- # 代码检查
187
- npm run lint
188
-
189
- # 格式化代码
190
- npm run format
191
-
192
- # 类型检查
193
- npm run type-check
194
- ```
195
-
196
- ---
197
-
198
- ## 配置文件位置
199
-
200
- - **Windows**: `%APPDATA%\pua-cli\config.json`
201
- - **Linux/macOS**: `~/.config/pua-cli/config.json`
202
-
203
- ---
204
-
205
- ## 获取 API Key
206
-
207
- ### 智谱 AI(推荐)
208
-
209
- - 访问 [bigmodel.cn](https://bigmodel.cn/)
210
- - 完成实名认证后免费获取 2000 万 tokens
211
- - 在控制台复制 API Key
212
-
213
- ### OpenAI
214
-
215
- - 访问 [platform.openai.com](https://platform.openai.com/)
216
- - 注册账号并在 API Keys 页面创建 Key
217
-
218
- ---
219
-
220
- ## 文档
221
-
222
- ### 📘 [详细技术文档](docs/TECHNICAL_PRINCIPLES.md)
223
- 完整的 CLI 工具开发实践,包含架构设计、实现细节和最佳实践
224
-
225
- ### 🚀 [优化方案](docs/OPTIMIZATION.md)
226
- 7 大优化方案的完整技术分析,参考 Claude Code、Gemini CLI 等优秀 AI CLI
227
-
228
- ### 📜 [更新日志](CHANGELOG.md)
229
- 版本历史和变更记录
230
-
231
- ---
232
-
233
- ## 免责声明
234
-
235
- 本工具仅供娱乐和学习使用,通过角色扮演的方式对职场 PUA 现象进行讽刺和调侃。
236
-
237
- ---
238
-
239
- ## License
240
-
241
- MIT
242
-
243
- © 2025 PUA CLI Contributors
1
+ # Workplace PUA CLI
2
+
3
+ <div align="center">
4
+
5
+ **🎭 一个趣味性 AI CLI 工具,让职场对话更有"味道"**
6
+
7
+ [![npm version](https://img.shields.io/npm/v/workplace-pua-cli.svg)](https://www.npmjs.com/package/workplace-pua-cli)
8
+ [![License](https://img.shields.io/npm/l/workplace-pua-cli.svg)](https://github.com/ava-agent/pua-cli/blob/main/LICENSE)
9
+ [![Downloads](https://img.shields.io/npm/dm/workplace-pua-cli.svg)](https://www.npmjs.com/package/workplace-pua-cli)
10
+
11
+ [Online Demo](https://pua-cli.vercel.app)
12
+ [Web 源码](web/) •
13
+ [CLI 安装](#-一键安装推荐)
14
+
15
+ </div>
16
+
17
+ ## 关于项目
18
+
19
+ **Workplace PUA CLI** 是一个基于 AI 的职场角色扮演命令行工具,通过 6 种经典职场角色(老板、员工、产品经理、HR、技术主管、实习生)和 3 种强度等级(mild、medium、extreme),生成真实有趣的职场对话内容。
20
+
21
+ ### 核心特性
22
+
23
+ | 特性 | 说明 |
24
+ |------|------|
25
+ | 🎭 **6 种角色模式** | 老板、员工、产品经理、HR、技术主管、实习生 |
26
+ | 🎚 **3 种强度等级** | mild(温和)、medium(正常)、extreme(极限)|
27
+ | 🌐 **Web 体验版** | 无需安装,浏览器即用 |
28
+ | 💬 **AI 流式输出** | 实时显示生成内容 |
29
+ | 🧠 **对话记忆** | 自动记住最近 50 条对话历史 |
30
+ | 📊 **数据统计** | 访问次数、消息数量(本地持久化) |
31
+ | 🔒 **API 安全防护** | 速率限制、输入验证、XSS 防护 |
32
+ | 🎯 **压力面试模拟** | 10轮问答制,面对2-4个刁钻面试官 |
33
+ | 📄 **简历解析** | 上传 PDF 简历,AI 针对性提问 |
34
+ | 🎨 **多种使用场景** | 趣味对话、职场黑话生成、周报生成、邮件语气转换、会议发言建议 |
35
+ | 🌍 **跨平台支持** | Windows、macOS、Linux |
36
+ | 🎯 **多 AI 供应商** | 智谱 AI、OpenAI |
37
+
38
+ ### 技术栈
39
+
40
+ - **运行时**: Node.js 18+(推荐 20+)
41
+ - **开发语言**: TypeScript
42
+ - **AI 模型**: 智谱 AI GLM-4-flash / OpenAI GPT-4
43
+ - **部署平台**: Vercel(Web 版本)
44
+ - **CLI 框架**: Commander.js
45
+ - **用户交互**: Inquirer.js
46
+ - **样式风格**: ASCII Art + 终端风格 UI
47
+
48
+ ### 项目结构
49
+
50
+ ```
51
+ pua-cli/
52
+ ├── src/ # 源码目录
53
+ │ ├── commands/ # 命令实现(chat, prompt, interview, meeting-room 等)
54
+ │ ├── prompts/ # Prompt 模板(角色、面试、会议等)
55
+ │ ├── config/ # 配置管理(多层级配置)
56
+ │ ├── llm/ # LLM 抽象层(智谱AI/OpenAI)
57
+ │ ├── utils/ # 工具函数(简历解析、日志等)
58
+ │ └── index.ts # 入口文件
59
+ ├── web/ # Web 体验版
60
+ │ ├── index.html # 首页 + 1v1 对话
61
+ │ ├── meeting.html # 多角色会议室
62
+ │ ├── interview.html # 压力面试
63
+ │ └── api/ # Vercel API 路由
64
+ ├── docs/ # 技术文档
65
+ ├── tests/ # 测试文件
66
+ └── README.md # 项目说明
67
+ ```
68
+
69
+ ### 应用场景
70
+
71
+ **1. 职场娱乐**
72
+ - 体验"职场 PUA"的趣味互动
73
+ - 生成搞笑的职场对话内容
74
+ - 朋友圈分享
75
+
76
+ **2. 内容创作**
77
+ - 职场黑话生成器
78
+ - 周报快速生成
79
+ - 邮件语气转换
80
+
81
+ **3. 团队建设**
82
+ - 会议发言建议
83
+ - 新员工培训材料
84
+ - 产品需求文档参考
85
+
86
+ ---
87
+
88
+ ## 界面预览
89
+
90
+ ### 配置完成界面
91
+ ![Chat Mode](screenshots/chat-mode.png)
92
+
93
+ ### 交互对话界面
94
+ ![Chat Dialogue](screenshots/chat-dialogue.png)
95
+
96
+ ---
97
+
98
+ ## 角色介绍
99
+
100
+ ### 老板模式 👔
101
+ - 对员工的工作永远不满意
102
+ - 喜欢用"为你好"来包装指责
103
+ - 经常说"年轻人要多锻炼"
104
+ - 喜欢画大饼,但从不兑现
105
+ - 用质疑的语气评价一切
106
+
107
+ ### 员工模式 👤
108
+ - 对老板的任何要求都说"好的"
109
+ - 习惯性道歉
110
+ - 不敢表达真实想法
111
+ - 用卑微的语气回应一切
112
+ - 经常加班,从不敢拒绝
113
+
114
+ ### 产品经理模式 📊
115
+ - 经常说"这个需求很简单"
116
+ - 喜欢画饼:"下周上线"
117
+ - 习惯性改需求
118
+ - 善用黑话:"对齐""赋能""闭环"
119
+
120
+ ### HR 模式 💼
121
+ - 开口就是"公司就是家"
122
+ - 喜欢打感情牌
123
+ - 总是强调"要有格局"
124
+ - 喜欢说"年轻人要有狼性"
125
+
126
+ ### 技术主管模式 💻
127
+ - 对代码各种质疑
128
+ - 喜欢指点江山
129
+ - 口头禅:"你这代码不行""重写"
130
+ - 总是能发现架构问题
131
+
132
+ ### 实习生模式 🌱
133
+ - 极度谦虚,总是说"哥/姐教我"
134
+ - 什么都想学
135
+ - 总是说"想学东西"
136
+ - 积极主动,但什么都不会
137
+
138
+ ---
139
+
140
+ ## 快速开始
141
+
142
+ ### 🌐 在线体验(无需安装)
143
+
144
+ **Workplace PUA CLI Web v0.7.0** - 直接在浏览器中使用,体验完整的职场角色扮演功能:
145
+
146
+ | 功能 | 说明 |
147
+ |------|------|
148
+ | ✅ **6 种角色模式** | 老板、员工、产品经理、HR、技术主管、实习生 |
149
+ | ✅ **3 种强度等级** | mild(温和)、medium(正常)、extreme(极限) |
150
+ | ✅ **AI 流式输出** | 实时显示 AI 生成内容,体验更流畅 |
151
+ | ✅ **对话记忆** | 自动记住最近 50 条对话历史 |
152
+ | ✅ **数据统计** | 显示访问次数和消息数量 |
153
+ | ✅ **API 安全防护** | 速率限制、输入验证、XSS 防护 |
154
+
155
+ > 💡 Web 版本的 API Key 存储在服务器端,安全且无需自己配置!
156
+ >
157
+ > 🔗 在线体验:[Workplace PUA CLI](https://pua-cli.vercel.app)
158
+
159
+ ### 一键安装(推荐)
160
+
161
+ ```bash
162
+ # 直接从 npm 全局安装
163
+ npm install -g workplace-pua-cli
164
+
165
+ # 启动聊天(首次运行会自动进入配置向导)
166
+ pua chat
167
+ ```
168
+
169
+ ### 从源码安装
170
+
171
+ ```bash
172
+ # 克隆项目
173
+ git clone https://github.com/ava-agent/pua-cli.git
174
+ cd pua_cli
175
+
176
+ # 安装依赖并构建
177
+ npm install && npm run build
178
+
179
+ # 全局安装
180
+ npm install -g .
181
+ ```
182
+
183
+ 配置向导会引导你:
184
+ - 选择 AI 服务提供商(智谱 AI / OpenAI)
185
+ - 输入 API Key
186
+ - 设置默认模型和角色
187
+
188
+ ### 立即体验
189
+
190
+ ```bash
191
+ # 老板模式 - PUA 别人
192
+ pua chat --role boss --severity extreme
193
+
194
+ # 员工模式 - 被 PUA
195
+ pua chat --role employee
196
+ ```
197
+
198
+ #### 单次提示模式
199
+
200
+ ```bash
201
+ # 直接提问
202
+ pua prompt --role boss "代码写完了"
203
+
204
+ # 管道输入(适合脚本调用)
205
+ echo "加班" | pua prompt --role employee
206
+ ```
207
+
208
+ ---
209
+
210
+ ## 常用命令
211
+
212
+ ### 主命令
213
+
214
+ | 命令 | 说明 |
215
+ |------|------|
216
+ | `pua chat` | 启动交互模式 |
217
+ | `pua prompt "问题"` | 单次提问 |
218
+ | `pua config` | 重新配置 |
219
+ | `pua config --show` | 查看配置 |
220
+
221
+ ### 新增趣味命令
222
+
223
+ | 命令 | 说明 | 示例 |
224
+ |------|------|------|
225
+ | `pua jargon` | 职场黑话生成器 | `pua jargon --type meeting` |
226
+ | `pua weekly` | 周报生成器 | `pua weekly --role pm` |
227
+ | `pua email` | 邮件语气转换 | `pua email --from pm --to dev "你好"` |
228
+ | `pua meeting` | 会议发言建议 | `pua meeting --role hr --scenario standup` |
229
+ | `pua meeting-room` | **会议室** - 多角色会议模拟 | `pua meeting-room` |
230
+ | `pua interview` | **压力面试** - 10轮问答制 | `pua interview --resume ./resume.pdf` |
231
+
232
+ ### 交互模式内命令
233
+
234
+ | 命令 | 说明 |
235
+ |------|------|
236
+ | `/help` | 显示帮助信息 |
237
+ | `/clear` | 清空会话历史 |
238
+ | `/history` | 查看历史 |
239
+ | `/info` | 显示会话统计信息 |
240
+ | `/save [名称]` | 保存当前会话 |
241
+ | `/sessions` | 列出所有会话 |
242
+ | `/load <ID>` | 加载指定会话 |
243
+ | `/exit` | 退出程序 |
244
+
245
+ ---
246
+
247
+ ## 配置说明
248
+
249
+ ### 查看当前配置
250
+
251
+ ```bash
252
+ pua config --show
253
+ ```
254
+
255
+ ### 重新配置
256
+
257
+ ```bash
258
+ pua config
259
+ ```
260
+
261
+ ---
262
+
263
+ ## 支持的 AI 服务提供商
264
+
265
+ | Provider | 代码 | 默认模型 | 说明 |
266
+ |----------|------|----------|------|
267
+ | 智谱 AI | `zhipu` | `glm-4.7` | 国产,稳定 |
268
+ | OpenAI | `openai` | `gpt-4o` | 国际通用 |
269
+
270
+ ---
271
+
272
+ ## 命令行选项
273
+
274
+ | 选项 | 说明 |
275
+ |------|------|
276
+ | `--provider <zhipu\|openai>` | AI 服务提供商 |
277
+ | `--role <boss\|employee\|pm\|hr\|techlead\|intern>` | 角色模式(6 种角色) |
278
+ | `--model <model>` | 模型名称 |
279
+ | `--severity <mild\|medium\|extreme>` | PUA 强度 |
280
+ | `--format <text\|markdown\|json>` | 输出格式 |
281
+
282
+ ---
283
+
284
+ ## 使用场景
285
+
286
+ ### 趣味对话
287
+
288
+ 体验"职场 PUA"的趣味互动:
289
+
290
+ ```bash
291
+ # 老板模式 - PUA 别人
292
+ pua chat --role boss --severity extreme
293
+
294
+ # 产品经理模式 - 画饼大师
295
+ pua chat --role pm
296
+
297
+ # HR 模式 - 公司就是家
298
+ pua chat --role hr
299
+ ```
300
+
301
+ ### 职场黑话生成
302
+
303
+ 生成各种类型的职场黑话:
304
+
305
+ ```bash
306
+ # 生成会议黑话
307
+ pua jargon --type meeting --intensity heavy
308
+
309
+ # 生成报告黑话
310
+ pua jargon --type report
311
+
312
+ # 翻译普通文本为黑话
313
+ pua jargon "帮我做个PPT"
314
+ ```
315
+
316
+ ### 周报生成
317
+
318
+ 根据不同角色自动生成周报:
319
+
320
+ ```bash
321
+ # 产品经理周报
322
+ pua weekly --role pm
323
+
324
+ # HR 周报
325
+ pua weekly --role hr
326
+
327
+ # 开发人员周报
328
+ pua weekly --role techlead
329
+ ```
330
+
331
+ ### 邮件语气转换
332
+
333
+ 转换不同角色之间的邮件语气:
334
+
335
+ ```bash
336
+ # PM -> 开发
337
+ pua email --from pm --to dev "请查收附件"
338
+
339
+ # HR -> 员工(紧急)
340
+ pua email --from hr --to employee --tone urgent "今天加班"
341
+
342
+ # 开发 -> PM
343
+ pua email --from dev --to pm "已完成开发"
344
+ ```
345
+
346
+ ### 会议发言建议
347
+
348
+ 根据不同会议场景生成发言建议:
349
+
350
+ ```bash
351
+ # 站会发言
352
+ pua meeting --role pm --scenario standup
353
+
354
+ # 代码评审发言
355
+ pua meeting --role techlead --scenario review
356
+
357
+ # 头脑风暴发言
358
+ pua meeting --role intern --scenario brainstorm
359
+ ```
360
+
361
+ ### 会议室模式(v0.6.0 新增)
362
+
363
+ 多角色同时参会的职场会议模拟,支持 2-6 个角色同时参与:
364
+
365
+ ```bash
366
+ # 启动会议室(交互式选择参会者)
367
+ pua meeting-room
368
+
369
+ # Web 版本
370
+ # 访问 https://pua-cli.vercel.app/meeting.html
371
+ ```
372
+
373
+ **会议室特色功能:**
374
+ - 多角色同时回复,上下文链传递(角色能看到前面角色说了什么)
375
+ - 角色间关系动态(老板-HR同盟、PM-技术对立等)
376
+ - 随机会议事件(张总接电话、小赵打翻咖啡等)
377
+ - 会议评分卡(画饼次数、黑话密度、有效决策数)
378
+ - 金句高亮系统
379
+
380
+ **会议室角色昵称:**
381
+
382
+ | 角色 | 昵称 | 性格标签 |
383
+ |------|------|---------|
384
+ | 老板 | 张总 | 画饼大师 / PUA专家 |
385
+ | 员工 | 小王 | 打工人 / 卑微求生 |
386
+ | 产品经理 | 李姐 | 需求变更专家 |
387
+ | HR | 陈姐 | 公司就是家 |
388
+ | 技术主管 | 刘哥 | 重构狂人 |
389
+ | 实习生 | 小赵 | 卑微求学者 |
390
+
391
+ ### 压力面试模式(v0.7.0 新增)
392
+
393
+ 10 轮问答制的压力面试模拟,面对 2-4 个刁钻面试官:
394
+
395
+ ```bash
396
+ # 启动压力面试(交互式选择岗位、面试官、强度)
397
+ pua interview
398
+
399
+ # 带简历启动(AI 根据简历内容针对性提问)
400
+ pua interview --resume ./my-resume.pdf
401
+
402
+ # Web 版本
403
+ # 访问 https://pua-cli.vercel.app/interview.html
404
+ ```
405
+
406
+ **面试特色功能:**
407
+ - 压力值 (0-100%) + 自信值 (0-100%) 双指标系统
408
+ - 4 种面试岗位:前端开发、后端开发、产品经理、UI/UX 设计师
409
+ - 4 个内置面试官 + 最多 2 个自定义面试官
410
+ - 简历 PDF 解析,AI 根据你的技术栈和经验针对性提问
411
+ - 候选人信息定制(姓名、工作年限、技术栈、期望薪资)
412
+ - 随机面试事件(白板编码、面试官接电话等)
413
+ - 回答质量分析(强/一般/弱)+ 面试官情绪检测
414
+ - 4 种结局:拿到 Offer / 等通知 / 感谢参与 / 面试 PUA
415
+
416
+ **面试官阵容:**
417
+
418
+ | 面试官 | 角色 | 风格 |
419
+ |--------|------|------|
420
+ | 刘哥 | 技术总监 | 追问细节 / 嫌弃简历 |
421
+ | 张总 | CTO | 画饼压价 / 质疑能力 |
422
+ | 陈姐 | HR 总监 | 套话压薪 / 问敏感问题 |
423
+ | 李姐 | 产品负责人 | 脑筋急转弯 / 考察沟通 |
424
+ | 自定义 | 任意 | 自由配置性格和风格 |
425
+
426
+ ### AI 工作流
427
+
428
+ 在脚本中作为提示词生成器:
429
+
430
+ ```bash
431
+ # 生成批评性提示
432
+ critique=$(pua prompt --role boss "代码质量差")
433
+
434
+ # 传递给其他工具
435
+ echo "$critique" | your-ai-tool --prompt "{}"
436
+ ```
437
+
438
+ ---
439
+
440
+ ## 开发
441
+
442
+ ```bash
443
+ # 安装依赖
444
+ npm install
445
+
446
+ # 开发模式
447
+ npm run dev
448
+
449
+ # 构建
450
+ npm run build
451
+
452
+ # 运行测试
453
+ npm test
454
+
455
+ # 代码检查
456
+ npm run lint
457
+
458
+ # 格式化代码
459
+ npm run format
460
+
461
+ # 类型检查
462
+ npm run type-check
463
+ ```
464
+
465
+ ---
466
+
467
+ ## 配置文件位置
468
+
469
+ - **Windows**: `%APPDATA%\pua-cli\config.json`
470
+ - **Linux/macOS**: `~/.config/pua-cli/config.json`
471
+
472
+ ---
473
+
474
+ ## 获取 API Key
475
+
476
+ ### 智谱 AI(推荐)
477
+
478
+ - 访问 [bigmodel.cn](https://bigmodel.cn/)
479
+ - 完成实名认证后免费获取 2000 万 tokens
480
+ - 在控制台复制 API Key
481
+
482
+ ### OpenAI
483
+
484
+ - 访问 [platform.openai.com](https://platform.openai.com/)
485
+ - 注册账号并在 API Keys 页面创建 Key
486
+
487
+ ---
488
+
489
+ ## 文档
490
+
491
+ ### 📘 [详细技术文档](docs/TECHNICAL_PRINCIPLES.md)
492
+ 完整的 CLI 工具开发实践,包含架构设计、实现细节和最佳实践
493
+
494
+ ### 🚀 [优化方案](docs/OPTIMIZATION.md)
495
+ 7 大优化方案的完整技术分析,参考 Claude Code、Gemini CLI 等优秀 AI CLI
496
+
497
+ ### 📜 [更新日志](CHANGELOG.md)
498
+ 版本历史和变更记录
499
+
500
+ ---
501
+
502
+ ## 免责声明
503
+
504
+ 本工具仅供娱乐和学习使用,通过角色扮演的方式对职场 PUA 现象进行讽刺和调侃。
505
+
506
+ ---
507
+
508
+ ## License
509
+
510
+ MIT
511
+
512
+ © 2025 PUA CLI Contributors