企业尽职调查执行
用途
依据《企业尽职调查实务》(国金证券,余波)固化的三套检查要点,对用户指定的企业执行尽职调查:逐项搜集公开可得的资料,标注每一项的核查结论、信息来源与信息完备度,最终输出一份结构化尽调报告。
本技能解决的核心问题是:把"公司名称"这个输入,稳定地转化为一份覆盖法律/业务/财务三线的、可追溯来源的尽调报告,而不是每次重新决定"该查什么"。
重要前提:本技能基于公开信息执行,无法替代现场尽调、管理层访谈与公司提供的原始底稿。报告中必须逐项标明该结论来自公开信息还是需现场获取,不得把公开信息包装成已完成的全面尽调。
触发条件
用户消息同时包含企业指称与尽调意图时启用:
- 企业指称:公司全称、简称、股票代码(如"某某股份""002222""特斯拉")
- 尽调意图:出现"尽职调查""尽调""DD"字样,或指明模块("法律尽调""业务尽调""财务尽调")
典型触发句式:
- 「XXX 公司法律尽职调查」
- 「帮我做 XXX 的业务和财务尽职调查」
- 「XXX(600XXX)尽职调查」→ 默认三模块全做
若未指明模块,默认同时执行法律 + 业务 + 财务三部分;若明确只提一个模块,只做该模块,但在报告结尾提示其余模块未覆盖。
若企业指称有歧义(同名公司、简称对应多个主体),先确认主体再执行;无法确认时列出候选并停止,不要猜测。
执行流程
第 1 步:锁定标的主体
- 解析输入,确定公司全称、是否上市、上市地与代码。
- 用 WebSearch 核实工商全称、统一社会信用代码、成立时间、注册地、法定代表人、实际控制人。
- 若为公司简称,先补齐全称并确认无同名主体。
第 2 步:优先检索用户自有资料
在外部检索之前,先查用户自己的知识库——其中可能已有该公司的招股书、年报、研报或前期尽调材料:
- 用
mcp__ima-mcp__get_knowledge_base_list取知识库列表(重点看"培训课件""个人工作文章""公众号—股票研究"等)。 - 用
mcp__ima-mcp__search_knowledge以公司名/代码检索。 - 命中后用
mcp__ima-mcp__fetch_media_content读取全文。
第 3 步:按模块逐项搜集(核心步骤)
读取对应参考文件,逐条执行检查项,不得跳项、不得合并省略:
| 模块 | 参考文件 | 检查项数量 |
|---|---|---|
| 法律 | references/legal-dd.md |
7 大要点 / 22 子项 |
| 业务 | references/business-dd.md |
6 节 15 项 |
| 财务 | references/financial-dd.md |
7 大关注要点 |
数据源选择与工具映射见 references/data-sources.md,其中标明了每个检查项的公开可得性(公开可得 / 部分可得 / 需现场获取)。
检索工具优先级:
1. 用户知识库(mcp__ima-mcp__*)——自有资料,质量最高
2. 金融数据技能——上市公司财报、股东、公告、研报:neodata-financial-search、westock-data、a-stock-data
3. WebSearch / WebFetch——工商、诉讼、行业政策、舆情、官网、招股书
4. Agent 工具并行检索——当检查项较多时,按"模块"或"主题"拆分并行调研
第 4 步:逐项定级
对每一个检查项,产出四元组:
- 状态:
已核实(有权威来源)/公开信息缺失(搜索后确实找不到)/不适用(如非上市公司无红筹架构)/需现场获取(制度、内账、台账等仅公司内部持有) - 结论:一句话判断,有风险则直接点明
- 依据:具体数据、事实或原文摘录
- 来源:渠道名称 + 可追溯的链接/文件名/页数
严禁编造:查不到就写"公开信息缺失,建议通过……获取",不得用行业常识、同类公司情况或推测填充为该公司的事实。
第 5 步:生成报告
默认输出 Markdown(.md)——本报告数据密度极高,Markdown 可保证数字、日期、比例逐字保真,且便于后续复核与再加工。用户明确要求 Word 时,调用 tencent-docx 技能生成 .docx;生成后必须逐项比对关键数据与 Markdown 原稿一致,确认无改写后再交付。
填写骨架见 assets/report-template.md,其中已预先给定全部章节与表格结构(含法律 22 行、业务 15 行、财务指标表、风险清单表、待补资料清单表)。直接以该模板为底稿填充,不要另起结构,以保证每次输出格式一致。
报告结构
标题:<公司全称> 尽职调查报告(公开信息版)
报告日期 / 标的主体信息(全称、代码、注册地、实控人、主营业务)
一、结论先行
- 核心判断(方向性结论,不构成投资建议)
- 重大风险提示(TOP 3–5,按严重程度排序)
- 信息完备度说明(三类各有几项已核实 / 缺失 / 需现场获取)
二、标的主体概览
工商信息、股权结构、主营业务、报告期财务概览
三、法律尽职调查
3.1–3.7 按 7 大关注要点分节,每节一张核查表:
| 序号 | 检查项 | 状态 | 结论 | 依据 | 来源 |
四、业务尽职调查
4.1–4.6 按 6 大类分节,15 项逐项成行
五、财务尽职调查
5.1–5.7 按 7 大关注要点分节
六、风险清单
按 高/中/低 分级,每条含:风险描述、对应检查项、触发依据、建议核查动作
七、待补资料清单
需现场或公司提供才能完成的检查项,按模块列示,可直接作为尽调资料索取清单使用
八、资料来源
分渠道列示(知识库文件 / 财报公告 / 工商与司法 / 行业资料 / 新闻),须可追溯
免责声明:本报告基于公开信息整理,不构成任何投资建议。
硬性约束
- 不得编造数据。任何数字、日期、人名、比例都必须有来源;无来源则标注"未获取"。
- 不得荐股、不得给出买卖建议。报告只能做事实判断与风险揭示,结论部分使用"方向性判断""风险揭示"表述。
- 区分公开信息与现场信息。凡是只能从企业内部取得的材料(内控制度、销售/采购台账、内外账、银行流水、花名册),一律标注"需现场获取",不得用外部推测替代。
- 逐项覆盖,不得跳项。检查项数量是硬约束(法律 22 子项、业务 15 项、财务 7 大要点),缺少的项目必须显式列出并说明缺失原因。
- 风险优先。发现红线问题(资产流失、资金占用、虚开增值税、控制权不稳定、产权瑕疵)应前置到"结论先行"部分,不要埋在正文表格里。
- 时效标注。所有数据标注对应期间(如"报告期 2023–2025""截至 2026-06"),避免新旧数据混用。
参考文件
references/legal-dd.md—— 法律尽调 7 大关注要点及逐条核查明细references/business-dd.md—— 业务尽调 6 节 15 项及逐条核查明细references/financial-dd.md—— 财务尽调 7 大关注要点及逐条核查明细references/data-sources.md—— 检查项与公开数据源/检索工具的映射,含公开可得性分级assets/report-template.md—— 报告填写骨架(直接复制填充,保证格式一致)
实战经验(来自实际执行复盘)
westock CLI 使用要点
- 首次使用需安装:
node scripts/setup.cjs(技能包目录下),安装到~/.local/bin,之后需export PATH="/c/Users/<用户>/.local/bin:$PATH"才能调用。 - 一次取三年数据:
westock finance <代码> --limit 12可一次性覆盖近 12 个季度(含 3 个年度末),避免多次往返。 - 期间费用明细:
westock finance <代码> --fields all --limit 8才会返回销售费用(OperatingExpense)、管理费用(TotalAdminExpense)、财务费用(FinancialExpense)。 - 已知数据缺口:财务接口不提供应收账款绝对额(仅有净营业周期 NetOperCycle、应付账款周转率 AccountsPayablesTRate)。应收账款须改用年报附注或现场资料补全,报告中应显式标注为缺失。
- 其他常用:
westock notice list <代码> --limit 25取公告(可快速发现异动/风险提示/关联交易/更名等事件)、westock news list <代码>取新闻、westock finance默认字段已含研发费用(RAndD)与存货周转率。
检索技巧(实测有效)
- "公司名 + 上交所/深交所 + 监管工作函/问询函"是最快定位监管关注点的检索式。上市公司历史问询函直指合规瑕疵(如本例中关联方财务公司存款问题在 2020、2024 年被两度问询),比通读年报效率高得多。
- 财经媒体的财报拆解文章是有效的交叉验证来源。例如"销量×均价"的量价拆解、非经常性损益占净利润比重,媒体往往已算好,可与自算结果比对,一举完成"与管理层描述/第三方数据比对"这一检查动作。
- 工商信息中的"历史工商动态"能直接暴露治理变动(如法定代表人、高管备案的变更日期与前后名单),是核查"董监高变动"最直接的公开证据。
Word 导出路径(用户要求 .docx 时)
走 tencent-docx 插件的 §tdoc-orchestrator 编排(beautify_only:S2 doc-formatter → S3 doc-converter,内容来源 = 已定稿 .md):
- Genre 选
business-report(尽调报告属"分析报告"),design-token 取tokens/compiled/business-report.json。 - 不要直接把 .md 当
content_doc_path传 —— format-extract 只吃.docx。把 Markdown 正文作为内容字符串交给 formatter(情况③ html-template)最稳。 - 宽表处理:法律的
序号|检查项|状态|结论|依据|来源六列表在 15.6cm 版心内会挤,用<colgroup>给定列宽百分比(如 6/15/9/32/28/10)+ 表格字号降为--fs-small。 - html-review 的两个高频失分点(先自查再送审):
- TQ-03:<h2>后若紧接<h3>(章节下第一个小节),必须补一句章节导语<p>,否则每处 -10 分。尽调报告 8 个章节里通常有 5 处会踩。
- DT-01:box-shadow/border里写裸rgba()/#hex会被判违规;颜色一律走var(--color-*)。 - Windows 环境坑:
setup-html-to-docx.sh假定 POSIX venv 布局($VENV/bin/python),而uv venv在 Windows 生成Scripts/,脚本会静默失败。改用:
bash export PATH="$HOME/.local/bin:$PATH" uv venv --python 3.12 --clear "C:/Users/<用户>/.venv-html-to-docx" uv pip install --python "C:/Users/<用户>/.venv-html-to-docx/Scripts/python.exe" \ --only-binary=:all: -r "<plugin>/skills/html-to-docx/scripts/requirements.txt" cd "<plugin>/skills/html-to-docx/scripts" && "<venv>/Scripts/python.exe" \ -m html_to_docx convert in.html -o out.docx
(另:该 requirements 装出的包名是html4docx,不是htmldocx,脚本冒烟测试会误报缺失。) - 交付前必做数据保真校验(本技能硬性约束):用 python-docx 抽出全部段落+表格文本,与 .md 做全量数字 token 比对,要求"未命中数 = 0"。参考脚本:
python import re; from docx import Document md = open(MD, encoding="utf-8").read() d = Document(DOCX); txt = "\n".join(p.text for p in d.paragraphs) for t in d.tables: for r in t.rows: txt += "\n" + " | ".join(c.text for c in r.cells) nums = set(re.findall(r"-?\d[\d,]*\.?\d*%?", md)) miss = [n for n in nums if len(re.sub(r"[,\D]", "", n)) >= 3 and n.replace(" ", "") not in txt.replace(" ", "")] print("未命中:", len(miss), miss[:20]) # 期望 0 -
交付副本:把
output/<request_id>/stage3/<文件名>.docx复制到工作区根目录(与 .md 并列),便于用户直接取用;pipeline-state.yaml 保留原始溯源路径。 -
搜索历史沿革时务必带上曾用名(本例中"华冠科技"),否则会漏掉上市初期及之前的股权变动记录。
数据源结构提示
- 上市公司的问询函及回复信息密度极高,应作为法律模块的优先检索对象。
- 控股股东层面的慈善信托、基金等安排会影响"股东穿透"与"实际控制人"的认定,须单独核实。
迭代提示
执行后若发现某类检查项长期无法从公开渠道获取,或用户补充了新的资料渠道,应更新 references/data-sources.md 的映射关系与可得性分级,保持技能与实际检索能力同步。