关于
This Claude Skill enables editing code symbols (functions, types, variables) by name alone, without needing their file paths or exact positions. It automatically resolves the symbol's definition, retrieves its full range, and applies your edit. Use it when you want to change a symbol's body or signature but only know its name.
快速安装
Claude Code
推荐npx skills add blackwell-systems/agent-lsp -a claude-code/plugin add https://github.com/blackwell-systems/agent-lspgit clone https://github.com/blackwell-systems/agent-lsp.git ~/.claude/skills/lsp-edit-symbol在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
lsp-edit-symbol
Edit a named symbol (function, type, variable) without needing its exact file path
or line/column. Primary path uses replace_symbol_body for direct symbol replacement.
Falls back to find_symbol + list_symbols + apply_edit when
the server does not support document symbols well.
Workflow
Step 1 — Locate the file
{ "tool": "find_symbol", "query": "MyFunc" }
Returns a list of matching symbols with file URI and position. Pick the definition (not a test file, not a stub). If multiple matches, use the container name or file path to disambiguate.
Step 2 — Replace the symbol body (primary path)
Use replace_symbol_body to replace the entire function/method/type body by name:
{
"tool": "replace_symbol_body",
"file_path": "/path/to/file.go",
"symbol_path": "MyFunc",
"new_body": "func MyFunc() error {\n\treturn nil\n}"
}
For methods, use dot notation: "MyStruct.Method".
This resolves the symbol by name within the file, finds its full range, and replaces it atomically. No position math required.
If replace_symbol_body fails (e.g., the server cannot resolve document symbols
for this file), fall back to the manual path below.
Fallback — Manual resolution via document symbols
Step 2b — Get the full range:
{
"tool": "list_symbols",
"file_path": "/path/to/file.go",
"language_id": "go"
}
Find MyFunc in the returned tree. The range field covers the entire symbol
including its body; selectionRange covers only the name.
Step 3b — Apply the edit:
Option A (text-match, recommended when you have the old text):
{
"tool": "apply_edit",
"file_path": "/path/to/file.go",
"old_text": "func MyFunc() {",
"new_text": "func MyFunc() error {"
}
Option B (positional, when you have the exact range):
{
"tool": "apply_edit",
"workspace_edit": {
"changes": {
"file:///path/to/file.go": [{
"range": { "start": {"line": 12, "character": 0}, "end": {"line": 18, "character": 1} },
"newText": "func MyFunc() error {\n\treturn nil\n}"
}]
}
}
}
Decision guide
| Situation | Approach |
|---|---|
| Replacing full body | replace_symbol_body (primary path) |
| Changing signature only | Step 1 + apply_edit with one-line old_text |
| Symbol name ambiguous | Use find_symbol query + container name filter |
| Server lacks document symbols | Fallback path (Step 2b + 3b) |
| After edit | Run get_diagnostics to verify no errors introduced |
Notes
replace_symbol_bodyis the preferred path for full-body replacements. It handles symbol resolution and range calculation internally.find_symbolreturns declaration sites, not all references. The first non-test result is usually the definition.- Positions in
list_symbolsare 1-based (shifted from LSP convention).apply_editworkspace_editexpects 0-based; subtract 1 when using positional mode (Option B). Text-match mode (Option A) requires no position math. - For renames (not edits), use
/lsp-renameinstead; it updates all call sites.
GitHub 仓库
常见问题
什么是 lsp-edit-symbol Skill?
lsp-edit-symbol 是一个 Claude Skill,作者为 blackwell-systems。Skill 将 Claude 按需加载的说明和资源打包,让 Claude 无需额外提示即可执行与 lsp-edit-symbol 相关的任务。
如何安装 lsp-edit-symbol?
使用本页的安装命令:将 lsp-edit-symbol 作为插件添加到 Claude Code,或将其仓库克隆到 skills 目录,然后重启 Claude 以加载该 Skill。
lsp-edit-symbol 属于哪个分类?
lsp-edit-symbol 属于其他分类。
lsp-edit-symbol 可以免费使用吗?
可以。lsp-edit-symbol 已收录在 AIMCP,可免费安装。
相关推荐技能
LlamaGuard是Meta推出的7-8B参数内容审核模型,专门用于过滤LLM的输入和输出内容。它能检测六大安全风险类别(暴力/仇恨、性内容、武器、违禁品、自残、犯罪计划),准确率达94-95%。开发者可通过HuggingFace、vLLM或Sagemaker快速部署,并能与NeMo Guardrails集成实现自动化安全防护。
这个Claude Skill帮助开发者优化云成本,通过资源调整、标记策略和预留实例来降低AWS、Azure和GCP的开支。它适用于减少云支出、分析基础设施成本或实施成本治理策略的场景。关键功能包括提供成本可视化、资源规模调整指导和定价模型优化建议。
该Skill为开发者提供体育博彩数据分析工具,可分析盘口、大小球和特殊投注,识别价值投注机会。它整合历史数据和情景统计,生成包含时间戳的结构化Markdown报告。适用于需要快速获取博彩市场洞察的娱乐或教育类应用开发。
这个Skill使用bitsandbytes库量化大语言模型,能在GPU内存有限时通过8位或4位量化减少50-75%内存占用,同时保持精度损失最小。它支持INT8、NF4、FP4等多种量化格式,可与HuggingFace Transformers无缝集成,适用于需要部署更大模型或加速推理的场景。还提供QLoRA训练和8位优化器支持,让开发者能轻松实现高效模型压缩。
