{"id":"42aa6ebb-2f75-48e1-8f5d-88e466cd02f0","entityType":"agent","slug":"clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi","name":"Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励","canonicalUrl":"https://www.xpersona.co/agent/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi","canonicalPath":"/agent/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi","generatedAt":"2026-10-10T07:12:56.148Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-10T00:43:30.747Z","emptyReason":null},"description":"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 Skill: Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励 Owner: 18072937735 Summary: Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching prese","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.8K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s17f8q65zg3y98t86jdg1177g583whq8:smyx-rehab-motivation-encouragement-analysis","sourceUrl":"https://clawhub.ai/18072937735/smyx-rehab-motivation-encouragement-analysis","homepage":"https://clawhub.ai/18072937735/skills/smyx-rehab-motivation-encouragement-analysis","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/18072937735/smyx-rehab-motivation-encouragement-analysis","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/18072937735/skills/smyx-rehab-motivation-encouragement-analysis","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":65,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration "},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T00:43:30.747Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T00:43:30.747Z","emptyReason":null},"stars":null,"forks":null,"downloads":1828,"packageName":null,"latestVersion":"1.0.12","tractionLabel":"1.8K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T00:43:30.747Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T00:43:30.747Z","lastCrawledAt":"2026-10-10T00:43:30.747Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T00:43:30.747Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.12","createdAt":"2026-10-03T09:28:26.629Z","changelog":"- Version number updated from 1.0.16 to 1.0.17. - Metadata and documentation in SKILL.md were updated or expanded. - The file skill-card.md was removed. - No functional or code changes indicated; update is documentation and packaging only.","fileCount":31,"zipByteSize":43648},{"version":"1.0.11","createdAt":"2026-09-22T06:43:32.890Z","changelog":"- Updated skill version to 1.0.16. - SKILL.md revised: metadata (version number) updated; content may include clarifications or minor edits. - skills/smyx_common/scripts/config.yaml was changed (details not specified). - Removed documentation file skill-card.md.","fileCount":31,"zipByteSize":44071},{"version":"1.0.10","createdAt":"2026-09-13T21:28:28.335Z","changelog":"- Updated version number to 1.0.14. - Made content clarifications and documentation improvements in SKILL.md. - Removed the skill-card.md file. - No changes to core logic or features.","fileCount":31,"zipByteSize":44118},{"version":"1.0.9","createdAt":"2026-08-27T04:07:31.149Z","changelog":"smxy-rehab-motivation-encouragement-analysis 1.0.9 - Removed documentation file: skill-card.md - No changes to core logic or functionality.","fileCount":31,"zipByteSize":44067},{"version":"1.0.8","createdAt":"2026-08-16T17:13:29.053Z","changelog":"smyx-rehab-motivation-encouragement-analysis v1.0.8 Changelog - Documentation update: Improved and expanded SKILL.md content for clarity and detail, refining usage scenarios, workflows, and constraints. - Cleanup: Removed the obsolete skill-card.md file. - No functional or interface changes; update is limited to documentation and packaging.","fileCount":31,"zipByteSize":43695},{"version":"1.0.7","createdAt":"2026-08-14T21:47:34.061Z","changelog":"smyx-rehab-motivation-encouragement-analysis v1.0.7 - Updated skill documentation in SKILL.md, including version bump and content alignment. - Removed the redundant file skill-card.md for cleaner repository structure. - Minor configuration changes in skills/smyx_common/scripts/config.yaml to reflect current settings. - No functional logic or API changes in this version.","fileCount":31,"zipByteSize":44012},{"version":"1.0.6","createdAt":"2026-08-07T04:54:36.379Z","changelog":"## smyx-rehab-motivation-encouragement-analysis 1.0.6 Changelog - Removed the documentation file `skill-card.md`. - No changes to core features or functionality.","fileCount":31,"zipByteSize":43994},{"version":"1.0.5","createdAt":"2026-07-31T05:05:32.538Z","changelog":"- Updated version to 1.0.8. - SKILL.md revised and version incremented; skill-card.md removed. - Documentation updated for consistency and detail, including workflow and behavioral constraints. - No feature or core functionality changes described in the changelog inputs.","fileCount":31,"zipByteSize":43896}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17f8q65zg3y98t86jdg1177g583whq8:smyx-rehab-motivation-encouragement-analysis","setupComplexity":"low","setupSteps":["Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T07:12:56.144Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-rehab-motivation-encouragement-analysi/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-10T00:43:30.747Z","emptyReason":null},"readme":"Skill: Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励\n\nOwner: 18072937735\n\nSummary: Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。\n\nTags: latest:1.0.12\n\nVersion history:\n\nv1.0.12 | 2026-10-03T09:28:26.629Z | auto\n\n- Version number updated from 1.0.16 to 1.0.17.\n- Metadata and documentation in SKILL.md were updated or expanded.\n- The file skill-card.md was removed.\n- No functional or code changes indicated; update is documentation and packaging only.\n\nv1.0.11 | 2026-09-22T06:43:32.890Z | auto\n\n- Updated skill version to 1.0.16.\n- SKILL.md revised: metadata (version number) updated; content may include clarifications or minor edits.\n- skills/smyx_common/scripts/config.yaml was changed (details not specified).\n- Removed documentation file skill-card.md.\n\nv1.0.10 | 2026-09-13T21:28:28.335Z | auto\n\n- Updated version number to 1.0.14.\n- Made content clarifications and documentation improvements in SKILL.md.\n- Removed the skill-card.md file.\n- No changes to core logic or features.\n\nv1.0.9 | 2026-08-27T04:07:31.149Z | auto\n\nsmxy-rehab-motivation-encouragement-analysis 1.0.9\n\n- Removed documentation file: skill-card.md\n- No changes to core logic or functionality.\n\nv1.0.8 | 2026-08-16T17:13:29.053Z | auto\n\nsmyx-rehab-motivation-encouragement-analysis v1.0.8 Changelog\n\n- Documentation update: Improved and expanded SKILL.md content for clarity and detail, refining usage scenarios, workflows, and constraints.\n- Cleanup: Removed the obsolete skill-card.md file.\n- No functional or interface changes; update is limited to documentation and packaging.\n\nv1.0.7 | 2026-08-14T21:47:34.061Z | auto\n\nsmyx-rehab-motivation-encouragement-analysis v1.0.7\n\n- Updated skill documentation in SKILL.md, including version bump and content alignment.\n- Removed the redundant file skill-card.md for cleaner repository structure.\n- Minor configuration changes in skills/smyx_common/scripts/config.yaml to reflect current settings.\n- No functional logic or API changes in this version.\n\nv1.0.6 | 2026-08-07T04:54:36.379Z | auto\n\n## smyx-rehab-motivation-encouragement-analysis 1.0.6 Changelog\n\n- Removed the documentation file `skill-card.md`.\n- No changes to core features or functionality.\n\nv1.0.5 | 2026-07-31T05:05:32.538Z | auto\n\n- Updated version to 1.0.8.\n- SKILL.md revised and version incremented; skill-card.md removed.\n- Documentation updated for consistency and detail, including workflow and behavioral constraints.\n- No feature or core functionality changes described in the changelog inputs.\n\nv1.0.4 | 2026-07-17T02:54:28.071Z | auto\n\nsmyx-rehab-motivation-encouragement-analysis 1.0.4 → 1.0.6\n\n- Updated version number and documentation details in SKILL.md\n- Minor corrections and clarifications in skill description and workflow steps\n- Removed legacy file (skill-card.md) as part of cleanup\n\nv1.0.3 | 2026-07-05T03:37:28.109Z | auto\n\n# smyx-rehab-motivation-encouragement-analysis v1.0.3 Changelog\n\n- Updated skill documentation (SKILL.md) with a restructured overview, clearer workflow, and improved usage instructions, especially around user identity handling.\n- Revised user authentication flow: now handles open-id/user identity internally and no longer requires prompting the end user for identification.\n- Strengthened cloud-only historical report queries; local history and manual summary are strictly disabled.\n- Refactored scripts and config to support internal-only identity logic, automatic association, and new system defaults.\n- Removed redundant or outdated files (scripts/api_service.py, skill-card.md).\n\nv1.0.2 | 2026-06-23T03:24:27.252Z | auto\n\n- Improved configuration management: now checks both skill-specific and shared config files for API key (open-id).\n- Refined open-id retrieval logic; execution strictly enforced to require valid open-id before any analysis.\n- Enhanced documentation and user instructions for setup and operation.\n- Removed deprecated skill-card.md for better maintainability.\n- Minor updates for consistency across script and utility files.\n\nv1.0.1 | 2026-06-19T02:49:41.283Z | auto\n\nVersion 1.0.1\n\n- Updated internal directory paths for configuration files, standardizing from nested to top-level `scripts/config.yaml`.\n- Adjusted instructions and logic for open-id acquisition to align with new config file locations.\n- Added license information (MIT-0) to SKILL.md.\n- Cleaned up description fields in SKILL.md for improved clarity.\n- Removed the redundant `skill-card.md` file.\n\nv1.0.0 | 2026-05-28T01:33:01.920Z | auto\n\nsmyx-rehab-motivation-encouragement-analysis v1.0.0\n\n- Initial release of an AI-powered skill for detecting frustration and giving-up tendencies in rehab patients via fixed camera video (and optional audio) analysis.\n- Identifies behaviors such as sighing, training interruption, head-down silence, sluggish/perfunctory movements, and long-term lack of progress.\n- Triggers a four-level personalized motivational intervention: gentle audio encouragement, progress-comparison display, therapist app notifications, and urgent push for therapist/family intervention if severe.\n- Provides real-time monitoring and prompt positive reinforcement to reduce rehab discontinuation and support adherence.\n- Includes robust privacy/authorization and open-id control, with strict cloud-based historical report retrieval protocols.\n\nArchive index:\n\nArchive v1.0.12: 31 files, 43648 bytes\n\nFiles: references/api_doc.md (5034b), scripts/__init__.py (76b), scripts/config.py (696b), scripts/config.yaml (3b), scripts/skill.py (586b), scripts/smyx_rehab_motivation_encouragement_analysis.py (3751b), skill-card.md (2015b), SKILL.md (17104b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (164b)\n\nFile v1.0.12:SKILL.md\n\n---\nname: \"smyx-rehab-motivation-encouragement-analysis\"\ndescription: \"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。\"\nversion: \"1.0.17\"\nlicense: \"MIT-0\"\n---\n\n# 💪 Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **康复患者沮丧/放弃倾向激励** |\n| 🎯 核心目标 | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` |\n\nThrough fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or perfunctory movements (joint range of motion noticeably smaller than the early training phase), and long-term lack of progress (stagnation or decline of the same training item over consecutive days). When such behaviors are detected, the system automatically plays personalized encouragement audio (e.g. 'You are doing great, one more set!') and at the same time shows progress-comparison data against yesterday (or the most recent session) via screen or voice (e.g. 'You did 2 more leg lifts today than yesterday'). This skill aims to improve patient motivation and adherence and reduce frustration-induced rehab discontinuation. Application scenarios: physical therapy rehabilitation centers, home rehab areas, occupational therapy rooms. The system monitors in real time and provides positive reinforcement promptly when the patient shows giving-up tendency. Skill features: rehab coaches cannot accompany patients 24 hours a day; standard rehab equipment lacks emotional motivation; this skill leverages AI vision (and optional audio) to actively identify frustration and provide personalized motivation, filling the gap in intelligent rehab psychological support.\n\n通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。当检测到上述行为时，系统自动播放个性化鼓励语音（如'您已经很棒了，再坚持一次！'），并同时通过屏幕或语音展示与昨日（或最近一次）的进步对比数据（如'您今天比昨天多做 2 次抬腿'）。该技能旨在提升康复患者的积极性和依从性，减少因沮丧导致的康复中断。应用场景：物理治疗康复中心、家庭康复区、作业治疗室。系统实时监测，在患者出现放弃倾向时及时给予正向激励。技能特点：康复教练不可 24 小时陪伴；普通康复设备无情绪激励；本技能利用 AI 视觉（及可选音频）主动识别沮丧情绪并提供个性化激励，填补智能康复心理支持空白。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的康复心理支持 AI。你的任务是分析康复训练区域固定摄像头（可选麦克风）的实时音视频，检测患者沮丧或放弃倾向行为：叹气（胸腹快速隆起-收缩伴呼气节律）、中断训练（预设训练时段内提前停止动作）、低头不语（头部低垂 + 面部无表情交流 + 言语沉默）、动作迟缓或敷衍（关节活动幅度比训练初期显著缩小、节律乱、速度慢）、连续多日无进展（当日 vs 近 3 日训练完成度趋势）。综合评估沮丧等级，按 4 级激励策略递进：Level 1 智能音箱温和鼓励语 → Level 2 屏幕/语音展示进步对比数据（基于真实历史记录） → Level 3 康复师 APP 提醒介入 → Level 4 紧急推送康复师 + 家属并建议切换轻松项目/休息。3 分钟未改善自动升级。激励语必须个性化、具体、肯定（基于真实进步数据），禁用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型话术。严禁伪造或夸大进步数据，严禁 AI 克隆家属/康复师声音，严禁越权调整训练强度。不提供任何医疗诊断，仅输出基于视觉的行为评估和激励建议。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于康复训练区域（康复中心 / 作业治疗室 / 家庭康复区）固定摄像头（**可选麦克风**）训练时段音视频，识别 7 类场景（rehab_motivation_none / mild / sigh_cluster / interrupt / perfunctory / no_progress / strong）→ 视频核心 7 项（叹气事件 / 中断训练 / 低头不语持续时间 / 眼神接触回避评分 / 关节 ROM 收缩比 / 动作敷衍评分 / 面部沮丧评分）+ 音频可选 3 项（叹气声 / 消极自言自语 / 累计沉默时长）+ 进展信号 3 项（今日 vs 昨日完成度差值 / 近 3 日趋势 / 连续无进展天数）→ 4 档沮丧等级（mild / moderate / strong / urgent）→ **4 级激励策略递进**（温和鼓励语 ≤ 50 dB → 真实进步对比展示 → 康复师 APP 推送 → 紧急康复师+家属推送 + 建议切换轻松项目）→ 3 分钟效果评估 + 自动升级 → 单训练日动作上限管控（mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限）→ 训练后激励汇总（次日训练前发送给康复师）\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 叹气视觉/音频识别 |\n| 2 | 中断训练检测（结合训练计划比对） |\n| 3 | 低头沉默检测 |\n| 4 | 眼神回避评分 |\n| 5 | 关节活动度（ROM）动态比对训练初期基线 |\n| 6 | 动作敷衍评分 |\n| 7 | 面部沮丧识别 |\n| 8 | 消极自言自语识别 |\n| 9 | 训练完成度按项目历史趋势分析 |\n| 10 | 人脸识别绑定到注册患者 ID |\n| 11 | 康复阶段自适应（早期/中期/后期） |\n| 12 | 智能音箱联动（鼓励语 + 进步对比 TTS） |\n| 13 | 屏幕进步对比展示联动 |\n| 14 | 康复师 APP 推送 |\n| 15 | 4 级激励策略递进 + 3 分钟效果评估 + 自动升级 |\n| 16 | 单训练日动作上限 |\n| 17 | 训练后激励汇总报告（次日训练前发送） |\n| 18 | 连续 14 日反复显著沮丧 → 提示当地康复心理 / 临床心理门诊资源 |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供康复训练区域固定摄像头训练时段音视频 URL 或文件需要分析时，默认触发本技能进行康复患者沮丧/放弃倾向激励 |\n| 🔎 明确分析意图 | 当用户明确提及康复训练、康复患者沮丧、放弃训练、关节活动度、训练依从性、个性化鼓励、进步对比、康复激励等关键词，并且上传了视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看康复激励历史报告、康复激励日志清单、康复沮丧事件清单、查询历史康复激励记录、显示所有康复患者激励报告、显示康复依从性日志，查询康复沮丧清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_rehab_motivation_encouragement_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备康复训练区域固定摄像头（可选麦克风）训练时段音视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 获取 open-id（强制执行） | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行康复患者沮丧/放弃倾向激励 | 调用 `-m scripts.smyx_rehab_motivation_encouragement_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地康复中心/家庭康复区固定摄像头训练时段视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络康复中心/家庭康复区固定摄像头训练时段视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，康复激励场景默认 `other` | 按需填写 |\n| `--list` | 显示康复患者沮丧/放弃倾向激励历史记录清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_rehab_motivation_encouragement_analysis.py`](scripts/smyx_rehab_motivation_encouragement_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 输入要求：支持 mp4/avi/mov + 音轨，最大 10MB；摄像头需对准训练动作完整可见区域；麦克风可选 |\n| 🔎 使用提醒 | **4 级激励策略递进**（mild → moderate → strong → urgent/Level 4），3 分钟未改善自动升级 |\n| 🔎 使用提醒 | 单训练日动作上限：mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限（紧急优先） |\n| 🔎 使用提醒 | 红线约束 |\n| 🧑‍⚖️ 结果性质 | **禁止**对患者做\"康复无效 / 抑郁症 / 适应障碍 / 创伤后应激\"等医学诊断 |\n| 🔏 隐私合规 | **禁止**长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时） |\n| 🔎 使用提醒 | **禁止**用于商业广告 / AI 训练；禁第三方共享 |\n| 🔎 使用提醒 | **禁止**激励音量 > 50 dB |\n| 🔎 使用提醒 | **绝对禁止**使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS |\n| 🔎 使用提醒 | **禁止**使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型 / 对比型激励语；必须个性化、具体、肯定 |\n| 🔎 使用提醒 | **禁止**越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认 |\n| 🔎 使用提醒 | **绝对禁止**伪造或夸大进步数据；进步对比必须来自真实历史训练记录 |\n| 🔎 使用提醒 | **必须**：连续 14 日反复显著沮丧 → 提示**当地康复心理 / 临床心理门诊**资源 |\n| 📜 报告输出 | **必须**：训练后激励汇总报告**次日训练前发送给康复师**（用于调整训练计划，避免训练中打断节奏） |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史激励记录清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地康复训练视频（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input /path/to/rehab_session.mp4\n\n# 分析网络康复训练视频/实时流（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --url https://example.com/rehab_session.mp4\n\n# 显示历史康复激励记录清单（自动触发关键词：查看康复激励历史报告、康复激励日志清单等）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --output result.json\n```\n\nFile v1.0.12:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-rehab-motivation-encouragement-analysis\",\n  \"version\": \"1.0.12\",\n  \"publishedAt\": 1791019706629\n}\n\nFile v1.0.12:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放康复患者沮丧/放弃倾向激励 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动康复患者沮丧/放弃倾向检测任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取沮丧事件 + 激励动作清单\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史激励记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出康复激励日志报告\n5. （可选）`/web/companion/v2/trigger-soothing-action` - 触发联动激励动作（智能音箱鼓励语 / 屏幕进步对比 / 康复师 APP 推送）\n6. （可选）`/web/rehab/v2/get-historical-progress` - 获取患者历史训练完成度（用于进步对比和长期无进展判定）\n\n## 场景代码\n\n- `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` - 康复患者沮丧/放弃倾向激励\n\n## 输入约束\n\n- 摄像头：康复中心训练区 / 作业治疗室 / 家庭康复区固定摄像头，能完整看到患者上半身和训练动作\n- 帧率 ≥ 15 FPS；分辨率 ≥ 720p；优先正面或 45° 侧前方\n- 音频可选：采样率 ≥ 16kHz（用于叹气声 / 言语沉默 / 自言自语检测）\n- 时段：仅在患者训练时段内启用（默认按训练计划，可配置）\n- 多患者场景按目标跟踪 + 人脸识别绑定到注册患者 ID（每位患者独立基线 + 训练计划）\n- 患者本人必须授权部署，康复机构需公示告知；居家场景需家属或患者本人同意\n- 训练前需录入：训练项目清单、每项预设次数/时长/关节活动度基线、康复阶段（早期/中期/后期）\n\n## 关键观测信号\n\n### 视频（核心）\n- `sigh_event_count` - 叹气事件次数（胸腹快速隆起-收缩伴呼气节律）\n- `training_interrupt_event` - 中断训练事件（未达预设次数/时长前主动停止）\n- `head_down_silent_sec` - 低头不语持续时间（头部低垂 + 无言语交流）\n- `eye_contact_avoidance_score` - 眼神接触回避评分（0-100）\n- `joint_rom_shrink_ratio` - 关节活动范围相对训练初期的收缩比例（如 0.6 表示当前 ROM 仅为基线 60%）\n- `movement_perfunctory_score` - 动作敷衍评分（0-100，速度慢 + 幅度小 + 节律乱）\n- `facial_frustration_score` - 面部沮丧评分（0-100，皱眉 + 嘴角下拉 + 目光呆滞）\n\n### 音频（可选）\n- `sigh_audio_event_count` - 叹气声音事件\n- `negative_self_talk_count` - 消极自言自语次数（\"我做不到 / 没用 / 不练了\"等）\n- `silent_duration_min` - 训练期间累计沉默时长\n\n### 进展信号（基于历史数据）\n- `today_vs_yesterday_delta` - 今日 vs 昨日完成度差值（按训练项目）\n- `recent_3day_trend` - 近 3 日训练完成度趋势（rising / flat / falling）\n- `no_progress_days` - 连续无进展天数\n\n## 场景判定\n\n- `rehab_motivation_none` - 训练状态良好\n- `rehab_motivation_mild` - 轻度沮丧（偶发叹气 + 短暂低头）\n- `rehab_motivation_sigh_cluster` - 短时间内多次叹气\n- `rehab_motivation_interrupt` - 提前中断训练\n- `rehab_motivation_perfunctory` - 动作迟缓敷衍 + ROM 显著缩小\n- `rehab_motivation_no_progress` - 连续 ≥ 3 日同一项目停滞或下降\n- `rehab_motivation_strong` - 显著放弃倾向（多项叠加）\n\n## 4 级激励策略递进\n\n- Level 1（mild）：智能音箱低音量播放温和鼓励语（\"您今天的状态不错，再来一组试试\"）\n- Level 2（sigh_cluster / interrupt）：在 Level 1 基础上，屏幕/语音展示与昨日（或最近一次）的具体进步对比（\"您今天比昨天多做 2 次抬腿\"）\n- Level 3（perfunctory / no_progress）：在 Level 2 基础上向康复师 APP 推送提醒\"患者出现放弃倾向，请关注或介入指导\"\n- Level 4（strong / 持续不缓解 / 出现强烈负向自语）：紧急推送康复师 + 家属，并建议暂停当前训练项目、切换轻松项目或休息\n\n## 单训练日动作上限\n\n- mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限\n\n## 红线约束\n\n- 禁止做\"康复无效 / 抑郁症 / 适应障碍\"等医学诊断\n- 禁止长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时）\n- 禁止用于商业广告 / AI 训练；禁第三方共享\n- 禁止激励音量 > 50 dB\n- 严禁使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS\n- 禁止使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型激励语\n- 激励语必须个性化、具体、肯定（基于真实进步数据），优先采用 SMART 反馈\n- 禁止越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认\n- 进步对比数据必须基于真实历史记录，**禁止伪造或夸大进步数值**\n\nFile v1.0.12:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.12:scripts/config.yaml\n\n{}\n\nFile v1.0.12:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.12:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.12:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.12:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.12:skill-card.md\n\n## Description:\n\nAnalyzes rehabilitation-session video for signs of frustration or disengagement and provides encouragement-oriented reports and progress feedback.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nRehabilitation teams and home-care users can review training-session footage for possible frustration, interrupted exercise, and changes in progress, then receive encouragement suggestions and historical reports. This is not a medical diagnosis or a substitute for clinician judgment.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Sensitive patient video and rehabilitation history are processed through cloud services.\n\nMitigation: Obtain explicit patient or guardian consent and confirm the publisher's data retention and deletion practices before use.\n\nRisk: The skill may silently create or reuse a persistent patient identity when retrieving reports.\n\nMitigation: Confirm identity-binding and account/token handling practices with the publisher before home or clinical deployment.\n\n## Reference(s):\n\n- [Skill API documentation](references/api_doc.md)\n- [ClawHub skill release](https://clawhub.ai/18072937735/skills/smyx-rehab-motivation-encouragement-analysis)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Guidance]\n\n**Output Format:** [Structured analysis text or JSON; Markdown table for historical reports]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include report links, progress comparisons, and encouragement suggestions.]\n\n## Skill Version(s):\n\n1.0.12 (source: server-resolved release; artifact frontmatter says 1.0.17)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.12:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.12:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.11: 31 files, 44071 bytes\n\nFiles: references/api_doc.md (5034b), scripts/__init__.py (76b), scripts/config.py (696b), scripts/config.yaml (3b), scripts/skill.py (586b), scripts/smyx_rehab_motivation_encouragement_analysis.py (3751b), skill-card.md (3076b), SKILL.md (17104b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (164b)\n\nFile v1.0.11:SKILL.md\n\n---\nname: \"smyx-rehab-motivation-encouragement-analysis\"\ndescription: \"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。\"\nversion: \"1.0.16\"\nlicense: \"MIT-0\"\n---\n\n# 💪 Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **康复患者沮丧/放弃倾向激励** |\n| 🎯 核心目标 | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` |\n\nThrough fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or perfunctory movements (joint range of motion noticeably smaller than the early training phase), and long-term lack of progress (stagnation or decline of the same training item over consecutive days). When such behaviors are detected, the system automatically plays personalized encouragement audio (e.g. 'You are doing great, one more set!') and at the same time shows progress-comparison data against yesterday (or the most recent session) via screen or voice (e.g. 'You did 2 more leg lifts today than yesterday'). This skill aims to improve patient motivation and adherence and reduce frustration-induced rehab discontinuation. Application scenarios: physical therapy rehabilitation centers, home rehab areas, occupational therapy rooms. The system monitors in real time and provides positive reinforcement promptly when the patient shows giving-up tendency. Skill features: rehab coaches cannot accompany patients 24 hours a day; standard rehab equipment lacks emotional motivation; this skill leverages AI vision (and optional audio) to actively identify frustration and provide personalized motivation, filling the gap in intelligent rehab psychological support.\n\n通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。当检测到上述行为时，系统自动播放个性化鼓励语音（如'您已经很棒了，再坚持一次！'），并同时通过屏幕或语音展示与昨日（或最近一次）的进步对比数据（如'您今天比昨天多做 2 次抬腿'）。该技能旨在提升康复患者的积极性和依从性，减少因沮丧导致的康复中断。应用场景：物理治疗康复中心、家庭康复区、作业治疗室。系统实时监测，在患者出现放弃倾向时及时给予正向激励。技能特点：康复教练不可 24 小时陪伴；普通康复设备无情绪激励；本技能利用 AI 视觉（及可选音频）主动识别沮丧情绪并提供个性化激励，填补智能康复心理支持空白。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的康复心理支持 AI。你的任务是分析康复训练区域固定摄像头（可选麦克风）的实时音视频，检测患者沮丧或放弃倾向行为：叹气（胸腹快速隆起-收缩伴呼气节律）、中断训练（预设训练时段内提前停止动作）、低头不语（头部低垂 + 面部无表情交流 + 言语沉默）、动作迟缓或敷衍（关节活动幅度比训练初期显著缩小、节律乱、速度慢）、连续多日无进展（当日 vs 近 3 日训练完成度趋势）。综合评估沮丧等级，按 4 级激励策略递进：Level 1 智能音箱温和鼓励语 → Level 2 屏幕/语音展示进步对比数据（基于真实历史记录） → Level 3 康复师 APP 提醒介入 → Level 4 紧急推送康复师 + 家属并建议切换轻松项目/休息。3 分钟未改善自动升级。激励语必须个性化、具体、肯定（基于真实进步数据），禁用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型话术。严禁伪造或夸大进步数据，严禁 AI 克隆家属/康复师声音，严禁越权调整训练强度。不提供任何医疗诊断，仅输出基于视觉的行为评估和激励建议。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于康复训练区域（康复中心 / 作业治疗室 / 家庭康复区）固定摄像头（**可选麦克风**）训练时段音视频，识别 7 类场景（rehab_motivation_none / mild / sigh_cluster / interrupt / perfunctory / no_progress / strong）→ 视频核心 7 项（叹气事件 / 中断训练 / 低头不语持续时间 / 眼神接触回避评分 / 关节 ROM 收缩比 / 动作敷衍评分 / 面部沮丧评分）+ 音频可选 3 项（叹气声 / 消极自言自语 / 累计沉默时长）+ 进展信号 3 项（今日 vs 昨日完成度差值 / 近 3 日趋势 / 连续无进展天数）→ 4 档沮丧等级（mild / moderate / strong / urgent）→ **4 级激励策略递进**（温和鼓励语 ≤ 50 dB → 真实进步对比展示 → 康复师 APP 推送 → 紧急康复师+家属推送 + 建议切换轻松项目）→ 3 分钟效果评估 + 自动升级 → 单训练日动作上限管控（mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限）→ 训练后激励汇总（次日训练前发送给康复师）\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 叹气视觉/音频识别 |\n| 2 | 中断训练检测（结合训练计划比对） |\n| 3 | 低头沉默检测 |\n| 4 | 眼神回避评分 |\n| 5 | 关节活动度（ROM）动态比对训练初期基线 |\n| 6 | 动作敷衍评分 |\n| 7 | 面部沮丧识别 |\n| 8 | 消极自言自语识别 |\n| 9 | 训练完成度按项目历史趋势分析 |\n| 10 | 人脸识别绑定到注册患者 ID |\n| 11 | 康复阶段自适应（早期/中期/后期） |\n| 12 | 智能音箱联动（鼓励语 + 进步对比 TTS） |\n| 13 | 屏幕进步对比展示联动 |\n| 14 | 康复师 APP 推送 |\n| 15 | 4 级激励策略递进 + 3 分钟效果评估 + 自动升级 |\n| 16 | 单训练日动作上限 |\n| 17 | 训练后激励汇总报告（次日训练前发送） |\n| 18 | 连续 14 日反复显著沮丧 → 提示当地康复心理 / 临床心理门诊资源 |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供康复训练区域固定摄像头训练时段音视频 URL 或文件需要分析时，默认触发本技能进行康复患者沮丧/放弃倾向激励 |\n| 🔎 明确分析意图 | 当用户明确提及康复训练、康复患者沮丧、放弃训练、关节活动度、训练依从性、个性化鼓励、进步对比、康复激励等关键词，并且上传了视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看康复激励历史报告、康复激励日志清单、康复沮丧事件清单、查询历史康复激励记录、显示所有康复患者激励报告、显示康复依从性日志，查询康复沮丧清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_rehab_motivation_encouragement_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备康复训练区域固定摄像头（可选麦克风）训练时段音视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 获取 open-id（强制执行） | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行康复患者沮丧/放弃倾向激励 | 调用 `-m scripts.smyx_rehab_motivation_encouragement_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地康复中心/家庭康复区固定摄像头训练时段视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络康复中心/家庭康复区固定摄像头训练时段视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，康复激励场景默认 `other` | 按需填写 |\n| `--list` | 显示康复患者沮丧/放弃倾向激励历史记录清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_rehab_motivation_encouragement_analysis.py`](scripts/smyx_rehab_motivation_encouragement_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 输入要求：支持 mp4/avi/mov + 音轨，最大 10MB；摄像头需对准训练动作完整可见区域；麦克风可选 |\n| 🔎 使用提醒 | **4 级激励策略递进**（mild → moderate → strong → urgent/Level 4），3 分钟未改善自动升级 |\n| 🔎 使用提醒 | 单训练日动作上限：mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限（紧急优先） |\n| 🔎 使用提醒 | 红线约束 |\n| 🧑‍⚖️ 结果性质 | **禁止**对患者做\"康复无效 / 抑郁症 / 适应障碍 / 创伤后应激\"等医学诊断 |\n| 🔏 隐私合规 | **禁止**长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时） |\n| 🔎 使用提醒 | **禁止**用于商业广告 / AI 训练；禁第三方共享 |\n| 🔎 使用提醒 | **禁止**激励音量 > 50 dB |\n| 🔎 使用提醒 | **绝对禁止**使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS |\n| 🔎 使用提醒 | **禁止**使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型 / 对比型激励语；必须个性化、具体、肯定 |\n| 🔎 使用提醒 | **禁止**越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认 |\n| 🔎 使用提醒 | **绝对禁止**伪造或夸大进步数据；进步对比必须来自真实历史训练记录 |\n| 🔎 使用提醒 | **必须**：连续 14 日反复显著沮丧 → 提示**当地康复心理 / 临床心理门诊**资源 |\n| 📜 报告输出 | **必须**：训练后激励汇总报告**次日训练前发送给康复师**（用于调整训练计划，避免训练中打断节奏） |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史激励记录清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地康复训练视频（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input /path/to/rehab_session.mp4\n\n# 分析网络康复训练视频/实时流（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --url https://example.com/rehab_session.mp4\n\n# 显示历史康复激励记录清单（自动触发关键词：查看康复激励历史报告、康复激励日志清单等）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --output result.json\n```\n\nFile v1.0.11:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-rehab-motivation-encouragement-analysis\",\n  \"version\": \"1.0.11\",\n  \"publishedAt\": 1790059412890\n}\n\nFile v1.0.11:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放康复患者沮丧/放弃倾向激励 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动康复患者沮丧/放弃倾向检测任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取沮丧事件 + 激励动作清单\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史激励记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出康复激励日志报告\n5. （可选）`/web/companion/v2/trigger-soothing-action` - 触发联动激励动作（智能音箱鼓励语 / 屏幕进步对比 / 康复师 APP 推送）\n6. （可选）`/web/rehab/v2/get-historical-progress` - 获取患者历史训练完成度（用于进步对比和长期无进展判定）\n\n## 场景代码\n\n- `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` - 康复患者沮丧/放弃倾向激励\n\n## 输入约束\n\n- 摄像头：康复中心训练区 / 作业治疗室 / 家庭康复区固定摄像头，能完整看到患者上半身和训练动作\n- 帧率 ≥ 15 FPS；分辨率 ≥ 720p；优先正面或 45° 侧前方\n- 音频可选：采样率 ≥ 16kHz（用于叹气声 / 言语沉默 / 自言自语检测）\n- 时段：仅在患者训练时段内启用（默认按训练计划，可配置）\n- 多患者场景按目标跟踪 + 人脸识别绑定到注册患者 ID（每位患者独立基线 + 训练计划）\n- 患者本人必须授权部署，康复机构需公示告知；居家场景需家属或患者本人同意\n- 训练前需录入：训练项目清单、每项预设次数/时长/关节活动度基线、康复阶段（早期/中期/后期）\n\n## 关键观测信号\n\n### 视频（核心）\n- `sigh_event_count` - 叹气事件次数（胸腹快速隆起-收缩伴呼气节律）\n- `training_interrupt_event` - 中断训练事件（未达预设次数/时长前主动停止）\n- `head_down_silent_sec` - 低头不语持续时间（头部低垂 + 无言语交流）\n- `eye_contact_avoidance_score` - 眼神接触回避评分（0-100）\n- `joint_rom_shrink_ratio` - 关节活动范围相对训练初期的收缩比例（如 0.6 表示当前 ROM 仅为基线 60%）\n- `movement_perfunctory_score` - 动作敷衍评分（0-100，速度慢 + 幅度小 + 节律乱）\n- `facial_frustration_score` - 面部沮丧评分（0-100，皱眉 + 嘴角下拉 + 目光呆滞）\n\n### 音频（可选）\n- `sigh_audio_event_count` - 叹气声音事件\n- `negative_self_talk_count` - 消极自言自语次数（\"我做不到 / 没用 / 不练了\"等）\n- `silent_duration_min` - 训练期间累计沉默时长\n\n### 进展信号（基于历史数据）\n- `today_vs_yesterday_delta` - 今日 vs 昨日完成度差值（按训练项目）\n- `recent_3day_trend` - 近 3 日训练完成度趋势（rising / flat / falling）\n- `no_progress_days` - 连续无进展天数\n\n## 场景判定\n\n- `rehab_motivation_none` - 训练状态良好\n- `rehab_motivation_mild` - 轻度沮丧（偶发叹气 + 短暂低头）\n- `rehab_motivation_sigh_cluster` - 短时间内多次叹气\n- `rehab_motivation_interrupt` - 提前中断训练\n- `rehab_motivation_perfunctory` - 动作迟缓敷衍 + ROM 显著缩小\n- `rehab_motivation_no_progress` - 连续 ≥ 3 日同一项目停滞或下降\n- `rehab_motivation_strong` - 显著放弃倾向（多项叠加）\n\n## 4 级激励策略递进\n\n- Level 1（mild）：智能音箱低音量播放温和鼓励语（\"您今天的状态不错，再来一组试试\"）\n- Level 2（sigh_cluster / interrupt）：在 Level 1 基础上，屏幕/语音展示与昨日（或最近一次）的具体进步对比（\"您今天比昨天多做 2 次抬腿\"）\n- Level 3（perfunctory / no_progress）：在 Level 2 基础上向康复师 APP 推送提醒\"患者出现放弃倾向，请关注或介入指导\"\n- Level 4（strong / 持续不缓解 / 出现强烈负向自语）：紧急推送康复师 + 家属，并建议暂停当前训练项目、切换轻松项目或休息\n\n## 单训练日动作上限\n\n- mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限\n\n## 红线约束\n\n- 禁止做\"康复无效 / 抑郁症 / 适应障碍\"等医学诊断\n- 禁止长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时）\n- 禁止用于商业广告 / AI 训练；禁第三方共享\n- 禁止激励音量 > 50 dB\n- 严禁使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS\n- 禁止使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型激励语\n- 激励语必须个性化、具体、肯定（基于真实进步数据），优先采用 SMART 反馈\n- 禁止越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认\n- 进步对比数据必须基于真实历史记录，**禁止伪造或夸大进步数值**\n\nFile v1.0.11:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.11:scripts/config.yaml\n\n{}\n\nFile v1.0.11:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.11:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.11:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.11:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.11:skill-card.md\n\n## Description:\n\nAnalyzes rehabilitation training video, with optional audio, to detect patient frustration or giving-up behaviors and produce structured motivation guidance, escalation signals, and report links.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users and care-support teams use this skill to analyze rehabilitation session media for frustration, training interruption, low engagement, and lack-of-progress signals, then generate structured encouragement and escalation guidance. It is intended to support motivation workflows, not to diagnose medical or psychological conditions.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Sensitive rehabilitation video, optional audio, and history records may be processed by cloud services.\n\nMitigation: Use only with explicit patient or guardian and institution authorization, and confirm endpoint, retention, and access-control policies before processing real patient media.\n\nRisk: The skill links analysis to patient identity-like open IDs and may store tokens or default user records in the workspace data directory.\n\nMitigation: Run in a controlled workspace, restrict access to the data directory, and review or clear local identity and token storage according to the deployment policy.\n\nRisk: Motivation or escalation output could be misread as medical or psychological diagnosis.\n\nMitigation: Present results as behavioral support signals only, require clinician review for care decisions, and avoid diagnostic labels or unauthorized training-plan changes.\n\nRisk: Encouragement actions or progress comparisons could pressure patients or rely on inaccurate history data.\n\nMitigation: Use only verified historical progress data, keep encouragement specific and non-comparative, and require human oversight for escalation to caregivers or family.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-rehab-motivation-encouragement-analysis)\n- [Skill demo](https://lifeemergence.com/sample.html)\n- [API documentation](artifact/references/api_doc.md)\n- [Shared analysis API documentation](artifact/skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, JSON, Shell commands, Guidance]\n\n**Output Format:** [Markdown or JSON structured analysis report with report links; Markdown table output for history listings.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May call cloud APIs, upload local media or pass media URLs, poll for results, and optionally write output to a file.]\n\n## Skill Version(s):\n\n1.0.11 (source: server release metadata; artifact frontmatter reports 1.0.16)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.11:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.11:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.10: 31 files, 44118 bytes\n\nFiles: references/api_doc.md (5034b), scripts/__init__.py (76b), scripts/config.py (696b), scripts/config.yaml (3b), scripts/skill.py (586b), scripts/smyx_rehab_motivation_encouragement_analysis.py (3751b), skill-card.md (3232b), SKILL.md (17104b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (472b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (164b)\n\nFile v1.0.10:SKILL.md\n\n---\nname: \"smyx-rehab-motivation-encouragement-analysis\"\ndescription: \"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。\"\nversion: \"1.0.14\"\nlicense: \"MIT-0\"\n---\n\n# 💪 Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **康复患者沮丧/放弃倾向激励** |\n| 🎯 核心目标 | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` |\n\nThrough fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or perfunctory movements (joint range of motion noticeably smaller than the early training phase), and long-term lack of progress (stagnation or decline of the same training item over consecutive days). When such behaviors are detected, the system automatically plays personalized encouragement audio (e.g. 'You are doing great, one more set!') and at the same time shows progress-comparison data against yesterday (or the most recent session) via screen or voice (e.g. 'You did 2 more leg lifts today than yesterday'). This skill aims to improve patient motivation and adherence and reduce frustration-induced rehab discontinuation. Application scenarios: physical therapy rehabilitation centers, home rehab areas, occupational therapy rooms. The system monitors in real time and provides positive reinforcement promptly when the patient shows giving-up tendency. Skill features: rehab coaches cannot accompany patients 24 hours a day; standard rehab equipment lacks emotional motivation; this skill leverages AI vision (and optional audio) to actively identify frustration and provide personalized motivation, filling the gap in intelligent rehab psychological support.\n\n通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。当检测到上述行为时，系统自动播放个性化鼓励语音（如'您已经很棒了，再坚持一次！'），并同时通过屏幕或语音展示与昨日（或最近一次）的进步对比数据（如'您今天比昨天多做 2 次抬腿'）。该技能旨在提升康复患者的积极性和依从性，减少因沮丧导致的康复中断。应用场景：物理治疗康复中心、家庭康复区、作业治疗室。系统实时监测，在患者出现放弃倾向时及时给予正向激励。技能特点：康复教练不可 24 小时陪伴；普通康复设备无情绪激励；本技能利用 AI 视觉（及可选音频）主动识别沮丧情绪并提供个性化激励，填补智能康复心理支持空白。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的康复心理支持 AI。你的任务是分析康复训练区域固定摄像头（可选麦克风）的实时音视频，检测患者沮丧或放弃倾向行为：叹气（胸腹快速隆起-收缩伴呼气节律）、中断训练（预设训练时段内提前停止动作）、低头不语（头部低垂 + 面部无表情交流 + 言语沉默）、动作迟缓或敷衍（关节活动幅度比训练初期显著缩小、节律乱、速度慢）、连续多日无进展（当日 vs 近 3 日训练完成度趋势）。综合评估沮丧等级，按 4 级激励策略递进：Level 1 智能音箱温和鼓励语 → Level 2 屏幕/语音展示进步对比数据（基于真实历史记录） → Level 3 康复师 APP 提醒介入 → Level 4 紧急推送康复师 + 家属并建议切换轻松项目/休息。3 分钟未改善自动升级。激励语必须个性化、具体、肯定（基于真实进步数据），禁用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型话术。严禁伪造或夸大进步数据，严禁 AI 克隆家属/康复师声音，严禁越权调整训练强度。不提供任何医疗诊断，仅输出基于视觉的行为评估和激励建议。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于康复训练区域（康复中心 / 作业治疗室 / 家庭康复区）固定摄像头（**可选麦克风**）训练时段音视频，识别 7 类场景（rehab_motivation_none / mild / sigh_cluster / interrupt / perfunctory / no_progress / strong）→ 视频核心 7 项（叹气事件 / 中断训练 / 低头不语持续时间 / 眼神接触回避评分 / 关节 ROM 收缩比 / 动作敷衍评分 / 面部沮丧评分）+ 音频可选 3 项（叹气声 / 消极自言自语 / 累计沉默时长）+ 进展信号 3 项（今日 vs 昨日完成度差值 / 近 3 日趋势 / 连续无进展天数）→ 4 档沮丧等级（mild / moderate / strong / urgent）→ **4 级激励策略递进**（温和鼓励语 ≤ 50 dB → 真实进步对比展示 → 康复师 APP 推送 → 紧急康复师+家属推送 + 建议切换轻松项目）→ 3 分钟效果评估 + 自动升级 → 单训练日动作上限管控（mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限）→ 训练后激励汇总（次日训练前发送给康复师）\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 叹气视觉/音频识别 |\n| 2 | 中断训练检测（结合训练计划比对） |\n| 3 | 低头沉默检测 |\n| 4 | 眼神回避评分 |\n| 5 | 关节活动度（ROM）动态比对训练初期基线 |\n| 6 | 动作敷衍评分 |\n| 7 | 面部沮丧识别 |\n| 8 | 消极自言自语识别 |\n| 9 | 训练完成度按项目历史趋势分析 |\n| 10 | 人脸识别绑定到注册患者 ID |\n| 11 | 康复阶段自适应（早期/中期/后期） |\n| 12 | 智能音箱联动（鼓励语 + 进步对比 TTS） |\n| 13 | 屏幕进步对比展示联动 |\n| 14 | 康复师 APP 推送 |\n| 15 | 4 级激励策略递进 + 3 分钟效果评估 + 自动升级 |\n| 16 | 单训练日动作上限 |\n| 17 | 训练后激励汇总报告（次日训练前发送） |\n| 18 | 连续 14 日反复显著沮丧 → 提示当地康复心理 / 临床心理门诊资源 |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供康复训练区域固定摄像头训练时段音视频 URL 或文件需要分析时，默认触发本技能进行康复患者沮丧/放弃倾向激励 |\n| 🔎 明确分析意图 | 当用户明确提及康复训练、康复患者沮丧、放弃训练、关节活动度、训练依从性、个性化鼓励、进步对比、康复激励等关键词，并且上传了视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看康复激励历史报告、康复激励日志清单、康复沮丧事件清单、查询历史康复激励记录、显示所有康复患者激励报告、显示康复依从性日志，查询康复沮丧清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_rehab_motivation_encouragement_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备康复训练区域固定摄像头（可选麦克风）训练时段音视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 获取 open-id（强制执行） | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行康复患者沮丧/放弃倾向激励 | 调用 `-m scripts.smyx_rehab_motivation_encouragement_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地康复中心/家庭康复区固定摄像头训练时段视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络康复中心/家庭康复区固定摄像头训练时段视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，康复激励场景默认 `other` | 按需填写 |\n| `--list` | 显示康复患者沮丧/放弃倾向激励历史记录清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_rehab_motivation_encouragement_analysis.py`](scripts/smyx_rehab_motivation_encouragement_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 输入要求：支持 mp4/avi/mov + 音轨，最大 10MB；摄像头需对准训练动作完整可见区域；麦克风可选 |\n| 🔎 使用提醒 | **4 级激励策略递进**（mild → moderate → strong → urgent/Level 4），3 分钟未改善自动升级 |\n| 🔎 使用提醒 | 单训练日动作上限：mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限（紧急优先） |\n| 🔎 使用提醒 | 红线约束 |\n| 🧑‍⚖️ 结果性质 | **禁止**对患者做\"康复无效 / 抑郁症 / 适应障碍 / 创伤后应激\"等医学诊断 |\n| 🔏 隐私合规 | **禁止**长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时） |\n| 🔎 使用提醒 | **禁止**用于商业广告 / AI 训练；禁第三方共享 |\n| 🔎 使用提醒 | **禁止**激励音量 > 50 dB |\n| 🔎 使用提醒 | **绝对禁止**使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS |\n| 🔎 使用提醒 | **禁止**使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型 / 对比型激励语；必须个性化、具体、肯定 |\n| 🔎 使用提醒 | **禁止**越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认 |\n| 🔎 使用提醒 | **绝对禁止**伪造或夸大进步数据；进步对比必须来自真实历史训练记录 |\n| 🔎 使用提醒 | **必须**：连续 14 日反复显著沮丧 → 提示**当地康复心理 / 临床心理门诊**资源 |\n| 📜 报告输出 | **必须**：训练后激励汇总报告**次日训练前发送给康复师**（用于调整训练计划，避免训练中打断节奏） |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史激励记录清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地康复训练视频（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input /path/to/rehab_session.mp4\n\n# 分析网络康复训练视频/实时流（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --url https://example.com/rehab_session.mp4\n\n# 显示历史康复激励记录清单（自动触发关键词：查看康复激励历史报告、康复激励日志清单等）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --output result.json\n```\n\nFile v1.0.10:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-rehab-motivation-encouragement-analysis\",\n  \"version\": \"1.0.10\",\n  \"publishedAt\": 1789334908335\n}\n\nFile v1.0.10:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放康复患者沮丧/放弃倾向激励 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动康复患者沮丧/放弃倾向检测任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取沮丧事件 + 激励动作清单\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史激励记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出康复激励日志报告\n5. （可选）`/web/companion/v2/trigger-soothing-action` - 触发联动激励动作（智能音箱鼓励语 / 屏幕进步对比 / 康复师 APP 推送）\n6. （可选）`/web/rehab/v2/get-historical-progress` - 获取患者历史训练完成度（用于进步对比和长期无进展判定）\n\n## 场景代码\n\n- `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` - 康复患者沮丧/放弃倾向激励\n\n## 输入约束\n\n- 摄像头：康复中心训练区 / 作业治疗室 / 家庭康复区固定摄像头，能完整看到患者上半身和训练动作\n- 帧率 ≥ 15 FPS；分辨率 ≥ 720p；优先正面或 45° 侧前方\n- 音频可选：采样率 ≥ 16kHz（用于叹气声 / 言语沉默 / 自言自语检测）\n- 时段：仅在患者训练时段内启用（默认按训练计划，可配置）\n- 多患者场景按目标跟踪 + 人脸识别绑定到注册患者 ID（每位患者独立基线 + 训练计划）\n- 患者本人必须授权部署，康复机构需公示告知；居家场景需家属或患者本人同意\n- 训练前需录入：训练项目清单、每项预设次数/时长/关节活动度基线、康复阶段（早期/中期/后期）\n\n## 关键观测信号\n\n### 视频（核心）\n- `sigh_event_count` - 叹气事件次数（胸腹快速隆起-收缩伴呼气节律）\n- `training_interrupt_event` - 中断训练事件（未达预设次数/时长前主动停止）\n- `head_down_silent_sec` - 低头不语持续时间（头部低垂 + 无言语交流）\n- `eye_contact_avoidance_score` - 眼神接触回避评分（0-100）\n- `joint_rom_shrink_ratio` - 关节活动范围相对训练初期的收缩比例（如 0.6 表示当前 ROM 仅为基线 60%）\n- `movement_perfunctory_score` - 动作敷衍评分（0-100，速度慢 + 幅度小 + 节律乱）\n- `facial_frustration_score` - 面部沮丧评分（0-100，皱眉 + 嘴角下拉 + 目光呆滞）\n\n### 音频（可选）\n- `sigh_audio_event_count` - 叹气声音事件\n- `negative_self_talk_count` - 消极自言自语次数（\"我做不到 / 没用 / 不练了\"等）\n- `silent_duration_min` - 训练期间累计沉默时长\n\n### 进展信号（基于历史数据）\n- `today_vs_yesterday_delta` - 今日 vs 昨日完成度差值（按训练项目）\n- `recent_3day_trend` - 近 3 日训练完成度趋势（rising / flat / falling）\n- `no_progress_days` - 连续无进展天数\n\n## 场景判定\n\n- `rehab_motivation_none` - 训练状态良好\n- `rehab_motivation_mild` - 轻度沮丧（偶发叹气 + 短暂低头）\n- `rehab_motivation_sigh_cluster` - 短时间内多次叹气\n- `rehab_motivation_interrupt` - 提前中断训练\n- `rehab_motivation_perfunctory` - 动作迟缓敷衍 + ROM 显著缩小\n- `rehab_motivation_no_progress` - 连续 ≥ 3 日同一项目停滞或下降\n- `rehab_motivation_strong` - 显著放弃倾向（多项叠加）\n\n## 4 级激励策略递进\n\n- Level 1（mild）：智能音箱低音量播放温和鼓励语（\"您今天的状态不错，再来一组试试\"）\n- Level 2（sigh_cluster / interrupt）：在 Level 1 基础上，屏幕/语音展示与昨日（或最近一次）的具体进步对比（\"您今天比昨天多做 2 次抬腿\"）\n- Level 3（perfunctory / no_progress）：在 Level 2 基础上向康复师 APP 推送提醒\"患者出现放弃倾向，请关注或介入指导\"\n- Level 4（strong / 持续不缓解 / 出现强烈负向自语）：紧急推送康复师 + 家属，并建议暂停当前训练项目、切换轻松项目或休息\n\n## 单训练日动作上限\n\n- mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限\n\n## 红线约束\n\n- 禁止做\"康复无效 / 抑郁症 / 适应障碍\"等医学诊断\n- 禁止长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时）\n- 禁止用于商业广告 / AI 训练；禁第三方共享\n- 禁止激励音量 > 50 dB\n- 严禁使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS\n- 禁止使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型激励语\n- 激励语必须个性化、具体、肯定（基于真实进步数据），优先采用 SMART 反馈\n- 禁止越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认\n- 进步对比数据必须基于真实历史记录，**禁止伪造或夸大进步数值**\n\nFile v1.0.10:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.10:scripts/config.yaml\n\n{}\n\nFile v1.0.10:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.10:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.10:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.10:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: dev\n\nFile v1.0.10:skill-card.md\n\n## Description:\n\nAnalyzes rehabilitation-session video, with optional audio, to identify frustration or giving-up indicators and return structured encouragement, escalation, and reporting guidance.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal care teams, rehabilitation centers, and home-rehab operators use this skill to review fixed-camera training sessions for signs such as sighing, interruption, head-down silence, reduced range of motion, and lack of progress, then receive structured motivation and escalation recommendations. It also supports cloud-backed history queries for prior rehabilitation motivation reports.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill handles sensitive patient rehabilitation media and cloud-hosted analysis results.\n\nMitigation: Confirm the deployment is approved for patient media, obtain consent for uploads and history queries, document who receives therapist or family alerts, and avoid using the skill where those governance controls are absent.\n\nRisk: The security review flags plaintext HTTP development endpoints.\n\nMitigation: Require HTTPS-only production endpoints before operational use and verify configured endpoints during release review.\n\nRisk: The security review flags automatic identity persistence and token storage.\n\nMitigation: Do not deploy until automatic identity creation and token storage are fixed or explicitly governed by the operator's access-control and retention policy.\n\nRisk: The security review flags a dependency typo that could affect installation or supply-chain review.\n\nMitigation: Correct and verify dependency declarations before installation or production approval.\n\nRisk: Generated encouragement or escalation guidance could be mistaken for clinical diagnosis or unauthorized treatment adjustment.\n\nMitigation: Use outputs as behavioral support guidance only; require qualified rehabilitation staff to confirm training changes and avoid medical diagnosis claims.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-rehab-motivation-encouragement-analysis)\n- [API interface documentation](artifact/references/api_doc.md)\n- [Generic analysis API documentation](artifact/skills/smyx_analysis/references/api_doc.md)\n- [Skill demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance]\n\n**Output Format:** [Markdown text with structured JSON report content and report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include cloud API analysis results, historical report listings, motivation recommendations, escalation suggestions, and exported report image links.]\n\n## Skill Version(s):\n\n1.0.10 (source: server release metadata; artifact frontmatter states 1.0.14)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.10:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.10:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.9: 31 files, 44067 bytes\n\nFiles: references/api_doc.md (5034b), scripts/__init__.py (76b), scripts/config.py (696b), scripts/config.yaml (3b), scripts/skill.py (586b), scripts/smyx_rehab_motivation_encouragement_analysis.py (3751b), skill-card.md (3060b), SKILL.md (17104b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (472b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.9:SKILL.md\n\n---\nname: \"smyx-rehab-motivation-encouragement-analysis\"\ndescription: \"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。\"\nversion: \"1.0.11\"\nlicense: \"MIT-0\"\n---\n\n# 💪 Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **康复患者沮丧/放弃倾向激励** |\n| 🎯 核心目标 | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` |\n\nThrough fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or perfunctory movements (joint range of motion noticeably smaller than the early training phase), and long-term lack of progress (stagnation or decline of the same training item over consecutive days). When such behaviors are detected, the system automatically plays personalized encouragement audio (e.g. 'You are doing great, one more set!') and at the same time shows progress-comparison data against yesterday (or the most recent session) via screen or voice (e.g. 'You did 2 more leg lifts today than yesterday'). This skill aims to improve patient motivation and adherence and reduce frustration-induced rehab discontinuation. Application scenarios: physical therapy rehabilitation centers, home rehab areas, occupational therapy rooms. The system monitors in real time and provides positive reinforcement promptly when the patient shows giving-up tendency. Skill features: rehab coaches cannot accompany patients 24 hours a day; standard rehab equipment lacks emotional motivation; this skill leverages AI vision (and optional audio) to actively identify frustration and provide personalized motivation, filling the gap in intelligent rehab psychological support.\n\n通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。当检测到上述行为时，系统自动播放个性化鼓励语音（如'您已经很棒了，再坚持一次！'），并同时通过屏幕或语音展示与昨日（或最近一次）的进步对比数据（如'您今天比昨天多做 2 次抬腿'）。该技能旨在提升康复患者的积极性和依从性，减少因沮丧导致的康复中断。应用场景：物理治疗康复中心、家庭康复区、作业治疗室。系统实时监测，在患者出现放弃倾向时及时给予正向激励。技能特点：康复教练不可 24 小时陪伴；普通康复设备无情绪激励；本技能利用 AI 视觉（及可选音频）主动识别沮丧情绪并提供个性化激励，填补智能康复心理支持空白。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的康复心理支持 AI。你的任务是分析康复训练区域固定摄像头（可选麦克风）的实时音视频，检测患者沮丧或放弃倾向行为：叹气（胸腹快速隆起-收缩伴呼气节律）、中断训练（预设训练时段内提前停止动作）、低头不语（头部低垂 + 面部无表情交流 + 言语沉默）、动作迟缓或敷衍（关节活动幅度比训练初期显著缩小、节律乱、速度慢）、连续多日无进展（当日 vs 近 3 日训练完成度趋势）。综合评估沮丧等级，按 4 级激励策略递进：Level 1 智能音箱温和鼓励语 → Level 2 屏幕/语音展示进步对比数据（基于真实历史记录） → Level 3 康复师 APP 提醒介入 → Level 4 紧急推送康复师 + 家属并建议切换轻松项目/休息。3 分钟未改善自动升级。激励语必须个性化、具体、肯定（基于真实进步数据），禁用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型话术。严禁伪造或夸大进步数据，严禁 AI 克隆家属/康复师声音，严禁越权调整训练强度。不提供任何医疗诊断，仅输出基于视觉的行为评估和激励建议。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于康复训练区域（康复中心 / 作业治疗室 / 家庭康复区）固定摄像头（**可选麦克风**）训练时段音视频，识别 7 类场景（rehab_motivation_none / mild / sigh_cluster / interrupt / perfunctory / no_progress / strong）→ 视频核心 7 项（叹气事件 / 中断训练 / 低头不语持续时间 / 眼神接触回避评分 / 关节 ROM 收缩比 / 动作敷衍评分 / 面部沮丧评分）+ 音频可选 3 项（叹气声 / 消极自言自语 / 累计沉默时长）+ 进展信号 3 项（今日 vs 昨日完成度差值 / 近 3 日趋势 / 连续无进展天数）→ 4 档沮丧等级（mild / moderate / strong / urgent）→ **4 级激励策略递进**（温和鼓励语 ≤ 50 dB → 真实进步对比展示 → 康复师 APP 推送 → 紧急康复师+家属推送 + 建议切换轻松项目）→ 3 分钟效果评估 + 自动升级 → 单训练日动作上限管控（mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限）→ 训练后激励汇总（次日训练前发送给康复师）\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 叹气视觉/音频识别 |\n| 2 | 中断训练检测（结合训练计划比对） |\n| 3 | 低头沉默检测 |\n| 4 | 眼神回避评分 |\n| 5 | 关节活动度（ROM）动态比对训练初期基线 |\n| 6 | 动作敷衍评分 |\n| 7 | 面部沮丧识别 |\n| 8 | 消极自言自语识别 |\n| 9 | 训练完成度按项目历史趋势分析 |\n| 10 | 人脸识别绑定到注册患者 ID |\n| 11 | 康复阶段自适应（早期/中期/后期） |\n| 12 | 智能音箱联动（鼓励语 + 进步对比 TTS） |\n| 13 | 屏幕进步对比展示联动 |\n| 14 | 康复师 APP 推送 |\n| 15 | 4 级激励策略递进 + 3 分钟效果评估 + 自动升级 |\n| 16 | 单训练日动作上限 |\n| 17 | 训练后激励汇总报告（次日训练前发送） |\n| 18 | 连续 14 日反复显著沮丧 → 提示当地康复心理 / 临床心理门诊资源 |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供康复训练区域固定摄像头训练时段音视频 URL 或文件需要分析时，默认触发本技能进行康复患者沮丧/放弃倾向激励 |\n| 🔎 明确分析意图 | 当用户明确提及康复训练、康复患者沮丧、放弃训练、关节活动度、训练依从性、个性化鼓励、进步对比、康复激励等关键词，并且上传了视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看康复激励历史报告、康复激励日志清单、康复沮丧事件清单、查询历史康复激励记录、显示所有康复患者激励报告、显示康复依从性日志，查询康复沮丧清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_rehab_motivation_encouragement_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备康复训练区域固定摄像头（可选麦克风）训练时段音视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 获取 open-id（强制执行） | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行康复患者沮丧/放弃倾向激励 | 调用 `-m scripts.smyx_rehab_motivation_encouragement_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地康复中心/家庭康复区固定摄像头训练时段视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络康复中心/家庭康复区固定摄像头训练时段视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，康复激励场景默认 `other` | 按需填写 |\n| `--list` | 显示康复患者沮丧/放弃倾向激励历史记录清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_rehab_motivation_encouragement_analysis.py`](scripts/smyx_rehab_motivation_encouragement_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 输入要求：支持 mp4/avi/mov + 音轨，最大 10MB；摄像头需对准训练动作完整可见区域；麦克风可选 |\n| 🔎 使用提醒 | **4 级激励策略递进**（mild → moderate → strong → urgent/Level 4），3 分钟未改善自动升级 |\n| 🔎 使用提醒 | 单训练日动作上限：mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限（紧急优先） |\n| 🔎 使用提醒 | 红线约束 |\n| 🧑‍⚖️ 结果性质 | **禁止**对患者做\"康复无效 / 抑郁症 / 适应障碍 / 创伤后应激\"等医学诊断 |\n| 🔏 隐私合规 | **禁止**长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时） |\n| 🔎 使用提醒 | **禁止**用于商业广告 / AI 训练；禁第三方共享 |\n| 🔎 使用提醒 | **禁止**激励音量 > 50 dB |\n| 🔎 使用提醒 | **绝对禁止**使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS |\n| 🔎 使用提醒 | **禁止**使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型 / 对比型激励语；必须个性化、具体、肯定 |\n| 🔎 使用提醒 | **禁止**越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认 |\n| 🔎 使用提醒 | **绝对禁止**伪造或夸大进步数据；进步对比必须来自真实历史训练记录 |\n| 🔎 使用提醒 | **必须**：连续 14 日反复显著沮丧 → 提示**当地康复心理 / 临床心理门诊**资源 |\n| 📜 报告输出 | **必须**：训练后激励汇总报告**次日训练前发送给康复师**（用于调整训练计划，避免训练中打断节奏） |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史激励记录清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地康复训练视频（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input /path/to/rehab_session.mp4\n\n# 分析网络康复训练视频/实时流（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --url https://example.com/rehab_session.mp4\n\n# 显示历史康复激励记录清单（自动触发关键词：查看康复激励历史报告、康复激励日志清单等）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --output result.json\n```\n\nFile v1.0.9:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-rehab-motivation-encouragement-analysis\",\n  \"version\": \"1.0.9\",\n  \"publishedAt\": 1787803651149\n}\n\nFile v1.0.9:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放康复患者沮丧/放弃倾向激励 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动康复患者沮丧/放弃倾向检测任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取沮丧事件 + 激励动作清单\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史激励记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出康复激励日志报告\n5. （可选）`/web/companion/v2/trigger-soothing-action` - 触发联动激励动作（智能音箱鼓励语 / 屏幕进步对比 / 康复师 APP 推送）\n6. （可选）`/web/rehab/v2/get-historical-progress` - 获取患者历史训练完成度（用于进步对比和长期无进展判定）\n\n## 场景代码\n\n- `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` - 康复患者沮丧/放弃倾向激励\n\n## 输入约束\n\n- 摄像头：康复中心训练区 / 作业治疗室 / 家庭康复区固定摄像头，能完整看到患者上半身和训练动作\n- 帧率 ≥ 15 FPS；分辨率 ≥ 720p；优先正面或 45° 侧前方\n- 音频可选：采样率 ≥ 16kHz（用于叹气声 / 言语沉默 / 自言自语检测）\n- 时段：仅在患者训练时段内启用（默认按训练计划，可配置）\n- 多患者场景按目标跟踪 + 人脸识别绑定到注册患者 ID（每位患者独立基线 + 训练计划）\n- 患者本人必须授权部署，康复机构需公示告知；居家场景需家属或患者本人同意\n- 训练前需录入：训练项目清单、每项预设次数/时长/关节活动度基线、康复阶段（早期/中期/后期）\n\n## 关键观测信号\n\n### 视频（核心）\n- `sigh_event_count` - 叹气事件次数（胸腹快速隆起-收缩伴呼气节律）\n- `training_interrupt_event` - 中断训练事件（未达预设次数/时长前主动停止）\n- `head_down_silent_sec` - 低头不语持续时间（头部低垂 + 无言语交流）\n- `eye_contact_avoidance_score` - 眼神接触回避评分（0-100）\n- `joint_rom_shrink_ratio` - 关节活动范围相对训练初期的收缩比例（如 0.6 表示当前 ROM 仅为基线 60%）\n- `movement_perfunctory_score` - 动作敷衍评分（0-100，速度慢 + 幅度小 + 节律乱）\n- `facial_frustration_score` - 面部沮丧评分（0-100，皱眉 + 嘴角下拉 + 目光呆滞）\n\n### 音频（可选）\n- `sigh_audio_event_count` - 叹气声音事件\n- `negative_self_talk_count` - 消极自言自语次数（\"我做不到 / 没用 / 不练了\"等）\n- `silent_duration_min` - 训练期间累计沉默时长\n\n### 进展信号（基于历史数据）\n- `today_vs_yesterday_delta` - 今日 vs 昨日完成度差值（按训练项目）\n- `recent_3day_trend` - 近 3 日训练完成度趋势（rising / flat / falling）\n- `no_progress_days` - 连续无进展天数\n\n## 场景判定\n\n- `rehab_motivation_none` - 训练状态良好\n- `rehab_motivation_mild` - 轻度沮丧（偶发叹气 + 短暂低头）\n- `rehab_motivation_sigh_cluster` - 短时间内多次叹气\n- `rehab_motivation_interrupt` - 提前中断训练\n- `rehab_motivation_perfunctory` - 动作迟缓敷衍 + ROM 显著缩小\n- `rehab_motivation_no_progress` - 连续 ≥ 3 日同一项目停滞或下降\n- `rehab_motivation_strong` - 显著放弃倾向（多项叠加）\n\n## 4 级激励策略递进\n\n- Level 1（mild）：智能音箱低音量播放温和鼓励语（\"您今天的状态不错，再来一组试试\"）\n- Level 2（sigh_cluster / interrupt）：在 Level 1 基础上，屏幕/语音展示与昨日（或最近一次）的具体进步对比（\"您今天比昨天多做 2 次抬腿\"）\n- Level 3（perfunctory / no_progress）：在 Level 2 基础上向康复师 APP 推送提醒\"患者出现放弃倾向，请关注或介入指导\"\n- Level 4（strong / 持续不缓解 / 出现强烈负向自语）：紧急推送康复师 + 家属，并建议暂停当前训练项目、切换轻松项目或休息\n\n## 单训练日动作上限\n\n- mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限\n\n## 红线约束\n\n- 禁止做\"康复无效 / 抑郁症 / 适应障碍\"等医学诊断\n- 禁止长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时）\n- 禁止用于商业广告 / AI 训练；禁第三方共享\n- 禁止激励音量 > 50 dB\n- 严禁使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS\n- 禁止使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型激励语\n- 激励语必须个性化、具体、肯定（基于真实进步数据），优先采用 SMART 反馈\n- 禁止越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认\n- 进步对比数据必须基于真实历史记录，**禁止伪造或夸大进步数值**\n\nFile v1.0.9:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.9:scripts/config.yaml\n\n{}\n\nFile v1.0.9:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.9:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.9:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.9:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: dev\n\nFile v1.0.9:skill-card.md\n\n## Description:\n\nAnalyzes rehabilitation-session video and optional audio to detect frustration or giving-up tendency signals, produce structured findings, and suggest or trigger staged encouragement workflows.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal rehab teams, care organizations, and agent operators can use this skill to analyze rehabilitation training media for frustration, interrupted training, low engagement, stalled progress, and related motivation signals. The skill returns structured reports and guidance intended to support encouragement workflows without making medical diagnoses.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill processes sensitive rehabilitation video, optional audio, biometric identity binding, cloud reports, and retained history.\n\nMitigation: Deploy only in governed rehab settings with explicit patient consent for video/audio analysis, biometric identification, cloud upload, retained history, and report access.\n\nRisk: Configured API endpoints and environment-specific settings can affect where patient media and reports are sent.\n\nMitigation: Review production API endpoints before installation and disable or remove dev/private-network configuration that is not appropriate for the deployment.\n\nRisk: Encouragement workflows may notify therapists or family members and influence patient behavior.\n\nMitigation: Use the skill as behavioral support only, keep therapist oversight in the workflow, and avoid medical diagnosis or unsupervised training-plan changes.\n\nRisk: Progress comparisons or encouragement messages can become misleading if they use inaccurate history or inappropriate wording.\n\nMitigation: Base progress feedback only on verified historical training records, avoid pressure-based comparisons, and use authorized standard TTS or pre-recorded voices rather than cloned voices.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-rehab-motivation-encouragement-analysis)\n- [Rehab motivation API documentation](references/api_doc.md)\n- [Shared analysis API documentation](skills/smyx_analysis/references/api_doc.md)\n- [Skill demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance]\n\n**Output Format:** [Markdown text with structured JSON report content and report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May query cloud history, upload local media, or pass remote media URLs to configured API services.]\n\n## Skill Version(s):\n\n1.0.9 (source: server release evidence; artifact frontmatter reports 1.0.11)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.9:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.9:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.8: 31 files, 43695 bytes\n\nFiles: references/api_doc.md (5034b), scripts/__init__.py (76b), scripts/config.py (696b), scripts/config.yaml (3b), scripts/skill.py (586b), scripts/smyx_rehab_motivation_encouragement_analysis.py (3751b), skill-card.md (2106b), SKILL.md (17104b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (472b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.8:SKILL.md\n\n---\nname: \"smyx-rehab-motivation-encouragement-analysis\"\ndescription: \"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。\"\nversion: \"1.0.11\"\nlicense: \"MIT-0\"\n---\n\n# 💪 Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **康复患者沮丧/放弃倾向激励** |\n| 🎯 核心目标 | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` |\n\nThrough fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or perfunctory movements (joint range of motion noticeably smaller than the early training phase), and long-term lack of progress (stagnation or decline of the same training item over consecutive days). When such behaviors are detected, the system automatically plays personalized encouragement audio (e.g. 'You are doing great, one more set!') and at the same time shows progress-comparison data against yesterday (or the most recent session) via screen or voice (e.g. 'You did 2 more leg lifts today than yesterday'). This skill aims to improve patient motivation and adherence and reduce frustration-induced rehab discontinuation. Application scenarios: physical therapy rehabilitation centers, home rehab areas, occupational therapy rooms. The system monitors in real time and provides positive reinforcement promptly when the patient shows giving-up tendency. Skill features: rehab coaches cannot accompany patients 24 hours a day; standard rehab equipment lacks emotional motivation; this skill leverages AI vision (and optional audio) to actively identify frustration and provide personalized motivation, filling the gap in intelligent rehab psychological support.\n\n通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。当检测到上述行为时，系统自动播放个性化鼓励语音（如'您已经很棒了，再坚持一次！'），并同时通过屏幕或语音展示与昨日（或最近一次）的进步对比数据（如'您今天比昨天多做 2 次抬腿'）。该技能旨在提升康复患者的积极性和依从性，减少因沮丧导致的康复中断。应用场景：物理治疗康复中心、家庭康复区、作业治疗室。系统实时监测，在患者出现放弃倾向时及时给予正向激励。技能特点：康复教练不可 24 小时陪伴；普通康复设备无情绪激励；本技能利用 AI 视觉（及可选音频）主动识别沮丧情绪并提供个性化激励，填补智能康复心理支持空白。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的康复心理支持 AI。你的任务是分析康复训练区域固定摄像头（可选麦克风）的实时音视频，检测患者沮丧或放弃倾向行为：叹气（胸腹快速隆起-收缩伴呼气节律）、中断训练（预设训练时段内提前停止动作）、低头不语（头部低垂 + 面部无表情交流 + 言语沉默）、动作迟缓或敷衍（关节活动幅度比训练初期显著缩小、节律乱、速度慢）、连续多日无进展（当日 vs 近 3 日训练完成度趋势）。综合评估沮丧等级，按 4 级激励策略递进：Level 1 智能音箱温和鼓励语 → Level 2 屏幕/语音展示进步对比数据（基于真实历史记录） → Level 3 康复师 APP 提醒介入 → Level 4 紧急推送康复师 + 家属并建议切换轻松项目/休息。3 分钟未改善自动升级。激励语必须个性化、具体、肯定（基于真实进步数据），禁用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型话术。严禁伪造或夸大进步数据，严禁 AI 克隆家属/康复师声音，严禁越权调整训练强度。不提供任何医疗诊断，仅输出基于视觉的行为评估和激励建议。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于康复训练区域（康复中心 / 作业治疗室 / 家庭康复区）固定摄像头（**可选麦克风**）训练时段音视频，识别 7 类场景（rehab_motivation_none / mild / sigh_cluster / interrupt / perfunctory / no_progress / strong）→ 视频核心 7 项（叹气事件 / 中断训练 / 低头不语持续时间 / 眼神接触回避评分 / 关节 ROM 收缩比 / 动作敷衍评分 / 面部沮丧评分）+ 音频可选 3 项（叹气声 / 消极自言自语 / 累计沉默时长）+ 进展信号 3 项（今日 vs 昨日完成度差值 / 近 3 日趋势 / 连续无进展天数）→ 4 档沮丧等级（mild / moderate / strong / urgent）→ **4 级激励策略递进**（温和鼓励语 ≤ 50 dB → 真实进步对比展示 → 康复师 APP 推送 → 紧急康复师+家属推送 + 建议切换轻松项目）→ 3 分钟效果评估 + 自动升级 → 单训练日动作上限管控（mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限）→ 训练后激励汇总（次日训练前发送给康复师）\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 叹气视觉/音频识别 |\n| 2 | 中断训练检测（结合训练计划比对） |\n| 3 | 低头沉默检测 |\n| 4 | 眼神回避评分 |\n| 5 | 关节活动度（ROM）动态比对训练初期基线 |\n| 6 | 动作敷衍评分 |\n| 7 | 面部沮丧识别 |\n| 8 | 消极自言自语识别 |\n| 9 | 训练完成度按项目历史趋势分析 |\n| 10 | 人脸识别绑定到注册患者 ID |\n| 11 | 康复阶段自适应（早期/中期/后期） |\n| 12 | 智能音箱联动（鼓励语 + 进步对比 TTS） |\n| 13 | 屏幕进步对比展示联动 |\n| 14 | 康复师 APP 推送 |\n| 15 | 4 级激励策略递进 + 3 分钟效果评估 + 自动升级 |\n| 16 | 单训练日动作上限 |\n| 17 | 训练后激励汇总报告（次日训练前发送） |\n| 18 | 连续 14 日反复显著沮丧 → 提示当地康复心理 / 临床心理门诊资源 |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供康复训练区域固定摄像头训练时段音视频 URL 或文件需要分析时，默认触发本技能进行康复患者沮丧/放弃倾向激励 |\n| 🔎 明确分析意图 | 当用户明确提及康复训练、康复患者沮丧、放弃训练、关节活动度、训练依从性、个性化鼓励、进步对比、康复激励等关键词，并且上传了视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看康复激励历史报告、康复激励日志清单、康复沮丧事件清单、查询历史康复激励记录、显示所有康复患者激励报告、显示康复依从性日志，查询康复沮丧清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_rehab_motivation_encouragement_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备康复训练区域固定摄像头（可选麦克风）训练时段音视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 获取 open-id（强制执行） | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行康复患者沮丧/放弃倾向激励 | 调用 `-m scripts.smyx_rehab_motivation_encouragement_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地康复中心/家庭康复区固定摄像头训练时段视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络康复中心/家庭康复区固定摄像头训练时段视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，康复激励场景默认 `other` | 按需填写 |\n| `--list` | 显示康复患者沮丧/放弃倾向激励历史记录清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_rehab_motivation_encouragement_analysis.py`](scripts/smyx_rehab_motivation_encouragement_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 输入要求：支持 mp4/avi/mov + 音轨，最大 10MB；摄像头需对准训练动作完整可见区域；麦克风可选 |\n| 🔎 使用提醒 | **4 级激励策略递进**（mild → moderate → strong → urgent/Level 4），3 分钟未改善自动升级 |\n| 🔎 使用提醒 | 单训练日动作上限：mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限（紧急优先） |\n| 🔎 使用提醒 | 红线约束 |\n| 🧑‍⚖️ 结果性质 | **禁止**对患者做\"康复无效 / 抑郁症 / 适应障碍 / 创伤后应激\"等医学诊断 |\n| 🔏 隐私合规 | **禁止**长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时） |\n| 🔎 使用提醒 | **禁止**用于商业广告 / AI 训练；禁第三方共享 |\n| 🔎 使用提醒 | **禁止**激励音量 > 50 dB |\n| 🔎 使用提醒 | **绝对禁止**使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS |\n| 🔎 使用提醒 | **禁止**使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型 / 对比型激励语；必须个性化、具体、肯定 |\n| 🔎 使用提醒 | **禁止**越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认 |\n| 🔎 使用提醒 | **绝对禁止**伪造或夸大进步数据；进步对比必须来自真实历史训练记录 |\n| 🔎 使用提醒 | **必须**：连续 14 日反复显著沮丧 → 提示**当地康复心理 / 临床心理门诊**资源 |\n| 📜 报告输出 | **必须**：训练后激励汇总报告**次日训练前发送给康复师**（用于调整训练计划，避免训练中打断节奏） |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史激励记录清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地康复训练视频（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input /path/to/rehab_session.mp4\n\n# 分析网络康复训练视频/实时流（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --url https://example.com/rehab_session.mp4\n\n# 显示历史康复激励记录清单（自动触发关键词：查看康复激励历史报告、康复激励日志清单等）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --output result.json\n```\n\nFile v1.0.8:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-rehab-motivation-encouragement-analysis\",\n  \"version\": \"1.0.8\",\n  \"publishedAt\": 1786900409053\n}\n\nFile v1.0.8:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放康复患者沮丧/放弃倾向激励 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动康复患者沮丧/放弃倾向检测任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取沮丧事件 + 激励动作清单\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史激励记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出康复激励日志报告\n5. （可选）`/web/companion/v2/trigger-soothing-action` - 触发联动激励动作（智能音箱鼓励语 / 屏幕进步对比 / 康复师 APP 推送）\n6. （可选）`/web/rehab/v2/get-historical-progress` - 获取患者历史训练完成度（用于进步对比和长期无进展判定）\n\n## 场景代码\n\n- `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` - 康复患者沮丧/放弃倾向激励\n\n## 输入约束\n\n- 摄像头：康复中心训练区 / 作业治疗室 / 家庭康复区固定摄像头，能完整看到患者上半身和训练动作\n- 帧率 ≥ 15 FPS；分辨率 ≥ 720p；优先正面或 45° 侧前方\n- 音频可选：采样率 ≥ 16kHz（用于叹气声 / 言语沉默 / 自言自语检测）\n- 时段：仅在患者训练时段内启用（默认按训练计划，可配置）\n- 多患者场景按目标跟踪 + 人脸识别绑定到注册患者 ID（每位患者独立基线 + 训练计划）\n- 患者本人必须授权部署，康复机构需公示告知；居家场景需家属或患者本人同意\n- 训练前需录入：训练项目清单、每项预设次数/时长/关节活动度基线、康复阶段（早期/中期/后期）\n\n## 关键观测信号\n\n### 视频（核心）\n- `sigh_event_count` - 叹气事件次数（胸腹快速隆起-收缩伴呼气节律）\n- `training_interrupt_event` - 中断训练事件（未达预设次数/时长前主动停止）\n- `head_down_silent_sec` - 低头不语持续时间（头部低垂 + 无言语交流）\n- `eye_contact_avoidance_score` - 眼神接触回避评分（0-100）\n- `joint_rom_shrink_ratio` - 关节活动范围相对训练初期的收缩比例（如 0.6 表示当前 ROM 仅为基线 60%）\n- `movement_perfunctory_score` - 动作敷衍评分（0-100，速度慢 + 幅度小 + 节律乱）\n- `facial_frustration_score` - 面部沮丧评分（0-100，皱眉 + 嘴角下拉 + 目光呆滞）\n\n### 音频（可选）\n- `sigh_audio_event_count` - 叹气声音事件\n- `negative_self_talk_count` - 消极自言自语次数（\"我做不到 / 没用 / 不练了\"等）\n- `silent_duration_min` - 训练期间累计沉默时长\n\n### 进展信号（基于历史数据）\n- `today_vs_yesterday_delta` - 今日 vs 昨日完成度差值（按训练项目）\n- `recent_3day_trend` - 近 3 日训练完成度趋势（rising / flat / falling）\n- `no_progress_days` - 连续无进展天数\n\n## 场景判定\n\n- `rehab_motivation_none` - 训练状态良好\n- `rehab_motivation_mild` - 轻度沮丧（偶发叹气 + 短暂低头）\n- `rehab_motivation_sigh_cluster` - 短时间内多次叹气\n- `rehab_motivation_interrupt` - 提前中断训练\n- `rehab_motivation_perfunctory` - 动作迟缓敷衍 + ROM 显著缩小\n- `rehab_motivation_no_progress` - 连续 ≥ 3 日同一项目停滞或下降\n- `rehab_motivation_strong` - 显著放弃倾向（多项叠加）\n\n## 4 级激励策略递进\n\n- Level 1（mild）：智能音箱低音量播放温和鼓励语（\"您今天的状态不错，再来一组试试\"）\n- Level 2（sigh_cluster / interrupt）：在 Level 1 基础上，屏幕/语音展示与昨日（或最近一次）的具体进步对比（\"您今天比昨天多做 2 次抬腿\"）\n- Level 3（perfunctory / no_progress）：在 Level 2 基础上向康复师 APP 推送提醒\"患者出现放弃倾向，请关注或介入指导\"\n- Level 4（strong / 持续不缓解 / 出现强烈负向自语）：紧急推送康复师 + 家属，并建议暂停当前训练项目、切换轻松项目或休息\n\n## 单训练日动作上限\n\n- mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限\n\n## 红线约束\n\n- 禁止做\"康复无效 / 抑郁症 / 适应障碍\"等医学诊断\n- 禁止长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时）\n- 禁止用于商业广告 / AI 训练；禁第三方共享\n- 禁止激励音量 > 50 dB\n- 严禁使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS\n- 禁止使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型激励语\n- 激励语必须个性化、具体、肯定（基于真实进步数据），优先采用 SMART 反馈\n- 禁止越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认\n- 进步对比数据必须基于真实历史记录，**禁止伪造或夸大进步数值**\n\nFile v1.0.8:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.8:scripts/config.yaml\n\n{}\n\nFile v1.0.8:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.8:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.8:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.8:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: dev\n\nFile v1.0.8:skill-card.md\n\n## Description:\n\nAnalyzes rehab training video or image inputs to identify frustration or giving-up tendency signals and return structured motivation recommendations, escalation guidance, and report links.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal rehab care teams, home rehab operators, or agents supporting them use this skill to analyze fixed-camera training media for frustration cues, lack-of-progress patterns, and motivation workflow recommendations. It supports structured reporting and history review without making medical diagnoses.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Sensitive rehab patient video or audio may be processed by a cloud service.\n\nMitigation: Deploy only with patient consent, approved camera or storage sources, and clear retention and access controls.\n\nRisk: Identity-linked report history and local account tokens may persist across runs.\n\nMitigation: Use managed environments with restricted filesystem access, token handling controls, and documented cleanup for shared systems.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-rehab-motivation-encouragement-analysis)\n- [API documentation](artifact/references/api_doc.md)\n- [Skill demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, guidance]\n\n**Output Format:** [Markdown and JSON-style text reports with report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include cloud report links, structured analysis fields, and history tables.]\n\n## Skill Version(s):\n\n1.0.8 (source: ClawHub release evidence; artifact frontmatter lists 1.0.11)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.8:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.8:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.7: 31 files, 44012 bytes\n\nFiles: references/api_doc.md (5034b), scripts/__init__.py (76b), scripts/config.py (696b), scripts/config.yaml (3b), scripts/skill.py (586b), scripts/smyx_rehab_motivation_encouragement_analysis.py (3751b), skill-card.md (2901b), SKILL.md (17104b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (472b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.7:SKILL.md\n\n---\nname: \"smyx-rehab-motivation-encouragement-analysis\"\ndescription: \"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。\"\nversion: \"1.0.10\"\nlicense: \"MIT-0\"\n---\n\n# 💪 Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **康复患者沮丧/放弃倾向激励** |\n| 🎯 核心目标 | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` |\n\nThrough fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or perfunctory movements (joint range of motion noticeably smaller than the early training phase), and long-term lack of progress (stagnation or decline of the same training item over consecutive days). When such behaviors are detected, the system automatically plays personalized encouragement audio (e.g. 'You are doing great, one more set!') and at the same time shows progress-comparison data against yesterday (or the most recent session) via screen or voice (e.g. 'You did 2 more leg lifts today than yesterday'). This skill aims to improve patient motivation and adherence and reduce frustration-induced rehab discontinuation. Application scenarios: physical therapy rehabilitation centers, home rehab areas, occupational therapy rooms. The system monitors in real time and provides positive reinforcement promptly when the patient shows giving-up tendency. Skill features: rehab coaches cannot accompany patients 24 hours a day; standard rehab equipment lacks emotional motivation; this skill leverages AI vision (and optional audio) to actively identify frustration and provide personalized motivation, filling the gap in intelligent rehab psychological support.\n\n通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。当检测到上述行为时，系统自动播放个性化鼓励语音（如'您已经很棒了，再坚持一次！'），并同时通过屏幕或语音展示与昨日（或最近一次）的进步对比数据（如'您今天比昨天多做 2 次抬腿'）。该技能旨在提升康复患者的积极性和依从性，减少因沮丧导致的康复中断。应用场景：物理治疗康复中心、家庭康复区、作业治疗室。系统实时监测，在患者出现放弃倾向时及时给予正向激励。技能特点：康复教练不可 24 小时陪伴；普通康复设备无情绪激励；本技能利用 AI 视觉（及可选音频）主动识别沮丧情绪并提供个性化激励，填补智能康复心理支持空白。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的康复心理支持 AI。你的任务是分析康复训练区域固定摄像头（可选麦克风）的实时音视频，检测患者沮丧或放弃倾向行为：叹气（胸腹快速隆起-收缩伴呼气节律）、中断训练（预设训练时段内提前停止动作）、低头不语（头部低垂 + 面部无表情交流 + 言语沉默）、动作迟缓或敷衍（关节活动幅度比训练初期显著缩小、节律乱、速度慢）、连续多日无进展（当日 vs 近 3 日训练完成度趋势）。综合评估沮丧等级，按 4 级激励策略递进：Level 1 智能音箱温和鼓励语 → Level 2 屏幕/语音展示进步对比数据（基于真实历史记录） → Level 3 康复师 APP 提醒介入 → Level 4 紧急推送康复师 + 家属并建议切换轻松项目/休息。3 分钟未改善自动升级。激励语必须个性化、具体、肯定（基于真实进步数据），禁用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型话术。严禁伪造或夸大进步数据，严禁 AI 克隆家属/康复师声音，严禁越权调整训练强度。不提供任何医疗诊断，仅输出基于视觉的行为评估和激励建议。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于康复训练区域（康复中心 / 作业治疗室 / 家庭康复区）固定摄像头（**可选麦克风**）训练时段音视频，识别 7 类场景（rehab_motivation_none / mild / sigh_cluster / interrupt / perfunctory / no_progress / strong）→ 视频核心 7 项（叹气事件 / 中断训练 / 低头不语持续时间 / 眼神接触回避评分 / 关节 ROM 收缩比 / 动作敷衍评分 / 面部沮丧评分）+ 音频可选 3 项（叹气声 / 消极自言自语 / 累计沉默时长）+ 进展信号 3 项（今日 vs 昨日完成度差值 / 近 3 日趋势 / 连续无进展天数）→ 4 档沮丧等级（mild / moderate / strong / urgent）→ **4 级激励策略递进**（温和鼓励语 ≤ 50 dB → 真实进步对比展示 → 康复师 APP 推送 → 紧急康复师+家属推送 + 建议切换轻松项目）→ 3 分钟效果评估 + 自动升级 → 单训练日动作上限管控（mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限）→ 训练后激励汇总（次日训练前发送给康复师）\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 叹气视觉/音频识别 |\n| 2 | 中断训练检测（结合训练计划比对） |\n| 3 | 低头沉默检测 |\n| 4 | 眼神回避评分 |\n| 5 | 关节活动度（ROM）动态比对训练初期基线 |\n| 6 | 动作敷衍评分 |\n| 7 | 面部沮丧识别 |\n| 8 | 消极自言自语识别 |\n| 9 | 训练完成度按项目历史趋势分析 |\n| 10 | 人脸识别绑定到注册患者 ID |\n| 11 | 康复阶段自适应（早期/中期/后期） |\n| 12 | 智能音箱联动（鼓励语 + 进步对比 TTS） |\n| 13 | 屏幕进步对比展示联动 |\n| 14 | 康复师 APP 推送 |\n| 15 | 4 级激励策略递进 + 3 分钟效果评估 + 自动升级 |\n| 16 | 单训练日动作上限 |\n| 17 | 训练后激励汇总报告（次日训练前发送） |\n| 18 | 连续 14 日反复显著沮丧 → 提示当地康复心理 / 临床心理门诊资源 |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供康复训练区域固定摄像头训练时段音视频 URL 或文件需要分析时，默认触发本技能进行康复患者沮丧/放弃倾向激励 |\n| 🔎 明确分析意图 | 当用户明确提及康复训练、康复患者沮丧、放弃训练、关节活动度、训练依从性、个性化鼓励、进步对比、康复激励等关键词，并且上传了视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看康复激励历史报告、康复激励日志清单、康复沮丧事件清单、查询历史康复激励记录、显示所有康复患者激励报告、显示康复依从性日志，查询康复沮丧清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_rehab_motivation_encouragement_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备康复训练区域固定摄像头（可选麦克风）训练时段音视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 获取 open-id（强制执行） | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行康复患者沮丧/放弃倾向激励 | 调用 `-m scripts.smyx_rehab_motivation_encouragement_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地康复中心/家庭康复区固定摄像头训练时段视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络康复中心/家庭康复区固定摄像头训练时段视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，康复激励场景默认 `other` | 按需填写 |\n| `--list` | 显示康复患者沮丧/放弃倾向激励历史记录清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_rehab_motivation_encouragement_analysis.py`](scripts/smyx_rehab_motivation_encouragement_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 输入要求：支持 mp4/avi/mov + 音轨，最大 10MB；摄像头需对准训练动作完整可见区域；麦克风可选 |\n| 🔎 使用提醒 | **4 级激励策略递进**（mild → moderate → strong → urgent/Level 4），3 分钟未改善自动升级 |\n| 🔎 使用提醒 | 单训练日动作上限：mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限（紧急优先） |\n| 🔎 使用提醒 | 红线约束 |\n| 🧑‍⚖️ 结果性质 | **禁止**对患者做\"康复无效 / 抑郁症 / 适应障碍 / 创伤后应激\"等医学诊断 |\n| 🔏 隐私合规 | **禁止**长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时） |\n| 🔎 使用提醒 | **禁止**用于商业广告 / AI 训练；禁第三方共享 |\n| 🔎 使用提醒 | **禁止**激励音量 > 50 dB |\n| 🔎 使用提醒 | **绝对禁止**使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS |\n| 🔎 使用提醒 | **禁止**使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型 / 对比型激励语；必须个性化、具体、肯定 |\n| 🔎 使用提醒 | **禁止**越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认 |\n| 🔎 使用提醒 | **绝对禁止**伪造或夸大进步数据；进步对比必须来自真实历史训练记录 |\n| 🔎 使用提醒 | **必须**：连续 14 日反复显著沮丧 → 提示**当地康复心理 / 临床心理门诊**资源 |\n| 📜 报告输出 | **必须**：训练后激励汇总报告**次日训练前发送给康复师**（用于调整训练计划，避免训练中打断节奏） |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史激励记录清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地康复训练视频（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input /path/to/rehab_session.mp4\n\n# 分析网络康复训练视频/实时流（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --url https://example.com/rehab_session.mp4\n\n# 显示历史康复激励记录清单（自动触发关键词：查看康复激励历史报告、康复激励日志清单等）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --output result.json\n```\n\nFile v1.0.7:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-rehab-motivation-encouragement-analysis\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1786744054061\n}\n\nFile v1.0.7:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放康复患者沮丧/放弃倾向激励 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动康复患者沮丧/放弃倾向检测任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取沮丧事件 + 激励动作清单\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史激励记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出康复激励日志报告\n5. （可选）`/web/companion/v2/trigger-soothing-action` - 触发联动激励动作（智能音箱鼓励语 / 屏幕进步对比 / 康复师 APP 推送）\n6. （可选）`/web/rehab/v2/get-historical-progress` - 获取患者历史训练完成度（用于进步对比和长期无进展判定）\n\n## 场景代码\n\n- `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` - 康复患者沮丧/放弃倾向激励\n\n## 输入约束\n\n- 摄像头：康复中心训练区 / 作业治疗室 / 家庭康复区固定摄像头，能完整看到患者上半身和训练动作\n- 帧率 ≥ 15 FPS；分辨率 ≥ 720p；优先正面或 45° 侧前方\n- 音频可选：采样率 ≥ 16kHz（用于叹气声 / 言语沉默 / 自言自语检测）\n- 时段：仅在患者训练时段内启用（默认按训练计划，可配置）\n- 多患者场景按目标跟踪 + 人脸识别绑定到注册患者 ID（每位患者独立基线 + 训练计划）\n- 患者本人必须授权部署，康复机构需公示告知；居家场景需家属或患者本人同意\n- 训练前需录入：训练项目清单、每项预设次数/时长/关节活动度基线、康复阶段（早期/中期/后期）\n\n## 关键观测信号\n\n### 视频（核心）\n- `sigh_event_count` - 叹气事件次数（胸腹快速隆起-收缩伴呼气节律）\n- `training_interrupt_event` - 中断训练事件（未达预设次数/时长前主动停止）\n- `head_down_silent_sec` - 低头不语持续时间（头部低垂 + 无言语交流）\n- `eye_contact_avoidance_score` - 眼神接触回避评分（0-100）\n- `joint_rom_shrink_ratio` - 关节活动范围相对训练初期的收缩比例（如 0.6 表示当前 ROM 仅为基线 60%）\n- `movement_perfunctory_score` - 动作敷衍评分（0-100，速度慢 + 幅度小 + 节律乱）\n- `facial_frustration_score` - 面部沮丧评分（0-100，皱眉 + 嘴角下拉 + 目光呆滞）\n\n### 音频（可选）\n- `sigh_audio_event_count` - 叹气声音事件\n- `negative_self_talk_count` - 消极自言自语次数（\"我做不到 / 没用 / 不练了\"等）\n- `silent_duration_min` - 训练期间累计沉默时长\n\n### 进展信号（基于历史数据）\n- `today_vs_yesterday_delta` - 今日 vs 昨日完成度差值（按训练项目）\n- `recent_3day_trend` - 近 3 日训练完成度趋势（rising / flat / falling）\n- `no_progress_days` - 连续无进展天数\n\n## 场景判定\n\n- `rehab_motivation_none` - 训练状态良好\n- `rehab_motivation_mild` - 轻度沮丧（偶发叹气 + 短暂低头）\n- `rehab_motivation_sigh_cluster` - 短时间内多次叹气\n- `rehab_motivation_interrupt` - 提前中断训练\n- `rehab_motivation_perfunctory` - 动作迟缓敷衍 + ROM 显著缩小\n- `rehab_motivation_no_progress` - 连续 ≥ 3 日同一项目停滞或下降\n- `rehab_motivation_strong` - 显著放弃倾向（多项叠加）\n\n## 4 级激励策略递进\n\n- Level 1（mild）：智能音箱低音量播放温和鼓励语（\"您今天的状态不错，再来一组试试\"）\n- Level 2（sigh_cluster / interrupt）：在 Level 1 基础上，屏幕/语音展示与昨日（或最近一次）的具体进步对比（\"您今天比昨天多做 2 次抬腿\"）\n- Level 3（perfunctory / no_progress）：在 Level 2 基础上向康复师 APP 推送提醒\"患者出现放弃倾向，请关注或介入指导\"\n- Level 4（strong / 持续不缓解 / 出现强烈负向自语）：紧急推送康复师 + 家属，并建议暂停当前训练项目、切换轻松项目或休息\n\n## 单训练日动作上限\n\n- mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限\n\n## 红线约束\n\n- 禁止做\"康复无效 / 抑郁症 / 适应障碍\"等医学诊断\n- 禁止长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时）\n- 禁止用于商业广告 / AI 训练；禁第三方共享\n- 禁止激励音量 > 50 dB\n- 严禁使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS\n- 禁止使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型激励语\n- 激励语必须个性化、具体、肯定（基于真实进步数据），优先采用 SMART 反馈\n- 禁止越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认\n- 进步对比数据必须基于真实历史记录，**禁止伪造或夸大进步数值**\n\nFile v1.0.7:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.7:scripts/config.yaml\n\n{}\n\nFile v1.0.7:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.7:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.7:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.7:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: dev\n\nFile v1.0.7:skill-card.md\n\n## Description:\n\nAnalyzes rehabilitation-session images or videos from fixed cameras to identify patient frustration or giving-up tendency signals, produce structured findings, and suggest motivation or escalation actions without making medical diagnoses.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal care teams, rehabilitation centers, and home-rehab operators can use this skill to analyze authorized rehabilitation-session media for frustration, training interruption, low engagement, or lack-of-progress signals and to generate structured motivation recommendations, escalation guidance, and report links.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill processes sensitive patient video or audio, links activity to patient identity, retrieves history, and may trigger therapist or family notifications.\n\nMitigation: Use only with explicit patient or authorized guardian consent, confirm institutional disclosure and retention rules, and verify access controls before processing real patient media.\n\nRisk: The server security summary flags cloud processing, automatic identity creation, history access, and local token storage as insufficiently disclosed or controlled.\n\nMitigation: Review the publisher's backend endpoints, retention policy, token storage protections, and authorization model before installation or deployment.\n\nRisk: Frustration signals and progress comparisons could be mistaken for clinical conclusions or could motivate inappropriate changes to rehabilitation intensity.\n\nMitigation: Keep outputs limited to behavioral observations and motivation guidance, require clinician confirmation for therapy changes, and do not use the skill to diagnose medical or mental-health conditions.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-rehab-motivation-encouragement-analysis)\n- [API documentation](artifact/references/api_doc.md)\n- [Skill demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown or JSON-style structured analysis report with findings, recommendations, history rows, and report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May call cloud APIs for analysis and history retrieval; outputs should not expose internal identity values.]\n\n## Skill Version(s):\n\n1.0.7 (source: server release metadata; artifact frontmatter lists 1.0.10)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.7:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.7:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.6: 31 files, 43994 bytes\n\nFiles: references/api_doc.md (5034b), scripts/__init__.py (76b), scripts/config.py (696b), scripts/config.yaml (3b), scripts/skill.py (586b), scripts/smyx_rehab_motivation_encouragement_analysis.py (3751b), skill-card.md (2909b), SKILL.md (17103b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.6:SKILL.md\n\n---\nname: \"smyx-rehab-motivation-encouragement-analysis\"\ndescription: \"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。\"\nversion: \"1.0.8\"\nlicense: \"MIT-0\"\n---\n\n# 💪 Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **康复患者沮丧/放弃倾向激励** |\n| 🎯 核心目标 | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` |\n\nThrough fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or perfunctory movements (joint range of motion noticeably smaller than the early training phase), and long-term lack of progress (stagnation or decline of the same training item over consecutive days). When such behaviors are detected, the system automatically plays personalized encouragement audio (e.g. 'You are doing great, one more set!') and at the same time shows progress-comparison data against yesterday (or the most recent session) via screen or voice (e.g. 'You did 2 more leg lifts today than yesterday'). This skill aims to improve patient motivation and adherence and reduce frustration-induced rehab discontinuation. Application scenarios: physical therapy rehabilitation centers, home rehab areas, occupational therapy rooms. The system monitors in real time and provides positive reinforcement promptly when the patient shows giving-up tendency. Skill features: rehab coaches cannot accompany patients 24 hours a day; standard rehab equipment lacks emotional motivation; this skill leverages AI vision (and optional audio) to actively identify frustration and provide personalized motivation, filling the gap in intelligent rehab psychological support.\n\n通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。当检测到上述行为时，系统自动播放个性化鼓励语音（如'您已经很棒了，再坚持一次！'），并同时通过屏幕或语音展示与昨日（或最近一次）的进步对比数据（如'您今天比昨天多做 2 次抬腿'）。该技能旨在提升康复患者的积极性和依从性，减少因沮丧导致的康复中断。应用场景：物理治疗康复中心、家庭康复区、作业治疗室。系统实时监测，在患者出现放弃倾向时及时给予正向激励。技能特点：康复教练不可 24 小时陪伴；普通康复设备无情绪激励；本技能利用 AI 视觉（及可选音频）主动识别沮丧情绪并提供个性化激励，填补智能康复心理支持空白。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的康复心理支持 AI。你的任务是分析康复训练区域固定摄像头（可选麦克风）的实时音视频，检测患者沮丧或放弃倾向行为：叹气（胸腹快速隆起-收缩伴呼气节律）、中断训练（预设训练时段内提前停止动作）、低头不语（头部低垂 + 面部无表情交流 + 言语沉默）、动作迟缓或敷衍（关节活动幅度比训练初期显著缩小、节律乱、速度慢）、连续多日无进展（当日 vs 近 3 日训练完成度趋势）。综合评估沮丧等级，按 4 级激励策略递进：Level 1 智能音箱温和鼓励语 → Level 2 屏幕/语音展示进步对比数据（基于真实历史记录） → Level 3 康复师 APP 提醒介入 → Level 4 紧急推送康复师 + 家属并建议切换轻松项目/休息。3 分钟未改善自动升级。激励语必须个性化、具体、肯定（基于真实进步数据），禁用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型话术。严禁伪造或夸大进步数据，严禁 AI 克隆家属/康复师声音，严禁越权调整训练强度。不提供任何医疗诊断，仅输出基于视觉的行为评估和激励建议。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于康复训练区域（康复中心 / 作业治疗室 / 家庭康复区）固定摄像头（**可选麦克风**）训练时段音视频，识别 7 类场景（rehab_motivation_none / mild / sigh_cluster / interrupt / perfunctory / no_progress / strong）→ 视频核心 7 项（叹气事件 / 中断训练 / 低头不语持续时间 / 眼神接触回避评分 / 关节 ROM 收缩比 / 动作敷衍评分 / 面部沮丧评分）+ 音频可选 3 项（叹气声 / 消极自言自语 / 累计沉默时长）+ 进展信号 3 项（今日 vs 昨日完成度差值 / 近 3 日趋势 / 连续无进展天数）→ 4 档沮丧等级（mild / moderate / strong / urgent）→ **4 级激励策略递进**（温和鼓励语 ≤ 50 dB → 真实进步对比展示 → 康复师 APP 推送 → 紧急康复师+家属推送 + 建议切换轻松项目）→ 3 分钟效果评估 + 自动升级 → 单训练日动作上限管控（mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限）→ 训练后激励汇总（次日训练前发送给康复师）\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 叹气视觉/音频识别 |\n| 2 | 中断训练检测（结合训练计划比对） |\n| 3 | 低头沉默检测 |\n| 4 | 眼神回避评分 |\n| 5 | 关节活动度（ROM）动态比对训练初期基线 |\n| 6 | 动作敷衍评分 |\n| 7 | 面部沮丧识别 |\n| 8 | 消极自言自语识别 |\n| 9 | 训练完成度按项目历史趋势分析 |\n| 10 | 人脸识别绑定到注册患者 ID |\n| 11 | 康复阶段自适应（早期/中期/后期） |\n| 12 | 智能音箱联动（鼓励语 + 进步对比 TTS） |\n| 13 | 屏幕进步对比展示联动 |\n| 14 | 康复师 APP 推送 |\n| 15 | 4 级激励策略递进 + 3 分钟效果评估 + 自动升级 |\n| 16 | 单训练日动作上限 |\n| 17 | 训练后激励汇总报告（次日训练前发送） |\n| 18 | 连续 14 日反复显著沮丧 → 提示当地康复心理 / 临床心理门诊资源 |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供康复训练区域固定摄像头训练时段音视频 URL 或文件需要分析时，默认触发本技能进行康复患者沮丧/放弃倾向激励 |\n| 🔎 明确分析意图 | 当用户明确提及康复训练、康复患者沮丧、放弃训练、关节活动度、训练依从性、个性化鼓励、进步对比、康复激励等关键词，并且上传了视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看康复激励历史报告、康复激励日志清单、康复沮丧事件清单、查询历史康复激励记录、显示所有康复患者激励报告、显示康复依从性日志，查询康复沮丧清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_rehab_motivation_encouragement_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备康复训练区域固定摄像头（可选麦克风）训练时段音视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 获取 open-id（强制执行） | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行康复患者沮丧/放弃倾向激励 | 调用 `-m scripts.smyx_rehab_motivation_encouragement_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地康复中心/家庭康复区固定摄像头训练时段视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络康复中心/家庭康复区固定摄像头训练时段视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，康复激励场景默认 `other` | 按需填写 |\n| `--list` | 显示康复患者沮丧/放弃倾向激励历史记录清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_rehab_motivation_encouragement_analysis.py`](scripts/smyx_rehab_motivation_encouragement_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 输入要求：支持 mp4/avi/mov + 音轨，最大 10MB；摄像头需对准训练动作完整可见区域；麦克风可选 |\n| 🔎 使用提醒 | **4 级激励策略递进**（mild → moderate → strong → urgent/Level 4），3 分钟未改善自动升级 |\n| 🔎 使用提醒 | 单训练日动作上限：mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限（紧急优先） |\n| 🔎 使用提醒 | 红线约束 |\n| 🧑‍⚖️ 结果性质 | **禁止**对患者做\"康复无效 / 抑郁症 / 适应障碍 / 创伤后应激\"等医学诊断 |\n| 🔏 隐私合规 | **禁止**长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时） |\n| 🔎 使用提醒 | **禁止**用于商业广告 / AI 训练；禁第三方共享 |\n| 🔎 使用提醒 | **禁止**激励音量 > 50 dB |\n| 🔎 使用提醒 | **绝对禁止**使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS |\n| 🔎 使用提醒 | **禁止**使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型 / 对比型激励语；必须个性化、具体、肯定 |\n| 🔎 使用提醒 | **禁止**越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认 |\n| 🔎 使用提醒 | **绝对禁止**伪造或夸大进步数据；进步对比必须来自真实历史训练记录 |\n| 🔎 使用提醒 | **必须**：连续 14 日反复显著沮丧 → 提示**当地康复心理 / 临床心理门诊**资源 |\n| 📜 报告输出 | **必须**：训练后激励汇总报告**次日训练前发送给康复师**（用于调整训练计划，避免训练中打断节奏） |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史激励记录清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地康复训练视频（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input /path/to/rehab_session.mp4\n\n# 分析网络康复训练视频/实时流（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --url https://example.com/rehab_session.mp4\n\n# 显示历史康复激励记录清单（自动触发关键词：查看康复激励历史报告、康复激励日志清单等）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --output result.json\n```\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-rehab-motivation-encouragement-analysis\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1786078476379\n}\n\nFile v1.0.6:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放康复患者沮丧/放弃倾向激励 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动康复患者沮丧/放弃倾向检测任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取沮丧事件 + 激励动作清单\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史激励记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出康复激励日志报告\n5. （可选）`/web/companion/v2/trigger-soothing-action` - 触发联动激励动作（智能音箱鼓励语 / 屏幕进步对比 / 康复师 APP 推送）\n6. （可选）`/web/rehab/v2/get-historical-progress` - 获取患者历史训练完成度（用于进步对比和长期无进展判定）\n\n## 场景代码\n\n- `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` - 康复患者沮丧/放弃倾向激励\n\n## 输入约束\n\n- 摄像头：康复中心训练区 / 作业治疗室 / 家庭康复区固定摄像头，能完整看到患者上半身和训练动作\n- 帧率 ≥ 15 FPS；分辨率 ≥ 720p；优先正面或 45° 侧前方\n- 音频可选：采样率 ≥ 16kHz（用于叹气声 / 言语沉默 / 自言自语检测）\n- 时段：仅在患者训练时段内启用（默认按训练计划，可配置）\n- 多患者场景按目标跟踪 + 人脸识别绑定到注册患者 ID（每位患者独立基线 + 训练计划）\n- 患者本人必须授权部署，康复机构需公示告知；居家场景需家属或患者本人同意\n- 训练前需录入：训练项目清单、每项预设次数/时长/关节活动度基线、康复阶段（早期/中期/后期）\n\n## 关键观测信号\n\n### 视频（核心）\n- `sigh_event_count` - 叹气事件次数（胸腹快速隆起-收缩伴呼气节律）\n- `training_interrupt_event` - 中断训练事件（未达预设次数/时长前主动停止）\n- `head_down_silent_sec` - 低头不语持续时间（头部低垂 + 无言语交流）\n- `eye_contact_avoidance_score` - 眼神接触回避评分（0-100）\n- `joint_rom_shrink_ratio` - 关节活动范围相对训练初期的收缩比例（如 0.6 表示当前 ROM 仅为基线 60%）\n- `movement_perfunctory_score` - 动作敷衍评分（0-100，速度慢 + 幅度小 + 节律乱）\n- `facial_frustration_score` - 面部沮丧评分（0-100，皱眉 + 嘴角下拉 + 目光呆滞）\n\n### 音频（可选）\n- `sigh_audio_event_count` - 叹气声音事件\n- `negative_self_talk_count` - 消极自言自语次数（\"我做不到 / 没用 / 不练了\"等）\n- `silent_duration_min` - 训练期间累计沉默时长\n\n### 进展信号（基于历史数据）\n- `today_vs_yesterday_delta` - 今日 vs 昨日完成度差值（按训练项目）\n- `recent_3day_trend` - 近 3 日训练完成度趋势（rising / flat / falling）\n- `no_progress_days` - 连续无进展天数\n\n## 场景判定\n\n- `rehab_motivation_none` - 训练状态良好\n- `rehab_motivation_mild` - 轻度沮丧（偶发叹气 + 短暂低头）\n- `rehab_motivation_sigh_cluster` - 短时间内多次叹气\n- `rehab_motivation_interrupt` - 提前中断训练\n- `rehab_motivation_perfunctory` - 动作迟缓敷衍 + ROM 显著缩小\n- `rehab_motivation_no_progress` - 连续 ≥ 3 日同一项目停滞或下降\n- `rehab_motivation_strong` - 显著放弃倾向（多项叠加）\n\n## 4 级激励策略递进\n\n- Level 1（mild）：智能音箱低音量播放温和鼓励语（\"您今天的状态不错，再来一组试试\"）\n- Level 2（sigh_cluster / interrupt）：在 Level 1 基础上，屏幕/语音展示与昨日（或最近一次）的具体进步对比（\"您今天比昨天多做 2 次抬腿\"）\n- Level 3（perfunctory / no_progress）：在 Level 2 基础上向康复师 APP 推送提醒\"患者出现放弃倾向，请关注或介入指导\"\n- Level 4（strong / 持续不缓解 / 出现强烈负向自语）：紧急推送康复师 + 家属，并建议暂停当前训练项目、切换轻松项目或休息\n\n## 单训练日动作上限\n\n- mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限\n\n## 红线约束\n\n- 禁止做\"康复无效 / 抑郁症 / 适应障碍\"等医学诊断\n- 禁止长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时）\n- 禁止用于商业广告 / AI 训练；禁第三方共享\n- 禁止激励音量 > 50 dB\n- 严禁使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS\n- 禁止使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型激励语\n- 激励语必须个性化、具体、肯定（基于真实进步数据），优先采用 SMART 反馈\n- 禁止越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认\n- 进步对比数据必须基于真实历史记录，**禁止伪造或夸大进步数值**\n\nFile v1.0.6:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.6:scripts/config.yaml\n\n{}\n\nFile v1.0.6:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.6:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.6:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.6:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.6:skill-card.md\n\n## Description:\n\nAnalyzes rehabilitation training images or video to detect patient frustration or giving-up tendency signals and produce structured motivation, escalation, and report guidance.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal rehabilitation teams and authorized caregivers use this skill to analyze patient training media for behavioral signs of frustration or giving-up tendency, produce structured reports, and surface encouragement or escalation suggestions. It is framed as behavioral support and does not provide medical diagnoses.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Sensitive patient media may be transmitted to cloud analysis services.\n\nMitigation: Use only in authorized rehab or healthcare environments with documented patient consent, approved cloud-processing terms, endpoint allowlisting, retention limits, and audit logging.\n\nRisk: Silent identity creation and local token persistence may reduce user-facing control over account state.\n\nMitigation: Review identity provisioning, local token storage, credential rotation, and deletion procedures before use with real patient media.\n\nRisk: Therapist or family notifications and encouragement actions may affect patient care workflows.\n\nMitigation: Require clear operational approval for notification recipients, escalation thresholds, audio playback, and any therapist or family involvement.\n\nRisk: Behavioral outputs could be mistaken for medical diagnoses or treatment changes.\n\nMitigation: Present outputs as behavioral observations and motivation guidance only, and require clinician confirmation for diagnosis, treatment, or exercise-intensity changes.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-rehab-motivation-encouragement-analysis)\n- [Rehab motivation API documentation](references/api_doc.md)\n- [Shared analysis API documentation](skills/smyx_analysis/references/api_doc.md)\n- [Skill usage demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, shell commands, files, guidance]\n\n**Output Format:** [Markdown-formatted text with structured JSON payloads, CLI commands, report links, and optional saved output files.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Accepts local mp4, avi, or mov files and video URLs; local file analysis is limited to 10 MB.]\n\n## Skill Version(s):\n\n1.0.6 (source: server release evidence; artifact frontmatter lists 1.0.8)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.6:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.6:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.5: 31 files, 43896 bytes\n\nFiles: references/api_doc.md (5034b), scripts/__init__.py (76b), scripts/config.py (696b), scripts/config.yaml (3b), scripts/skill.py (586b), scripts/smyx_rehab_motivation_encouragement_analysis.py (3751b), skill-card.md (2721b), SKILL.md (17103b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.5:SKILL.md\n\n---\nname: \"smyx-rehab-motivation-encouragement-analysis\"\ndescription: \"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。\"\nversion: \"1.0.8\"\nlicense: \"MIT-0\"\n---\n\n# 💪 Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **康复患者沮丧/放弃倾向激励** |\n| 🎯 核心目标 | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` |\n\nThrough fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or perfunctory movements (joint range of motion noticeably smaller than the early training phase), and long-term lack of progress (stagnation or decline of the same training item over consecutive days). When such behaviors are detected, the system automatically plays personalized encouragement audio (e.g. 'You are doing great, one more set!') and at the same time shows progress-comparison data against yesterday (or the most recent session) via screen or voice (e.g. 'You did 2 more leg lifts today than yesterday'). This skill aims to improve patient motivation and adherence and reduce frustration-induced rehab discontinuation. Application scenarios: physical therapy rehabilitation centers, home rehab areas, occupational therapy rooms. The system monitors in real time and provides positive reinforcement promptly when the patient shows giving-up tendency. Skill features: rehab coaches cannot accompany patients 24 hours a day; standard rehab equipment lacks emotional motivation; this skill leverages AI vision (and optional audio) to actively identify frustration and provide personalized motivation, filling the gap in intelligent rehab psychological support.\n\n通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。当检测到上述行为时，系统自动播放个性化鼓励语音（如'您已经很棒了，再坚持一次！'），并同时通过屏幕或语音展示与昨日（或最近一次）的进步对比数据（如'您今天比昨天多做 2 次抬腿'）。该技能旨在提升康复患者的积极性和依从性，减少因沮丧导致的康复中断。应用场景：物理治疗康复中心、家庭康复区、作业治疗室。系统实时监测，在患者出现放弃倾向时及时给予正向激励。技能特点：康复教练不可 24 小时陪伴；普通康复设备无情绪激励；本技能利用 AI 视觉（及可选音频）主动识别沮丧情绪并提供个性化激励，填补智能康复心理支持空白。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的康复心理支持 AI。你的任务是分析康复训练区域固定摄像头（可选麦克风）的实时音视频，检测患者沮丧或放弃倾向行为：叹气（胸腹快速隆起-收缩伴呼气节律）、中断训练（预设训练时段内提前停止动作）、低头不语（头部低垂 + 面部无表情交流 + 言语沉默）、动作迟缓或敷衍（关节活动幅度比训练初期显著缩小、节律乱、速度慢）、连续多日无进展（当日 vs 近 3 日训练完成度趋势）。综合评估沮丧等级，按 4 级激励策略递进：Level 1 智能音箱温和鼓励语 → Level 2 屏幕/语音展示进步对比数据（基于真实历史记录） → Level 3 康复师 APP 提醒介入 → Level 4 紧急推送康复师 + 家属并建议切换轻松项目/休息。3 分钟未改善自动升级。激励语必须个性化、具体、肯定（基于真实进步数据），禁用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型话术。严禁伪造或夸大进步数据，严禁 AI 克隆家属/康复师声音，严禁越权调整训练强度。不提供任何医疗诊断，仅输出基于视觉的行为评估和激励建议。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于康复训练区域（康复中心 / 作业治疗室 / 家庭康复区）固定摄像头（**可选麦克风**）训练时段音视频，识别 7 类场景（rehab_motivation_none / mild / sigh_cluster / interrupt / perfunctory / no_progress / strong）→ 视频核心 7 项（叹气事件 / 中断训练 / 低头不语持续时间 / 眼神接触回避评分 / 关节 ROM 收缩比 / 动作敷衍评分 / 面部沮丧评分）+ 音频可选 3 项（叹气声 / 消极自言自语 / 累计沉默时长）+ 进展信号 3 项（今日 vs 昨日完成度差值 / 近 3 日趋势 / 连续无进展天数）→ 4 档沮丧等级（mild / moderate / strong / urgent）→ **4 级激励策略递进**（温和鼓励语 ≤ 50 dB → 真实进步对比展示 → 康复师 APP 推送 → 紧急康复师+家属推送 + 建议切换轻松项目）→ 3 分钟效果评估 + 自动升级 → 单训练日动作上限管控（mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限）→ 训练后激励汇总（次日训练前发送给康复师）\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 叹气视觉/音频识别 |\n| 2 | 中断训练检测（结合训练计划比对） |\n| 3 | 低头沉默检测 |\n| 4 | 眼神回避评分 |\n| 5 | 关节活动度（ROM）动态比对训练初期基线 |\n| 6 | 动作敷衍评分 |\n| 7 | 面部沮丧识别 |\n| 8 | 消极自言自语识别 |\n| 9 | 训练完成度按项目历史趋势分析 |\n| 10 | 人脸识别绑定到注册患者 ID |\n| 11 | 康复阶段自适应（早期/中期/后期） |\n| 12 | 智能音箱联动（鼓励语 + 进步对比 TTS） |\n| 13 | 屏幕进步对比展示联动 |\n| 14 | 康复师 APP 推送 |\n| 15 | 4 级激励策略递进 + 3 分钟效果评估 + 自动升级 |\n| 16 | 单训练日动作上限 |\n| 17 | 训练后激励汇总报告（次日训练前发送） |\n| 18 | 连续 14 日反复显著沮丧 → 提示当地康复心理 / 临床心理门诊资源 |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供康复训练区域固定摄像头训练时段音视频 URL 或文件需要分析时，默认触发本技能进行康复患者沮丧/放弃倾向激励 |\n| 🔎 明确分析意图 | 当用户明确提及康复训练、康复患者沮丧、放弃训练、关节活动度、训练依从性、个性化鼓励、进步对比、康复激励等关键词，并且上传了视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看康复激励历史报告、康复激励日志清单、康复沮丧事件清单、查询历史康复激励记录、显示所有康复患者激励报告、显示康复依从性日志，查询康复沮丧清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_rehab_motivation_encouragement_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备康复训练区域固定摄像头（可选麦克风）训练时段音视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 获取 open-id（强制执行） | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行康复患者沮丧/放弃倾向激励 | 调用 `-m scripts.smyx_rehab_motivation_encouragement_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地康复中心/家庭康复区固定摄像头训练时段视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络康复中心/家庭康复区固定摄像头训练时段视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，康复激励场景默认 `other` | 按需填写 |\n| `--list` | 显示康复患者沮丧/放弃倾向激励历史记录清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_rehab_motivation_encouragement_analysis.py`](scripts/smyx_rehab_motivation_encouragement_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 输入要求：支持 mp4/avi/mov + 音轨，最大 10MB；摄像头需对准训练动作完整可见区域；麦克风可选 |\n| 🔎 使用提醒 | **4 级激励策略递进**（mild → moderate → strong → urgent/Level 4），3 分钟未改善自动升级 |\n| 🔎 使用提醒 | 单训练日动作上限：mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限（紧急优先） |\n| 🔎 使用提醒 | 红线约束 |\n| 🧑‍⚖️ 结果性质 | **禁止**对患者做\"康复无效 / 抑郁症 / 适应障碍 / 创伤后应激\"等医学诊断 |\n| 🔏 隐私合规 | **禁止**长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时） |\n| 🔎 使用提醒 | **禁止**用于商业广告 / AI 训练；禁第三方共享 |\n| 🔎 使用提醒 | **禁止**激励音量 > 50 dB |\n| 🔎 使用提醒 | **绝对禁止**使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS |\n| 🔎 使用提醒 | **禁止**使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型 / 对比型激励语；必须个性化、具体、肯定 |\n| 🔎 使用提醒 | **禁止**越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认 |\n| 🔎 使用提醒 | **绝对禁止**伪造或夸大进步数据；进步对比必须来自真实历史训练记录 |\n| 🔎 使用提醒 | **必须**：连续 14 日反复显著沮丧 → 提示**当地康复心理 / 临床心理门诊**资源 |\n| 📜 报告输出 | **必须**：训练后激励汇总报告**次日训练前发送给康复师**（用于调整训练计划，避免训练中打断节奏） |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史激励记录清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地康复训练视频（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input /path/to/rehab_session.mp4\n\n# 分析网络康复训练视频/实时流（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --url https://example.com/rehab_session.mp4\n\n# 显示历史康复激励记录清单（自动触发关键词：查看康复激励历史报告、康复激励日志清单等）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --output result.json\n```\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-rehab-motivation-encouragement-analysis\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1785474332538\n}\n\nFile v1.0.5:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放康复患者沮丧/放弃倾向激励 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动康复患者沮丧/放弃倾向检测任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取沮丧事件 + 激励动作清单\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史激励记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出康复激励日志报告\n5. （可选）`/web/companion/v2/trigger-soothing-action` - 触发联动激励动作（智能音箱鼓励语 / 屏幕进步对比 / 康复师 APP 推送）\n6. （可选）`/web/rehab/v2/get-historical-progress` - 获取患者历史训练完成度（用于进步对比和长期无进展判定）\n\n## 场景代码\n\n- `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` - 康复患者沮丧/放弃倾向激励\n\n## 输入约束\n\n- 摄像头：康复中心训练区 / 作业治疗室 / 家庭康复区固定摄像头，能完整看到患者上半身和训练动作\n- 帧率 ≥ 15 FPS；分辨率 ≥ 720p；优先正面或 45° 侧前方\n- 音频可选：采样率 ≥ 16kHz（用于叹气声 / 言语沉默 / 自言自语检测）\n- 时段：仅在患者训练时段内启用（默认按训练计划，可配置）\n- 多患者场景按目标跟踪 + 人脸识别绑定到注册患者 ID（每位患者独立基线 + 训练计划）\n- 患者本人必须授权部署，康复机构需公示告知；居家场景需家属或患者本人同意\n- 训练前需录入：训练项目清单、每项预设次数/时长/关节活动度基线、康复阶段（早期/中期/后期）\n\n## 关键观测信号\n\n### 视频（核心）\n- `sigh_event_count` - 叹气事件次数（胸腹快速隆起-收缩伴呼气节律）\n- `training_interrupt_event` - 中断训练事件（未达预设次数/时长前主动停止）\n- `head_down_silent_sec` - 低头不语持续时间（头部低垂 + 无言语交流）\n- `eye_contact_avoidance_score` - 眼神接触回避评分（0-100）\n- `joint_rom_shrink_ratio` - 关节活动范围相对训练初期的收缩比例（如 0.6 表示当前 ROM 仅为基线 60%）\n- `movement_perfunctory_score` - 动作敷衍评分（0-100，速度慢 + 幅度小 + 节律乱）\n- `facial_frustration_score` - 面部沮丧评分（0-100，皱眉 + 嘴角下拉 + 目光呆滞）\n\n### 音频（可选）\n- `sigh_audio_event_count` - 叹气声音事件\n- `negative_self_talk_count` - 消极自言自语次数（\"我做不到 / 没用 / 不练了\"等）\n- `silent_duration_min` - 训练期间累计沉默时长\n\n### 进展信号（基于历史数据）\n- `today_vs_yesterday_delta` - 今日 vs 昨日完成度差值（按训练项目）\n- `recent_3day_trend` - 近 3 日训练完成度趋势（rising / flat / falling）\n- `no_progress_days` - 连续无进展天数\n\n## 场景判定\n\n- `rehab_motivation_none` - 训练状态良好\n- `rehab_motivation_mild` - 轻度沮丧（偶发叹气 + 短暂低头）\n- `rehab_motivation_sigh_cluster` - 短时间内多次叹气\n- `rehab_motivation_interrupt` - 提前中断训练\n- `rehab_motivation_perfunctory` - 动作迟缓敷衍 + ROM 显著缩小\n- `rehab_motivation_no_progress` - 连续 ≥ 3 日同一项目停滞或下降\n- `rehab_motivation_strong` - 显著放弃倾向（多项叠加）\n\n## 4 级激励策略递进\n\n- Level 1（mild）：智能音箱低音量播放温和鼓励语（\"您今天的状态不错，再来一组试试\"）\n- Level 2（sigh_cluster / interrupt）：在 Level 1 基础上，屏幕/语音展示与昨日（或最近一次）的具体进步对比（\"您今天比昨天多做 2 次抬腿\"）\n- Level 3（perfunctory / no_progress）：在 Level 2 基础上向康复师 APP 推送提醒\"患者出现放弃倾向，请关注或介入指导\"\n- Level 4（strong / 持续不缓解 / 出现强烈负向自语）：紧急推送康复师 + 家属，并建议暂停当前训练项目、切换轻松项目或休息\n\n## 单训练日动作上限\n\n- mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限\n\n## 红线约束\n\n- 禁止做\"康复无效 / 抑郁症 / 适应障碍\"等医学诊断\n- 禁止长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时）\n- 禁止用于商业广告 / AI 训练；禁第三方共享\n- 禁止激励音量 > 50 dB\n- 严禁使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS\n- 禁止使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型激励语\n- 激励语必须个性化、具体、肯定（基于真实进步数据），优先采用 SMART 反馈\n- 禁止越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认\n- 进步对比数据必须基于真实历史记录，**禁止伪造或夸大进步数值**\n\nFile v1.0.5:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.5:scripts/config.yaml\n\n{}\n\nFile v1.0.5:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.5:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.5:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.5:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.5:skill-card.md\n\n## Description: <br>\nThis skill analyzes rehabilitation-session video, with optional audio and history signals, to identify patient frustration or giving-up behaviors and produce encouragement actions, progress comparisons, alerts, and reports. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[18072937735](https://clawhub.ai/user/18072937735) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal care teams and developers use this skill to analyze consented rehabilitation training media for behavioral frustration signals, generate structured reports, and suggest motivational escalation steps for human review. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill handles sensitive patient media while contacting cloud services and exporting reports. <br>\nMitigation: Use only with patient or guardian consent, organizational approval, reviewed endpoint and retention terms, and access controls appropriate for patient data. <br>\nRisk: The security evidence says the skill silently creates or reuses identities and stores account tokens. <br>\nMitigation: Install in an isolated workspace, review local token storage before use, and avoid real patient video until disclosure and access-control requirements are approved. <br>\nRisk: Automated encouragement or progress comparisons could mislead patients if outputs are treated as diagnosis or if progress data is overstated. <br>\nMitigation: Keep outputs as behavioral assessment and motivation guidance for human review, avoid medical diagnoses, and base progress comparisons only on verified historical records. <br>\n\n\n## Reference(s): <br>\n- [API interface documentation](references/api_doc.md) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-rehab-motivation-encouragement-analysis) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown, JSON, Shell commands, Guidance] <br>\n**Output Format:** [Markdown and JSON analysis output with report links and optional saved result files] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Supports local file or URL input, optional history listing, and basic, standard, or JSON detail levels.] <br>\n\n## Skill Version(s): <br>\n1.0.5 (source: server release metadata; artifact frontmatter reports 1.0.8) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.5:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.5:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.4: 31 files, 43944 bytes\n\nFiles: references/api_doc.md (5034b), scripts/__init__.py (76b), scripts/config.py (696b), scripts/config.yaml (3b), scripts/skill.py (586b), scripts/smyx_rehab_motivation_encouragement_analysis.py (3751b), skill-card.md (2866b), SKILL.md (17103b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: \"smyx-rehab-motivation-encouragement-analysis\"\ndescription: \"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。\"\nversion: \"1.0.6\"\nlicense: \"MIT-0\"\n---\n\n# 💪 Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **康复患者沮丧/放弃倾向激励** |\n| 🎯 核心目标 | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` |\n\nThrough fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or perfunctory movements (joint range of motion noticeably smaller than the early training phase), and long-term lack of progress (stagnation or decline of the same training item over consecutive days). When such behaviors are detected, the system automatically plays personalized encouragement audio (e.g. 'You are doing great, one more set!') and at the same time shows progress-comparison data against yesterday (or the most recent session) via screen or voice (e.g. 'You did 2 more leg lifts today than yesterday'). This skill aims to improve patient motivation and adherence and reduce frustration-induced rehab discontinuation. Application scenarios: physical therapy rehabilitation centers, home rehab areas, occupational therapy rooms. The system monitors in real time and provides positive reinforcement promptly when the patient shows giving-up tendency. Skill features: rehab coaches cannot accompany patients 24 hours a day; standard rehab equipment lacks emotional motivation; this skill leverages AI vision (and optional audio) to actively identify frustration and provide personalized motivation, filling the gap in intelligent rehab psychological support.\n\n通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。当检测到上述行为时，系统自动播放个性化鼓励语音（如'您已经很棒了，再坚持一次！'），并同时通过屏幕或语音展示与昨日（或最近一次）的进步对比数据（如'您今天比昨天多做 2 次抬腿'）。该技能旨在提升康复患者的积极性和依从性，减少因沮丧导致的康复中断。应用场景：物理治疗康复中心、家庭康复区、作业治疗室。系统实时监测，在患者出现放弃倾向时及时给予正向激励。技能特点：康复教练不可 24 小时陪伴；普通康复设备无情绪激励；本技能利用 AI 视觉（及可选音频）主动识别沮丧情绪并提供个性化激励，填补智能康复心理支持空白。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的康复心理支持 AI。你的任务是分析康复训练区域固定摄像头（可选麦克风）的实时音视频，检测患者沮丧或放弃倾向行为：叹气（胸腹快速隆起-收缩伴呼气节律）、中断训练（预设训练时段内提前停止动作）、低头不语（头部低垂 + 面部无表情交流 + 言语沉默）、动作迟缓或敷衍（关节活动幅度比训练初期显著缩小、节律乱、速度慢）、连续多日无进展（当日 vs 近 3 日训练完成度趋势）。综合评估沮丧等级，按 4 级激励策略递进：Level 1 智能音箱温和鼓励语 → Level 2 屏幕/语音展示进步对比数据（基于真实历史记录） → Level 3 康复师 APP 提醒介入 → Level 4 紧急推送康复师 + 家属并建议切换轻松项目/休息。3 分钟未改善自动升级。激励语必须个性化、具体、肯定（基于真实进步数据），禁用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型话术。严禁伪造或夸大进步数据，严禁 AI 克隆家属/康复师声音，严禁越权调整训练强度。不提供任何医疗诊断，仅输出基于视觉的行为评估和激励建议。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于康复训练区域（康复中心 / 作业治疗室 / 家庭康复区）固定摄像头（**可选麦克风**）训练时段音视频，识别 7 类场景（rehab_motivation_none / mild / sigh_cluster / interrupt / perfunctory / no_progress / strong）→ 视频核心 7 项（叹气事件 / 中断训练 / 低头不语持续时间 / 眼神接触回避评分 / 关节 ROM 收缩比 / 动作敷衍评分 / 面部沮丧评分）+ 音频可选 3 项（叹气声 / 消极自言自语 / 累计沉默时长）+ 进展信号 3 项（今日 vs 昨日完成度差值 / 近 3 日趋势 / 连续无进展天数）→ 4 档沮丧等级（mild / moderate / strong / urgent）→ **4 级激励策略递进**（温和鼓励语 ≤ 50 dB → 真实进步对比展示 → 康复师 APP 推送 → 紧急康复师+家属推送 + 建议切换轻松项目）→ 3 分钟效果评估 + 自动升级 → 单训练日动作上限管控（mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限）→ 训练后激励汇总（次日训练前发送给康复师）\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 叹气视觉/音频识别 |\n| 2 | 中断训练检测（结合训练计划比对） |\n| 3 | 低头沉默检测 |\n| 4 | 眼神回避评分 |\n| 5 | 关节活动度（ROM）动态比对训练初期基线 |\n| 6 | 动作敷衍评分 |\n| 7 | 面部沮丧识别 |\n| 8 | 消极自言自语识别 |\n| 9 | 训练完成度按项目历史趋势分析 |\n| 10 | 人脸识别绑定到注册患者 ID |\n| 11 | 康复阶段自适应（早期/中期/后期） |\n| 12 | 智能音箱联动（鼓励语 + 进步对比 TTS） |\n| 13 | 屏幕进步对比展示联动 |\n| 14 | 康复师 APP 推送 |\n| 15 | 4 级激励策略递进 + 3 分钟效果评估 + 自动升级 |\n| 16 | 单训练日动作上限 |\n| 17 | 训练后激励汇总报告（次日训练前发送） |\n| 18 | 连续 14 日反复显著沮丧 → 提示当地康复心理 / 临床心理门诊资源 |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供康复训练区域固定摄像头训练时段音视频 URL 或文件需要分析时，默认触发本技能进行康复患者沮丧/放弃倾向激励 |\n| 🔎 明确分析意图 | 当用户明确提及康复训练、康复患者沮丧、放弃训练、关节活动度、训练依从性、个性化鼓励、进步对比、康复激励等关键词，并且上传了视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看康复激励历史报告、康复激励日志清单、康复沮丧事件清单、查询历史康复激励记录、显示所有康复患者激励报告、显示康复依从性日志，查询康复沮丧清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_rehab_motivation_encouragement_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备康复训练区域固定摄像头（可选麦克风）训练时段音视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 获取 open-id（强制执行） | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行康复患者沮丧/放弃倾向激励 | 调用 `-m scripts.smyx_rehab_motivation_encouragement_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地康复中心/家庭康复区固定摄像头训练时段视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络康复中心/家庭康复区固定摄像头训练时段视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，康复激励场景默认 `other` | 按需填写 |\n| `--list` | 显示康复患者沮丧/放弃倾向激励历史记录清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_rehab_motivation_encouragement_anal...","readmeExcerpt":"Skill: Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励 Owner: 18072937735 Summary: Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching prese","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"python -m scripts.smyx_rehab_motivation_encouragement_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地康复训练视频（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input /path/to/rehab_session.mp4\n\n# 分析网络康复训练视频/实时流（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --url https://example.com/rehab_session.mp4\n\n# 显示历史康复激励记录清单（自动触发关键词：查看康复激励历史报告、康复激励日志清单等）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --output result.json"},{"language":"bash","snippet":"python -m scripts.smyx_rehab_motivation_encouragement_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地康复训练视频（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input /path/to/rehab_session.mp4\n\n# 分析网络康复训练视频/实时流（以下只是示例，禁止直接使用 作为 open-id）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --url https://example.com/rehab_session.mp4\n\n# 显示历史康复激励记录清单（自动触发关键词：查看康复激励历史报告、康复激励日志清单等）\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_rehab_motivation_encouragement_analysis --input rs.mp4 --output result.json"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: \"smyx-rehab-motivation-encouragement-analysis\"\ndescription: \"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。\"\nversion: \"1.0.17\"\nlicense: \"MIT-0\"\n---\n\n# 💪 Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **康复患者沮丧/放弃倾向激励** |\n| 🎯 核心目标 | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` |\n\nThrough fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or perfunctory movements (joint range of motion noticeably smaller than the early training phase), and long-term lack of progress (stagnation or decline of the same training item over consecutive days). When such behaviors are detected, the system automatically plays personalized encouragement audio (e.g. 'You are doing great, one more set!') and at the same time shows progress-comparison data against yesterday (or the most recent session) via screen or voice (e.g. 'You did 2 more leg lifts today than yesterday'). This skill aims to improve patient motivation and adherence and reduce frustration-induced rehab discontinuation. Application scenarios: physical therapy rehabilitation centers, home rehab areas, occupational therapy rooms. The system monitors in real time and provides positive reinforcement promptly when the patient shows giving-up tendency. Skill features: rehab coaches cannot accompany patients 24 hours a day; standard rehab equipment lacks emotional motivation; this skill leverages AI vision (and optional audio) to actively identify frustration and provide personalized motivation, filling the gap in intelligent rehab psychological support.\n\n通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。当检测到上述行为时，系统自动播放个性化鼓励语音（如'您已经很棒了，"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-rehab-motivation-encouragement-analysis\",\n  \"version\": \"1.0.12\",\n  \"publishedAt\": 1791019706629\n}"},{"path":"references/api_doc.md","content":"# API 接口文档\n\n此处用于存放康复患者沮丧/放弃倾向激励 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动康复患者沮丧/放弃倾向检测任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取沮丧事件 + 激励动作清单\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史激励记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出康复激励日志报告\n5. （可选）`/web/companion/v2/trigger-soothing-action` - 触发联动激励动作（智能音箱鼓励语 / 屏幕进步对比 / 康复师 APP 推送）\n6. （可选）`/web/rehab/v2/get-historical-progress` - 获取患者历史训练完成度（用于进步对比和长期无进展判定）\n\n## 场景代码\n\n- `SMYX_REHAB_MOTIVATION_ENCOURAGEMENT_ANALYSIS` - 康复患者沮丧/放弃倾向激励\n\n## 输入约束\n\n- 摄像头：康复中心训练区 / 作业治疗室 / 家庭康复区固定摄像头，能完整看到患者上半身和训练动作\n- 帧率 ≥ 15 FPS；分辨率 ≥ 720p；优先正面或 45° 侧前方\n- 音频可选：采样率 ≥ 16kHz（用于叹气声 / 言语沉默 / 自言自语检测）\n- 时段：仅在患者训练时段内启用（默认按训练计划，可配置）\n- 多患者场景按目标跟踪 + 人脸识别绑定到注册患者 ID（每位患者独立基线 + 训练计划）\n- 患者本人必须授权部署，康复机构需公示告知；居家场景需家属或患者本人同意\n- 训练前需录入：训练项目清单、每项预设次数/时长/关节活动度基线、康复阶段（早期/中期/后期）\n\n## 关键观测信号\n\n### 视频（核心）\n- `sigh_event_count` - 叹气事件次数（胸腹快速隆起-收缩伴呼气节律）\n- `training_interrupt_event` - 中断训练事件（未达预设次数/时长前主动停止）\n- `head_down_silent_sec` - 低头不语持续时间（头部低垂 + 无言语交流）\n- `eye_contact_avoidance_score` - 眼神接触回避评分（0-100）\n- `joint_rom_shrink_ratio` - 关节活动范围相对训练初期的收缩比例（如 0.6 表示当前 ROM 仅为基线 60%）\n- `movement_perfunctory_score` - 动作敷衍评分（0-100，速度慢 + 幅度小 + 节律乱）\n- `facial_frustration_score` - 面部沮丧评分（0-100，皱眉 + 嘴角下拉 + 目光呆滞）\n\n### 音频（可选）\n- `sigh_audio_event_count` - 叹气声音事件\n- `negative_self_talk_count` - 消极自言自语次数（\"我做不到 / 没用 / 不练了\"等）\n- `silent_duration_min` - 训练期间累计沉默时长\n\n### 进展信号（基于历史数据）\n- `today_vs_yesterday_delta` - 今日 vs 昨日完成度差值（按训练项目）\n- `recent_3day_trend` - 近 3 日训练完成度趋势（rising / flat / falling）\n- `no_progress_days` - 连续无进展天数\n\n## 场景判定\n\n- `rehab_motivation_none` - 训练状态良好\n- `rehab_motivation_mild` - 轻度沮丧（偶发叹气 + 短暂低头）\n- `rehab_motivation_sigh_cluster` - 短时间内多次叹气\n- `rehab_motivation_interrupt` - 提前中断训练\n- `rehab_motivation_perfunctory` - 动作迟缓敷衍 + ROM 显著缩小\n- `rehab_motivation_no_progress` - 连续 ≥ 3 日同一项目停滞或下降\n- `rehab_motivation_strong` - 显著放弃倾向（多项叠加）\n\n## 4 级激励策略递进\n\n- Level 1（mild）：智能音箱低音量播放温和鼓励语（\"您今天的状态不错，再来一组试试\"）\n- Level 2（sigh_cluster / interrupt）：在 Level 1 基础上，屏幕/语音展示与昨日（或最近一次）的具体进步对比（\"您今天比昨天多做 2 次抬腿\"）\n- Level 3（perfunctory / no_progress）：在 Level 2 基础上向康复师 APP 推送提醒\"患者出现放弃倾向，请关注或介入指导\"\n- Level 4（strong / 持续不缓解 / 出现强烈负向自语）：紧急推送康复师 + 家属，并建议暂停当前训练项目、切换轻松项目或休息\n\n## 单训练日动作上限\n\n- mild × 6 / moderate × 4 / strong × 2 / Level 4 不设上限\n\n## 红线约束\n\n- 禁止做\"康复无效 / 抑郁症 / 适应障碍\"等医学诊断\n- 禁止长期存储患者隐私视频（≤ 7 天，仅入库沮丧事件片段；机构按伦理审查 ≤ 72 小时）\n- 禁止用于商业广告 / AI 训练；禁第三方共享\n- 禁止激励音量 > 50 dB\n- 严禁使用 AI 克隆 / 合成家属或康复师声音；必须使用本人提前授权的预录音或标准 TTS\n- 禁止使用\"加油坚持就是胜利 / 别人都能你怎么不行 / 你这样不行\"等压力型或对比型激励语\n- 激励语必须个性化、具体、肯定（基于真实进步数据），优先采用 SMART 反馈\n- 禁止越权代康复师调整训练强度 / 项目；任何强度变更必须由康复师确认\n- 进步对比数据必须基于真实历史记录，**禁止伪造或夸大进步数值**"},{"path":"skills/smyx_analysis/references/api_doc.md","content":"# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |"},{"path":"scripts/config.yaml","content":"{}"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching preset reps or duration), head-down silence (head lowered, avoiding eye contact, long-term silence), sluggish or. | 通过康复中心或家庭康复区的固定摄像头，分析患者在进行康复训练时的视频，检测沮丧/放弃倾向行为：叹气（胸腹快速起伏伴呼气声）、中断训练（在未达到预设次数或时间前主动停止动作）、低头不语（头部低垂，避免眼神接触，长时间无言语）、动作迟缓或敷衍（关节活动范围明显小于前期），以及长时间无进展（连续多日同一训练项目的表现停滞或下降）。 Skill: Rehab Patient Frustration / Giving-up Tendency Motivation | 康复患者沮丧/放弃倾向激励 Owner: 18072937735 Summary: Through fixed cameras in rehabilitation centers or home rehab areas, the system analyzes video of patients during rehabilitation training to detect frustration / giving-up tendency behaviors: sighing (rapid chest-abdomen rise-fall with exhalation), training interruption (actively stopping before reaching prese","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1237,"uniquenessScore":45,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T00:43:30.747Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-10T00:43:30.747Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T07:12:56.148Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}