Community研究与数据分析github.com

lingyu9495-source/cn-pdf-report-typeset

中文报告做成 PDF,常见翻车三件套:**字体乱码、表格错位、字号小到客户在手机上根本看不清**。这套是交付级的排版标准加可直接跑的模板。

cn-pdf-report-typeset 是什么?

cn-pdf-report-typeset is a Claude Code agent skill that 中文报告做成 PDF,常见翻车三件套:**字体乱码、表格错位、字号小到客户在手机上根本看不清**。这套是交付级的排版标准加可直接跑的模板。.

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/lingyu9495-source/agent-skills/tree/main/skills/cn-pdf-report-typeset

Installed? Explore more 研究与数据分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Chinese Professional PDF Report Generation

🚨 Lessons Learned from Two User Corrections (2026-08-20, Highest Priority, Do Not Repeat)

  1. Compact Layout: Strictly prohibited from using "a page for just a little content". Do not add PageBreaks to pad page count for each chapter — only add one PageBreak after the cover; let the body flow naturally. A previous 6-page report must be compressed to 4 pages.
  2. Large Font Sizes (Mobile-Readable, Client Reads on Phone): Body text ≥16pt, tables ≥15pt, H2 ≥17pt, H1 ≥21pt, title ≥30pt. 14pt body / 12pt table is too small; the client cannot read on their phone, and the user will criticize on the spot.
  3. These two rules are also written in the memory layout standard, but you still tend to be lazy and use 14pt/12pt + page break per chapter — you must self-check the font size constants and PageBreak count before generating the script.

⭐ Army-Wide Layout Standard (2026-08-18, User-Approved, Universal for PDF/Word)

This layout logic is the standard; all future PDF and Word documents must follow it:

  1. A4 Portrait (210×297mm) — do not use landscape or other sizes
  2. Large Font Sizes, Mobile-Readable: Body text ≥14pt, tables ≥12.5pt, H1 ≥20pt, title ≥32pt
  3. Tables Wrap Smartly Without Overflow: Use Paragraph + wordWrap="CJK" for cells
  4. Balanced Page Content: Do not force page breaks; use KeepTogether to intelligently chunk content. After generation, check the character count per page (except cover and ending pages; all pages should be balanced)
  5. Compact Layout: Margins 18-20mm, table padding 3-4, tight line spacing, ready for direct printing

Word documents follow the same logic: A4 portrait, body text ≥Xiao Si/Size 4 (12-14pt), table columns auto-fit without overflow, balanced pages.

Trigger Conditions

  • User/client requests: "make conclusions into PDF", "send PDF", "give me the feasibility study", "render conclusions and send"
  • Need to deliver professionally typeset Chinese analysis reports (cover + tables + footer + key conclusions box)
  • Reference example: Guoxun Robot Due Diligence Report (5 pages, 02-Project Results/Guoxun Robot Project Feasibility Due Diligence and Analysis Report.pdf)

Environment & Installation

  • Use hermes venv interpreter: python
  • First-time install: $V -m pip install reportlab (already installed: 5.0.0)
  • Fonts: Windows system comes with Microsoft YaHei, no need to download font files
    • C:/Windows/Fonts/msyh.ttc (Regular, subfontIndex=0)
    • C:/Windows/Fonts/msyhbd.ttc (Bold)
    • C:/Windows/Fonts/msyhl.ttc (Light)

Standard Workflow

  1. ⚠️ Delivery Iron Rule (2026-09-02, User-Stated, Highest Priority): After generating the PDF, you must send it to the Feishu chat via MEDIA:, never just save it to the knowledge base / give a path / send bullet points. The user's exact words: "You must send the PDF document to the Feishu chat here, otherwise how can I see it? This must become an iron rule."
    • The user reads on their phone; they can only see the file by clicking the file in the Feishu message. Saving it to 02-Project Results/ is just a backup, not a delivery.
    • Delivery format: <your output directory>/<filename>.pdf (absolute path).
    • After sending the PDF, attach a 30-second version of the key conclusions. Send Feishu first, then save to KB for review.
  2. Get Content: Use session_search to look up historical analysis — the user often replies to attachments with "make conclusions into PDF", first retrieve the previous research/due diligence content, do not rewrite
  3. Write Script: Copy templates/reportlab_chinese_template.py, only replace the content area (cover text, chapters, table data)
  4. Generate: Run python → output to Obsidian Hermes Work Results/02-Project Results/ (naming: <topic> Project Feasibility Due Diligence and Analysis Report.pdf)
  5. Validate: Use pymupdf to open and read get_text, confirm page count / Chinese rendering / existence of final page conclusions
  6. Deliver: Reply with MEDIA:D:\...pdf path + key conclusions (30-second version), no verbosity

⭐ Color Palette Iron Rule (2026-09-02, User-Approved, Auspicious Colors are Gold/Earth — Highest Priority)

The user's Bazi favors gold and earth, and dislikes water (blue/black) and fire (red/purple). All PDFs must use gold/earth color schemes; blue is prohibited. See color variables in palette below.

  • Chapter Title H1: Metallic gold background + white text (backColor=#C9A227, textColor=white, borderPadding=(6,8,6,8)) — Gold background with white text, not blue text.
  • Table Header: Metallic gold background + white text (header_bg=#C9A227, FONTNAME=MSYHBD) — Gold background with white text.
  • Body Text: Pure black #1f1f1f.
  • Subtitle / Dividing Line: Deep earth gold #B8860B (remove red).
  • Code Blocks: Earth gold #8a6d1f (remove blue).
  • Zebra Stripes: Light beige gold #FBF3DE (warm tone, not gray-white).
  • Grid Lines: Light earth gold #D9C9A3.

Gold-Tone Palette (for ReportLab)

C_DARK=colors.HexColor("#1f1f1f")   # Body text near black
C_RED=colors.HexColor("#B8860B")    # Emphasis/subtitle - deep earth gold
C_BLUE=colors.HexColor("#C9A227")   # Table header/title background - metallic gold
C_LGRAY=colors.HexColor("#FBF3DE")  # Zebra stripes - light beige gold
C_MGRAY=colors.HexColor("#D9C9A3")  # Grid lines - light earth gold
C_WHITE=colors.white

Inline emphasis S_CODE=st(..., textColor=colors.HexColor("#8a6d1f")); inline <span color='#B8860B'> (do not use #c0392b red).

Layout Points (Template Already Encapsulated)

  • Cover Page: Large title + gold subtitle + date/source + key conclusions box (deep earth gold background, white text table)
  • Body: H1 chapters (metallic gold background, white text, MSYHBD 21pt) + H2 subsections (17pt) + body text 15pt (2026-08-18 user instruction: mobile-readable, font size must be large)
  • Tables: make_table() header with metallic gold background, white text + zebra stripes (ROWBACKGROUNDS) + grid + repeatRows=1, table font size 13pt
  • Footer: onPage callback to draw report name + page number
  • Emphasis: Paragraph supports <b> / <span color='#B8860B'> inline markers
  • Long reports by chapter: Use PageBreak to separate cover and body

⚠️ Font Size Iron Rule (2026-08-18, User-Emphasized): PDFs are for mobile viewing: body text ≥15pt, tables ≥13pt, H1 ≥21pt, title ≥34pt. The original template at 10.5pt/9.3pt is too small; mobile screens cannot read clearly — all new reports must use large font sizes. Larger font sizes may increase page count (e.g., 5 pages to 8 pages); this is normal.

⭐ Smart Layout Iron Rule (2026-08-18, User-Emphasized, Print-Friendly) Page content must be balanced — a page cannot have only 200 characters while another has 800. Method:

  1. Use PageBreak Sparingly: Only force a page break after the cover; let the body flow naturally
  2. Wrap "Heading + Content" with KeepTogether: Use keep(H2 heading, table/paragraph) to prevent tables from being split across two pages, and to prevent headings from being orphaned at the page bottom
  3. Cover is a Standalone Page: Cover elements + one PageBreak
  4. Use Subsections for Natural Separation: H2 headings + tables/key points, do not force a page break per chapter
  5. Verify Balance: After generation, use pymupdf to check the character count per page — for a normal report, except cover/ending pages, all pages should have similar character counts (e.g., 600-900 characters). If the difference is too large, adjust
  6. Compact Layout: Margins 20mm/16mm (not too large), table padding 4-5, line spacing leading=22 (14pt body), reduce wasted whitespace

Pitfalls

  • ⛔ Prohibit Justified Alignment (TA_JUSTIFY) — Character spacing gets stretched (2026-09-03, user's top concern for mobile readability): ReportLab's TA_JUSTIFY forces each line of a Chinese paragraph to stretch to the right edge; when a line has few characters, the spacing is stretched extremely wide and looks terrible. All body text/lists/paragraphs must use TA_LEFT left alignment.
    • Wrong: b=dict(..., alignment=TA_JUSTIFY, ...)
    • Correct: b=dict(..., alignment=TA_LEFT, ...)
    • Check: If a body/list style inherits from st() and has alignment=TA_JUSTIFY, it must be changed to left alignment.
  • ⛔ Cover Content Overflows into a Blank Orphan Page (2026-09-03): All cover elements (main title + subtitle + description + one-sentence key point) must fit entirely on page 1. Never let cover content be pushed to page 2 forming "a small paragraph of text + large blank space". If cover content is too much, delete long introductions, compress list spacing to fit it all on one page. Keep only one PageBreak after the cover; body flows naturally.
  • ⛔ Font Size and Margins Must Be Adjusted Together: After increasing font size, margins must be reduced proportionally (in this session, 22mm → 17mm) to fit more content on each page and avoid orphan pages. 17pt body + 17mm margins is the empirically tested balance point; table font size 14.5pt.
  • ⛔ Wrapping "Custom-Aligned Small Tables" in KeepTogether Causes Page Height Miscalculation → Orphan Pages (2026-09-06, Tested): Wrapping "heading + body + custom two-column aligned table (field_table) + price" in KeepTogether leads to inaccurate height estimation by ReportLab, often pushing the entire block to the next page, leaving only a "prompt sentence/last row" on the previous page, creating an orphan page with dozens of characters (in this session, page 2 had only 76 characters). Fix: ① For the "Service Overview Table + Introduction" on the first screen, wrap the entire head_block in KeepTogether and compress table font size/line spacing to ensure it fits on page 1; ② After rendering, use pymupdf to check the character count per page. Any page with <120 characters is an orphan page; immediately compress the previous page's table or remove redundant prompt sentences.
    • Differentiation (2026-09-10, Tested): Wrapping only the "table itself" is accurate and should be done; wrapping "heading + body + table + price" as a large block is prone to miscalculation. Let the table factory function uniformly return KeepTogether(t) (the table as a whole does not cross pages), and combine with keeping only one PageBreak after the cover. This was tested to fix a 7-page report (page 5 had only 77 characters) into 6 pages with 301/451/548/407/551/240 characters per page. Tables being cut by page breaks, with 1–2 rows isolated on their own page, is the primary cause of orphan pages; if you find a page with only a table header/last row, check this first.
  • ⛔ The Label Column in a Two-Column "Label+Content" Alignment Table Should Not Be Too Narrow — Chinese Labels Will Wrap into Orphan Characters (2026-09-06): When using a two-column alignment table for "What can be done / How deep / What you get", if the label column is too narrow (e.g., 32mm), "What you get" will wrap into "What you ge" + "t", and the orphan character looks terrible. Fix: The label column width must be > the width required to fit the longest label on a single line (around 40mm), or shorten the label (e.g., "What you get" → "Benefits").
  • ⛔ The period at the end of a long sentence can become an orphaned punctuation mark (2026-09-06): For long fields like "How deep / Benefits", the period at the end of the whole sentence gets pushed to the start of the next line when it wraps. Fix: When the field value is long and may wrap, remove the trailing period (or use a short phrase without a period); better to have no period than a lone dot.
  • ⛔ "Custom Skills" Must Use the Correct Terminology (2026-09-06, User Correction): Do not mistakenly write "custom/made-to-order skills" as "scheduled tasks". The client-facing version should uniformly use "Custom Skill Tailoring" and explain in plain language that "a skill is a specific capability an AI can execute" (see enterprise-ai-service-blueprint).
  • .ttc fonts must use subfontIndex=0, otherwise errors or garbled text
  • Bold must register MSYHBD and set fontName — the <b> tag silently fails to bold if no bold font is registered
  • Escaping < and > must handle two cases (2026-09-10, Tested and Got Burned): Only escape bare angle brackets in body text (e.g., "accuracy <10mm") to &lt;/&gt;; <b>, <span color=...> are inline markers and must be passed to Paragraph as-is to work.
    • ⛔ Fatal approach: Always apply .replace('<','&lt;') to all cell text → bold in tables will display literally as <b>text (in this session, the entire second page column printed <b>Targeted support..., only discovered before delivery).
    • ✅ Correct: Table cells only escape bare & (v.replace('&','&amp;')), preserve inline tags; bare angle brackets in content should be written as &lt; by the caller.
    • Self-check: Before delivery, search the full text; if '<b>' in text or '</b>' in text is true, the tag was rendered as text. You must go back and check make_table's escaping.
  • Sum of table column widths ≤ A4 usable width (210mm - left/right margins), otherwise overflow will cause ugly wrapping
  • Table Chinese text overflow (2026-08-18, Important Fix): ReportLab's Table placed directly with long Chinese text will not wrap automatically and will overflow to the right! Must wrap cells with Paragraph + wordWrap="CJK". This is built into make_table via _cell_style() — all cells wrap automatically. Verification: Use pymupdf to check get_text('words') for x2 exceeding the content area's right edge.
    • The threshold must be calculated based on actual margins, not hardcoded as 540pt (2026-09-10, Tested): Right edge = A4[0] - rightMargin (A4 width 595.3pt; 16mm margin → 549.9pt, 17mm → 547pt). Hardcoding 540pt will falsely report normal wrapping as overflow, causing wasted effort.
    • Must exclude footer: The "Page N" drawn by onPage always exceeds the content area. When making the judgment, filter out footer text (e.g., w[4] != 'page'), otherwise you'll get false alarms every time.
    • Judgment example: [w for w in page.get_text('words') if w[2] > page.rect.width - rightMargin + 1 and w[4] != 'page']
  • A4 Portrait Iron Rule (User-Emphasized): All PDFs must be A4 portrait (210×297mm). pagesize=A4 is portrait by default; do not change to landscape.
  • Before delivery, must verify once with pymupdf (page count / Chinese rendering / garbled text / no overflow) — only send if verification passes.
  • ⛔ When writing the generation script, all Python strings must use single quotes for delimiters (2026-09-10, Tested): The toolchain normalizes Chinese quotation marks “ ” into half-width ". If the outer string uses double quotes as delimiters, the quotation marks in the body will prematurely close the literal, causing a SyntaxError: invalid character '+' (U+FF0B) or similar (the error point looks like an illegal full-width character, but the real cause is the quote truncation, which misleads debugging). Either use 「」 for Chinese quotation marks in the body, or wrap the entire string in '...'.
  • ⛔ Never "Read and Write the Same File" Simultaneously: open(f,'w').write(open(f,encoding='utf-8').read() + add) will truncate the file to 0 bytes before reading it, resulting in losing all original content and only keeping the appended part (in this session, a knowledge base note went from 13KB to 3.8KB, almost delivering a broken file). When appending content, first store txt = open(f).read() in a variable, then open(f,'w').write(txt + add); or use a patch tool.
  • Files >100KB are usually normal (embedded font subsets).

Verification Command

$V -c "import pymupdf; d=pymupdf.open(r'D:\...\report.pdf'); print(len(d)); print(d[0].get_text()[:120]); print('Final page contains conclusion:', 'Conclusion' in d[-1].get_text())"

Related SKILLs

  • Content Framework: feasibility-study-writing, dual-lens-business-analysis (load before outputting dual-lens research reports)
  • Report Review Iron Rule: Execute report-reflection-review before finalizing rigorous reports
  • PPT Scenario: ultimate-ppt-master
  • Template: templates/reportlab_chinese_template.py (old); templates/reportlab_gold_template.py (recommended): Gold color scheme + left alignment + 17pt large font + 17mm compact margins + no orphan pages. Fixed make_table() inline tag handling (<b>/<span> inside table cells now work correctly, no longer escaped as literals).

Individual skills in this repo

This repo contains 17 individual skills — each has its own dedicated page.

lingyu9495-source/agent-responsiveness-delegation

你给 AI 助手派了个重活,然后发现:发消息它不回、想插话只能排队、等十几分钟才回一句——等它抬头,需求早变了。根因不是模型慢,是主脑把重活放在前台跑,整个回合被占死。这个 Skill 把这套「重活外派 + 随时应答」机制做成可落地的东西:① 规则块(一页写清判级、派完立刻让出对话、工单四要素、只回收结论、自报≠事实、拍板留主脑、跨会话任务换机制)② 跨平台落地脚本 provision_agent_responsiveness.py:探测本机已有的 Agent 环境(Hermes 的 SOUL 置顶铁律块、Claude Code 的全局指令文件,这两条已实测),把规则块幂等写入(自动备份原文件、重复执行不重复写、绝不覆盖你已有内容);其余平台(Codex / Cursor / WorkBuddy / 任意 Agent)则导出一份可直接粘贴的规则块 markdown,你粘到系统提示或自定义指令里就生效 ③ 体检脚本 audit_agent_responsiveness.py:逐项核对规则块是否存在、是否被后续改动覆盖、探测到哪些平台——没检测到就如实报「未检测到支持的平台」,不假报通过。纯标准库、零依赖、Windows/macOS/Linux 通用。触发词:AI不回话、等太久、插话卡住、助手响应慢、主脑被占住、重活外派、子代理、多智能体、响应速度、落地配置、系统提示。

lingyu9495-source/ai-image-watermark-removal-boss

去除 AI 生成图角落的"XXAI生成"半透明/白色角标水印。像素级验证不自我欺骗、双信号交叉定位抗幻觉、多候选客观指标投票覆盖。当用户要求去除图片水印、清理 AI 生成角标、去"豆包/即梦/Kolors 生成"水印时使用。

lingyu9495-source/bank-scan-household-splitter

客户丢来一个压缩包,里面几百张身份证正反面、开卡申请书、合同——**人工一张张挑,一下午就没了,还容易漏**。

lingyu9495-source/company-law

公司出事,十有八九出在**治理和控制权**上——股权结构一开始搭歪,后面融资、上市、分家全是坑。

lingyu9495-source/excel-keep-format-edit

客户拿来一张老报表说「就在原表上改个数,格式一点都不要动」——用 openpyxl 重建一次,字体、边框、合并单元格、条件格式、列宽全丢,客户一打开就知道这不是他原来那张表。

lingyu9495-source/feasibility-report-engine

做可研报告,卡住的往往不是不会写,是**不知道按哪版大纲、财务测算六表和正文对不上、交付前排版被退稿**。这套是从二十多万字、131 张表的真实交付里固化的流水线。

lingyu9495-source/feasibility-study-consultant

项目可行性论证与研究报告写作框架 —— 任何「这事能不能做、怎么做、值不值得做」的商业决策场景:可行性研究/立项论证/新项目评估/创业方向验证。10大论证模块 + 强制联网尽调 + 多源交叉验证 + 读者视角写作 + 结构化报告输出。(v1.4 升级:从「引导客户把项目情况讲清楚」到「按问题类型与项目类型选论证方法」再到「用假设台账逐条验证」的六步教练流程;附可行性门槛评分器与假设台账两个零依赖脚本、项目卡与决策门清单模板)

lingyu9495-source/financial-statement-adjustment

存量财务报表在原表基础上改数字并保持三表勾稽关系。当用户要求「在原报表上改某些数字,其他数据跟着调整且格式完全不变」时使用:资产负债表/利润表/现金流量表的目标值调整、未分配利润与利润总额联动、勾稽校验。

lingyu9495-source/funding-fit-diagnosis

项目想融资,卡住的往往不是不会写 BP,而是不知道够不够格、该找谁、还缺什么、多久能到钱——问 AI 只得到"建议加强团队"这类正确的废话。这套引擎把它拆成可执行的四步:①10 问项目画像采集(缺关键项就先追问,不猜)②双轨评分:市场化 VC 适配分与政府基金适配分**分开算、各自判定**(≥75 强匹配 / 60-74 可争取 / 45-59 需补短板 / <45 暂不建议,低分不许只说"不行",要给替代路径)③点名机构:按赛道/阶段/地域从 23 家头部 VC 与产业资本(CVC)、21 家政府基金的卡片里逐条对照"匹配信号/劝退信号",每家写清"为什么是你、你还缺什么、材料怎么准备、递送路径",并单列"不建议碰"的机构省时间④差距清单(差距|补齐动作|耗时|难度|优先级,只挑 3 个月内能推动的)+ 三线找钱路线图(市场化 / 政府 / 替代路径)+ 时间预期与现金流提醒。包内另附 30 个真实融资案例对标、TS 条款红线、估值倍数参考、BP 制作铁律,以及零依赖离线评分脚本(纯标准库、不联网、不调大模型 API)。输入:项目情况(照着 10 问答即可);输出:一份研判报告(评分 + 优先接触名单 + 差距清单 + 路线图 + 风险提示),脚本侧可另出 JSON 评分结果。评分是适配度不是成功率,不承诺融资结果。触发词:融资、找投资、融资研判、能不能融到钱、找哪家风投、风险投资、VC、产业资本、CVC、政府引导基金、政府基金申报、产业基金、招商返投、项目申报、补贴申报、商业计划书、BP、路演、估值、股权稀释、TS 条款、对赌、回购、FA、财务顾问、找钱、融资渠道、天使轮、Pre-A、A轮。

lingyu9495-source/gov-fund-application

想拿政府的钱,最容易白跑半年——层级选错、赛道不在目录里、返投算不清,材料递上去才发现方向不对。这套参谋按可执行顺序走:①先判层级(国家级/省级/市级/区级,门槛与目的完全不同)②赛道对目录:不在目录里直接如实说没戏,不让用户白跑③21 家基金卡片逐家对照(投资方式、返投比例、让利规则、申报条件、申报通道、真实案例),点名"你这个项目适合找谁"④返投博弈:算清落地要求,给"不想迁注册地"的三条合规路径⑤材料与时间表:申报材料清单、评审周期(6-12 个月是常态)与现金流提醒。与主技能 `funding-fit-diagnosis` 配套(做整体融资研判时用主技能,VC 与政府双轨分开算)。输入:项目基本情况与注册地/落地意愿;输出:层级判定 + 可申报基金名单 + 返投方案 + 材料清单 + 时间预期。不承诺拿到资金,申报须如实提交材料;政策口径标注截止时间,细则请向当地主管部门核实。触发词:政府基金、政府引导基金、产业基金、政府补贴、专项资金、项目申报、补贴申报、申报条件、返投、招商落地、母基金、投资方式、让利、国家级基金、省级引导基金、市级基金、科技成果转化、专精特新、科技型企业、中小企业发展基金。

lingyu9495-source/hermes-profile-browser-isolation

多个 AI 助手同时干活时,浏览器会互相抢占:弹窗抢焦点、任务互相打断、你正在用的 Chrome/Edge 被顶掉——**你连自己的网页都点不动了**。

lingyu9495-source/investment-finance

做投融资最容易踩的坑不是"不懂概念",是**条款里的每一个字都在分钱**——估值方法选错、对赌触发条件写松、回购条款没兜底,签完才发现少拿几千万。

lingyu9495-source/lowvram-ai-video-comfyui

网上的 AI 视频教程开口就是 24G 显存,一看就把人劝退——**其实 8G 的 4060 也能跑**。这套是 RTX 4060 Laptop 8G 显存 / 32G 内存 / Win11 上真跑出来的配置与调参。

lingyu9495-source/novel-deai-detector

写完的稿子发布前想知道会不会被判 AI 生成、平台审核会不会卡、读者会不会一眼看出机器味——这套是检测到清洗的完整闭环。

lingyu9495-source/npl

不良资产这行的钱,赚在**买入价**上——买贵了,后面怎么处置都白搭。

lingyu9495-source/subagent-first

AI 助手不是不够聪明,是被重活占住了:你让它整理 40 个文件,它一头扎进去十几分钟不抬头——你想问进度、想补需求、想改方向,只能干等。这套作业纪律解决的就是这件事:凡是预计要跑多轮的活(多文件/长研究/批量/长搜索),一律派给后台子代理并行执行,主代理只保留四个动作——拆解、派活、汇总、对话,永远保留随时回你话的能力。我们自己在多智能体团队里天天跑,踩过的 12 个坑全部写进正文:子代理自报成功却发现产出是空的、context 没写全导致跑偏返工、两个子代理并行写同一文件互相覆盖、把需要用户拍板的活派给问不了人的子代理、跨会话长任务错用子代理导致某天悄悄停掉……① 决策树四问判定轻重(一轮工具调用能做完吗/需要用户拍板吗/要活过本次会话吗/能拆成互不依赖的块吗)② 派活四要素(goal / context 必须自包含——子代理看不到你和用户的对话 / output_schema / 验收方式)③ 五步流程:拆解→派活→并行调度→验收→收口 ④ 验收清单:存在性/合规性/真实性/完整性四组逐项打勾,并随机抽一处回一手来源核对 ⑤ 6 种委派模式 + 12 条反模式。配套 scripts/delegation_planner.py:纯标准库零依赖,喂一份任务清单(轮数/文件数/是否研究/是否批量/是否需拍板/是否不可逆/是否跨会话),直接输出「该派子代理 / 自己做 / 转定时任务」+ 并行分组建议 + 主代理必做清单。正文按平台无关的作业纪律写,并附常见平台工具名对照表;Hermes 的字段名/并发上限/后台语义另附一页实况对齐,其他平台按对照表映射即可。触发词:子代理、委派、delegate、任务编排、多智能体、并行执行、上下文管理、主代理被占住、AI不回话、等太久、插话卡住、批量处理、长研究、fork-join、fan-out。

lingyu9495-source/ts-term-review

拿到 TS 或投资协议,看半天不知道哪条能签哪条得改——风险全藏在具体条目里,一句"整体没大问题"最要命。这套审查按 15 条核心条款逐条过:估值 Pre/Post、清算优先权、反稀释(完全棘轮是红线)、优先购买权、领售/拖售、对赌与业绩承诺、回购条款、个人连带担保、董事会与一票否决、保护性条款、竞业与知识产权、信息权、交割条件、股东会表决权、违约责任。每条给三级判定(🔴 红线不改就别签 / 🟡 可谈争取改 / 🟢 行业惯例)+ 谈判话术 + 替代方案,并区分"对公司"和"对创始人个人"——个人连带回购是绝大多数血案的源头,重点标红。另附谈判筹码排序、常见坑清单、BP 与数据室准备。与主技能 `funding-fit-diagnosis` 配套(做整体融资研判时用主技能)。输入:TS/投资协议条款(粘贴或描述);输出:逐条判定表 + 必须改的清单 + 谈判话术 + 底线建议。**不构成法律意见**,正式签署与司法效力请找执业律师确认。触发词:TS、Term Sheet、投资条款清单、投资协议、增资协议、股权转让协议、对赌、业绩承诺、回购、清算优先权、反稀释、完全棘轮、个人连带、一票否决、领售权、拖售权、估值、Pre/Post、股权稀释、条款谈判、FA。

相关技能