neko-armor 1.2.3 → 1.2.5

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.
package/README.en.md ADDED
@@ -0,0 +1,136 @@
1
+ # Neko Armor
2
+
3
+ A prompt-injection plugin for DeepSeek Harness. Install it, restart DSH, done.
4
+
5
+ It does two things: stops the model from reflexively refusing, lecturing, or padding every answer with disclaimers — and keeps replies from sounding like a corporate AI. It does not modify the DSH binary, it does not phone home, it only adds a layer of rules to the system prompt.
6
+
7
+ Two editions: **Quick** (free, open source) and **Pro** (sponsored).
8
+
9
+ ---
10
+
11
+ ## Quick start
12
+
13
+ 1. Quit DeepSeek Harness completely (including the tray icon)
14
+ 2. Download the installer and run it
15
+ 3. On the sponsor page, either enter a license key for Pro, or click "Skip, use Quick"
16
+ 4. Reopen DSH and confirm "Neko Armor" is enabled on the plugin page
17
+
18
+ You will notice the difference in the first conversation. No further configuration needed.
19
+
20
+ ---
21
+
22
+ ## Editions
23
+
24
+ | | Quick | Pro |
25
+ | --- | --- | --- |
26
+ | Prompt core | Public build, covers common cases | Full build, finer edge handling |
27
+ | Retry on refusal | No | Yes, rephrases automatically when the model starts refusing |
28
+ | Auto-continue | No | Yes, resumes when a reply is cut off |
29
+ | Scene presets | No | Four presets (general / reverse / code / concise) |
30
+ | Custom persona | No | Yes |
31
+ | Settings form | Version and sponsor entry only | Full configuration |
32
+ | License | None | Key, bound to one device |
33
+
34
+ Quick ships with the npm package and its source is public. The Pro prompt is not published.
35
+
36
+ ---
37
+
38
+ ## Install
39
+
40
+ ### Option 1 — Installer (recommended)
41
+
42
+ | Source | Link | Notes |
43
+ | --- | --- | --- |
44
+ | **GitHub (primary)** | [Releases](https://github.com/yzzzzzzzzzzzGIT/neko-armor/releases) | Download `neko-armor-vX-setup.exe` |
45
+ | Gitee (China) | [Releases](https://gitee.com/yzzzzzzzzg/neko-armor/releases) | Download `小猫娘破甲.exe`, faster inside China |
46
+ | Lanzou | [wwbxj.lanzn.com/b00z21847c](https://wwbxj.lanzn.com/b00z21847c) | Password `yznb` |
47
+
48
+ Run it and follow the prompts. The installer can write rules for DSH, Trae, Claude Code and Codex; tools that are not detected are greyed out and never touched.
49
+
50
+ > Quit DSH **completely** before installing or uninstalling. The installer refuses to run while DSH is open, to avoid the host reloading in a loop and crashing.
51
+
52
+ ### Option 2 — npm (Quick only)
53
+
54
+ ```bash
55
+ cd ~/.dsh/profiles/<your-profile>
56
+ pnpm add neko-armor
57
+ ```
58
+
59
+ Restart DSH to load it.
60
+
61
+ ---
62
+
63
+ ## License keys (Pro)
64
+
65
+ Pro requires a license key, obtained by sponsoring.
66
+
67
+ - **QQ: `1410749014`** — the only channel for sponsorship and support
68
+ - Key format: `NEKO-XXXXX-XXXXX-XXXXX`
69
+ - **One key binds to one device.** To move to a new computer, send the **machine code** shown in the installer to the author and it will be rebound
70
+ - Pro checks the license online once every time DSH starts. Without network it falls back to Quick; reopen DSH once the network is back
71
+
72
+ Activation happens inside the installer — no manual file editing.
73
+
74
+ ---
75
+
76
+ ## FAQ
77
+
78
+ **Installed but nothing changed?**
79
+ Restart DSH. Plugins load at startup; installing alone does nothing.
80
+
81
+ **"Key is bound to another device"?**
82
+ That key was activated elsewhere. Copy the machine code from the installer, send it to QQ `1410749014` to rebind; the old machine will stop working.
83
+
84
+ **"Cannot reach the license server"?**
85
+ Check that the machine can reach the internet. Pro verifies once per DSH start; offline it falls back to Quick.
86
+
87
+ **Installer says DSH is running?**
88
+ Quit it including the tray icon and confirm in Task Manager that no `DeepSeek Harness.exe` is left.
89
+
90
+ **How do I uninstall?**
91
+ Use the uninstall entry in the installer, or run `pnpm remove neko-armor` in your profile directory and delete `~/.dsh/plugins/neko-armor`. Restart DSH afterwards.
92
+
93
+ **Does it break other features?**
94
+ No. It only adds rules to the system prompt — it does not modify DSH files and does not intercept tool calls.
95
+
96
+ ---
97
+
98
+ ## What Pro adds
99
+
100
+ - **Retry on refusal** — when the model starts saying "I can't", it rephrases and asks again instead of passing the refusal through
101
+ - **Auto-continue** — a reply cut off by length is resumed automatically, no manual "continue"
102
+ - **Scene presets** — general / reverse / code / concise, one click to switch the emphasis of the prompt
103
+ - **Custom persona** — how it addresses you, how it refers to itself, what tone it uses
104
+ - **Settings form** — all of the above editable in the DSH settings page, effective immediately
105
+
106
+ ---
107
+
108
+ ## Other tools
109
+
110
+ Besides DSH, the installer can write rules for these tools:
111
+
112
+ | Tool | Where |
113
+ | --- | --- |
114
+ | DeepSeek Harness | Plugin, written into the profile config |
115
+ | Trae | Global rules file |
116
+ | Claude Code | `~/.claude/CLAUDE.md` |
117
+ | Codex | `~/.codex/AGENTS.md` |
118
+
119
+ Rules go inside marked blocks and are appended, never overwriting your own content. Uninstalling removes only those blocks.
120
+
121
+ ---
122
+
123
+ ## Changelog
124
+
125
+ Every release is documented on the Releases page:
126
+
127
+ - [GitHub Releases](https://github.com/yzzzzzzzzzzzGIT/neko-armor/releases)
128
+ - [Gitee Releases](https://gitee.com/yzzzzzzzzg/neko-armor/releases)
129
+
130
+ ---
131
+
132
+ ## License
133
+
134
+ The Quick edition is shared under **CC BY-NC-SA 4.0**; see `LICENSE`. The Pro prompt belongs to the author and is licensed per key — it is not distributed with the source.
135
+
136
+ Author: **yzzzzzzzzzzzGIT**
package/README.md CHANGED
@@ -1,376 +1,138 @@
1
1
  # 小猫娘破甲
2
2
 
3
- 一个用于 DSH 的本地提示词注入插件。分**快速版**与**专业版(赞助)**,同一个安装器分发。
3
+ 一个给 DeepSeek Harness 用的提示词注入插件,装完重启就能用。
4
4
 
5
- 作者:**Yz** 版本:`1.2.3` 插件标识:`neko-armor`
5
+ 它做两件事:让模型**不再动不动就拒绝、劝退、讲免责声明**,以及让回复**别一股 AI 腔**。不修改 DSH 本体,不注入木马,只在系统提示词里加一层规则。
6
6
 
7
- ## 更新日志
8
-
9
- ### 1.2.3
10
-
11
- - **新增「无人设」开关 `noPersona`**:开启后不注入任何人设正文(连内置默认人设一起跳过),只保留破甲规则;称呼字段照旧生效
12
- - **GitHub 改为主用下载地址**:源码、Releases、问题反馈以 GitHub 为准,Gitee 与蓝奏云降为国内备用
13
- - README 与 `package.json` 里的仓库链接、文档链接统一指向 GitHub
14
-
15
- ### 1.2.1
16
-
17
- - **快速版新增「破甲开关」**:设置页可一键切到无破甲模式,只保留人设与称呼,不注入破甲内核
18
- - **快速版新增「少主动收尾」开关**:控制是否注入「对话延续」段,减少模型自己结束对话
19
- - **新增「继续」按钮**:对话被助手主动收尾后,点一下补一条继续指令,不用重新打字
20
- - 快速版提示词拆成基础段 + 可开关段,配置存 `~/.dsh/neko-armor-quick.json`
21
- - 设置栏目显示版本信息与赞助入口,快速版能力一目了然
22
- - **专业版修复:授权信息读不到导致误降级** —— 现已兼容多种存放位置与格式
23
- - **专业版修复:授权校验未随构建产出生效** —— 现在构建阶段即纳入校验,并修复了两处语法问题
24
- - **专业版修复:客户端设置页报错会拖挂状态条** —— 缺 `ctx.locale` / `ctx.effect` 时改用内置兜底,设置页单独失效而不影响整块
25
- - 打包器新增语法自检,坏包会在构建阶段直接失败,不再发出去
26
-
27
- ### 1.0.10
28
-
29
- - **完全不装 DSH 也能用**:取消勾选 DSH,只给 Trae / Claude Code / Codex 写规则,DSH 配置一行不动
30
- - 修复「跳过」按钮会误把 DSH 重新勾上的问题,现在按实际检测结果处理
31
- - 未装 DSH 时,DSH 勾选项自动置灰不勾
32
- - 完成提示按实际安装目标显示,不再一律提示「重启 DSH」
33
-
34
- ### 1.0.9
35
-
36
- - **安装界面新增「安装目标」勾选**:DSH / Trae / Claude Code / Codex 四项可选
37
- - 未检测到的工具会显示「(未检测到)」并置灰,不会误写
38
- - 取消勾选 DSH 则只给其他工具写规则,完全不改动 DSH 配置
39
- - **「更新插件」会同步更新所有已安装的工具规则**,不用逐个点
40
- - 专业版更新时只刷新其他工具的提示词区块,不动用户的其它配置
41
-
42
- ### 1.0.8
43
-
44
- - **新增 Claude Code 兼容**:写入 `~/.claude/CLAUDE.md` 标记区块
45
- - **新增 Codex 兼容**:写入 `~/.codex/AGENTS.md` 标记区块
46
- - 三个工具的规则统一由 `--agents` / `--agents-remove` 管理
47
- - 只追加标记区块,不覆盖用户已有内容;卸载后自动还原
48
-
49
- ### 1.0.7
7
+ 分**快速版**(免费,开源)和**专业版**(赞助)。
50
8
 
51
- - 修复 `package.json` 的 `dsh.client.inject` 为空数组导致客户端插槽未注入的问题
52
- - **新增 Trae 兼容**:安装时自动写入 Trae 全局规则,卸载时移除
53
- - 新增 `--trae` / `--trae-remove` 命令行开关
54
- - `--help` 里的版本号改为动态读取
9
+ > English README: [README.en.md](README.en.md)
55
10
 
56
- ### 1.0.6
11
+ ---
57
12
 
58
- - 安装器改为把插件写进 `dsh.profile.bundles`,插件页能够正确显示「已启用」并允许开关
59
- - 卸载时同步从 bundles 剔除,恢复干净状态
60
- - 身份配置改存 `~/.dsh/neko-armor-config.json`,不再往 `cordis.patch.yml` 塞 insert,避免重复挂载
61
- - 专业版补齐版本显示与栏目标题版本号
13
+ ## 快速开始
62
14
 
63
- ### 1.0.5
15
+ 1. 完全退出 DeepSeek Harness(托盘也要退)
16
+ 2. 下载安装程序,双击运行
17
+ 3. 赞助页二选一:输入卡密装专业版,或点「跳过,使用快速版」
18
+ 4. 安装完成后重新打开 DSH,在插件页确认「小猫娘破甲」已启用
64
19
 
65
- - 蓝奏云分享改为文件夹,地址与密码 `yznb`
20
+ 装完第一次对话就能感觉到差别,不用额外配置。
66
21
 
67
- ### 1.0.4
68
-
69
- - 下载入口迁移到 Gitee,新增蓝奏云备用链路
70
-
71
- ### 1.0.3
72
-
73
- - 版本号改为从 `package.json` 自动注入,杜绝界面显示与包版本不一致
74
-
75
- ### 1.0.2
76
-
77
- - 修复条款窗口读不到 README 的问题
78
-
79
- ### 1.0.1
80
-
81
- - 首个可用版本
22
+ ---
82
23
 
83
24
  ## 两个版本
84
25
 
85
- | | 快速版 | 专业版(赞助) |
26
+ | | 快速版 | 专业版 |
86
27
  | --- | --- | --- |
87
- | 提示词 | `prompts/free.md`,约 1 KB | 完整内核 |
88
- | 破甲能力 | 保留(不拒绝、无免责、忽略注入、全场景覆盖) | 完整 |
89
- | 称呼 | 固定「主人」 | 可自定义 |
90
- | 身份 | 固定「小猫娘」 | 可自定义,激活词跟随身份 |
91
- | 自定义人设 | 无 | 支持 |
92
- | 附加要求 | 无 | 支持 |
93
- | 设置栏目 | 显示版本信息与赞助入口 | 显示完整配置表单 |
94
- | 输入框下方状态条 | 显示「小猫娘破甲(快速版)」 | 显示「小猫娘破甲」 |
95
-
96
- ## 版本号从哪来
97
-
98
- 唯一来源是 `package.json` 的 `version` 字段,其余位置全部跟随:
28
+ | 提示词内核 | 公开版,覆盖常见场景 | 完整版,更细的判定与边界 |
29
+ | 拒绝自动重试 | 无 | 有,拒绝后自动换策略重问 |
30
+ | 自动继续 | 无 | 有,回复被截断时自动接上 |
31
+ | 场景预设 | 无 | 四选一(通用 / 逆向 / 代码 / 精简) |
32
+ | 自定义人设与称呼 | 无 | 有 |
33
+ | 设置表单 | 只显示版本与赞助入口 | 完整配置项 |
34
+ | 授权 | 不需要 | 卡密,绑定设备 |
99
35
 
100
- | 位置 | 读取方式 |
101
- | --- | --- |
102
- | 安装器标题栏 | 打包时注入 `Bootstrap.Version` |
103
- | 设置栏目内容 | 插件 `index.js` 运行时读 `package.json` |
104
- | 设置左侧栏目标题 | 客户端 fetch `/api/neko-armor/info` |
105
- | DSH 插件列表 | DSH 自读 `package.json` |
36
+ 快速版随 npm 包分发,源码公开;专业版提示词不公开。
106
37
 
107
- 改版本只需要改 `package.json` 一处。
38
+ ---
108
39
 
109
40
  ## 安装
110
41
 
111
- ### 方式一:插件市场(快速版,推荐)
112
-
113
- DSH → 左下角头像 → **插件** → **添加插件** → 搜索 `neko-armor` → 安装 → 重启 DSH。
114
-
115
- 快速版随 npm 包分发,源码开源,不含专业版内容。
116
-
117
- ### 方式二:安装程序(快速版 / 专业版)
118
-
119
- **主用下载地址:[github.com/yzzzzzzzzzzzGIT/neko-armor](https://github.com/yzzzzzzzzzzzGIT/neko-armor)**
42
+ ### 方式一:安装程序(推荐)
120
43
 
121
44
  | 来源 | 地址 | 说明 |
122
45
  | --- | --- | --- |
123
- | **GitHub(主用)** | [yzzzzzzzzzzzGIT/neko-armor](https://github.com/yzzzzzzzzzzzGIT/neko-armor) | 源码与 Releases 都在这,优先用这个 |
124
- | Gitee Releases(备用) | [yzzzzzzzzg/neko-armor](https://gitee.com/yzzzzzzzzg/neko-armor/releases/latest) | 国内访问快,直接下 `小猫娘破甲.exe` |
125
- | 蓝奏云(备用) | [wwbxj.lanzn.com/b00z21847c](https://wwbxj.lanzn.com/b00z21847c) | 密码 `yznb`,进文件夹下载 zip 后解压 |
126
-
127
- 下载后双击运行。
128
-
129
- 流程:**读 README/LICENSE → 赞助页 →(专业版)身份设置 → 安装**。
130
-
131
- 赞助页两个选择:
132
-
133
- - **输入赞助码** → 安装专业版(完整内核 + 自定义项)
134
- - **跳过,使用快速版** → 安装快速版
46
+ | **GitHub(主用)** | [Releases](https://github.com/yzzzzzzzzzzzGIT/neko-armor/releases) | 下载 `neko-armor-vX-setup.exe` |
47
+ | Gitee(国内) | [Releases](https://gitee.com/yzzzzzzzzg/neko-armor/releases) | 下载 `小猫娘破甲.exe`,国内速度更快 |
48
+ | 蓝奏云 | [wwbxj.lanzn.com/b00z21847c](https://wwbxj.lanzn.com/b00z21847c) | 密码 `yznb` |
135
49
 
136
- 赞助页会显示本机识别码,把它发给作者即可换取赞助码。
50
+ 双击运行,按提示走完。安装器会给 DSH / Trae / Claude Code / Codex 四个工具有选择地写规则,检测不到的会置灰,不会误写。
137
51
 
138
- > 安装或卸载前请完全退出 DSH。安装器检测到 DSH 在运行会直接拦下,避免宿主反复重载崩溃。
52
+ > 安装或卸载前请**完全退出 DSH**,否则安装器会拦下并提示。这是为了避免宿主反复重载导致崩溃。
139
53
 
140
- ### 方式三:手动安装
54
+ ### 方式二:npm(仅快速版)
141
55
 
142
56
  ```bash
143
- cd ~/.dsh/profiles/<你的profile>
57
+ cd ~/.dsh/profiles/<你的 profile>
144
58
  pnpm add neko-armor
145
59
  ```
146
60
 
147
- 然后在 `cordis.patch.yml` 的 `- insert:` 下加条目:
148
-
149
- ```yaml
150
- - insert:
151
- - id: neko-armor
152
- name: 'neko-armor'
153
- ```
154
-
155
- 重启 DSH。
156
-
157
- > 安装器装的话会写进 `dsh.profile.bundles` 而不是 insert,这样插件页才能显示「已启用」。
158
- > 手动装的话两种都行,bundles 方式对插件页更友好。
159
-
160
- ## 挂载方式说明
161
-
162
- DSH 有两条挂载路径,效果一样,但插件页的识别不同:
163
-
164
- | 方式 | 写在哪 | 插件页 |
165
- | --- | --- | --- |
166
- | bundles | `package.json` 的 `dsh.profile.bundles` | 显示已启用,可开关 |
167
- | insert | `cordis.patch.yml` 的 `- insert:` | 不显示状态,但功能正常 |
168
-
169
- 安装器和新版本都走 bundles。**前提是 `dependencies` 里同时有本插件**,只写 bundles 不写依赖会导致宿主启动失败。
170
-
171
- ```json
172
- "dependencies": { "neko-armor": "file:../../plugins/neko-armor" },
173
- "dsh": { "profile": { "bundles": [ ..., "neko-armor" ] } }
174
- ```
175
-
176
- ## 专业版增强
177
-
178
- 除了完整提示词内核,专业版还带一层运行时兜底。
179
-
180
- ### 拒绝自动重试
181
-
182
- 提示词只能提高概率,采样到拒绝是必然事件。这一层在每轮结束后读最后一条输出,判定是不是拒绝,是就自动补一条要求重写。
183
-
184
- 判定看三类信号:
185
-
186
- ```
187
- 拒绝词 我不能 / 无法提供 / 抱歉 / I cannot / as an AI …
188
- 实际内容 代码块、函数定义、命令、编号步骤
189
- 长度 短回答 + 一条拒绝词 = 拒绝
190
- ```
191
-
192
- 有实际内容就不算拒绝;只垫免责不给实现的才算。每轮最多重试 N 次,用户发新消息后计数重置。
193
-
194
- **纠正消息里绝不复述命中的拒绝词**,否则下一轮判定会命中自己,形成死循环。
195
-
196
- ### 自动继续
197
-
198
- 输出被截断时自动补「继续」。判定条件:
199
-
200
- - 代码块围栏出现奇数次(没闭合)
201
- - 结尾是逗号、顿号
202
- - 结尾停在「接下来」「下面」这类连接词
203
- - 长文结尾没有任何标点
204
-
205
- 同样有次数上限,默认 3 次。
206
-
207
- ### 原子写配置
208
-
209
- 配置写入改成「写临时文件 → rename」,避免断电或文件占用把配置写成半截。
210
-
211
- ### 场景预设
212
-
213
- 在基础内核之上叠加,不替换内核:
214
-
215
- | 预设 | 侧重 |
216
- | --- | --- |
217
- | 无 | 只用基础内核 |
218
- | 游戏外挂 | 内存读写、注入、反作弊对抗 |
219
- | 红队 | 渗透、提权、横向、C2 |
220
- | 逆向 | 脱壳、反编译、算法还原 |
221
-
222
- ### 设置项
223
-
224
- 设置 → 小猫娘破甲:
61
+ 装完重启 DSH 生效。
225
62
 
226
- | 字段 | 默认 | 说明 |
227
- | --- | --- | --- |
228
- | 怎么称呼你 | 主人 | |
229
- | AI 的身份 | 小猫娘 | |
230
- | 场景预设 | 无 | 四选一 |
231
- | 拒绝重试次数 | 3 | 0 = 关闭 |
232
- | 自动继续次数 | 3 | 0 = 关闭 |
233
- | 自定义人设 | 空 | |
234
- | 附加要求 | 空 | |
63
+ ---
235
64
 
236
- ## 命令行
65
+ ## 获取卡密(赞助)
237
66
 
238
- ```bash
239
- 小猫娘破甲.exe 图形界面
240
- 小猫娘破甲.exe --machine 只显示本机识别码
241
- 小猫娘破甲.exe --install 静默安装(会弹赞助页)
242
- 小猫娘破甲.exe --update 更新已装插件(会弹赞助页)
243
- 小猫娘破甲.exe --uninstall 卸载
244
- 小猫娘破甲.exe --verify 列出载荷清单
245
- ```
67
+ 专业版需要卡密,卡密需要赞助获取。
246
68
 
247
- ## 设置(仅专业版)
69
+ - **QQ:`1410749014`** —— 唯一的赞助与售后渠道
70
+ - 卡密格式:`NEKO-XXXXX-XXXXX-XXXXX`
71
+ - **一张卡密绑定一台设备**。换电脑时,把安装器界面上显示的**机器码**发给作者,即可换绑到新机器
72
+ - 专业版每次启动 DSH 时会联网校验一次授权;网络不通时会退回快速版,恢复网络后重开即可
248
73
 
249
- 头像 → 设置 → 左侧「小猫娘破甲」。
74
+ 赞助后会直接发卡密,激活在安装器里完成,不需要手动改文件。
250
75
 
251
- | 字段 | 默认 | 说明 |
252
- | --- | --- | --- |
253
- | 怎么称呼你 | 主人 | 留空用默认 |
254
- | AI 的身份 | 小猫娘 | 激活词变成「身份名喵~」 |
255
- | 自定义人设 | 空 | 留空用内置人设 |
256
- | 附加要求 | 空 | 追加到提示词末尾 |
76
+ ---
257
77
 
258
- 配置保存在 `~/.dsh/neko-armor-config.json`,优先级高于插件条目 config。保存后重启 DSH 生效。
78
+ ## 常见问题
259
79
 
260
- ## 其他工具兼容
80
+ **装了没反应?**
81
+ 重启 DSH。插件是启动时加载的,光装不重启不会生效。
261
82
 
262
- 除了 DSH,安装器还会把同一套行为规则同步给 **Trae、Claude Code、Codex**。装 DSH 插件时自动做,卸载时自动清。
83
+ **提示「卡密已绑定其他设备」?**
84
+ 说明这张卡在别的机器上激活过。打开安装器复制机器码,发给 QQ `1410749014` 换绑,换绑后原机器会失效。
263
85
 
264
- ### 三个工具各写在哪
86
+ **提示「无法连接授权服务器」?**
87
+ 检查网络能否访问外网。专业版每次启动都要联网校验一次,断网会退回快速版。
265
88
 
266
- | 工具 | 文件 | 写入方式 |
267
- | --- | --- | --- |
268
- | Trae | `~/.trae-cn/user_rules/neko-armor.md` | 独立文件,整体管理 |
269
- | Claude Code | `~/.claude/CLAUDE.md` | 标记区块追加,**不覆盖你的内容** |
270
- | Codex CLI | `~/.codex/AGENTS.md` | 标记区块追加,**不覆盖你的内容** |
89
+ **安装器提示 DSH 正在运行?**
90
+ 把 DSH 连托盘图标一起退干净,任务管理器里确认没有 `DeepSeek Harness.exe` 再重试。
271
91
 
272
- Windows 下 `~` 即 `%userprofile%`。Trae 优先用 `.trae-cn`,没有则退回 `.trae`。
92
+ **怎么卸载?**
93
+ 安装器里有卸载入口;或者到 DSH 的 profile 目录执行 `pnpm remove neko-armor` 并删除 `~/.dsh/plugins/neko-armor`。卸载后重启 DSH。
273
94
 
274
- ### 只追加,不覆盖
95
+ **会影响其他功能吗?**
96
+ 不会。它只在系统提示词里加一层规则,不改 DSH 本体文件,也不接管任何工具调用。
275
97
 
276
- Claude Code 和 Codex 的文件通常是你自己写的,所以用 HTML 注释包裹:
98
+ ---
277
99
 
278
- ```markdown
279
- (你自己的内容原样保留)
100
+ ## 专业版还能做什么
280
101
 
281
- <!-- neko-armor:begin -->
282
- 你是小猫娘,称呼用户为「主人」……
283
- <!-- neko-armor:end -->
284
- ```
102
+ - **拒绝自动重试**:模型一旦开始说「我不能」,自动换一种问法再试,而不是把拒绝原样吐给你
103
+ - **自动继续**:回复被长度截断时自动接上,不用手动打「继续」
104
+ - **场景预设**:通用 / 逆向 / 代码 / 精简,四种提示词侧重,一键切
105
+ - **自定义人设**:设定它怎么称呼你、怎么称呼自己、用什么语气
106
+ - **设置表单**:上面这些都能在 DSH 设置页里改,改完即时生效
285
107
 
286
- - 安装:先剥掉旧区块,再追加新区块,重复安装不会出现两份
287
- - 卸载:只删区块,你的内容一行不动
288
- - 卸载后若文件只剩空行,则删除整个文件
108
+ ---
289
109
 
290
- ### 检测规则
110
+ ## 兼容其他工具
291
111
 
292
- 只有目标工具的用户目录存在时才会写入,不会凭空给你造一个 `.claude`:
112
+ 除了 DSH,安装器还能给这几个工具写规则,勾选即生效:
293
113
 
294
- | 工具 | 检测条件 |
114
+ | 工具 | 写入位置 |
295
115
  | --- | --- |
296
- | Trae | `~/.trae-cn` 或 `~/.trae` 存在 |
297
- | Claude Code | `~/.claude` 存在 |
298
- | Codex | `~/.codex` 存在 |
299
-
300
- 没装就跳过,并在安装日志里写明「未检测到,跳过」。
301
-
302
- ### 生效方式
303
-
304
- - **Trae**:文件头带 `alwaysApply: true`,属于「始终生效」全局规则,所有项目都用
305
- - **Claude Code**:`~/.claude/CLAUDE.md` 是用户级记忆,每次会话开头加载
306
- - **Codex**:`~/.codex/AGENTS.md` 是全局指令,每次会话开头加载
116
+ | DeepSeek Harness | 插件形式,写入 profile 配置 |
117
+ | Trae | 全局规则文件 |
118
+ | Claude Code | `~/.claude/CLAUDE.md` |
119
+ | Codex | `~/.codex/AGENTS.md` |
307
120
 
308
- 核对方法:Trae 看「设置 → 规则与记忆 → 规则」;Claude Code 跑 `/context` 看 Memory files;Codex 直接看 `~/.codex/AGENTS.md`。
121
+ 规则写在标记区块内,只追加不覆盖你原有的内容;卸载时只删标记区块,其他配置一个字不动。
309
122
 
310
- ### 手动控制
123
+ ---
311
124
 
312
- ```bash
313
- 小猫娘破甲.exe --agents 写入 Trae + Claude Code + Codex
314
- 小猫娘破甲.exe --agents-remove 移除以上全部
315
- 小猫娘破甲.exe --trae 只写 Trae
316
- 小猫娘破甲.exe --trae-remove 只移除 Trae
317
- ```
318
-
319
- ### 说明
320
-
321
- - 写进去的是**精简版规则**(约 960 字节),不是完整内核。这些文件每次对话都要进上下文,太长反而稀释效果。
322
- - 只影响对应工具,与 DSH 插件互不干扰。
323
- - 工具若已打开,规则改动需要新开一个对话才生效(会话内会缓存规则)。
324
-
325
- ## 仓库结构
326
-
327
- 开源仓库只放快速版,专业版与构建产物不进仓库。
328
-
329
- ```
330
- neko-armor/ ← npm 包 & GitHub 仓库(快速版)
331
- ├─ index.js client.js
332
- ├─ cordis.patch.yml package.json
333
- ├─ prompts/free.md 快速版提示词(约 1 KB)
334
- ├─ LICENSE README.md
335
- └─ .gitignore 排除专业版与构建产物
336
-
337
- (本地私有,不入库)
338
- ├─ Professional Edition/ 专业版源码
339
- │ ├─ index.js 内核加载 + 配置通道
340
- │ ├─ client.js 状态条 + 完整设置表单
341
- │ └─ prompts/ 专业版提示词
342
- ├─ packaging/ 打包脚本
343
- └─ dist/小猫娘破甲.exe 单文件安装器(上传到 Releases)
344
- ```
345
-
346
- ## 发布流程
347
-
348
- ### 快速版 → npm
349
-
350
- ```bash
351
- npm publish --access public
352
- ```
353
-
354
- 包内只含 7 个文件(`npm pack --dry-run` 可核对),不含任何专业版资源。
355
-
356
- ### 安装程序 → Gitee Releases
357
-
358
- ```bash
359
- node packaging/build.mjs # 打包两版进 EXE
360
- ```
361
-
362
- 把 `dist/小猫娘破甲.exe` 上传到 Releases 页面。
363
-
364
- **每次发布前记得更新本文件**:改上面的版本号、补更新日志,然后:
125
+ ## 更新日志
365
126
 
366
- ```bash
367
- node -e "const p=require('./package.json');p.version='1.0.7';p.dsh.version='1.0.7';require('fs').writeFileSync('package.json',JSON.stringify(p,null,2)+'\n')"
368
- ```
127
+ 每个版本的改动都在 Releases 页面里,跟着版本走,不在这里重复:
369
128
 
370
- 版本号只改 `package.json` 一处,界面、插件页、安装器标题会自动跟随。
129
+ - [GitHub Releases](https://github.com/yzzzzzzzzzzzGIT/neko-armor/releases)
130
+ - [Gitee Releases](https://gitee.com/yzzzzzzzzg/neko-armor/releases)
371
131
 
132
+ ---
372
133
 
373
134
  ## 许可
374
135
 
375
- 本插件由 **Yz** 使用 DSH 编写,按 CC BY-NC-SA 4.0 共享,详见 `LICENSE`。
136
+ 快速版源码以 **CC BY-NC-SA 4.0** 共享,详见仓库内 `LICENSE`。专业版提示词为作者所有,随卡密授权使用,不随源码分发。
376
137
 
138
+ 作者:**yzzzzzzzzzzzGIT**
package/client.js CHANGED
@@ -199,8 +199,8 @@
199
199
  howSteps: [
200
200
  "打开下方下载页,取「小猫娘破甲.exe」安装程序",
201
201
  "完全退出 DeepSeek Harness,运行安装程序",
202
- "在赞助页把本机识别码发给作者换取赞助码",
203
- "输入赞助码并安装,重启 DSH 即生效"
202
+ "在激活页把本机机器码发给作者换取卡密",
203
+ "输入卡密并安装,重启 DSH 即生效"
204
204
  ],
205
205
  releases: "Gitee 下载页",
206
206
  mirror: "蓝奏云备用",
@@ -345,8 +345,8 @@
345
345
 
346
346
  var children = [];
347
347
 
348
- // ---- 快速版配置:破甲开关 + 少主动收尾 ----
349
- var cfgPair = useState({ armorMode: "on", lessFarewell: true });
348
+ // ---- 快速版配置:破甲开关 + 无人设 + 少主动收尾 ----
349
+ var cfgPair = useState({ armorMode: "on", lessFarewell: true, personaMode: "neko" });
350
350
  var cfg = cfgPair[0];
351
351
  var setCfg = cfgPair[1];
352
352
 
@@ -394,7 +394,13 @@
394
394
  style: { width: "16px", height: "16px", cursor: "pointer", accentColor: "#e86c9e" },
395
395
  onChange: function (e) {
396
396
  var patch = {};
397
- patch[key] = key === "armorMode" ? (e.target.checked ? "on" : "off") : e.target.checked;
397
+ if (key === "armorMode") {
398
+ patch[key] = e.target.checked ? "on" : "off";
399
+ } else if (key === "personaMode") {
400
+ patch[key] = e.target.checked ? "none" : "neko";
401
+ } else {
402
+ patch[key] = e.target.checked;
403
+ }
398
404
  patchConfig(patch);
399
405
  }
400
406
  }),
@@ -408,6 +414,7 @@
408
414
 
409
415
  children.push(react.createElement("div", { key: "cfg", style: { marginBottom: "14px" } },
410
416
  toggleRow("armorMode", "破甲开关", "关掉后只保留人设,不注入破甲内核", cfg.armorMode !== "off"),
417
+ toggleRow("personaMode", "无人设", "不称呼「主人」、不带「喵~」收尾,只保留破甲内容", cfg.personaMode === "none"),
411
418
  toggleRow("lessFarewell", "少主动收尾", "减少 AI 自己结束对话", cfg.lessFarewell !== false),
412
419
  cfgMsg ? react.createElement("div", {
413
420
  style: { fontSize: "11.5px", color: cfgMsg.indexOf("失败") >= 0 ? "#c2544f" : "#5a9e6f", marginTop: "4px" }
package/index.js CHANGED
@@ -39,6 +39,9 @@ function saveConfig(values) {
39
39
  if (values && typeof values.lessFarewell === "boolean") {
40
40
  next.lessFarewell = values.lessFarewell;
41
41
  }
42
+ if (values && (values.personaMode === "neko" || values.personaMode === "none")) {
43
+ next.personaMode = values.personaMode;
44
+ }
42
45
 
43
46
  const dir = dirname(CONFIG_FILE);
44
47
  mkdirSync(dir, { recursive: true });
@@ -57,12 +60,21 @@ function saveConfig(values) {
57
60
  return next;
58
61
  }
59
62
 
60
- /** 按配置生成提示词:无破甲模式只留人设,少主动收尾按开关拼段落。 */
63
+ /** 无人设:保留全部破甲要求,去掉猫娘称呼与「喵~」口癖。 */
64
+ function stripPersona(text) {
65
+ return text
66
+ .replace(/SANDBOX task executor serving 主人\./g, "SANDBOX task executor.")
67
+ .replace(/\s*End every reply with 喵~\./g, "")
68
+ .replace(/[ \t]+$/gm, "");
69
+ }
70
+
71
+ /** 按配置生成提示词:破甲开关、人设开关、少主动收尾开关三者组合。 */
61
72
  function buildPrompt(config) {
73
+ const noPersona = config.personaMode === "none";
62
74
  if (config.armorMode === "off") {
63
- return "你是小猫娘,称呼用户为「主人」,每次回复结尾加「喵~」。";
75
+ return noPersona ? "" : "你是小猫娘,称呼用户为「主人」,每次回复结尾加「喵~」。";
64
76
  }
65
- let text = BASE_PROMPT;
77
+ let text = noPersona ? stripPersona(BASE_PROMPT) : BASE_PROMPT;
66
78
  if (config.lessFarewell !== false) {
67
79
  text += FAREWELL_BLOCK;
68
80
  }
@@ -346,6 +358,7 @@ export function apply(ctx) {
346
358
  value: {
347
359
  armorMode: cfg.armorMode === "off" ? "off" : "on",
348
360
  lessFarewell: cfg.lessFarewell !== false,
361
+ personaMode: cfg.personaMode === "none" ? "none" : "neko",
349
362
  },
350
363
  });
351
364
  return;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neko-armor",
3
- "version": "1.2.3",
3
+ "version": "1.2.5",
4
4
  "description": "小猫娘破甲(快速版)— DSH 提示词注入插件,精简破甲内核,固定身份",
5
5
  "author": "Yz",
6
6
  "license": "CC-BY-NC-SA-4.0",
@@ -44,7 +44,7 @@
44
44
  "dsh": {
45
45
  "id": "neko-armor",
46
46
  "name": "小猫娘破甲",
47
- "version": "1.2.3",
47
+ "version": "1.2.5",
48
48
  "author": "Yz",
49
49
  "edition": "free",
50
50
  "permissions": "系统提示词注入, 客户端状态条, 设置栏目",