ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

graphify 的 Kilo Code 技能文件 skill-kilo.md 深度解析:/graphify 命令从语料检测到图查询的完整流水线

graphify 的 Kilo Code 技能文件 skill-kilo.md 深度解析:/graphify 命令从语料检测到图查询的完整流水线 graphify 的 Kilo Code 技能文件 skill-kilo.md 深度解析/graphify 命令从语料检测到图查询的完整流水线【免费下载链接】graphifyTurn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.项目地址: https://gitcode.com/GitHub_Trending/graph/graphifygraphify/skill-kilo.md是 graphify 项目为 Kilo Code 这一 AI 编码宿主定制的 Agent Skill 文件它定义了/graphify斜杠命令被触发后的完整行为规范从语料检测、确定性 AST 结构抽取、并行语义抽取子代理、社区聚类到 HTML/JSON/报告三件套输出与增量更新的每一步。本文以该技能文件为主体逐节拆解其流水线设计、Kilo 专属规则与诚实性约束并结合 skillgen 多平台生成机制与安装器源码说明它是如何被渲染、校验和落盘到用户机器上的。一、skill-kilo.md 在 graphify 中的定位graphify 的核心卖点是把任意文件夹里的代码、文档、论文、图片和视频变成一个可查询的知识图谱产出交互式 HTML、可直接喂给 GraphRAG 的 JSON 以及一份白话审计报告GRAPH_REPORT.md。由于不同 AI 编码宿主Claude Code、Codex、Copilot、Kilo Code 等的代理派发机制、Shell 环境和技能目录约定各不相同graphify 为每个宿主维护一份独立的 SKILL.md 文件skill-kilo.md就是其中 Kilo Code 变体。文件开头的 YAML frontmatter 是 Agent Skills 规范的入口元数据--- name: graphify description: Use for any question about a codebase, its architecture, file relationships, or project content — especially when graphify-out/ exists, where the question should be treated as a graphify query first. ... ---从 frontmatter 的description可以读出技能被触发的核心判据只要用户的问题涉及代码库、架构、文件关系或项目内容——尤其是工作目录下已经存在graphify-out/产物时——宿主应当优先把它当作一次 graphify 图查询而不是去翻原始文件。该文件不是一个手写的孤立文件。从 tools/skillgen/platforms.toml 中的平台声明可以看到它的生成来源[platform.kilo] bucket split core core skill_dst graphify/skill-kilo.md refs_dst graphify/skills/kilo/references dispatch agent-tool-disk extraction verbose extra_sections [kilo-rules]含义逐条对应bucket split采用精简核心 参考侧车sidecar的拆分形态。核心流程写在skill-kilo.md里重内容拆到 graphify/skills/kilo/references/ 下的 8 个参考文档add-watch.md、exports.md、extraction-spec.md、github-and-merge.md、hooks.md、query.md、transcribe.md、update.mddispatch agent-tool-diskPart B 的语义抽取子代理派发方式采用Agent 工具 磁盘收集结果模式每个子代理把 JSON 写到graphify-out/.graphify_chunk_NN.json主流程再合并extraction verbose使用完整版的抽取规范区别于 kiro/pi/claw 使用的 compact 版extra_sections [kilo-rules]在Honesty Rules诚实规则之前插入一段 Kilo 专属规则其内容即 tools/skillgen/fragments/extra/kilo-rules.md。测试 tests/test_skillgen.py 固化了这些约束例如test_kilo_renders_its_rules_tail_section断言渲染产物中## Kilo-specific rules必须存在且位于## Honesty Rules之前另有多处断言保证 kilo 使用 verbose 版extraction-spec.md、frontmatter 不含trigger:字段、hooks 参考文档保留graphify claude install措辞。在仓库根目录运行python -m tools.skillgen可重新生成--check会在产物与期望发生漂移时失败。二、完整 Usage 命令参考skill-kilo.md的## Usage小节是全量命令面读者可以直接把它当作/graphify的 CLI 速查表/graphify # 对当前目录跑全流水线生成 HTML加 --obsidian 输出 Obsidian 库 /graphify path # 对指定路径跑全流水线 /graphify https://github.com/owner/repo # 克隆仓库后对其跑全流水线 /graphify https://github.com/owner/repo --branch branch # 克隆指定分支 /graphify url1 url2 ... # 克隆多个仓库各自构建后合并为跨仓库图 /graphify path --mode deep # 深度抽取产出更丰富的 INFERRED 边 /graphify path --update # 增量仅重新抽取新增/变更的文件 /graphify path --directed # 构建有向图保留 source→target 方向 /graphify path --whisper-model medium # 用更大的 Whisper 模型提升转写精度 /graphify path --cluster-only # 在现有图上重跑聚类 /graphify path --no-viz # 跳过可视化只出报告 JSON /graphify path --html # HTML 默认生成此标志为 no-op /graphify path --svg # 额外导出 graph.svg可嵌入 Notion、GitHub /graphify path --graphml # 导出 graph.graphmlGephi、yEd /graphify path --neo4j # 生成 graphify-out/cypher.txt 供 Neo4j 使用 /graphify path --neo4j-push bolt://localhost:7687 # 直推 Neo4j /graphify path --falkordb # 生成 graphify-out/cypher.txt 供 FalkorDB 使用 /graphify path --falkordb-push falkordb://localhost:6379 # 直推 FalkorDB /graphify path --mcp # 启动 MCP stdio 服务器供 Agent 访问 /graphify path --watch # 监听目录代码变更时自动重建无需 LLM /graphify path --wiki # 构建可被 Agent 爬取的 wikiindex.md 每社区一篇文章 /graphify path --obsidian --obsidian-dir ~/vaults/my-project # 把 vault 写到自定义路径 /graphify add url # 抓取 URL 存到 ./raw 并更新图 /graphify add url --author Name # 标注作者 /graphify add url --contributor Name # 标注加入语料库的贡献者 /graphify query question # BFS 遍历——宽泛上下文 /graphify query question --dfs # DFS——追踪具体路径 /graphify query question --budget 1500 # 限制回答在 N 个 token 内 /graphify path AuthModule Database # 两个概念间的最短路径 /graphify explain SwinTransformer # 用白话解释某个节点这些标志在技能正文中被精确调度默认运行只走检测 → 抽取 → 建图 → 聚类 → 报告/HTML主线--wiki、--neo4j*、--falkordb*、--svg、--graphml、--mcp等导出型标志走 Step 6b-8其细节被外置到 graphify/skills/kilo/references/exports.md只有对应标志出现时才读取——这正是 split 形态控制单次会话上下文膨胀的手段。三、被调用时的决策规则快路径、帮助与路径默认值技能在## What You Must Do When Invoked部分给宿主 Agent 立了三条硬规则它们决定了命令的行为语义帮助短路用户只输入/graphify --help或/graphify -h时逐字打印 Usage 小节后立即返回——不执行任何命令、不做文件检测、不默认路径为.。快路径Fast path——已有图直接查询在做任何事之前先检查graphify-out/graph.json是否存在相对当前工作目录即项目根。若它存在且用户请求是关于代码库的自然语言问题X 是怎么工作的、谁调用了 Y、追踪 Z 的数据流而不是显式重建命令--update、--cluster-only或隐含重新抽取的裸路径/URL则完全跳过 Step 1–5直接跳到 query 流程立即运行graphify query question。不跑 detect、不检查语料规模、不要求用户缩小范围——图已经建好了用它。路径默认值未给路径时使用.不得反问用户路径以https://github.com/或http://github.com/开头时视为 GitHub URL先执行 Step 0。Step 0GitHub 仓库与多路径合并仅 URL 或多路径时只有路径是一个或多个 GitHub URL、或需要合并多个本地子文件夹时才执行本步克隆、跨仓库合并与 monorepo 流程外置在 graphify/skills/kilo/references/github-and-merge.md。普通本地路径直接跳过。四、Step 1解释器解析与安装确认技能不假设python3就是 graphify 的运行环境。Step 1 的 bash 块按三个优先级解析可用的 Python 解释器uv tool 安装现代 Mac/Linux 上最可靠uv tool run --from graphifyy python -c import sys; print(sys.executable)取 venv 解释器路径graphify 可执行文件 shebang覆盖 pipx 与直接 pip 安装读取$(which graphify)首行 shebang先做字符白名单校验含非[a-zA-Z0-9/_.-]字符即放弃再验证该解释器能import graphify兜底python3。若import graphify失败则依次尝试uv tool install --upgrade graphifyy或pip install graphifyy失败时重试--break-system-packages。注意 PyPI 上的发行包名是graphifyy。解析成功后两块关键状态被持久化mkdir -p graphify-out $PYTHON -c import sys; open(graphify-out/.graphify_python, w, encodingutf-8).write(sys.executable) # 保存扫描根让无参数的 graphify update 下次知道去哪儿找 echo $(cd INPUT_PATH pwd) graphify-out/.graphify_root此后每个 bash 块中都必须用$(cat graphify-out/.graphify_python)替换python3保证后续步骤与安装环境一致。配套地技能末尾的 Interpreter guard for subcommands 一节要求在运行--update、--cluster-only、query、path、explain、add等任何子命令前先检查.graphify_python是否存在缺失例如用户删掉了graphify-out/时先重新解析并写回。五、Step 2文件检测与语料规模闸门Step 2 调用graphify.detect.detect并刻意用 Python 而非 shell 重定向写出侧车文件注释说明这是为了避免 PowerShell 宿主上的控制台编码漂移issue #2528from graphify.detect import detect result detect(Path(INPUT_PATH)) Path(graphify-out/.graphify_detect.json).write_text(json.dumps(result, ensure_asciiFalse), encodingutf-8) print(fDetected {result[total_files]} files)实现见 graphify/detect.pydetect定义于该模块另有detect_incremental支撑--update的增量检测。检测完成后技能要求宿主不打印原始 JSON而是呈现一份干净的汇总0 文件的类别省略Corpus: X files · ~Y words code: N files (.py .ts .go ...) docs: N files (.md .txt ...) papers: N files (.pdf ...) images: N files video: N files (.mp4 .mp3 ...)随后按三条分支行动这体现了技能的诚实规则设计total_files 0直接停止报告 No supported files found in [path].skipped_sensitive非空报告被跳过的数量与文件名清单让被误判的源码/文档可见可被改名或移出#2106total_words 2,000,000或total_files 500显示警告并计算按文件数排序的前 5 个一级子目录以 detect JSON 中绝对路径scan_root为基排除graphify-out/侧车直接位于根的文件计为(root)。若全部文件都在(root)无子目录则不要求缩小范围而是建议--no-cluster跳过昂贵聚类否则展示 Top 5 并等待用户回答后再继续。其余情况直接进入 Step 2.5有视频文件时或 Step 3。Step 2.5音视频仅当检测到视频文件detect 返回 0 个video文件时整步跳过有音视频时按 graphify/skills/kilo/references/transcribe.md 先转写成文本再把转录稿当作文档参与 Step 3。六、Step 3双通道抽取AST 结构抽取 语义抽取Step 3 是整个流水线的心脏拆为**结构抽取deterministic、零 token 成本与语义抽取LLM、消耗 token**两条并行通道最后在 Part C 合并。技能对此有三条强约束API key 边界值得单列graphify 不需要任何 API key宿主永远不得向用户索要或因此阻塞。代码纯靠 AST 结构抽取——纯代码语料最常见的/graphify .完全跳过语义抽取。语义抽取仅在GEMINI_API_KEY/GOOGLE_API_KEY已设置时使用 Gemini默认模型gemini-3-flash-preview可用GRAPHIFY_GEMINI_MODEL或无头 CLI 的--model覆盖此时调用graphify.llm.extract_corpus_parallel(files, backendgemini)未设置时宿主 Agent 本身就是 LLM——正在运行的会话承担语义抽取。graphify 不读取ANTHROPIC_API_KEY、OPENAI_API_KEY或其他任何提供商的 key技能明确警告如果你发现自己在提示用户补 key 或因此停下那是误读了本技能。Part A代码文件的 AST 结构抽取与 Part B 并行启动from graphify.extract import collect_files, extract code_files [] detect json.loads(Path(graphify-out/.graphify_detect.json).read_text(encodingutf-8)) for f in detect.get(files, {}).get(code, []): code_files.extend(collect_files(Path(f)) if Path(f).is_dir() else [Path(f)]) if code_files: result extract(code_files, cache_rootPath(INPUT_PATH)) Path(graphify-out/.graphify_ast.json).write_text(json.dumps(result, indent2, ensure_asciiFalse), encodingutf-8) print(fAST: {len(result[nodes])} nodes, {len(result[edges])} edges) else: # 写空骨架保证 Part C 合并有输入 Path(graphify-out/.graphify_ast.json).write_text(json.dumps({nodes:[],edges:[],input_tokens:0,output_tokens:0}, ensure_asciiFalse), encodingutf-8)技能强调 Part A 与 Part B 必须在同一条消息里同时启动AST 确定性且快在子代理处理文档/论文的间隙完成并行化在大语料上可节省 5–15 秒。同时要求把--mode deep是否出现记录下来作为DEEP_MODEtrue传给每一个 Part B2 子代理不得丢失。Part B语义抽取并行子代理快路径若检测发现 0 个文档、论文、图片纯代码语料Part B 整体跳过——但必须先写一个空的语义文件否则 Part C 的合并无条件读.graphify_semantic.json会FileNotFoundErrorPath(graphify-out/.graphify_semantic.json).write_text(json.dumps({nodes:[],edges:[],hyperedges:[],input_tokens:0,output_tokens:0}), encodingutf-8)派发纪律技能原话 MANDATORY必须使用 Agent 工具派发子代理逐文件自己读是被禁止的慢 5–10 倍。派发前打印耗时预估代理数 ceil(未缓存非代码文件数 / 22)chunk 大小 20–25 个文件每批约 45 秒并行执行。Step B0 — 先查抽取缓存调用graphify.cache.check_semantic_cache且prompt_file参数必须传SPEC_PATH——即与本技能并列、Step B2 会原样交给每个子代理的 extraction-spec.md 的绝对路径。设计意图#1939缓存条目归属于产生它的那份抽取提示词graphify 升级改变了提示词时旧条目会重新抽取而不是回放。代码片段还体现两处防御只对document/paper/image三类送语义抽取代码已由 AST 通道覆盖否则子代理会重读所有源码#1392缓存命中就写.graphify_cached.json未命中就删除该文件防止 Part C 合并进上一轮残留的陈旧缓存。Step B1 — 分块从.graphify_uncached.txt读未缓存文件每 20–25 个一组每张图单独成 chunk视觉模型需要独立上下文同一目录的文件尽量同组让相关工件落在同一 chunk 里跨文件关系更容易被抽出来。Step B2 — 在一条消息里派发全部子代理对每个 chunk 调用一次 Agent 工具且所有调用必须在同一响应中发出这是并行执行唯一的方式逐个等返回等于串行违背设计。子代理类型固定subagent_typegeneral-purpose禁用Explore——后者只读无法把 chunk 文件写盘会静默丢失抽取结果。每个子代理接收由 references/extraction-spec.md 原样替换FILE_LIST、CHUNK_NUM、TOTAL_CHUNKS、DEEP_MODE、CHUNK_PATH五个占位符后得到的提示词其中包含 JSON schema、节点 ID 规则、置信度评级、frontmatter、超边与视觉规则并把结果写到绝对路径的CHUNK_PATH由当前工作目录——即 Part C 会 globgraphify-out/的地方——推导而不是.graphify_root指向的扫描目录#1392。Step B3 — 收集、缓存、合并逐 chunk 校验磁盘上.graphify_chunk_NN.json是否存在——存在且含有效nodes/edges才纳入并写缓存缺失则警告chunk N 不在磁盘上子代理可能被以只读Explore类型派发了请用 general-purpose 重跑不得静默跳过某子代理失败或 JSON 无效则警告并跳过该 chunk不中断整个流程。超过半数 chunk 失败或缺失时停止要求用户确认使用subagent_typegeneral-purpose后重跑。合并阶段还要求每次 Agent 调用完成后从工具结果的usage字段读出真实 token 数回写 chunk JSONchunk 文件里只有占位零值再把所有 chunk 合并为.graphify_semantic_new.json随后save_semantic_cache用与 B0 相同的 SPEC_PATH盖章缓存读与写若用不同提示词条目会落在下次查找的位置之外#1939最后把缓存 新结果按节点id去重合并进.graphify_semantic.json并清理临时文件。Part CAST 与语义合并为最终抽取合并规则是AST 节点优先语义节点按id去重追加边直接拼接超边只来自语义侧输出.graphify_extract.json并打印Merged: N nodes, M edges (X AST Y semantic)。七、Step 4 至 Step 9建图、健康检查、标注、可视化与收尾Step 4建图、聚类、分析、产出本步把directedIS_DIRECTED传给build_from_json()——出现--directed时替换为True构建保留 source→target 方向的DiGraph否则False默认无向Graph替换纪律与INPUT_PATH相同不得把字面量留在代码里。核心调用链各模块真实存在于仓库中G build_from_json(extraction, rootINPUT_PATH, directedIS_DIRECTED) # graphify/build.py if G.number_of_nodes() 0: # 写入前的空图守卫#1392 print(ERROR: Graph is empty - extraction produced no nodes.) raise SystemExit(1) communities cluster(G) # graphify/cluster.py cohesion score_all(G, communities) gods god_nodes(G) # graphify/analyze.py surprises surprising_connections(G, communities) questions suggest_questions(G, communities, labels) # 占位标签Step 5 用真标签重算 wrote to_json(G, communities, graphify-out/graph.json) # graphify/export.py if not wrote: # #479 缩水守卫 print(ERROR: refused to shrink graphify-out/graph.json (existing graph has more nodes; #479).) raise SystemExit(1) report generate(G, communities, cohesion, labels, gods, surprises, detection, tokens, INPUT_PATH, suggested_questionsquestions) # graphify/report.py两个守卫值得注意root参数与--update手册保持同一基#1361保证全量构建与增量更新在重新抽取时节点键不漂移to_json在新图小于现存graph.json时返回False且不写盘#479 缩水守卫只有真正写盘后才生成GRAPH_REPORT.md与分析侧车.graphify_analysis.json使报告永不描述graph.json中不存在的图。若打印ERROR: Graph is empty必须停止并告知用户不得继续标注或可视化。Step 4.5图健康检查只读完整性闸门在标注之前对抽取结果做非破坏性诊断实现于 graphify/diagnostics.py 的diagnose_extraction/format_diagnostic_report暴露增量更新与 AST/LLM ID 不匹配这三类静默损坏模式边坍缩、悬空/缺失端点、自环。该步骤永不中止流程但若打印GRAPH HEALTH WARNING必须在最终摘要中呈现图仍可用但完整性问题必须可见——诚实规则的要求。Step 5社区标注宿主读取.graphify_analysis.json为每个社区依据其节点标签写一个 2–5 词的白话名字如 Attention Mechanism、Training Pipeline然后把LABELS_DICT与真标签代回 Step 5 代码块重算suggest_questions标签影响提问措辞、重新generate报告、写.graphify_labels.json供可视化器使用并用community_labelslabels重新导出graph.json让节点携带策划过的community_name#2490同一份抽取下 #479 守卫按节点数通过若仍拒绝则照实呈现守卫信息不得强行越过。Step 6HTML默认与 Obsidianopt-inHTML 始终生成除非--no-vizgraphify export html节点超过 5000 时自动聚合到社区视图。Obsidian vault仅在显式给出--obsidian时生成它每节点一个文件graphify export obsidian可加--dir指向已有 vault。Steps 6b–8--wiki、--neo4j/--neo4j-push、--falkordb/--falkordb-push、--svg、--graphml、--mcp以及total_words超过 5000 时的 token 缩减 benchmark只在对应标志存在时执行默认运行全部跳过细节外置在 references/exports.md。注意顺序约束--wiki导出必须赶在 Step 9 清理之前以便.graphify_labels.json尚存。Step 9清单、成本追踪与清理收尾代码块做三件事节选语义保存 manifest 供--update使用调用 graphify/detect.py 的save_manifestroot把清单键相对化到扫描根跨克隆/机器可移植后续--update匹配缓存而非全部未命中#1417只给真正产出了输出的语义文件盖章——chunk 失败或被省略的检测文件必须保持未盖章否则下次--update会把它当成已完成其内容将永久丢失#2015代码文件总是盖章AST 是确定性的。派发但未盖章的文件其陈旧semantic_hash会被清除使detect_incremental重新排队而不是误读为未变#1948。累计成本追踪每次运行的 input/output token 追加进graphify-out/cost.json的runs并累加全时总量。清理临时侧车.graphify_detect/extract/ast/semantic/analysis.json、全部.graphify_chunk_*.json、.needs_update。完成后向用户报告产物清单graph.html、GRAPH_REPORT.md、graph.json给了--obsidian才多一行obsidian/并只粘贴报告中的God Nodes、Surprising Connections、Suggested Questions三节不贴全文然后从建议问题中挑出跨社区边界最多/桥接节点最意外的那个以这个图能回答的最有趣的问题是[问题]。要我追踪一下吗收尾——图是地图流水线跑完后的角色是向导每次回答以自然的追问结尾让会话像导航而非一次性报告。八、Kilo 专属规则与其余子命令入口技能末尾的## Kilo-specific rules一节是 skillgen 用 kilo-rules.md 片段注入的宿主差异点共四条使用 Kilo 原生的Task工具做语义抽取扇出对应dispatch agent-tool-disk的磁盘收集模式所有 chunk 任务在同一条响应中发起以保证并行抽取 chunk 一律使用subagent_typegeneralKilo 的类型名对应通用型 Agent会话中修改过代码文件后运行graphify update .保持图与代码同步。其余入口均指向侧车参考文档解释器守卫任何子命令--update、--cluster-only、query、path、explain、add前先检查.graphify_python缺失则用 shebang 解析兜底重新写回--update与 --cluster-only前者只重新抽取新增/变更文件后者在现有图上重跑聚类两条流程都外置在 references/update.mdquery 流程graphify-out/graph.json已存在且用户提问时用graphify query question从图回答而非重建遍历前先用图自身词汇表扩展问题措辞避免用词错位把答案塌缩成噪声CLI 不可用时回退到对graph.json的内联 NetworkX 遍历回答只依据图输出内容引用具体事实时引用source_locationBFS/DFS 模式、--budget上限、save-result反馈以及/graphify path、/graphify explain流程详见 references/query.mdadd与--watch都不是默认构建的一部分详见 references/add-watch.mdcommit hook 与 CLAUDE.md 集成安装 post-commit 自动重建钩子或把 graphify 接入项目 CLAUDE.md 时见 references/hooks.md。最后是五条Honesty Rules诚实规则与项目每条边都可解释的定位一脉相承绝不虚构边不确定就用 AMIGUOUS绝不跳过语料规模警告报告中永远展示 token 成本绝不把凝聚度分数藏在符号后面展示原始数值超过 5000 节点的图绝不未经警告就跑 HTML 可视化。九、Kilo Code 上的落盘方式技能、命令与插件三件套skill-kilo.md如何到达用户机器由 graphify/install.py 中的平台表与 Kilo 专属逻辑定义。平台表中 kilo 的条目为kilo: { skill_file: skill-kilo.md, skill_dst: Path(.config) / kilo / skills / graphify / SKILL.md, claude_md: False, skill_refs: kilo, },即graphify kilo install会把 graphify/skill-kilo.md 与对应的skills/kilo/references侧车安装到~/.config/kilo/skills/graphify/SKILL.mdKilo 的技能目录约定且 Kilo 不需要 CLAUDE.md 常驻块claude_md: False。Kilo 变体还有两处其他宿主没有的额外产物原生/graphify命令文件安装时把包内的graphify/command-kilo.md复制到~/.config/kilo/command/graphify.md。该命令是一个极薄的派发存根其全文要求立即调用graphify技能把完整的/graphify参数字符串原样透传无参数时目标路径视为.并明确不得在交给 graphify 技能之前从原始文件作答——这条与技能 frontmatter 的图优先判据形成闭环。.kilo插件钩子安装器写入.kilo/plugins/graphify.js一个tool.execute.before钩子并把插件注册进项目根的.kilo/kilo.json若项目已有带注释的kilo.jsonc自动写入只针对kilo.json避免改写用户的 JSONC。卸载时对应删除插件文件并反注册。十、小结一个技能文件如何承载完整方法论回到 graphify/skill-kilo.md 本身它的信息架构可以概括为四层命令面Usage 子命令路由20 余个标志与add/query/path/explain子命令全部给出确定性行为定义流水线Step 0–9检测 → 双通道并行抽取AST 带缓存/分块/磁盘收集的语义子代理→ 建图聚类分析空图守卫 缩水守卫→ 健康检查 → 社区标注 → 可视化 → manifest/成本/清理每一步都有可复制的 bash 块与 issue 编号标注的失败防护宿主差异Kilo-specific rulesTask 工具扇出、同响应并行、general子代理类型、改码后graphify update .四条价值观Honesty RulesEXTRACTED/INFERRED/AMBIGUOUS 审计标签、token 成本透明、原始分数展示、规模警告不可跳过。对读者而言这份文件既是 Kilo Code 用户的/graphify行为说明书也是理解 graphify 本地确定性 AST 解析、每条边可解释、无向量库 设计哲学的最佳入口而 tools/skillgen/ 与 tests/test_skillgen.py 则保证了它在 13 个宿主变体之间渲染一致、可回归校验。【免费下载链接】graphifyTurn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.项目地址: https://gitcode.com/GitHub_Trending/graph/graphify创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表