← 返回列表
需源码安装
中国法定退休年龄与养老金测算:2025 渐进式延迟退休、退休倒计时、预计月养老金 —— 单文件网页计算器 +…
暂不能直接安装(需源码编译或环境不满足):仓库 package.json 标记 private,未发布到 npm,需从源码安装。 · 最近上游提交 2026/9/21 · 已提供中文文档
中国法定退休年龄与养老金测算:2025 渐进式延迟退休、退休倒计时、预计月养老金 —— 单文件网页计算器 + DeepSeek Harness 插件 + 跨工具 Agent Skill
综合分
30.7
GitHub 分
30.7
用户评分
—
★ Stars
1
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add Smallballoons01/retirement-calc仓库 package.json 标记 private,未发布到 npm,需从源码安装,改用 GitHub 源安装
信任档位:已验证本站已于 2 天前真实安装成功
- 是什么
- dsh 原生插件 · chat
- 装得上吗
- 本站已真实安装成功(非静态推断)
- 安全吗
- 本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
- 还在维护吗
- 活跃:最近一次提交在 4 天前
档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →
🟢实装验证通过· 2026/9/24
由本站实装验证器在真实 dsh 环境安装成功,非静态推断。
数据截至 2026/9/22(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查需源码安装
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包@dsh-plugin/retirement-calc(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=20 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
仓库 package.json 标记 private,未发布到 npm,需从源码安装
验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/22 00:10:11
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-llm@deepseek-ai/dsh-tools@deepseek-ai/schemastery@deepseek-ai/dsh-settings@deepseek-ai/dsh-skill@deepseek-ai/dsh-system-prompt用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
由 DeepSeek 最新模型翻译生成retirement-calc · 退休养老测算 算两件事:距离退休还有多少天,以及退休后每月能领多少。 中国从 2025 年 1 月 1 日起实施渐进式延迟法定退休年龄。这件事的规则是精确的—— 什么年月出生、什么岗位、什么时候退休,对应表和阶梯都有明文规定——但绝大多数人 (包括很多第三方计算器)靠印象回答,结果常常错得离谱。这个项目把规则编码下来, 一次写对,三处复用。 1990 年 1 月生 · 男职工 · 广东 → 2053 年 1 月满 63 周岁退休(延迟 36 个月),距今 9,599 天 → 预计月养老金 ¥7,673.48(基础 ¥4,925.86 + 个人账户 ¥2,747.63) 三种用法 | 形态 | 适合谁 | 怎么用 | | --- | --- | --- | | 单文件网页 | 任何人 | 双击 dist/retirement-calculator.html,左边填右边实时出结果,可打印成 PDF | | DSH 插件 | DeepSeek Harness 用户 | 侧边栏一个「距退休 N 天」按钮,点开改参数;同时给助手三个工具 | | Agent 技能 | 其他 AI 编程工具 | 把 skills/retirement-planner/ 软链到 ~/.agents/skills 等目录 | 三种形态共用同一份 core.js,所以不会出现「网页算出来和助手说的不一样」。 计算口径 全部来自公开法规,每一处都能追溯到文号。 法定退休年龄(全国人大常委会 2024-09-13 决定) 自 2025-01-01 起,按原法定退休年龄分三类推进: | 人群 | 原法定年龄 | 延迟节奏 | 上限 | | --- | --- | --- | --- | | 男职工 | 60 周岁 | 每 4 个月延迟 1 个月 | 63 周岁(+36 个月) | | 女职工 · 管理技术岗 | 55 周岁 | 每 4 个月延迟 1 个月 | 58 周岁(+36 个月) | | 女职工 · 工人岗 | 50 周岁 | 每 2 个月延迟 1 个月 | 55 周岁(+60 个月) | 定位方式:先按原法定年龄算出「原本该退休的年月」,再看它与 2025-01 的距离。 结果是逐月对齐官方对照表的——2025 年 1–4 月退休者延 1 个月,5–8 月延 2 个月, 9–12 月延 3 个月,依此类推。 一个常见的坑。 1978 年 3 月出生的男职工确实在 2041 年 3 月满 63 周岁退休; 但同年月出生的女职工不是。原 50 岁档的女工人延 20 个月、2029 年 11 月退休 (51 岁 8 个月),原 55 岁档延迟 25 个月、2035 年 4 月退休(57 岁 1 个月)。 市面上有计算器把女性套用了男性的延迟规则,会多算好几岁——性别与岗位类别 是这套计算里最不能猜的一项。 最低缴费年限 - 2029 年及以前退休:15 年 - 自 2030 年起每年提高 6 个月 - 2039 年及以后:20 年 计发月数 按办理退休时的满周岁年龄取值(国发〔2005〕38 号附件)。例:50 周岁 11 个月 退休,按 50 岁的 195 个月计发,不是 51 岁。常见值:50→195、55→170、60→139、63→117。 缴费基数:填金额,还是填档次 缴费指数 = 缴费基数 ÷ 当年社平。养老金公式里用的是指数,但大多数人只说得清自己的 基数(「现在一万」),而这两者并不等价: - 一直按同一档位缴 → 基数跟着社平一起涨,指数保持不变 - 基数固定不动 → 社平继续涨,指数就逐年下滑,把平均指数拉低 所以工具提供两种填法。「按缴费基数」模式下,填当前月缴费基数,再选未来的基数是 随社平上调还是固定不变 —— 后者才能反映「以后就按这个数缴」的真实后果。 同样填 10000,固定不变比随社平上涨低约 15%。 配套口径: - 缴费基数受社平的 60%–300% 限制,所以算出的指数会被夹在 [0.6, 3.0] - 个人账户按真实基数 × 8% 记账,不再由「社平 × 指数」反推 - 计划缴费月数超过到退休的实际月数时,只计实际能缴的部分 反过来,如果你手里只有社保对账单上的「平均缴费指数」,直接填指数更省事 —— 那个数字本身就是历年「基数 ÷ 当年社平」的平均值。 养老金构成 基础养老金 = (计发基数 × (1 + 平均缴费指数) ÷ 2) × 缴费年限 × 1% 个人账户养老金 = 退休时个人账户储存额 ÷ 计发月数 过渡性养老金 = 计发基数 × 视同缴费指数 × 过渡系数 × 视同缴费年限 广东等省对平均缴费指数低于 0.6 的情形额外折减(a = 指数 ÷ 0.6),本工具按省份自动启用。 弹性退休 达到最低缴费年限可自愿提前,最长 3 年,且不得低于原法定退休年龄;达到法定 退休年龄后经与单位协商可延后,最长 3 年。两者互斥。 快速开始 单文件网页 node scripts/build-web.mjs # 生成 dist/retirement-calculator.html open dist/retirement-calculator.html 产物是自包含的,可以直接发给不装任何东西的人。页面里的「复制测算结果」和 「打印 / 存为 PDF」按钮适合把结论转给家人。 DSH 插件 1. 让包能找到 harness 的 peer 依赖(本机已装 0.1.6-alpha.1) mkdir -p retirement_calc/node_modules/@deepseek-ai for p in cordis dsh-llm dsh-settings dsh-skill dsh-system-prompt dsh-tools schemastery; do ln -sfn "$HOME/.dsh/profiles/node_modules/@deepseek-ai/$p" "retirement_calc/node_modules/@deepseek-ai/$p" done 2. 装进 profile(会改动 profile 的 package.json 与 cordis.patch.yml,建议先备份) dsh plugin --profile web add link:/path/to/retirement_calc 3. 确认组合树里有这一行 dsh --profile web --dump-config | grep retirement-calc 装好后侧边栏底部会出现「🕐 退休 N 天」。如果 profile 里已经有一行同名 retirement-calc,先删掉它——两行会各自注册一次 /retire/api 前缀路由, 重复路由会让插件树启动失败。 跨工具技能 skills/retirement-planner/ 是标准 Agent Skills 目录(name 等于父目录名)。 软链到任意工具的技能根即可: ln -s /path/to/retirement_calc/skills/retirement-planner ~/.agents/skills/retirement-planner 技能本体只描述口径与话术,具体数字由插件工具产出;不装插件时它也能教会 模型这套规则,只是拿不到实时计算。 工具 | 工具 | 作用 | | --- | --- | | retirement_plan | 出结论:退休年月、年龄、距今天数、月养老金及三项构成。默认读已存档案 | | retirement_profile | get / set / clear 个人档案(出生年月、人群、参保地、缴费情况、经济假设) | | retirement_compare | 情景对比:多缴 N 年、提高档次、延后退休各能多领多少 | 档案存在 $DSH_HOME/retirement-calc.json。面板改参数走 preview 接口(只算不存), 点「保存档案」才落盘。 配置 cordis.patch.yml 里只有三个开关: - insert: - id: retirement-calc name: '@dsh-plugin/retirement-calc' config: promptSection: true # 注入系统提示段 skill: true # 注册内嵌技能 stateFile: /absolute/path/retirement-calc.json 测算参数(含计发基数年增长率、个人账户记账利率、过渡系数)都在档案里, 由面板或工具修改,不在这里配——这样「改一个数看结果」只需要一个地方。 开发 npm test # 52 项:核心公式 23 + 插件行为 15 + 真实 cordis 组合 7 + 客户端结构约束 7 npm run verify # 无头浏览器跑一遍网页,验证渲染与实时重算 npm run verify:plugin # 加载真实 WebServer,打真 HTTP 请求验 /retire/api(不碰任何 profile) npm run audit # 敏感信息扫描:凭据、本机路径、内网地址、邮箱 npm run check # 上面全部 + 技能文件与构建产物的一致性校验 npm run web # 重新生成单文件网页 npm test 不需要任何安装就能跑起来:这个包没有运行时依赖。依赖 harness 的那几层测试 (插件行为、真实组合、真机路由)在缺 peer 包时会自己跳过并说明原因,而不是报失败 —— 所以一个干净的 clone 会得到一次绿色的、覆盖率较低的运行。 测试里有几项是刻意钉死的锚点,改公式时它们会先叫: - 人社局公开例题:江西新余《退休时的养老金,你会算吗?》两道题,答案分别是 955.29 元与 3967.89 元,本引擎复现到分。 - 延迟退休对照表:逐月校验 2025 年前后的档位与三类人群的封顶年龄。 - 最低缴费年限:2030 / 2038 / 2039 / 2041 四个年份的阶梯。 - 计发月数:按满周岁取值(50 岁 11 个月按 50 岁算)。 npm run verify:plugin 值得单独说一句:它在临时目录里把插件挂到真实的 cordis 组合上,连真的 WebServer 一起起监听,然后打真实 HTTP 请求验证 /retire/api 的每一条路由、跨站拦截与卸载清理。它全程不读写任何 profile, 进程退出一切归零——想确认"装到 Harness 里能不能跑"又不想动现有环境时,跑它。 安全与隐私 - 零运行时依赖、零出站请求、零遥测。 整个包不发起任何外部连接,也没有任何分析上报。 单文件网页同理 —— 断网打开,所有功能照常工作。 - 数据只落一个文件:$DSH_HOME/retirement-calc.json,经临时文件原子写入。里面是出生 年月、参保地与缴费情况,不出本机。 - HTTP 路由有同源围栏。 /retire/api 挂在 Harness 自己的 web server 上,不在它的 /api 浏览器信任围栏内,而改动档案用的是简单跨域 POST(text/plain 也会被解析)。 所以每条路由都校验 Origin 与 Host 是否同源 —— 否则用户随便打开一个网页, 那个页面就能读写他的档案。 - 不碰动态求值:没有 eval、没有子进程、没有模板引擎。innerHTML 只接收自己生成的 数字和硬编码文案,表单也只提供 number / range / select 三种控件。 - 调用方传来的字段映射表用 Object.hasOwn 取值,避免 __proto__ 命中原型链。 完整的威胁模型、责任边界与加固清单见 SECURITY.md;提交前的敏感信息扫描用 npm run audit(已接入 CI,每次 push 自动跑)。 边界 - 这是估算,不是承诺。计发基数、记账利率、缴费基数上下限每年由各省重新公布, 工具里的增长率是假设值;实际待遇以社保经办机构核定为准。 - 内置的省级计发基数表带年份与状态标记:published 是官方已公布,reference 是 沿用上一年度,manual 是尚未收录(用通用兜底值,面板会提示手工填写)。 河南、陕西、甘肃目前是 manual。 - 过渡性养老金的地方差异极大(系数 1.0%–1.4%,视同缴费指数的认定口径各省不同), 涉及视同缴费年限的情形请以当地经办机构核定为准。 - 不提供投资建议,不推荐商业养老保险产品。 许可 MIT