需先将代码文档转为纯文本并清洗格式,再按功能域分块注入kimi,用动词指令逐层提取入口函数、调用链与职责,最后强制csv结构化输出。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要从一份几十万行的代码文档(如大型开源项目README+源码注释+API文档混合体)中快速理清模块分工、函数调用链和核心功能实现路径,而不是逐行阅读或依赖本地IDE跳转。
预处理:把代码文档转成Kimi能“看懂”的纯文本
Kimi无法解析PDF中的代码高亮、折叠区域或图片里的流程图,更不能执行代码。直接上传带格式的PDF或HTML文档,会导致关键注释被截断、缩进错乱、函数签名丢失——比如def process_data(input: dict) -> list:可能变成“def process_data(input: dict) -> list:”,破坏语法可读性。
用VS Code打开原始Markdown或reStructuredText文档,全选→右键“复制为纯文本”,粘贴到新文件;若只有PDF,用pdfplumber命令行提取:pdf2txt.py -o clean_code_doc.txt -p 1-120 input.pdf(指定页码范围避免附录干扰)。
打开clean_code_doc.txt,删除所有非ASCII符号(如“→”“•”“▸”)、自动换行符(保留段落间空行),将每个函数头单独成行,例如把“process_data —— 接收字典输入,返回列表”改为:def process_data(input: dict) -> list:(保留原始缩进与冒号)。
【必须保留函数签名中的参数名、返回类型和冒号,这是Kimi识别逻辑边界的关键锚点】
分块注入:按功能域切分,每块配专属指令
不要一次性粘贴10万字。Kimi对长文本的注意力权重会随位置衰减,末尾模块的函数容易被忽略。按代码文档实际结构切分:通常“安装说明”“配置项”“核心类”“工具函数”“错误码表”是天然分界。
方法一:手动切分+指令前缀
在每块开头插入一行明确指令,例如:
【请提取本部分所有以“class”或“def”开头的实体名称,并标注其职责关键词,如“class DataRouter:路由请求分发”】
然后粘贴对应段落,发送。
方法二:用标题锚定上下文
若文档含清晰标题(如“## 3.2 数据校验模块”),上传时保留该行,再加指令:
【当前处理模块:数据校验模块。请仅从此标题开始到下一个“##”前的内容中,找出所有被@validate装饰的函数,并列出其校验规则原文】
注意:每块之间用“———”分隔,避免Kimi跨块联想。切分后单块控制在4000–6000字符,确保函数体完整不被截断。
一键设置,在 OpenClaw 和 Claude Code CLI 中使用 Kimi K2.5 (Kimi Code) 作为编程模型。Kimi Code 兼容 Anthropic Messages API——替换……
触发逻辑链提取:用动词指令锁定调用关系
第一步:定位主入口
输入指令:“请扫描全文,找出唯一被命名为‘main’‘run’或‘start’的函数,及其直接调用的3个下级函数名(不展开嵌套)。”
第二步:顺藤摸瓜
拿到入口函数A调用B、C、D后,立即新起一轮提问:“请分析函数B的函数体,列出它内部显式调用的所有函数名(含import别名调用,如‘utils.clean()’),排除print、logging等辅助调用。”
第三步:逆向追溯
若发现关键函数X被多处调用但职责模糊,追加指令:“请回溯全文,找出所有调用函数X的位置,并提取调用前最近一句中文注释(如有)或上一行代码(如if condition:)。”
这一步操作起来很简单,直接把上一轮得到的函数名填进新指令就行。但必须严格限定“显式调用”,否则Kimi会把字符串匹配(如代码里写“call x”)也当调用。
结构化输出:强制生成可导入表格的格式
Kimi默认输出是描述性段落,不利于后续比对。在最终整合阶段,先发送格式约束指令:
你是一名代码架构师,请严格按以下CSV格式输出:模块名,函数名,输入参数,核心动作,调用下游,备注。字段间用英文逗号分隔,无引号,空值写“/”。只输出数据行,不加表头、不加说明、不换行。
紧接着粘贴已整理好的全部分块分析结果(含入口链、各模块职责、调用关系),发送。
若返回内容含“见上文”“如前所述”等指代词,立刻追加指令:“请重输出,所有字段必须为具体值,禁止使用任何指代性语言。”








