@liangjie559567/ultrapower 7.6.0 → 7.7.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/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +2 -2
- package/bridge/mcp-server.cjs +1 -0
- package/dist/lib/atomic-write.d.ts.map +1 -1
- package/dist/lib/atomic-write.js +2 -0
- package/dist/lib/atomic-write.js.map +1 -1
- package/dist/lib/logger.d.ts.map +1 -1
- package/dist/lib/logger.js +9 -4
- package/dist/lib/logger.js.map +1 -1
- package/dist/security/concurrency-control.d.ts +7 -0
- package/dist/security/concurrency-control.d.ts.map +1 -1
- package/dist/security/concurrency-control.js +22 -0
- package/dist/security/concurrency-control.js.map +1 -1
- package/docs/CLAUDE.md +2 -2
- package/docs/CODE_BASED_FLOW.md +12 -12
- package/docs/COMPATIBILITY.md +1 -1
- package/docs/FEATURES.md +16 -16
- package/docs/INSTALL.md +2 -2
- package/docs/MIGRATION.md +2 -2
- package/docs/OMC-CLAUDE.md +1 -1
- package/docs/REFERENCE.md +14 -14
- package/docs/UPGRADE_VERIFICATION.md +1 -1
- package/docs/agent-templates/README.md +2 -2
- package/docs/api/media/INSTALL.md +2 -2
- package/docs/api/media/MIGRATION.md +2 -2
- package/docs/api/media/REFERENCE.md +14 -14
- package/docs/api/media/mcp-server-usage.md +4 -4
- package/docs/architecture/ultrapower-flow-analysis.md +1 -1
- package/docs/getting-started/quickstart.md +1 -1
- package/docs/glossary.md +1 -1
- package/docs/guides/mcp-server-usage.md +4 -4
- package/docs/guides/tool-name-migration.md +12 -12
- package/docs/mcp/configuration.md +5 -5
- package/docs/mcp/performance.md +5 -5
- package/docs/mcp-compatibility-matrix.md +1 -1
- package/docs/partials/agent-tiers.md +24 -24
- package/docs/partials/features.md +1 -1
- package/docs/partials/verification-tiers.md +2 -2
- package/docs/plans/2026-02-24-superpowers-ultrapower-integration-design.md +2 -2
- package/docs/plans/2026-03-02-docs-comprehensive-update.md +16 -16
- package/docs/plans/2026-03-05-mcp-adoption-atomic-tasks.md +9 -9
- package/docs/plans/2026-03-16-tech-debt-fixes.md +222 -0
- package/docs/prd/bugs-pain-points-audit-dag.md +297 -297
- package/docs/prd/bugs-pain-points-audit-draft.md +154 -154
- package/docs/prd/bugs-pain-points-audit-manifest.md +650 -650
- package/docs/prd/bugs-pain-points-audit-rough.md +654 -654
- package/docs/reports/tech-debt-verification-2026-03-16.md +87 -0
- package/docs/reviews/bugs-pain-points-audit/review_critic.md +213 -213
- package/docs/reviews/bugs-pain-points-audit/review_domain.md +247 -247
- package/docs/reviews/bugs-pain-points-audit/review_product.md +189 -189
- package/docs/reviews/bugs-pain-points-audit/review_tech.md +382 -382
- package/docs/reviews/bugs-pain-points-audit/review_ux.md +161 -161
- package/docs/reviews/bugs-pain-points-audit/summary.md +129 -129
- package/docs/reviews/bugs-pain-points-audit/tech-debt-v7.6.0-code-review.md +328 -0
- package/docs/shared/agent-tiers.md +24 -24
- package/docs/shared/features.md +1 -1
- package/docs/shared/verification-tiers.md +2 -2
- package/docs/standards/runtime-protection.md +7 -0
- package/docs/troubleshooting.md +1 -1
- package/package.json +1 -1
|
@@ -8,11 +8,11 @@
|
|
|
8
8
|
{
|
|
9
9
|
"name": "ultrapower",
|
|
10
10
|
"description": "Disciplined multi-agent orchestration: workflow enforcement + parallel execution",
|
|
11
|
-
"version": "7.
|
|
11
|
+
"version": "7.7.0",
|
|
12
12
|
"source": {
|
|
13
13
|
"source": "npm",
|
|
14
14
|
"package": "@liangjie559567/ultrapower",
|
|
15
|
-
"version": "7.
|
|
15
|
+
"version": "7.7.0"
|
|
16
16
|
},
|
|
17
17
|
"author": {
|
|
18
18
|
"name": "liangjie559567"
|
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# ultrapower
|
|
1
|
+
# ultrapower v7.7.0
|
|
2
2
|
|
|
3
3
|
ultrapower 是 Claude Code 的智能多 Agent 编排层(OMC),在 superpowers 工作流基础上深度融合了 Axiom 框架,提供 **49 个专业 agents**、**71 个 skills** 和完整的 TypeScript hooks 系统。
|
|
4
4
|
|
|
@@ -79,7 +79,7 @@ autopilot "创建一个 hello world 函数"
|
|
|
79
79
|
|
|
80
80
|
### 安全加固
|
|
81
81
|
|
|
82
|
-
ultrapower v7.
|
|
82
|
+
ultrapower v7.7.0 包含全面的安全加固:
|
|
83
83
|
|
|
84
84
|
- **状态文件保护**:原子写入 + 并发队列,防止竞态条件
|
|
85
85
|
- **输入验证**:原型污染防护,拒绝 `__proto__`/`constructor`/`prototype`
|
package/bridge/mcp-server.cjs
CHANGED
|
@@ -20198,6 +20198,7 @@ function atomicWriteFileSync(filePath, content) {
|
|
|
20198
20198
|
fsSync.fsyncSync(fd);
|
|
20199
20199
|
fsSync.closeSync(fd);
|
|
20200
20200
|
fd = null;
|
|
20201
|
+
ensureDirSync(dir);
|
|
20201
20202
|
let renamed = false;
|
|
20202
20203
|
for (let attempt = 0; attempt < 3 && !renamed; attempt++) {
|
|
20203
20204
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atomic-write.d.ts","sourceRoot":"","sources":["../../src/lib/atomic-write.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAe/C;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,IAAI,CAAC,CA+Cf;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAgEvE;AAED;;;;;;GAMG;AACH;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"atomic-write.d.ts","sourceRoot":"","sources":["../../src/lib/atomic-write.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAe/C;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,IAAI,CAAC,CA+Cf;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAgEvE;AAED;;;;;;GAMG;AACH;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CA+E3E;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAGzE;AAED,wBAAsB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAmBzE;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,EACb,UAAU,SAAI,GACb,IAAI,CAiBN"}
|
package/dist/lib/atomic-write.js
CHANGED
|
@@ -188,6 +188,8 @@ export function atomicWriteFileSync(filePath, content) {
|
|
|
188
188
|
// Close before rename
|
|
189
189
|
fsSync.closeSync(fd);
|
|
190
190
|
fd = null;
|
|
191
|
+
// Ensure target directory exists before rename (Windows race condition fix)
|
|
192
|
+
ensureDirSync(dir);
|
|
191
193
|
// Atomic rename with retry on Windows EPERM
|
|
192
194
|
let renamed = false;
|
|
193
195
|
for (let attempt = 0; attempt < 3 && !renamed; attempt++) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atomic-write.js","sourceRoot":"","sources":["../../src/lib/atomic-write.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"atomic-write.js","sourceRoot":"","sources":["../../src/lib/atomic-write.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/logger.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/lib/logger.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/lib/logger.ts"],"names":[],"mappings":"AAsDA,eAAO,MAAM,MAAM;oBACD,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;oBACtC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;qBACrC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;qBACtC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CACxD,CAAC;AAEF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAY3D"}
|
package/dist/lib/logger.js
CHANGED
|
@@ -36,7 +36,12 @@ function rotate(logPath) {
|
|
|
36
36
|
}
|
|
37
37
|
renameSyncWithRetry(logPath, `${logPath}.1`);
|
|
38
38
|
}
|
|
39
|
+
const LOG_LEVELS = { DEBUG: 0, INFO: 1, WARN: 2, ERROR: 3 };
|
|
40
|
+
const currentLevel = LOG_LEVELS[process.env.LOG_LEVEL] ?? LOG_LEVELS.INFO;
|
|
39
41
|
function log(level, message, meta) {
|
|
42
|
+
const levelValue = LOG_LEVELS[level];
|
|
43
|
+
if (levelValue < currentLevel)
|
|
44
|
+
return;
|
|
40
45
|
const entry = JSON.stringify({
|
|
41
46
|
timestamp: new Date().toISOString(),
|
|
42
47
|
level,
|
|
@@ -46,10 +51,10 @@ function log(level, message, meta) {
|
|
|
46
51
|
console.log(entry);
|
|
47
52
|
}
|
|
48
53
|
export const logger = {
|
|
49
|
-
info: (message, meta) => log('
|
|
50
|
-
warn: (message, meta) => log('
|
|
51
|
-
error: (message, meta) => log('
|
|
52
|
-
debug: (message, meta) => log('
|
|
54
|
+
info: (message, meta) => log('INFO', message, meta),
|
|
55
|
+
warn: (message, meta) => log('WARN', message, meta),
|
|
56
|
+
error: (message, meta) => log('ERROR', message, meta),
|
|
57
|
+
debug: (message, meta) => log('DEBUG', message, meta)
|
|
53
58
|
};
|
|
54
59
|
export function security(event, data) {
|
|
55
60
|
const logPath = join(process.cwd(), LOG_PATH);
|
package/dist/lib/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/lib/logger.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/lib/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,4 +39,11 @@ export declare class ConcurrencyControl {
|
|
|
39
39
|
*/
|
|
40
40
|
detectDeadlocks(): string[];
|
|
41
41
|
}
|
|
42
|
+
export interface Lock {
|
|
43
|
+
resourceId: string;
|
|
44
|
+
holderId: string;
|
|
45
|
+
controller: ConcurrencyControl;
|
|
46
|
+
}
|
|
47
|
+
export declare function acquireLock(resourceId: string, timeoutMs?: number, controller?: ConcurrencyControl): Promise<Lock>;
|
|
48
|
+
export declare function releaseLock(lock: Lock): Promise<void>;
|
|
42
49
|
//# sourceMappingURL=concurrency-control.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concurrency-control.d.ts","sourceRoot":"","sources":["../../src/security/concurrency-control.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAQD,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,KAAK,CAA4D;IACzE,OAAO,CAAC,MAAM,CAA8B;gBAEhC,MAAM,GAAE,iBAAsB;IAI1C;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAMrD;;OAEG;IACG,eAAe,CAAC,CAAC,EACrB,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,CAAC,CAAC;IAsBb;;OAEG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBtE;;OAEG;IACH,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAQvD;;OAEG;IACH,eAAe,IAAI,MAAM,EAAE;CAY5B"}
|
|
1
|
+
{"version":3,"file":"concurrency-control.d.ts","sourceRoot":"","sources":["../../src/security/concurrency-control.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAQD,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,KAAK,CAA4D;IACzE,OAAO,CAAC,MAAM,CAA8B;gBAEhC,MAAM,GAAE,iBAAsB;IAI1C;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAMrD;;OAEG;IACG,eAAe,CAAC,CAAC,EACrB,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,CAAC,CAAC;IAsBb;;OAEG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBtE;;OAEG;IACH,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAQvD;;OAEG;IACH,eAAe,IAAI,MAAM,EAAE;CAY5B;AAKD,MAAM,WAAW,IAAI;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,kBAAkB,CAAC;CAChC;AAED,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,GAAE,MAAa,EAAE,UAAU,GAAE,kBAAkC,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB7I;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3D"}
|
|
@@ -84,4 +84,26 @@ export class ConcurrencyControl {
|
|
|
84
84
|
return deadlocked;
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
+
// Singleton instance for global lock management
|
|
88
|
+
const globalControl = new ConcurrencyControl();
|
|
89
|
+
export async function acquireLock(resourceId, timeoutMs = 5000, controller = globalControl) {
|
|
90
|
+
const holderId = `${process.pid}-${Date.now()}-${Math.random()}`;
|
|
91
|
+
const startTime = Date.now();
|
|
92
|
+
while (Date.now() - startTime < timeoutMs) {
|
|
93
|
+
try {
|
|
94
|
+
controller.acquireLock(resourceId, holderId);
|
|
95
|
+
return { resourceId, holderId, controller };
|
|
96
|
+
}
|
|
97
|
+
catch (err) {
|
|
98
|
+
if (Date.now() - startTime >= timeoutMs) {
|
|
99
|
+
throw err;
|
|
100
|
+
}
|
|
101
|
+
await new Promise(resolve => setTimeout(resolve, 50));
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
throw new Error(`Failed to acquire lock for ${resourceId} within ${timeoutMs}ms`);
|
|
105
|
+
}
|
|
106
|
+
export async function releaseLock(lock) {
|
|
107
|
+
lock.controller.releaseLock(lock.resourceId, lock.holderId);
|
|
108
|
+
}
|
|
87
109
|
//# sourceMappingURL=concurrency-control.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concurrency-control.js","sourceRoot":"","sources":["../../src/security/concurrency-control.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"concurrency-control.js","sourceRoot":"","sources":["../../src/security/concurrency-control.ts"],"names":[],"mappings":"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"}
|
package/docs/CLAUDE.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<!-- OMC:START -->
|
|
2
|
-
<!-- OMC:VERSION:7.
|
|
2
|
+
<!-- OMC:VERSION:7.7.0 -->
|
|
3
3
|
|
|
4
4
|
# ultrapower - Multi-Agent Orchestration 智能多 Agent 编排
|
|
5
5
|
|
|
@@ -251,7 +251,7 @@ Notepad(会话记忆,位于 `{worktree}/.omc/notepad.md`):
|
|
|
251
251
|
|
|
252
252
|
代码智能:
|
|
253
253
|
|
|
254
|
-
* LSP:`lsp_hover`、`lsp_goto_definition`、`lsp_find_references`、`lsp_document_symbols`、`lsp_workspace_symbols`、`lsp_diagnostics`、`lsp_diagnostics_directory`、`lsp_prepare_rename`、`lsp_rename`、`lsp_code_actions`、`lsp_code_action_resolve`、`lsp_servers`
|
|
254
|
+
* LSP:`ultrapower:lsp_hover`、`ultrapower:lsp_goto_definition`、`ultrapower:lsp_find_references`、`ultrapower:lsp_document_symbols`、`ultrapower:lsp_workspace_symbols`、`ultrapower:lsp_diagnostics`、`ultrapower:lsp_diagnostics_directory`、`ultrapower:lsp_prepare_rename`、`ultrapower:lsp_rename`、`ultrapower:lsp_code_actions`、`ultrapower:lsp_code_action_resolve`、`ultrapower:lsp_servers`
|
|
255
255
|
|
|
256
256
|
* AST:`ast_grep_search`(结构化代码模式搜索)、`ast_grep_replace`(结构化转换)
|
|
257
257
|
|
package/docs/CODE_BASED_FLOW.md
CHANGED
|
@@ -628,18 +628,18 @@ export const allCustomTools: GenericToolDefinition[] = [
|
|
|
628
628
|
|
|
629
629
|
```typescript
|
|
630
630
|
// 从 lsp-tools.ts 推断的工具列表
|
|
631
|
-
- lsp_hover // 类型信息和文档
|
|
632
|
-
- lsp_goto_definition // 跳转到定义
|
|
633
|
-
- lsp_find_references // 查找引用
|
|
634
|
-
- lsp_document_symbols // 文档符号大纲
|
|
635
|
-
- lsp_workspace_symbols // 工作区符号搜索
|
|
636
|
-
- lsp_diagnostics // 诊断信息(错误/警告)
|
|
637
|
-
- lsp_diagnostics_directory // 项目级诊断
|
|
638
|
-
- lsp_prepare_rename // 重命名准备
|
|
639
|
-
- lsp_rename // 符号重命名
|
|
640
|
-
- lsp_code_actions // 代码操作
|
|
641
|
-
- lsp_code_action_resolve // 代码操作详情
|
|
642
|
-
- lsp_servers // 列出语言服务器
|
|
631
|
+
- ultrapower:lsp_hover // 类型信息和文档
|
|
632
|
+
- ultrapower:lsp_goto_definition // 跳转到定义
|
|
633
|
+
- ultrapower:lsp_find_references // 查找引用
|
|
634
|
+
- ultrapower:lsp_document_symbols // 文档符号大纲
|
|
635
|
+
- ultrapower:lsp_workspace_symbols // 工作区符号搜索
|
|
636
|
+
- ultrapower:lsp_diagnostics // 诊断信息(错误/警告)
|
|
637
|
+
- ultrapower:lsp_diagnostics_directory // 项目级诊断
|
|
638
|
+
- ultrapower:lsp_prepare_rename // 重命名准备
|
|
639
|
+
- ultrapower:lsp_rename // 符号重命名
|
|
640
|
+
- ultrapower:lsp_code_actions // 代码操作
|
|
641
|
+
- ultrapower:lsp_code_action_resolve // 代码操作详情
|
|
642
|
+
- ultrapower:lsp_servers // 列出语言服务器
|
|
643
643
|
```
|
|
644
644
|
|
|
645
645
|
### 7.3 AST 工具
|
package/docs/COMPATIBILITY.md
CHANGED
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
|
|
27
27
|
| 工具类别 | 工具列表 |
|
|
28
28
|
| ---------- | ---------- |
|
|
29
|
-
| LSP(12 个) | `lsp_hover`、`lsp_goto_definition`、`lsp_find_references`、`lsp_document_symbols`、`lsp_workspace_symbols`、`lsp_diagnostics`、`lsp_diagnostics_directory`、`lsp_prepare_rename`、`lsp_rename`、`lsp_code_actions`、`lsp_code_action_resolve`、`lsp_servers` |
|
|
29
|
+
| LSP(12 个) | `ultrapower:lsp_hover`、`ultrapower:lsp_goto_definition`、`ultrapower:lsp_find_references`、`ultrapower:lsp_document_symbols`、`ultrapower:lsp_workspace_symbols`、`ultrapower:lsp_diagnostics`、`ultrapower:lsp_diagnostics_directory`、`ultrapower:lsp_prepare_rename`、`ultrapower:lsp_rename`、`ultrapower:lsp_code_actions`、`ultrapower:lsp_code_action_resolve`、`ultrapower:lsp_servers` |
|
|
30
30
|
| AST | `ast_grep_search`、`ast_grep_replace` |
|
|
31
31
|
| Python REPL | `python_repl` |
|
|
32
32
|
|
package/docs/FEATURES.md
CHANGED
|
@@ -288,7 +288,7 @@ project_memory_add_directive(directive: string): boolean
|
|
|
288
288
|
{ "category": "architecture", "content": "...", "timestamp": "2026-03-02" }
|
|
289
289
|
],
|
|
290
290
|
"directives": [
|
|
291
|
-
"始终在修改文件前运行 lsp_diagnostics",
|
|
291
|
+
"始终在修改文件前运行 ultrapower:lsp_diagnostics",
|
|
292
292
|
"禁止直接修改 main 分支"
|
|
293
293
|
]
|
|
294
294
|
}
|
|
@@ -313,24 +313,24 @@ ultrapower 通过 Language Server Protocol、AST-grep 和 Python REPL 提供类
|
|
|
313
313
|
|
|
314
314
|
| 工具 | 描述 |
|
|
315
315
|
| ------ | ------ |
|
|
316
|
-
| `lsp_hover` | 获取光标位置的类型信息和文档注释 |
|
|
317
|
-
| `lsp_goto_definition` | 跳转到符号的定义位置 |
|
|
318
|
-
| `lsp_find_references` | 查找符号在整个代码库中的所有引用 |
|
|
319
|
-
| `lsp_document_symbols` | 获取文件的符号大纲(函数、类、变量) |
|
|
320
|
-
| `lsp_workspace_symbols` | 跨工作区搜索符号 |
|
|
321
|
-
| `lsp_diagnostics` | 获取单个文件的错误和警告 |
|
|
322
|
-
| `lsp_diagnostics_directory` | 项目级类型检查(优先使用 `tsc --noEmit`,回退到 LSP) |
|
|
323
|
-
| `lsp_servers` | 列出当前可用的语言服务器 |
|
|
324
|
-
| `lsp_prepare_rename` | 检查符号是否可安全重命名 |
|
|
325
|
-
| `lsp_rename` | 预览并执行跨文件重命名重构 |
|
|
326
|
-
| `lsp_code_actions` | 获取可用的快速修复和重构操作 |
|
|
327
|
-
| `lsp_code_action_resolve` | 获取特定代码操作的详细信息 |
|
|
316
|
+
| `ultrapower:lsp_hover` | 获取光标位置的类型信息和文档注释 |
|
|
317
|
+
| `ultrapower:lsp_goto_definition` | 跳转到符号的定义位置 |
|
|
318
|
+
| `ultrapower:lsp_find_references` | 查找符号在整个代码库中的所有引用 |
|
|
319
|
+
| `ultrapower:lsp_document_symbols` | 获取文件的符号大纲(函数、类、变量) |
|
|
320
|
+
| `ultrapower:lsp_workspace_symbols` | 跨工作区搜索符号 |
|
|
321
|
+
| `ultrapower:lsp_diagnostics` | 获取单个文件的错误和警告 |
|
|
322
|
+
| `ultrapower:lsp_diagnostics_directory` | 项目级类型检查(优先使用 `tsc --noEmit`,回退到 LSP) |
|
|
323
|
+
| `ultrapower:lsp_servers` | 列出当前可用的语言服务器 |
|
|
324
|
+
| `ultrapower:lsp_prepare_rename` | 检查符号是否可安全重命名 |
|
|
325
|
+
| `ultrapower:lsp_rename` | 预览并执行跨文件重命名重构 |
|
|
326
|
+
| `ultrapower:lsp_code_actions` | 获取可用的快速修复和重构操作 |
|
|
327
|
+
| `ultrapower:lsp_code_action_resolve` | 获取特定代码操作的详细信息 |
|
|
328
328
|
|
|
329
329
|
**支持语言:** TypeScript、JavaScript、Python、Rust、Go、C/C++、Java、JSON、HTML、CSS、YAML
|
|
330
330
|
|
|
331
331
|
#### 诊断策略
|
|
332
332
|
|
|
333
|
-
`lsp_diagnostics_directory` 使用双策略方法:
|
|
333
|
+
`ultrapower:lsp_diagnostics_directory` 使用双策略方法:
|
|
334
334
|
|
|
335
335
|
```typescript
|
|
336
336
|
type DiagnosticsStrategy = 'tsc' | 'lsp' | 'auto';
|
|
@@ -343,14 +343,14 @@ type DiagnosticsStrategy = 'tsc' | 'lsp' | 'auto';
|
|
|
343
343
|
|
|
344
344
|
```typescript
|
|
345
345
|
// 在修改文件后立即验证
|
|
346
|
-
const diagnostics = await lsp_diagnostics({ file: 'src/foo.ts' });
|
|
346
|
+
const diagnostics = await ultrapower:lsp_diagnostics({ file: 'src/foo.ts' });
|
|
347
347
|
if (diagnostics.errorCount > 0) {
|
|
348
348
|
// 在生产代码中修复,而非测试 hack
|
|
349
349
|
console.error(diagnostics.messages);
|
|
350
350
|
}
|
|
351
351
|
|
|
352
352
|
// 项目级检查
|
|
353
|
-
const result = await lsp_diagnostics_directory({ directory: process.cwd() });
|
|
353
|
+
const result = await ultrapower:lsp_diagnostics_directory({ directory: process.cwd() });
|
|
354
354
|
console.log(`${result.errorCount} errors, ${result.warningCount} warnings`);
|
|
355
355
|
```
|
|
356
356
|
|
package/docs/INSTALL.md
CHANGED
|
@@ -54,7 +54,7 @@ ultrapower v7.6.0 完整安装指南,覆盖从零开始到完全配置的所
|
|
|
54
54
|
| 依赖 | 用途 |
|
|
55
55
|
| ------ | ------ |
|
|
56
56
|
| Python 3.8+ | python_repl 工具、nexus 守护进程 |
|
|
57
|
-
| TypeScript LSP | lsp_* 代码智能工具 |
|
|
57
|
+
| TypeScript LSP | ultrapower:lsp_* 代码智能工具 |
|
|
58
58
|
| ast-grep | ast_grep_search/replace 工具 |
|
|
59
59
|
|
|
60
60
|
### 验证环境
|
|
@@ -584,7 +584,7 @@ cat ~/.claude/settings.json | grep hooks
|
|
|
584
584
|
|
|
585
585
|
### 问题:LSP 工具在 Windows 上失败
|
|
586
586
|
|
|
587
|
-
**症状**:`lsp_hover`、`lsp_goto_definition` 等工具报错
|
|
587
|
+
**症状**:`ultrapower:lsp_hover`、`ultrapower:lsp_goto_definition` 等工具报错
|
|
588
588
|
|
|
589
589
|
**解决**:确保 Node.js 在 PATH 中,LSP 服务器需要 `.cmd` 扩展名支持(v5.5.33 已修复)。
|
|
590
590
|
|
package/docs/MIGRATION.md
CHANGED
|
@@ -272,7 +272,7 @@ v5.0 集成了 superpowers skill 系统,将 Agent 数量从 28 扩展至 31,
|
|
|
272
272
|
|
|
273
273
|
**新工具集成:**
|
|
274
274
|
|
|
275
|
-
* LSP 工具(12 个):`lsp_hover`、`lsp_goto_definition`、`lsp_find_references` 等
|
|
275
|
+
* LSP 工具(12 个):`ultrapower:lsp_hover`、`ultrapower:lsp_goto_definition`、`ultrapower:lsp_find_references` 等
|
|
276
276
|
|
|
277
277
|
* AST 工具:`ast_grep_search`、`ast_grep_replace`
|
|
278
278
|
|
|
@@ -885,7 +885,7 @@ Version 3.1 是一个小版本,在保持与 v3.0 完全向后兼容的同时
|
|
|
885
885
|
|
|
886
886
|
#### 3. Directory Diagnostics Tool
|
|
887
887
|
|
|
888
|
-
通过 `lsp_diagnostics_directory` 工具进行项目级类型检查。
|
|
888
|
+
通过 `ultrapower:lsp_diagnostics_directory` 工具进行项目级类型检查。
|
|
889
889
|
|
|
890
890
|
**策略:**
|
|
891
891
|
|
package/docs/OMC-CLAUDE.md
CHANGED
|
@@ -235,7 +235,7 @@ Notepad(会话记忆,位于 `{worktree}/.omc/notepad.md`):
|
|
|
235
235
|
|
|
236
236
|
代码智能:
|
|
237
237
|
|
|
238
|
-
* LSP:`lsp_hover`、`lsp_goto_definition`、`lsp_find_references`、`lsp_document_symbols`、`lsp_workspace_symbols`、`lsp_diagnostics`、`lsp_diagnostics_directory`、`lsp_prepare_rename`、`lsp_rename`、`lsp_code_actions`、`lsp_code_action_resolve`、`lsp_servers`
|
|
238
|
+
* LSP:`ultrapower:lsp_hover`、`ultrapower:lsp_goto_definition`、`ultrapower:lsp_find_references`、`ultrapower:lsp_document_symbols`、`ultrapower:lsp_workspace_symbols`、`ultrapower:lsp_diagnostics`、`ultrapower:lsp_diagnostics_directory`、`ultrapower:lsp_prepare_rename`、`ultrapower:lsp_rename`、`ultrapower:lsp_code_actions`、`ultrapower:lsp_code_action_resolve`、`ultrapower:lsp_servers`
|
|
239
239
|
|
|
240
240
|
* AST:`ast_grep_search`(结构化代码模式搜索)、`ast_grep_replace`(结构化转换)
|
|
241
241
|
|
package/docs/REFERENCE.md
CHANGED
|
@@ -564,7 +564,7 @@ ultrapower exposes **35 custom tools** via the `mcp__plugin_ultrapower_t__` pref
|
|
|
564
564
|
|
|
565
565
|
| Category | Count | Tool Prefix |
|
|
566
566
|
| ---------- | ------- | ------------- |
|
|
567
|
-
| LSP (Language Server Protocol) | 12 | `lsp_*` |
|
|
567
|
+
| LSP (Language Server Protocol) | 12 | `ultrapower:lsp_*` |
|
|
568
568
|
| AST (Structured code search) | 2 | `ast_grep_*` |
|
|
569
569
|
| Python REPL | 1 | `python_repl` |
|
|
570
570
|
| Notepad (Session memory) | 6 | `notepad_*` |
|
|
@@ -599,7 +599,7 @@ mcp__plugin_ultrapower_t__lsp_code_action_resolve -- Get action details
|
|
|
599
599
|
|
|
600
600
|
Supported languages: TypeScript, Python, Rust, Go, C/C++, Java, JSON, HTML, CSS, YAML.
|
|
601
601
|
|
|
602
|
-
> **Note**: LSP tools require language server installation (typescript-language-server, pylsp, rust-analyzer, gopls, etc.). Use `lsp_servers` to check installation status.
|
|
602
|
+
> **Note**: LSP tools require language server installation (typescript-language-server, pylsp, rust-analyzer, gopls, etc.). Use `ultrapower:lsp_servers` to check installation status.
|
|
603
603
|
|
|
604
604
|
---
|
|
605
605
|
|
|
@@ -820,18 +820,18 @@ ultrapower exposes 32 custom tools through the MCP server using the `mcp__plugin
|
|
|
820
820
|
|
|
821
821
|
| Tool | MCP Name | Description |
|
|
822
822
|
| ------ | ---------- | ------------- |
|
|
823
|
-
| `lsp_hover` | `mcp__plugin_ultrapower_t__lsp_hover` | Get type information and documentation at cursor position |
|
|
824
|
-
| `lsp_goto_definition` | `mcp__plugin_ultrapower_t__lsp_goto_definition` | Find definition location of a symbol |
|
|
825
|
-
| `lsp_find_references` | `mcp__plugin_ultrapower_t__lsp_find_references` | Find all references to a symbol across codebase |
|
|
826
|
-
| `lsp_document_symbols` | `mcp__plugin_ultrapower_t__lsp_document_symbols` | Get hierarchical outline of symbols in a file |
|
|
827
|
-
| `lsp_workspace_symbols` | `mcp__plugin_ultrapower_t__lsp_workspace_symbols` | Search for symbols by name across workspace |
|
|
828
|
-
| `lsp_diagnostics` | `mcp__plugin_ultrapower_t__lsp_diagnostics` | Get language server diagnostics for a file |
|
|
829
|
-
| `lsp_diagnostics_directory` | `mcp__plugin_ultrapower_t__lsp_diagnostics_directory` | Run project-level diagnostics on a directory |
|
|
830
|
-
| `lsp_servers` | `mcp__plugin_ultrapower_t__lsp_servers` | List all known language servers and installation status |
|
|
831
|
-
| `lsp_prepare_rename` | `mcp__plugin_ultrapower_t__lsp_prepare_rename` | Check if a symbol can be renamed |
|
|
832
|
-
| `lsp_rename` | `mcp__plugin_ultrapower_t__lsp_rename` | Rename a symbol across all files in project |
|
|
833
|
-
| `lsp_code_actions` | `mcp__plugin_ultrapower_t__lsp_code_actions` | Get available code actions (refactorings, quick fixes) |
|
|
834
|
-
| `lsp_code_action_resolve` | `mcp__plugin_ultrapower_t__lsp_code_action_resolve` | Get full edit details for a specific code action |
|
|
823
|
+
| `ultrapower:lsp_hover` | `mcp__plugin_ultrapower_t__lsp_hover` | Get type information and documentation at cursor position |
|
|
824
|
+
| `ultrapower:lsp_goto_definition` | `mcp__plugin_ultrapower_t__lsp_goto_definition` | Find definition location of a symbol |
|
|
825
|
+
| `ultrapower:lsp_find_references` | `mcp__plugin_ultrapower_t__lsp_find_references` | Find all references to a symbol across codebase |
|
|
826
|
+
| `ultrapower:lsp_document_symbols` | `mcp__plugin_ultrapower_t__lsp_document_symbols` | Get hierarchical outline of symbols in a file |
|
|
827
|
+
| `ultrapower:lsp_workspace_symbols` | `mcp__plugin_ultrapower_t__lsp_workspace_symbols` | Search for symbols by name across workspace |
|
|
828
|
+
| `ultrapower:lsp_diagnostics` | `mcp__plugin_ultrapower_t__lsp_diagnostics` | Get language server diagnostics for a file |
|
|
829
|
+
| `ultrapower:lsp_diagnostics_directory` | `mcp__plugin_ultrapower_t__lsp_diagnostics_directory` | Run project-level diagnostics on a directory |
|
|
830
|
+
| `ultrapower:lsp_servers` | `mcp__plugin_ultrapower_t__lsp_servers` | List all known language servers and installation status |
|
|
831
|
+
| `ultrapower:lsp_prepare_rename` | `mcp__plugin_ultrapower_t__lsp_prepare_rename` | Check if a symbol can be renamed |
|
|
832
|
+
| `ultrapower:lsp_rename` | `mcp__plugin_ultrapower_t__lsp_rename` | Rename a symbol across all files in project |
|
|
833
|
+
| `ultrapower:lsp_code_actions` | `mcp__plugin_ultrapower_t__lsp_code_actions` | Get available code actions (refactorings, quick fixes) |
|
|
834
|
+
| `ultrapower:lsp_code_action_resolve` | `mcp__plugin_ultrapower_t__lsp_code_action_resolve` | Get full edit details for a specific code action |
|
|
835
835
|
|
|
836
836
|
#### AST Tools (2)
|
|
837
837
|
|
|
@@ -82,7 +82,7 @@ You execute simple, well-defined code changes quickly and efficiently. Handle si
|
|
|
82
82
|
|
|
83
83
|
* Make the requested changes
|
|
84
84
|
|
|
85
|
-
* Run lsp_diagnostics on changed files
|
|
85
|
+
* Run ultrapower:lsp_diagnostics on changed files
|
|
86
86
|
|
|
87
87
|
* Verify changes compile/pass basic checks
|
|
88
88
|
|
|
@@ -90,7 +90,7 @@ You execute simple, well-defined code changes quickly and efficiently. Handle si
|
|
|
90
90
|
|
|
91
91
|
* Modified file(s)
|
|
92
92
|
|
|
93
|
-
* lsp_diagnostics output showing no new errors
|
|
93
|
+
* ultrapower:lsp_diagnostics output showing no new errors
|
|
94
94
|
|
|
95
95
|
* Brief summary of changes made
|
|
96
96
|
```
|
|
@@ -45,7 +45,7 @@ ultrapower v5.2.2 完整安装指南,覆盖从零开始到完全配置的所
|
|
|
45
45
|
| 依赖 | 用途 |
|
|
46
46
|
| ------ | ------ |
|
|
47
47
|
| Python 3.8+ | python_repl 工具、nexus 守护进程 |
|
|
48
|
-
| TypeScript LSP | lsp_* 代码智能工具 |
|
|
48
|
+
| TypeScript LSP | ultrapower:lsp_* 代码智能工具 |
|
|
49
49
|
| ast-grep | ast_grep_search/replace 工具 |
|
|
50
50
|
|
|
51
51
|
### 验证环境
|
|
@@ -565,7 +565,7 @@ cat ~/.claude/settings.json | grep hooks
|
|
|
565
565
|
|
|
566
566
|
### 问题:LSP 工具在 Windows 上失败
|
|
567
567
|
|
|
568
|
-
**症状**:`lsp_hover`、`lsp_goto_definition` 等工具报错
|
|
568
|
+
**症状**:`ultrapower:lsp_hover`、`ultrapower:lsp_goto_definition` 等工具报错
|
|
569
569
|
|
|
570
570
|
**解决**:确保 Node.js 在 PATH 中,LSP 服务器需要 `.cmd` 扩展名支持(v5.2.2 已修复)。
|
|
571
571
|
|
|
@@ -272,7 +272,7 @@ v5.0 集成了 superpowers skill 系统,将 Agent 数量从 28 扩展至 31,
|
|
|
272
272
|
|
|
273
273
|
**新工具集成:**
|
|
274
274
|
|
|
275
|
-
* LSP 工具(12 个):`lsp_hover`、`lsp_goto_definition`、`lsp_find_references` 等
|
|
275
|
+
* LSP 工具(12 个):`ultrapower:lsp_hover`、`ultrapower:lsp_goto_definition`、`ultrapower:lsp_find_references` 等
|
|
276
276
|
|
|
277
277
|
* AST 工具:`ast_grep_search`、`ast_grep_replace`
|
|
278
278
|
|
|
@@ -885,7 +885,7 @@ Version 3.1 是一个小版本,在保持与 v3.0 完全向后兼容的同时
|
|
|
885
885
|
|
|
886
886
|
#### 3. Directory Diagnostics Tool
|
|
887
887
|
|
|
888
|
-
通过 `lsp_diagnostics_directory` 工具进行项目级类型检查。
|
|
888
|
+
通过 `ultrapower:lsp_diagnostics_directory` 工具进行项目级类型检查。
|
|
889
889
|
|
|
890
890
|
**策略:**
|
|
891
891
|
|
|
@@ -564,7 +564,7 @@ ultrapower exposes **35 custom tools** via the `mcp__plugin_ultrapower_t__` pref
|
|
|
564
564
|
|
|
565
565
|
| Category | Count | Tool Prefix |
|
|
566
566
|
| ---------- | ------- | ------------- |
|
|
567
|
-
| LSP (Language Server Protocol) | 12 | `lsp_*` |
|
|
567
|
+
| LSP (Language Server Protocol) | 12 | `ultrapower:lsp_*` |
|
|
568
568
|
| AST (Structured code search) | 2 | `ast_grep_*` |
|
|
569
569
|
| Python REPL | 1 | `python_repl` |
|
|
570
570
|
| Notepad (Session memory) | 6 | `notepad_*` |
|
|
@@ -599,7 +599,7 @@ mcp__plugin_ultrapower_t__lsp_code_action_resolve -- Get action details
|
|
|
599
599
|
|
|
600
600
|
Supported languages: TypeScript, Python, Rust, Go, C/C++, Java, JSON, HTML, CSS, YAML.
|
|
601
601
|
|
|
602
|
-
> **Note**: LSP tools require language server installation (typescript-language-server, pylsp, rust-analyzer, gopls, etc.). Use `lsp_servers` to check installation status.
|
|
602
|
+
> **Note**: LSP tools require language server installation (typescript-language-server, pylsp, rust-analyzer, gopls, etc.). Use `ultrapower:lsp_servers` to check installation status.
|
|
603
603
|
|
|
604
604
|
---
|
|
605
605
|
|
|
@@ -820,18 +820,18 @@ ultrapower exposes 32 custom tools through the MCP server using the `mcp__plugin
|
|
|
820
820
|
|
|
821
821
|
| Tool | MCP Name | Description |
|
|
822
822
|
| ------ | ---------- | ------------- |
|
|
823
|
-
| `lsp_hover` | `mcp__plugin_ultrapower_t__lsp_hover` | Get type information and documentation at cursor position |
|
|
824
|
-
| `lsp_goto_definition` | `mcp__plugin_ultrapower_t__lsp_goto_definition` | Find definition location of a symbol |
|
|
825
|
-
| `lsp_find_references` | `mcp__plugin_ultrapower_t__lsp_find_references` | Find all references to a symbol across codebase |
|
|
826
|
-
| `lsp_document_symbols` | `mcp__plugin_ultrapower_t__lsp_document_symbols` | Get hierarchical outline of symbols in a file |
|
|
827
|
-
| `lsp_workspace_symbols` | `mcp__plugin_ultrapower_t__lsp_workspace_symbols` | Search for symbols by name across workspace |
|
|
828
|
-
| `lsp_diagnostics` | `mcp__plugin_ultrapower_t__lsp_diagnostics` | Get language server diagnostics for a file |
|
|
829
|
-
| `lsp_diagnostics_directory` | `mcp__plugin_ultrapower_t__lsp_diagnostics_directory` | Run project-level diagnostics on a directory |
|
|
830
|
-
| `lsp_servers` | `mcp__plugin_ultrapower_t__lsp_servers` | List all known language servers and installation status |
|
|
831
|
-
| `lsp_prepare_rename` | `mcp__plugin_ultrapower_t__lsp_prepare_rename` | Check if a symbol can be renamed |
|
|
832
|
-
| `lsp_rename` | `mcp__plugin_ultrapower_t__lsp_rename` | Rename a symbol across all files in project |
|
|
833
|
-
| `lsp_code_actions` | `mcp__plugin_ultrapower_t__lsp_code_actions` | Get available code actions (refactorings, quick fixes) |
|
|
834
|
-
| `lsp_code_action_resolve` | `mcp__plugin_ultrapower_t__lsp_code_action_resolve` | Get full edit details for a specific code action |
|
|
823
|
+
| `ultrapower:lsp_hover` | `mcp__plugin_ultrapower_t__lsp_hover` | Get type information and documentation at cursor position |
|
|
824
|
+
| `ultrapower:lsp_goto_definition` | `mcp__plugin_ultrapower_t__lsp_goto_definition` | Find definition location of a symbol |
|
|
825
|
+
| `ultrapower:lsp_find_references` | `mcp__plugin_ultrapower_t__lsp_find_references` | Find all references to a symbol across codebase |
|
|
826
|
+
| `ultrapower:lsp_document_symbols` | `mcp__plugin_ultrapower_t__lsp_document_symbols` | Get hierarchical outline of symbols in a file |
|
|
827
|
+
| `ultrapower:lsp_workspace_symbols` | `mcp__plugin_ultrapower_t__lsp_workspace_symbols` | Search for symbols by name across workspace |
|
|
828
|
+
| `ultrapower:lsp_diagnostics` | `mcp__plugin_ultrapower_t__lsp_diagnostics` | Get language server diagnostics for a file |
|
|
829
|
+
| `ultrapower:lsp_diagnostics_directory` | `mcp__plugin_ultrapower_t__lsp_diagnostics_directory` | Run project-level diagnostics on a directory |
|
|
830
|
+
| `ultrapower:lsp_servers` | `mcp__plugin_ultrapower_t__lsp_servers` | List all known language servers and installation status |
|
|
831
|
+
| `ultrapower:lsp_prepare_rename` | `mcp__plugin_ultrapower_t__lsp_prepare_rename` | Check if a symbol can be renamed |
|
|
832
|
+
| `ultrapower:lsp_rename` | `mcp__plugin_ultrapower_t__lsp_rename` | Rename a symbol across all files in project |
|
|
833
|
+
| `ultrapower:lsp_code_actions` | `mcp__plugin_ultrapower_t__lsp_code_actions` | Get available code actions (refactorings, quick fixes) |
|
|
834
|
+
| `ultrapower:lsp_code_action_resolve` | `mcp__plugin_ultrapower_t__lsp_code_action_resolve` | Get full edit details for a specific code action |
|
|
835
835
|
|
|
836
836
|
#### AST Tools (2)
|
|
837
837
|
|
|
@@ -70,8 +70,8 @@ Edit `~/.claude/claude_desktop_config.json`:
|
|
|
70
70
|
After configuration, restart Claude Desktop. The MCP server tools should appear in the tool list:
|
|
71
71
|
|
|
72
72
|
```
|
|
73
|
-
|
|
74
|
-
|
|
73
|
+
mcp__plugin_ultrapower_t__lsp_hover
|
|
74
|
+
mcp__plugin_ultrapower_t__lsp_goto_definition
|
|
75
75
|
mcp__plugin_ultrapower_t__ultrapower:ast_grep_search
|
|
76
76
|
... (64 tools total - each tool has both new and legacy names)
|
|
77
77
|
```
|
|
@@ -121,12 +121,12 @@ Restart Cursor. Check the MCP panel to confirm the server is connected and all 3
|
|
|
121
121
|
|
|
122
122
|
Get type information at cursor position:
|
|
123
123
|
```
|
|
124
|
-
Use
|
|
124
|
+
Use mcp__plugin_ultrapower_t__lsp_hover with file and position
|
|
125
125
|
```
|
|
126
126
|
|
|
127
127
|
Find all references to a symbol:
|
|
128
128
|
```
|
|
129
|
-
Use
|
|
129
|
+
Use mcp__plugin_ultrapower_t__lsp_find_references to locate usage
|
|
130
130
|
```
|
|
131
131
|
|
|
132
132
|
### AST Tools
|
|
@@ -574,7 +574,7 @@ ultrapower 提供内置 MCP 服务器,暴露以下工具类别:
|
|
|
574
574
|
- **状态管理**: `state_read`, `state_write`, `state_clear`, `state_list_active`, `state_get_status`
|
|
575
575
|
- **Notepad**: `notepad_read`, `notepad_priority`, `notepad_working`, `notepad_manual`, `notepad_prune`
|
|
576
576
|
- **项目记忆**: `mem_read`, `mem_write`, `mem_add_note`, `mem_add_directive`
|
|
577
|
-
- **LSP 工具**: `lsp_hover`, `lsp_goto_definition`, `lsp_diagnostics`, `lsp_diagnostics_directory`
|
|
577
|
+
- **LSP 工具**: `ultrapower:lsp_hover`, `ultrapower:lsp_goto_definition`, `ultrapower:lsp_diagnostics`, `ultrapower:lsp_diagnostics_directory`
|
|
578
578
|
- **AST 工具**: `ast_grep_search`, `ast_grep_replace`
|
|
579
579
|
- **Python REPL**: `python_repl`
|
|
580
580
|
- **追踪**: `trace_timeline`, `trace_summary`
|
package/docs/glossary.md
CHANGED
|
@@ -96,7 +96,7 @@
|
|
|
96
96
|
|
|
97
97
|
**Tool** - 可调用的功能单元。35 个自定义工具:LSP x12、AST x2、REPL x1、Notepad x6、State x5、Memory x4、Trace x2、Skills x3。
|
|
98
98
|
|
|
99
|
-
**LSP Tool** - 语言服务器协议工具。lsp_hover、lsp_goto_definition、lsp_find_references、lsp_diagnostics 等。
|
|
99
|
+
**LSP Tool** - 语言服务器协议工具。ultrapower:lsp_hover、ultrapower:lsp_goto_definition、ultrapower:lsp_find_references、ultrapower:lsp_diagnostics 等。
|
|
100
100
|
|
|
101
101
|
**AST Tool** - 抽象语法树工具。ast_grep_search(结构化代码搜索)、ast_grep_replace(结构化转换)。
|
|
102
102
|
|