Repository navigation
docs(ai-copilot): 把 skills.mdx 六个技能的读/写/输出行按 src/skills 写实,whats-new 技能数 5→6 (#891) - #895
Merged
Merged
Conversation
…source (#891) `content/docs/ai-copilot/skills.mdx` is the page the sales and service pages cite as the full skill spec, and its per-skill tables described capabilities `src/skills/*.skill.ts` does not have. Re-checked all six skills against their tool lists and instructions and rewrote the drifting rows: - Case Triage writes nothing: its tools are `describe_object` + `get_record`, `escalate_case` / `close_case` carry no `ai` block so no write tool is materialised, and `category` / `queue` are not fields on `crm_case` at all (its classification field is `type`, label "Case Type"). It also cannot read prior cases (no query tool) and there is no product field to read. - Lead Qualification writes through `action_convert_lead` / `action_schedule_followup` rather than fields; `rating` (1-5 star Lead Score) is never written, `status` is stamped by the conversion flow. - Email Drafting has no send tool (`send_email` carries no `ai` block) and returns a second subject-line variant. - Revenue Forecasting summarises by stage and forecasts a range; the Closed/Commit/Best Case/Pipeline buckets belong to `crm_opportunity.forecast_category` and the `forecast_snapshot` flow. - Customer 360 reads contacts / open cases / open opportunities / published knowledge articles - not contracts, activities or campaign members, matching the wording landed on service-copilot in #861. - "How skills work together" no longer claims skills invoke each other; the only instruction-level handoff is case_triage naming `email_drafting`. - The Confirmation bullet now matches the two real Actions (convert requires human approval, schedule follow-up has no approval gate). `content/docs/whats-new.mdx` counted five built-in skills; `allSkills` in `src/skills/index.ts` registers six (Live Data was missing). All changes in en / zh-Hans / zh-Hant. No `src/**` change. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VHrPAGEgFDoHjphqYG4BMa
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
yinlianghui
marked this pull request as ready for review
August 6, 2026 05:28
This was referenced Aug 6, 2026
yinlianghui
added a commit
to yinlianghui/hotcrm
that referenced
this pull request
Aug 10, 2026
…recast buckets to the skill (objectstack-ai#897, objectstack-ai#898) (objectstack-ai#902) Two drifts left over from the objectstack-ai#891 / PR objectstack-ai#895 pass, both on pages that page did not cover. objectstack-ai#897 — skill count. `src/skills/index.ts` registers six skills; Live Data was the one the docs never picked up. The capability table in `content/docs/index.mdx` said "5 skills" and its parenthetical list omitted Live Data, which is the odd one to lose since it is the skill behind Wow #1. Now six, with live data named first to match the table order in `content/docs/ai-copilot/skills.mdx`. The Sales Copilot / Service Copilot names in that same cell are deliberately untouched — they belong to objectstack-ai#612. On `content/docs/ai-copilot/sales-copilot.mdx` the "Where the personas went" note said the capability "lives in five skills registered through `src/skills/`". The subject is the registry, which holds six, but the page documents five sales-side skills and numbers them 1-5, so "six" would have traded one mismatch for another. The sentence now carries no count, which is verbatim what the parallel note on `content/docs/ai-copilot/service-copilot.mdx` already says in all three languages. objectstack-ai#898 — forecast buckets. The forecasting section presented Closed / Commit / Best Case / Pipeline as the skill's output, with probability thresholds on two of them. `src/skills/revenue-forecasting.skill.ts` groups by stage, computes weighted value as amount x probability, names at-risk deals with the signal behind each, and gives the forecast as a range from commit-only to full weighted pipeline, optionally with a chart. It never reads `forecast_category`. The four names are real, so the page now says where they live instead of dropping them: options of `crm_opportunity.forecast_category`, and the amounts the scheduled snapshot in `src/flows/forecast-snapshot.flow.ts` writes onto `crm_forecast`. The probability thresholds had no source anywhere — the snapshot buckets by forecast category, not by probability band. Two smaller claims in the same block go with them: "missing close dates" was never one of the skill's risk signals, and the manager tip asking "Which reps need coaching?" described a per-rep rollup the skill does not do, stage and the user's period being its only groupings. Documentation only, en / zh-Hans / zh-Hant. No `src/**` change. Brings the page into line with the skill rows landed in `skills.mdx`, which had been describing the same skill differently. Claude-Session: https://claude.ai/code/session_01VHrPAGEgFDoHjphqYG4BMa Co-authored-by: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #891
content/docs/ai-copilot/skills.mdx是另外两页(sales-copilot / service-copilot)当作「完整技能规格」去引用的那一页,而它每张技能表里的读取 / 写入 / 输出行描述的是src/skills/*.skill.ts并不具备的能力。本 PR 以 skill 源码为唯一事实来源,把六个技能逐行写实,并把whats-new的技能数从 5 改为 6。三语同改,不动src/**。基线:
origin/main @ c94a35c7(即 #892 落地之后),行号已重定位。一、前提复核(issue 断言逐条重核)
crm_case上没有category、没有queuesrc/objects/case.object.ts全部 29 个字段里无此二名;grep -n "category|queue"只命中priority_rank上下的注释文字case_type」type,label 才是 Case Typecase.object.ts:137type: Field.select({ label: 'Case Type', options: question/problem/feature_request/bug })。改文按字段实况写 Case Type(zh:类型),与 #861 在 service-copilot 页的落地口径一致case-triage.skill.ts:49tools: ['describe_object', 'get_record'];case.actions.ts:13-39两个 Action 均无ai块allSkills注册 6 个(含 LiveDataSkill)src/skills/index.ts:20-27skills.mdx自己写 sixskills.mdx:21"HotCRM ships with six core skills"action_convert_lead/action_schedule_followuplead-qualification.skill.ts:34-37,41-47;两个 Action 都带ai: { exposed: true }(lead.actions.ts:35-39, 72-76)customer-360.skill.ts:38-52二、逐技能「源码依据 → 改文」对照
🚦 工单分流(
case-triage.skill.ts):49tools 只有两个;:30-37只 describe/get 当前工单,评判权重是客户分层 + 合同金额crm_case无产品字段、无指向crm_product的 lookup):38-47优先级 + 一条理由 + 升级/关闭指引 + 回复交给 email_drafting:49+case.actions.ts:13-39(无ai块);case.object.ts无 category/queuecrm_case上根本不存在(工单自己的分类字段是 Case Type),落地动作是坐席点按钮🎯 线索资格判定(
lead-qualification.skill.ts):23-25describe + get + query 相关活动历史:31-33评分 + 每维度一行理由 + 唯一下一步 + 引用 IDlead.object.ts:200的rating是 1–5 星 线索评分,不是三档评级):34-37,41-47;lead.actions.ts:13-40,58-77;lead-conversion.flow.ts:235-246;schedule-followup.flow.ts:73-101is_converted+status: converted),否则调 Schedule Follow-up(建crm_task+ 回填next_followup_date);rating两者都不写✍️ 邮件撰写(
email-drafting.skill.ts):23-26,39只 get 联系人(+请求点名时的客户或商机),query 取近期往来:32-33两个主题行备选 + 推荐哪一个:34-37+contact.actions.ts:45send_email无ai块📈 收入预测(
revenue-forecasting.skill.ts):19-31,41describe + aggregate 按阶段 + query 捞风险交易;opportunity.object.ts:208days_in_stage:25-37按阶段汇总 + 加权价值 + 风险交易 + 区间(仅承诺口径 ↔ 完整加权管道)+ 可选出图opportunity.object.ts:233的forecast_category字段与forecast-snapshot.flow.ts:241-290写进crm_forecast的那几个金额——已写明去向,未静默删名🔭 Customer 360°(
customer-360.skill.ts):38-52,61只枚举crm_account/crm_contact/crm_case/crm_opportunity/crm_knowledge_article+aggregate_data:53-59固定三段 + 内联引用 ID + 空段如实说明🔄 实时数据(
live-data.skill.ts)四行(输入/读取/输出/写入)与
:19-42逐条核对全部对得上,未改动——如实记录,不为凑改动而改。直接相关散文
case-triage.skill.ts:46-47里唯一真实的移交是把客户回复交给email_drafting,而且它是给用户的指引(下一问再问)。整段重写为「技能之间不互相调用 + 唯一的那条移交 + 两条不存在的调用点名说清」。schedule_followup是ai.exposed但没有审批闸门(lead.actions.ts:70-76注释原文:additive and reversible, so no approval gate),而convert_lead因confirmText会走人工审批(:29-39)。改为按两个动作分别写实。这条是直接支配「写入」行的散文,故一并写实。三、
whats-new数词证据content/docs/whats-new.mdx:99(zh-Hans/zh-Hant :81)位于## v5.0 — Latest release→### AI Copilot段内,写「Five built-in skills」,缺 Live Data。src/skills/index.ts:20-27的allSkills注册 6 个:LeadQualification / EmailDrafting / RevenueForecasting / CaseTriage / Customer360 / LiveData;skills.mdx:21自己也写 six。三语同改为「六项」并把 live data 补进列举。未动:
whats-new.mdx:56(zh :39)「Sales Copilot with 5 skills」在### What's in v1.0段内,是历史版本条目,不在本单裁定面。四、与 #892 的衔接
基线取 #892 合并后的
c94a35c7,行号重定位:crm_knowledge_article,与 docs(ai-copilot,service): 把「内置四个 AI 知识库」整套说法按元数据写实 (#808) #892 那行「唯一会读文章的技能」一致;工单分流的「读取/输出」行说「够不着文章」,与 docs(ai-copilot,service): 把「内置四个 AI 知识库」整套说法按元数据写实 (#808) #892 的知识库行同因(无检索工具);邮件撰写的「读取」行不再重复讲文章,交由 docs(ai-copilot,service): 把「内置四个 AI 知识库」整套说法按元数据写实 (#808) #892 那行承担。五、验证输出
pnpm validate✓ Validation passed (1302ms)pnpm typechecktsc --noEmit无输出pnpm buildArtifact: dist/objectstack.json (1921.4 KB)pnpm test --maxWorkers=2Test Files 66 passed (66)/Tests 1587 passed | 1 skipped (1588)pnpm lint13 warning(s), 14 suggestion(s)(均为既有的 approval/field-group 提示)pnpm hygiene✓ no raw control bytes in first-party files/✓ source hygiene cleantest 输出里的
✗ source hygiene: scanned director(y|ies) missing: .changeset是source-hygiene-scan-surface元测试的预期 stderr(本 PR 新增了.changeset/skills-table-write-real.md),测试整体仍为 0。改动文件另做控制字节自扫:
grep -naP '[\x00-\x08\x0b\x0c\x0e-\x1f]'六个 mdx + changeset 零命中。六、changeset
.changeset/skills-table-write-real.md('hotcrm': patch),站内路径用反引号。Generated by Claude Code