Gitnexus Exploring

abhigyanpatwari/GitNexus/gitnexus-claude-plugin/skills/gitnexus-exploring

作者 abhigyanpatwari50aa4be3b2c2c9a1561fc44878e5d8f87b99d16e无许可证47K 个星标收录于 2026年10月9日更新于 2026年10月9日仓库今天更新

Use when the user asks how code works, wants to understand architecture, trace execution flows, or explore unfamiliar parts of the codebase. Examples: "How does X work?", "What calls this function?", "Show me the auth flow"

AI 生成的概览

通过查询 GitNexus 索引中的执行流程、符号和架构,解释代码库如何运作。

功能
引导智能体按 GitNexus MCP 工作流操作:列出已索引的仓库,读取仓库上下文资源以检查索引新鲜度,用 query 查找与某个概念相关的执行流程,再用 context 查看某个符号的调用方、被调用方和所属流程。随后阅读源文件了解实现细节,并在解释中说明所绑定的仓库和索引新鲜度。产出的是对陌生代码的架构说明,而不是代码改动。
适用场景
当有人询问某段代码如何运作、某个函数被谁调用、认证或支付处理等流程的结构,或某类逻辑位于何处时使用。也适合在修改代码前探索不熟悉的代码库。
运行要求
需要一个已索引仓库的 GitNexus MCP 服务器,以及 query、context、list_repos 工具和 gitnexus:// 资源。索引过期时需在终端运行 node .gitnexus/run.cjs analyze 重新分析。自身不附带脚本;mcp.json 用于配置 MCP 连接。

Exploring Codebases with GitNexus

When to Use

  • "How does authentication work?"
  • "What's the project structure?"
  • "Show me the main components"
  • "Where is the database logic?"
  • Understanding code you haven't seen before

Bind the repository first

Step 1 discovers what is indexed; every call after it must say which of those it means. With one indexed repository, use the examples below as written. With more than one, pass repo on every call: an omitted repo normally errors, but under an MCP policy with a configured default it resolves to that default silently. If you cannot tell which repository is meant, stop and ask. Report the bound repository and index freshness alongside your explanation.

list_repos is paginated, so page with offset: pagination.nextOffset until hasMore is false before concluding a repository is absent.

Workflow

1. list_repos {} or READ gitnexus://repos                          → Discover indexed repos2. READ gitnexus://repo/{name}/context             → Codebase overview, check staleness3. query({search_query: "<what you want to understand>"})  → Find related execution flows4. context({name: "<symbol>"})            → Deep dive on specific symbol5. READ gitnexus://repo/{name}/process/{name}      → Trace full execution flow

If step 2 says "Index is stale" → run node .gitnexus/run.cjs analyze in terminal. Hot-tool staleness names which index answered (branch/lastCommit) and how fresh it is (status). Re-analyze only for behind or diverged — current is identity, unknown is unmeasurable.

Checklist

- [ ] list_repos {} — bind repo; explicit repo when >1 indexed, ask if ambiguous- [ ] READ gitnexus://repo/{name}/context- [ ] query for the concept you want to understand- [ ] Review returned processes (execution flows)- [ ] context on key symbols for callers/callees- [ ] READ process resource for full execution traces- [ ] Read source files for implementation details- [ ] State the repository and index freshness with the explanation

Resources

ResourceWhat you get
gitnexus://repo/{name}/contextStats, staleness warning (~150 tokens)
gitnexus://repo/{name}/clustersAll functional areas with cohesion scores (~300 tokens)
gitnexus://repo/{name}/cluster/{name}Area members with file paths (~500 tokens)
gitnexus://repo/{name}/process/{name}Step-by-step execution trace (~200 tokens)

Tools

query — find execution flows related to a concept:

query({search_query: "payment processing", repo: "my-app"})→ Processes: CheckoutFlow, RefundFlow, WebhookHandler→ Symbols grouped by flow with file locations

context — 360-degree view of a symbol:

context({name: "validateUser", repo: "my-app"})→ Incoming calls: loginHandler, apiMiddleware→ Outgoing calls: checkToken, getUserById→ Processes: LoginFlow (step 2/5), TokenRefresh (step 1/3)

repo is required once more than one repository is indexed, and may be omitted with a single one.

Example: "How does payment processing work?"

1. list_repos {}                             → total: 1 (my-app) — bind it   READ gitnexus://repo/my-app/context       → 918 symbols, 45 processes2. query({search_query: "payment processing"})   → CheckoutFlow: processPayment → validateCard → chargeStripe   → RefundFlow: initiateRefund → calculateRefund → processRefund3. context({name: "processPayment"})   → Incoming: checkoutHandler, webhookHandler   → Outgoing: validateCard, chargeStripe, saveTransaction4. Read src/payments/processor.ts for implementation details5. Answer, noting: Repository my-app, index current

Had step 1 returned two repositories, every call above would carry repo: "my-app".

来源与署名

来源:abhigyanpatwari/GitNexus位于gitnexus-claude-plugin/skills/gitnexus-exploring提交50aa4be

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架