本压缩包包含两个 Agent Skill(SKILL.md 标准目录),可用于 Cursor 与 Claude Code,指导 AI 在金蝶 EAS/sHR 上做 单点登录(SSO) 与 待办/待阅推送。
| 目录 | Skill 名 | 用途 |
|---|---|---|
kdshrsso/ |
kdshrsso | 单点登录:泛微 E10 / 钉钉 / IDM / Azure 等对接 sHR |
kdshrpmsg/ |
kdshrpmsg | 待办、待阅推送:泛微统一待办 / 门户 PORTAL-* 等 |
两者常一起用:待办深链要能登录,入口须与 SSO 一致。
同一套文件夹内容可分别拷到 Cursor 或 Claude Code 的 skills 目录(路径不同,见下)。
两套工具的目录名都叫 skills/,但父目录不同,不要混放。
| 范围 | Windows | macOS / Linux |
|---|---|---|
| 个人全局 | C:\Users\<用户名>\.cursor\skills\ |
~/.cursor/skills/ |
| 仅本项目 | <项目>\.cursor\skills\ |
<项目>/.cursor/skills/ |
注意:不要放到 .cursor/skills-cursor/(Cursor 内置技能目录)。
| 范围 | Windows | macOS / Linux |
|---|---|---|
| 个人全局 | C:\Users\<用户名>\.claude\skills\ |
~/.claude/skills/ |
| 仅本项目(推荐团队共享) | <项目>\.claude\skills\ |
<项目>/.claude/skills/ |
官方说明:Extend Claude with skills
skills/ ← 上面表里对应的 .cursor 或 .claude 下的 skills
├── kdshrsso/
│ ├── SKILL.md ← 必需
│ └── *.md ← 参考文档,随目录一起拷贝
└── kdshrpmsg/
├── SKILL.md
└── *.md
同时用 Cursor 和 Claude Code 时:把 kdshrsso、kdshrpmsg 各拷一份到 .cursor/skills/ 与 .claude/skills/,或项目内两套路径各放一份。
SKILL.md 改名。skills 目录,需 重启一次 Claude Code。.cursor/skills/,Claude Code 用 .claude/skills/;团队若两边都用,可两个目录都提交(内容相同)。在 Agent / Chat 中点名技能或描述业务即可,例如:
SSO:
待办:
上线:
Agent 应按 skill 要求:先提问确认(intake),再写代码;说「上线」时先列待改配置、确认生产地址,再改文件。
本包格式与 Claude Code Skills 兼容(目录 + SKILL.md + 同级参考文档)。安装到 ~/.claude/skills/ 或项目 .claude/skills/ 后即可。
在 Claude Code 输入框输入 /,应能看到(目录名即命令名):
/kdshrsso — 加载 SSO 技能/kdshrpmsg — 加载待办/待阅技能示例:
/kdshrsso
按 B-qy 对接泛微 E10,测试 SHR 地址是 ……,请先做 intake 提问。
/kdshrpmsg
对接泛微统一待办,深链走 /qy/auth/weaver/app.do,请先确认渠道与配置文件名。
两个都要时,可先 /kdshrsso 再 /kdshrpmsg,或开场说明「先 SSO 后待办,两个 skill 一起按」。
不打 / 时,若描述命中 skill 的 description(如「金蝶 SSO」「泛微待办」「weaverTodo」),Claude 可能自动加载。重要流程建议仍用 /kdshrsso / /kdshrpmsg,避免漏载。
weaver-oauth-qywar-reference.md 等参考文档,Claude 会在需要时按 SKILL.md 指引读取,请勿删掉。| 现象 | 处理 |
|---|---|
输入 / 看不到 kdshrsso |
确认路径是 .claude/skills/kdshrsso/SKILL.md(不是 .cursor/...);重启 Claude Code |
| 只有个人机生效、云端/同事没有 | 把技能放进项目 .claude/skills/ 并提交 Git(云端会话不读你本机 ~/.claude/skills/) |
| 想限制只能手动触发 | 可在 SKILL.md 的 YAML 里加 disable-model-invocation: true(加后需用 /技能名 才会加载) |
| 模式 | 适用 | 典型入口 |
|---|---|---|
| A Filter 覆盖 | Azure / 标准 OIDC,希望全站 /shr 自动鉴权 |
/shr?adsso 等 |
| B Servlet + Ltpa | 企业 IDM、OAToSHR 深链 | /shr/api/oAToSHR |
| B-qy qy.war + index2sso | 泛微 E10 / 钉钉(报业类) | /qy/auth/weaver/app.do |
不确定时让 Agent 按 skill 里的 Quick decision 推荐,再由你确认。
| 场景 | 是否适合 |
|---|---|
| 流程待办推到门户 / 泛微统一待办 | 适合 |
| BMC 待阅 / 通知 | 适合 |
| 玉湖式 PORTAL-* + ESB | 适合(见包内 yhpro / portal 参考) |
| 只做钉钉/飞书、无门户 | 部分:单独渠道 + 独立配置文件 |
| 替换产品消息中心整套 | 不适合 |
qy.war.do)login_withForm.js;本地 /shr/home.do 是否保留你说「按报业 / 按 BaoYPro」时,Agent 可按默认假设复述一次,你确认后再改代码。
| 文件 | 说明 |
|---|---|
SKILL.md |
主流程:intake、模式选型、切生产、排错要点 |
weaver-oauth-qywar-reference.md |
泛微 E10 / qy.war(B-qy)详细参考 |
portal-login-reference.md |
门户 eassso / login_withForm |
idm-servlet-reference.md |
Option B(OAToSHR) |
idm-filter-reference.md |
Option A(IDM Filter) |
azure-oauth-reference.md |
Azure / OIDC Filter |
migration-guide.md |
迁移注意 |
| 文件 | 说明 |
|---|---|
SKILL.md |
主流程:intake、SPI、切生产、与 SSO 协同 |
weaver-baoy-plan.md |
报业 / 泛微统一待办落地计划与约定 |
weaver-receive-todo-api.md |
泛微 ReceiveTodo / OpenAPI 说明 |
yhpro-reference.md |
玉湖门户待办参考实现 |
portal-api-map.md |
PORTAL-* 接口对照 |
/qy/auth/weaver/app.do),两边保持一致。index2sso,避免 LTPA 放进 Location 导致多重编码。/qy/auth/weaver/...),不要依赖仅靠 UA 的 Unified /auth/app。docs/integration/*.html(若有)。请加载 kdshrsso 和 kdshrpmsg。
我们要对接:泛微 E10(或钉钉/飞书/IDM)。
环境:测试 SHR 地址是 ……;是否有 qy.war:……
人员映射:……
请先按 skill 做 intake 提问,确认后再写代码。不要直接改生产配置。
/kdshrsso
我们要对接:泛微 E10(或钉钉/飞书/IDM)。
环境:测试 SHR 地址是 ……;是否有 qy.war:……
人员映射:……
请先做 intake 提问,确认后再写代码。不要直接改生产配置。
需要待办时再执行:
/kdshrpmsg
深链 SSO 入口与上面一致;请先确认渠道、配置文件名与人员字段。
Cursor 可直接说;Claude Code 建议先 /kdshrsso(及需要时 /kdshrpmsg)再发:
按 kdshrsso / kdshrpmsg 做切生产。
生产 SHR:……
生产 ecology / OpenAPI:……
请先列出要改的文件和项,我确认后再改。
kdshrsso / kdshrpmsg 目录)SKILL.md / 参考文档Cursor:对话中点名 kdshrsso / kdshrpmsg。
Claude Code:输入 /kdshrsso / /kdshrpmsg。