@zhushanwen/pi-permission 0.1.0 → 1.0.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.
- package/package.json +1 -1
- package/src/index.ts +13 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhushanwen/pi-permission",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "Pi permission extension — four permission modes (yolo/auto/approve/strict) with three-layer pipeline (AST + rules + AI classifier).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "src/index.ts",
|
package/src/index.ts
CHANGED
|
@@ -112,6 +112,19 @@ export default function permissionExtension(pi: ExtensionAPI): void {
|
|
|
112
112
|
// ──────────────────────── /permission 命令 ────────────────────────
|
|
113
113
|
pi.registerCommand("permission", {
|
|
114
114
|
description: "View or switch permission mode. Usage: /permission [mode|status|rule|model]",
|
|
115
|
+
getArgumentCompletions(prefix: string) {
|
|
116
|
+
const trimmed = prefix.trimStart().toLowerCase();
|
|
117
|
+
const opts = [
|
|
118
|
+
{ label: "status", value: "status", description: "查看详细权限配置" },
|
|
119
|
+
{ label: "rule", value: "rule", description: "编辑用户规则(overlay)" },
|
|
120
|
+
{ label: "model", value: "model", description: "选择 classifier 模型(overlay)" },
|
|
121
|
+
{ label: "yolo", value: "yolo", description: "无保护,允许全部" },
|
|
122
|
+
{ label: "auto", value: "auto", description: "规则 + AI 分类器" },
|
|
123
|
+
{ label: "approve", value: "approve", description: "规则,非安全→手动批准" },
|
|
124
|
+
{ label: "strict", value: "strict", description: "全部需批准" },
|
|
125
|
+
];
|
|
126
|
+
return trimmed === "" ? opts : opts.filter((o) => o.label.startsWith(trimmed));
|
|
127
|
+
},
|
|
115
128
|
handler: async (args: string, ctx: ExtensionCommandContext): Promise<void> => {
|
|
116
129
|
// 命令执行前重载配置(确保最新,用户可能手动改过文件)
|
|
117
130
|
refreshConfig();
|