用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/manji-0/dagayn --skill explore-codebase命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | explore-codebase |
| description | Navigate and understand codebase structure using the knowledge graph |
Use the dagayn MCP tools to explore and understand the codebase.
This packaged skill is mode-neutral. dagayn install rewrites this section with
the selected embedding mode so exploration chooses the right search strategy.
semantic_search_nodes_tool first, then pick a concrete qualified_name.query_graph_tool with the
narrowest pattern (callers_of, callees_of, imports_of, tests_for,
docs_for, implementations_of, children_of, or file_summary).review_tool before raw
traversal.architecture_analysis_tool(mode="overview") before metric drill-downs.flow_tool(mode="list"), then flow_tool(mode="get")
only after choosing a concrete flow. Treat path / steps as BFS visit
order, not a runtime call sequence, and read truncated / truncation_reason.traverse_graph_tool only after choosing a
concrete start node, only when a specific relationship query would be too
narrow, and only when the advanced MCP surface (or dagayn tool) exposes it.get_minimal_context_tool(task="<what you need to understand>") to see graph
freshness, risk, major communities, and suggested next tools. If
graph_health.status is empty (or ensure_graph_tool is the first
next-tool hint), call ensure_graph_tool() and re-orient before exploration.semantic_search_nodes_tool, then a
concrete qualified_name.query_graph_tool with the narrowest pattern.review_tool(mode="changes") and read
analysis_summary first.architecture_analysis_tool(mode="overview", detail_level="minimal").
Read architecture_health first; use the Architecture Analysis skill for
drill-down mode selection.flow_tool(mode="list", detail_level="minimal"), then
flow_tool(mode="get") only after choosing a concrete flow name.query_graph_tool patterns such as
callers_of, callees_of, imports_of, docs_for, or implementations_of
to verify relationships. Prefer these over raw traversal.rg/file reads when graph output is stale, ambiguous, truncated,
or missing exact source text.get_minimal_context_tool, then follow the Decision Model. Do not
open with architecture overview unless the question is about structure or
health.children_of on a file to see all its functions and classes.find_large_functions_tool (advanced surface / dagayn tool) to identify
complex code.dagayn: directives as authored
CROSS_ARTIFACT evidence. Markdown comments such as
<!-- dagayn: implemented-by path::symbol --> point from a doc section to a
code point; Python/Terraform comments such as
# dagayn: implements docs/spec.md#Section point from code to a Markdown
section. Query tools expose inverse labels, so do not assume both directions
are stored. Read evidence_type (authored, extracted, or
heuristic_reachable) and missingness before treating a traceability edge
as contract evidence.zero_result_reason and
next_action to decide the next lookup; absence is limited to the current
graph.rg is fine after minimal context; switch back
to graph tools once you have a file, function, or class name.query_graph_tool for relationship verification; raw traversal
is a follow-up for a bounded neighborhood.Default MCP already exposes flow_tool, architecture_analysis_tool,
query_graph_tool, and semantic_search_nodes_tool. Use dagayn tool when the
server allow-list omitted a tool, or for advanced helpers such as
find_large_functions_tool / traverse_graph_tool:
dagayn tool find_large_functions_tool --arg min_lines=80
dagayn tool traverse_graph_tool --arg query='"auth handler"' --arg depth=2
dagayn tool query_graph_tool --arg pattern='"docs_for"' --arg target='"src/app.py::handler"'
dagayn tool query_graph_tool --arg pattern='"implementations_of"' --arg target='"docs/spec.md::contract-section"'
get_minimal_context_tool(task="<your task>") before any other graph tool.ensure_graph_tool returns.detail_level="minimal" on all calls. Only escalate to "standard" when minimal is insufficient.