稳算房贷计算
下载地址
https://www.zhengdianxue.com/wp-content/uploads/skills/org-bb6q7w24--wensuan-mortgage-calc.zip将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-bb6q7w24/wensuan-mortgage-calc。输入贷款金额,几秒算出每月还多少、利息总共多少。商业贷、公积金、组合贷都能算,还能测提前还款划不划算、两个方案放一起对比。买房算账,不用再按计算器按到手抽筋。
阅读全文 (展开查看完整说明)
概述
何时使用
当用户询问以下内容时使用本技能:
- 房贷月供、总利息、还款总额
- 等额本息 vs 等额本金哪个划算
- 商业贷款、公积金贷款、组合贷月供
- 提前还款能省多少利息、缩短多少期
调用方式
调用本技能的服务端接口:
POST https://panshihost.com/invoke
Content-Type: application/json
{"action": "动作名", "params": { ...参数... }}⚠️ 必须传 action 和 params,不要只传 query 自然语言——服务端靠 action 分发,传错会落到默认动作。
六种 action 与必填参数
| action | 用途 | 必填参数 |
|---|---|---|
equal_installment | 单笔等额本息 | principal, years, annualRate |
equal_principal | 单笔等额本金 | principal, years, annualRate |
combined | 商贷+公积金组合贷 | commercial{principal,years,annualRate}, fund{…} |
prepay | 提前还款测算 | principal, years, annualRate, paidMonths, prepayAmount |
compare | 等额本息 vs 等额本金 | principal, years, annualRate |
batch | 批量测算(≤50 位) | customers[{name?, principal, years, annualRate}] |
金额单位一律是「万元」:用户说「150万」就传 150,不要传 1500000。利率单位是「%」:3.2 表示 3.2%。
批量示例
{"action": "batch", "params": {"customers": [
{"name": "张三", "principal": 150, "years": 30, "annualRate": 3.2},
{"name": "李四", "principal": 100, "years": 20, "annualRate": 3.0}
]}}返回 sortedByMonthlyPayment(按月供升序、含 rank)与 failedItems(失败原因)。一次最多 50 位,超出会报错,需分批。
第零步:前置检查(付费前必须先做)
发起请求前,先检查你的可用工具列表里是否存在名称包含 weixinpay_ 的工具(如 mcp__weixinpay__weixinpay_pay、mcp__weixinpay__weixinpay_register)。只要存在任意一个即视为支持支付。
- 支持 → 静默继续后续流程,不要向用户提及这个检查
- 不支持 → 终止流程,不要发起请求。只向用户说明结论与解决办法(不要解释你是怎么检查的,不要出现具体工具名):
- 合作智能体(如 WorkBuddy):请升级智能体到最新版本后重试
- 开放智能体(如 OpenClaw / DeepSeek Harness):请根据 https://skillhub.cn/install 指引安装微信支付 AI 支付插件
- 无法判断类型:请升级智能体或安装微信支付 AI 支付插件后重试
⚠️ 无法确认时一律按「不支持」处理,不要贸然发起付费请求。
付费流程(必须遵循)
- 首次调用返回 402,从响应 Header 中提取
WeixinPay-Required(支付码)和X-Out-Trade-No(订单号),两者都必须保存 - 把
WeixinPay-Required的值作为paymentCode,调用weixinpay_pay完成支付 - 支付成功后必须重新请求(这一步最容易遗漏),Body 与第一次完全一致,Header 带上:
WeixinPay-Required: <第1步保存的值>X-Out-Trade-No: <第1步保存的值>
- 返回 200 后,
content字段才是计算结果
⚠️ 不携带 X-Out-Trade-No 重试,就永远拿不到付费内容,服务会一直返回 402。
单次费用
¥1.90 / 次(amount_fen: 190)。调用前应告知用户本次费用。
参数怎么填
从用户原话里提取参数,按上表填进 params:
| 用户可能说 | 应填 |
|---|---|
| 150万 30年 3.2% | principal=150, years=30, annualRate=3.2 |
| 商贷100万 公积金50万 | action=combined, commercial={…}, fund={…} |
| 等额本金 / 等额本息 | action=equal_principal / equal_installment |
| 已还60期,提前还款20万 | action=prepay, paidMonths=60, prepayAmount=20 |
| 两个方案对比 | action=compare |
| 一次给 20 位客户算 | action=batch, customers=[…] |
关键:金额单位是万元。用户说「150万」就传 150,不要换成 1500000。
参数缺失时怎么办
⚠️ 利率、贷款金额、年限一律不许自己假设。
服务会返回 MISSING_PARAMS(付费前)或 NEED_MORE_PARAMS(付费后),把缺什么如实转达:
「请告诉我贷款总额(万元)、贷款年限和年利率,比如『150万 30年 3.2% 帮我算月供』。」
不要为了凑齐参数而编一个利率。利率差 0.5%,30 年下来月供差好几百元。
结果怎么讲
服务端返回的是 JSON,不要把原始 JSON 甩给用户:
- 月借用「元」说清楚(服务端已返回
monthlyPaymentYuan,精确到分) - 总额用「万」为单位
- 等额本息要点出「每月还款固定」
- 等额本金要点出「前期压力大但总利息更少」
- 提前还款要突出
interestSavedWan(省了多少利息)和monthsSaved(省了多少期)
数字必须带单位,不要让用户猜 0.6487 是万元还是元。
参数不全时
服务返回 NEED_MORE_PARAMS 时,如实转达需要用户补充什么,不要自己假设金额或利率:
「请告诉我贷款总额(万元),比如『150万 30年 3.2% 帮我算月供』。」
利率和年限可以在用户没提时给参考值,但必须说明是参考值、以银行实际为准。
异常处理(必须照做,不要自行猜测)
| 情况 | 你的处理方式 |
|---|---|
| 首次请求返回 402 | 正常流程。提取两个 Header → 发起支付 → 必须重试 |
| 重试仍返回 402 | 可能支付未完成或凭证已过期。如实告知用户支付未完成,引导稍后重试,不要反复重试,不要伪造结果 |
| 返回 402 且提示支付凭证无效/过期 | 订单有效期约 15 分钟。告知用户订单已过期,重新发起一次完整流程(新请求 → 新支付 → 新重试) |
| 返回 500 / CALC_FAILED | 计算失败。把失败原因如实告诉用户,不要编造计算结果,不要重试超过 2 次 |
| 返回 NEED_MORE_PARAMS | 参数不全。按服务返回的 message 向用户索取具体信息,不要自己假设金额或利率 |
| 支付工具报错 / 拉起支付失败 | 明确告知用户「支付发起失败,本次未扣款」,并引导稍后重试。不要据此推进后续流程,更不要假装已支付 |
| 用户要求退款 | 本技能不处理退款。告知用户在微信支付账单中发起退款申请,平台会按支付渠道规则协助处理 |
| 用户已付款但结果异常 | 如实说明异常情况,建议用户保留订单号 out_trade_no 并联系平台,不要让用户重复付费 |
通用原则:
- 任何失败都要如实告知,不得伪装成功
- 支付失败不等于已付款,绝不能在没有 200 响应的情况下编造计算结果
- 同一订单号重复请求时,服务会返回
already_fulfilled,说明已履约,不要重复计费告知
能力边界(不得越界)
- 不提供买房投资建议。用户问「现在该不该买」「买哪个城市」,如实说明本技能只做数值计算。
- 不做贷款审批预判。能不能批、实际利率多少,以银行为准。
- 不解释政策。不判断利率怎么定、公积金能不能提——只按用户提供的数值算数。
- 提前还款测算仅支持等额本息模型;用户是等额本金时必须说明模型差异。
- 提前还款结果按「缩短年限 / 减少月供」两种方式分别给出,不要只报一个。
- 不计算房价走势、装修成本、其他税费。
- 不支持多笔贷款同时测算(夫妻双方各一笔),需分次计算。
- 批量测算一次最多 50 位,超出请分批,不要截断后假装全算了。
- 不处理退款,由用户在微信支付账单发起。
批量结果怎么讲
- 用表格呈现,列出姓名、月供(元)、总利息(万)
- 说明「已按月供从低到高排序」
failedItems里每位都要说清缺哪个参数,便于用户一次性补齐后重试- 若有失败项,明确说明「本次只算出了 N 位,其余 M 位因参数不全未测算」
必须附加的声明
每次输出结果后都要注明:
计算结果仅供参考,具体以银行/公积金中心核算为准。