sqry-claude
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinesesqry for Claude Code
适用于Claude Code的sqry
This skill configures Claude Code to use sqry's MCP server for AST-based semantic code search across 37 languages.
本技能用于配置Claude Code对接sqry的MCP服务器,实现支持37种语言的基于AST的语义代码搜索能力。
Setup
安装设置
1. Install sqry
1. 安装sqry
bash
undefinedbash
undefinedRecommended: signed release installer
推荐:签名版本安装脚本
curl -fsSL https://raw.githubusercontent.com/verivus-oss/sqry/main/scripts/install.sh | bash -s -- --component all
curl -fsSL https://raw.githubusercontent.com/verivus-oss/sqry/main/scripts/install.sh | bash -s -- --component all
Fallback: build from source
备选方案:从源码构建
cargo install sqry-cli
cargo install sqry-mcp
cargo install sqry-cli
cargo install sqry-mcp
Alternative package manager
其他包管理器安装
brew install verivus-oss/sqry/sqry
undefinedbrew install verivus-oss/sqry/sqry
undefined2. Index your project
2. 为你的项目生成索引
bash
cd /path/to/your/project
sqry index .bash
cd /path/to/your/project
sqry index .3. Configure MCP server
3. 配置MCP服务器
Recommended:
bash
sqry mcp setup --tool claude
sqry mcp statusThis writes a Claude Code entry in or
pointing to . Claude defaults to per-project configuration with
pinned to the current repository.
.claude.json~/.claude.jsonsqry-mcpSQRY_MCP_WORKSPACE_ROOTManual config example:
json
{
"mcpServers": {
"sqry": {
"type": "stdio",
"command": "/absolute/path/to/sqry-mcp",
"env": {
"SQRY_MCP_WORKSPACE_ROOT": "/path/to/your/project"
}
}
}
}推荐配置方式:
bash
sqry mcp setup --tool claude
sqry mcp status该命令会在 或 中写入指向的Claude Code配置条目。Claude默认使用项目级配置,会被固定为当前代码仓库路径。
.claude.json~/.claude.jsonsqry-mcpSQRY_MCP_WORKSPACE_ROOT手动配置示例:
json
{
"mcpServers": {
"sqry": {
"type": "stdio",
"command": "/absolute/path/to/sqry-mcp",
"env": {
"SQRY_MCP_WORKSPACE_ROOT": "/path/to/your/project"
}
}
}
}4. Verify
4. 验证配置
After restarting Claude Code, tools should appear with the prefix. Test with:
mcp__sqry__"Use sqry to show graph stats for this project"
This should invoke and return node/edge counts.
mcp__sqry__get_graph_stats重启Claude Code后,工具列表中应该会出现前缀为的工具,可以用以下指令测试:
mcp__sqry__"用sqry展示当前项目的图统计数据"
该指令会调用并返回节点/边的数量统计。
mcp__sqry__get_graph_statsSkill Dependency
技能依赖
This skill covers Claude Code setup and integration patterns. Also load the skill for tool selection guidance, query syntax, and disambiguation strategies.
sqry-semantic-searchsqry-semantic-search uses tiered discovery to save tokens: it loads a compact Quick Tool Selection guide first. If you need full parameter details, load . For advanced workflows (security audit, pre-change analysis), load . Only load what you need.
sqry-semantic-search/references/tool-reference.mdsqry-semantic-search/references/workflows.md本技能仅涵盖Claude Code的配置与集成方式。请同时加载技能来获取工具选择指引、查询语法和歧义消解策略。
sqry-semantic-searchsqry-semantic-search采用分层加载机制节省token:默认会先加载精简的快速工具选择指南。如果需要完整的参数说明,可以加载。如果需要高级工作流(安全审计、变更前分析),可以加载。仅加载你需要的内容即可。
sqry-semantic-search/references/tool-reference.mdsqry-semantic-search/references/workflows.mdQuick Tool Selection
快速工具选择指南
I know the symbol name and want to...
- See its definition →
mcp__sqry__get_definition - See who calls it → (depth=1) or
mcp__sqry__direct_callers(multi-depth)mcp__sqry__relation_query - See what it calls →
mcp__sqry__direct_callees - See what breaks if I change it →
mcp__sqry__dependency_impact - Understand it with context →
mcp__sqry__explain_code
I want to search for symbols...
- By name substring →
mcp__sqry__pattern_search - By kind/visibility/language →
mcp__sqry__semantic_search - With RAG-optimized grouping →
mcp__sqry__hierarchical_search
I want to analyze the codebase...
- Circular dependencies →
mcp__sqry__find_cycles - Dead code →
mcp__sqry__find_unused - Change impact →
mcp__sqry__dependency_impact - Trace call path A→B →
mcp__sqry__trace_path
如果你知道符号名称,想要...
- 查看其定义 →
mcp__sqry__get_definition - 查看哪些代码调用了它 → (深度=1)或
mcp__sqry__direct_callers(多层深度)mcp__sqry__relation_query - 查看它调用了哪些代码 →
mcp__sqry__direct_callees - 查看修改它会影响哪些功能 →
mcp__sqry__dependency_impact - 结合上下文理解其功能 →
mcp__sqry__explain_code
如果你想要搜索符号...
- 按名称子串搜索 →
mcp__sqry__pattern_search - 按类型/可见性/语言搜索 →
mcp__sqry__semantic_search - 使用RAG优化的分组搜索 →
mcp__sqry__hierarchical_search
如果你想要分析代码库...
- 查找循环依赖 →
mcp__sqry__find_cycles - 查找死代码 →
mcp__sqry__find_unused - 评估变更影响范围 →
mcp__sqry__dependency_impact - 追踪A到B的调用路径 →
mcp__sqry__trace_path
Handling Ambiguous Symbols
歧义符号处理
When using , , or with common names (, , , , ), the tool may fail or return wrong results.
mcp__sqry__direct_callersmcp__sqry__direct_calleesmcp__sqry__call_hierarchyhandlenewinitprocessrunAlways disambiguate by providing :
file_pathjson
{
"symbol": "handle",
"file_path": "src/api/router.rs"
}Or use a qualified name:
"symbol": "UserService::authenticate"If relation tools fail, fall back to with a filter to scope results.
mcp__sqry__get_referencespath当使用、或查询常见通用名称(、、、、)时,工具可能会调用失败或返回错误结果。
mcp__sqry__direct_callersmcp__sqry__direct_calleesmcp__sqry__call_hierarchyhandlenewinitprocessrun请始终通过提供来消除歧义:
file_pathjson
{
"symbol": "handle",
"file_path": "src/api/router.rs"
}或者使用限定名称:
"symbol": "UserService::authenticate"如果关系查询工具调用失败,可以回退到使用带过滤器的来限定结果范围。
pathmcp__sqry__get_referencesTool Naming in Claude Code
Claude Code中的工具命名规则
All sqry MCP tools use the prefix in Claude Code:
mcp__sqry__mcp__sqry__semantic_search
mcp__sqry__relation_query
mcp__sqry__dependency_impact
mcp__sqry__explain_code
mcp__sqry__trace_path
mcp__sqry__find_cycles
...所有sqry MCP工具在Claude Code中都使用前缀:
mcp__sqry__mcp__sqry__semantic_search
mcp__sqry__relation_query
mcp__sqry__dependency_impact
mcp__sqry__explain_code
mcp__sqry__trace_path
mcp__sqry__find_cycles
...Recommended CLAUDE.md Addition
推荐添加到CLAUDE.md的内容
Add this to your project's to guide Claude on when to use sqry:
CLAUDE.mdmarkdown
undefined将以下内容添加到项目的中,指导Claude何时使用sqry:
CLAUDE.mdmarkdown
undefinedCode Search
代码搜索
Use sqry MCP tools () as the default for semantic code search:
mcp__sqry__*- - Find symbols by meaning
mcp__sqry__semantic_search - - RAG-optimized search with grouping
mcp__sqry__hierarchical_search - - Find callers, callees, imports
mcp__sqry__relation_query - - Understand a symbol with context
mcp__sqry__explain_code
Use Grep for literal text search. Use Glob for file finding. Use sqry for everything structural.
undefined默认使用sqry MCP工具()进行语义代码搜索:
mcp__sqry__*- - 按语义查找符号
mcp__sqry__semantic_search - - 带分组的RAG优化搜索
mcp__sqry__hierarchical_search - - 查找调用方、被调用方、导入关系
mcp__sqry__relation_query - - 结合上下文理解符号功能
mcp__sqry__explain_code
字面文本搜索使用Grep,文件查找使用Glob,所有结构相关的搜索都使用sqry。
undefinedWorkflow
工作流
- Search first: Use or
mcp__sqry__semantic_searchbefore reading files manually.mcp__sqry__hierarchical_search - Understand before changing: Call before modifying shared code.
mcp__sqry__dependency_impact - Trace relationships: Use and
mcp__sqry__direct_callersto understand call chains.mcp__sqry__direct_callees - Verify after changes: Use to compare before/after at the symbol level.
mcp__sqry__semantic_diff
- 先搜索:手动阅读文件前先使用或
mcp__sqry__semantic_search检索。mcp__sqry__hierarchical_search - 改前先评估影响:修改公共代码前先调用。
mcp__sqry__dependency_impact - 追踪关系:使用和
mcp__sqry__direct_callers理解调用链。mcp__sqry__direct_callees - 变更后验证:使用在符号级别对比变更前后的差异。
mcp__sqry__semantic_diff
Common Claude Code Patterns
常见Claude Code使用模式
Find a function and its callers
查找函数及其调用方
User: "Who calls the authenticate function?"
Claude uses: mcp__sqry__relation_query
symbol: "authenticate"
relation_type: "callers"
max_depth: 2用户:"谁调用了authenticate函数?"
Claude使用:mcp__sqry__relation_query
symbol: "authenticate"
relation_type: "callers"
max_depth: 2Understand impact before refactoring
重构前评估影响范围
User: "What would break if I change UserService?"
Claude uses: mcp__sqry__dependency_impact
symbol: "UserService"
max_depth: 3
include_indirect: true用户:"如果我修改UserService会影响哪些功能?"
Claude使用:mcp__sqry__dependency_impact
symbol: "UserService"
max_depth: 3
include_indirect: trueExplore unfamiliar code
探索不熟悉的代码
User: "Help me understand the auth module"
Claude uses:
1. mcp__sqry__semantic_search query: "path:src/auth"
2. mcp__sqry__explain_code file_path: "src/auth/mod.rs", symbol_name: "authenticate"
3. mcp__sqry__subgraph symbols: ["authenticate", "verify_token"]用户:"帮我理解auth模块"
Claude使用:
1. mcp__sqry__semantic_search query: "path:src/auth"
2. mcp__sqry__explain_code file_path: "src/auth/mod.rs", symbol_name: "authenticate"
3. mcp__sqry__subgraph symbols: ["authenticate", "verify_token"]Recent Features (since v6.0)
最新功能(v6.0版本起)
Plugin cost tiering
插件成本分层
- Plugins classified as (default) or
FastHighWallClock - High-cost plugins (JSON, ServiceNow XML) excluded from default index
- CLI: /
--include-high-cost,--exclude-high-cost/--enable-plugin ID--disable-plugin ID - Env:
SQRY_INCLUDE_HIGH_COST=1
- 插件分为(默认)和
Fast两类HighWallClock - 高成本插件(JSON、ServiceNow XML)默认不纳入索引
- CLI参数:/
--include-high-cost、--exclude-high-cost/--enable-plugin ID--disable-plugin ID - 环境变量:
SQRY_INCLUDE_HIGH_COST=1
Time-expensive MCP operations
耗时较长的MCP操作
- : 10min timeout, full graph rebuild -- only when index stale
rebuild_index - : creates git worktrees + indexes -- scope with file/kind filters
semantic_diff - ,
find_cycles: can timeout on large graphs -- scope to filescomplexity_metrics - : quadratic scaling -- filter by file/language/kind
find_duplicates - depth>2,
call_hierarchydepth>3: exponential growthdependency_impact
- :10分钟超时,全量重建图索引 -- 仅当索引过期时使用
rebuild_index - :创建git工作树+生成索引 -- 可通过文件/类型过滤器限定范围
semantic_diff - 、
find_cycles:在大型图上可能超时 -- 限定到指定文件范围使用complexity_metrics - :二次方时间复杂度 -- 通过文件/语言/类型过滤缩小范围
find_duplicates - 深度>2、
call_hierarchy深度>3:指数级耗时增长dependency_impact
Macro boundary analysis (Rust)
宏边界分析(Rust)
- CLI: ,
sqry cache expand,--enable-macro-expansion,--cfg,--cfg-filter,--include-generated--macro-boundaries - MCP: tool, macro metadata in search/definition results
mcp__sqry__expand_cache_status
- CLI参数:、
sqry cache expand、--enable-macro-expansion、--cfg、--cfg-filter、--include-generated--macro-boundaries - MCP:提供工具,搜索/定义结果中包含宏元数据
mcp__sqry__expand_cache_status
JVM classpath analysis
JVM类路径分析
- CLI: ,
--classpath,--classpath-depth--classpath-file - MCP: parameter on search tools,
include_classpathfield in resultsprovenance
- CLI参数:、
--classpath、--classpath-depth--classpath-file - MCP:搜索工具支持参数,结果中包含
include_classpath字段provenance
Security defaults
安全默认配置
- MCP redaction preset now by default (was
"minimal")"none" - Override:
SQRY_REDACTION_PRESET=none - Index timeout: 600s, query timeout: 60s
- MCP脱敏预设默认改为(之前为
"minimal")"none" - 覆盖配置:
SQRY_REDACTION_PRESET=none - 索引超时:600秒,查询超时:60秒
Other
其他更新
- 37 language plugins (added JSON, ServiceNow XML)
- Snapshot format V7 -- rebuild index on major version upgrade
- Multi-root VS Code workspace support
- 支持37种语言插件(新增JSON、ServiceNow XML)
- 快照格式升级为V7 -- 大版本升级后需要重建索引
- 支持多根目录VS Code工作区
Troubleshooting
故障排查
- No tools visible: Restart Claude Code after running
sqry mcp setup --tool claude - Empty results: Run to build/rebuild the index
sqry index . - Stale results: Run to force rebuild
sqry index --force . - Snapshot version mismatch: Run after major upgrades
rm -rf .sqry/graph && sqry index . - Missing JSON/ServiceNow symbols: Rebuild with
sqry index --include-high-cost - Check health: Ask Claude to call
mcp__sqry__get_index_status
- 看不到工具:执行后重启Claude Code
sqry mcp setup --tool claude - 返回空结果:执行生成/重建索引
sqry index . - 结果过期:执行强制重建索引
sqry index --force . - 快照版本不匹配:大版本升级后执行
rm -rf .sqry/graph && sqry index . - 找不到JSON/ServiceNow相关符号:使用重建索引
sqry index --include-high-cost - 检查健康状态:让Claude调用
mcp__sqry__get_index_status