{"id":"fda95006-1c9f-4cbb-85be-14d4c2f580e0","entityType":"agent","slug":"clawhub-18072937735-smyx-elderly-tachypnea-detection-analysis","name":"Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别","canonicalUrl":"https://www.xpersona.co/agent/clawhub-18072937735-smyx-elderly-tachypnea-detection-analysis","canonicalPath":"/agent/clawhub-18072937735-smyx-elderly-tachypnea-detection-analysis","generatedAt":"2026-10-10T07:52:59.251Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-10T01:27:01.946Z","emptyReason":null},"description":"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 Skill: Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别 Owner: 18072937735 Summary: Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注","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-elderly-tachypnea-detection-analysis","sourceUrl":"https://clawhub.ai/18072937735/smyx-elderly-tachypnea-detection-analysis","homepage":"https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/18072937735/smyx-elderly-tachypnea-detection-analysis","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":65,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and com"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T01:27:01.946Z","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-10T01:27:01.946Z","emptyReason":null},"stars":null,"forks":null,"downloads":1807,"packageName":null,"latestVersion":"1.0.12","tractionLabel":"1.8K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T01:27:01.917Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T01:27:01.946Z","lastCrawledAt":"2026-10-10T01:27:01.917Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T01:27:01.917Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.12","createdAt":"2026-09-28T01:53:30.397Z","changelog":"- Updated skill version to 1.0.15. - SKILL.md: Revised version numbers and made documentation or metadata adjustments. - Updated configuration in skills/smyx_common/scripts/config.yaml. - Removed the skill-card.md file to streamline documentation.","fileCount":31,"zipByteSize":40412},{"version":"1.0.11","createdAt":"2026-09-15T17:20:30.303Z","changelog":"- Updated SKILL.md to version 1.0.13 with minor documentation edits. - Removed skill-card.md file. - No logic or interface changes to the skill functionality.","fileCount":31,"zipByteSize":40750},{"version":"1.0.10","createdAt":"2026-08-29T10:07:29.048Z","changelog":"- Removed redundant documentation file: skill-card.md. - No changes to skill logic or features. - All functionality and workflow remain the same.","fileCount":31,"zipByteSize":40758},{"version":"1.0.9","createdAt":"2026-08-22T11:50:29.400Z","changelog":"- Updated SKILL.md version from 1.0.10 to 1.0.11. - Removed deprecated file: skill-card.md. - No functional or user-facing changes to analysis capabilities or workflow. - Documentation and version metadata have been synchronized; feature set remains the same.","fileCount":31,"zipByteSize":40701},{"version":"1.0.8","createdAt":"2026-08-16T13:55:30.955Z","changelog":"- Updated version number in SKILL.md from 1.0.8 to 1.0.10. - Updated configuration details in skills/smyx_common/scripts/config.yaml. - Removed the file skill-card.md. - No changes to core functionality.","fileCount":31,"zipByteSize":40652},{"version":"1.0.7","createdAt":"2026-08-07T16:37:35.483Z","changelog":"- Updated version to 1.0.8. - Documentation (SKILL.md) updated, including minor text and formatting changes. - Removed skill-card.md file to streamline documentation.","fileCount":31,"zipByteSize":40612},{"version":"1.0.6","createdAt":"2026-07-30T16:17:29.665Z","changelog":"- Updated version number from 1.0.6 to 1.0.7. - Removed the redundant or deprecated file skill-card.md. - No changes to core features, functionality, or workflows. - Documentation and resource structure remain the same.","fileCount":31,"zipByteSize":40676},{"version":"1.0.5","createdAt":"2026-07-17T21:29:27.888Z","changelog":"Version 1.0.5 - Updated documentation in SKILL.md for feature explanations, usage workflow, and requirements. - Changed SKILL.md version from 1.0.4 to 1.0.6 and added clarifications. - Refactored or updated utility script (skills/smyx_common/scripts/util.py). - Removed redundant or deprecated documentation file (skill-card.md).","fileCount":31,"zipByteSize":40733}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17f8q65zg3y98t86jdg1177g583whq8:smyx-elderly-tachypnea-detection-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-elderly-tachypnea-detection-analysis/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-elderly-tachypnea-detection-analysis/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-elderly-tachypnea-detection-analysis/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-elderly-tachypnea-detection-analysis/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-elderly-tachypnea-detection-analysis/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-elderly-tachypnea-detection-analysis/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:52:59.247Z"}},"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-elderly-tachypnea-detection-analysis/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-elderly-tachypnea-detection-analysis/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-elderly-tachypnea-detection-analysis/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-elderly-tachypnea-detection-analysis/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-10T01:27:01.946Z","emptyReason":null},"readme":"Skill: Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n\nOwner: 18072937735\n\nSummary: Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\n\nTags: latest:1.0.12\n\nVersion history:\n\nv1.0.12 | 2026-09-28T01:53:30.397Z | auto\n\n- Updated skill version to 1.0.15.\n- SKILL.md: Revised version numbers and made documentation or metadata adjustments.\n- Updated configuration in skills/smyx_common/scripts/config.yaml.\n- Removed the skill-card.md file to streamline documentation.\n\nv1.0.11 | 2026-09-15T17:20:30.303Z | auto\n\n- Updated SKILL.md to version 1.0.13 with minor documentation edits.\n- Removed skill-card.md file.\n- No logic or interface changes to the skill functionality.\n\nv1.0.10 | 2026-08-29T10:07:29.048Z | auto\n\n- Removed redundant documentation file: skill-card.md.\n- No changes to skill logic or features.\n- All functionality and workflow remain the same.\n\nv1.0.9 | 2026-08-22T11:50:29.400Z | auto\n\n- Updated SKILL.md version from 1.0.10 to 1.0.11.\n- Removed deprecated file: skill-card.md.\n- No functional or user-facing changes to analysis capabilities or workflow.\n- Documentation and version metadata have been synchronized; feature set remains the same.\n\nv1.0.8 | 2026-08-16T13:55:30.955Z | auto\n\n- Updated version number in SKILL.md from 1.0.8 to 1.0.10.\n- Updated configuration details in skills/smyx_common/scripts/config.yaml.\n- Removed the file skill-card.md.\n- No changes to core functionality.\n\nv1.0.7 | 2026-08-07T16:37:35.483Z | auto\n\n- Updated version to 1.0.8.\n- Documentation (SKILL.md) updated, including minor text and formatting changes.\n- Removed skill-card.md file to streamline documentation.\n\nv1.0.6 | 2026-07-30T16:17:29.665Z | auto\n\n- Updated version number from 1.0.6 to 1.0.7.\n- Removed the redundant or deprecated file skill-card.md.\n- No changes to core features, functionality, or workflows.\n- Documentation and resource structure remain the same.\n\nv1.0.5 | 2026-07-17T21:29:27.888Z | auto\n\nVersion 1.0.5\n\n- Updated documentation in SKILL.md for feature explanations, usage workflow, and requirements.\n- Changed SKILL.md version from 1.0.4 to 1.0.6 and added clarifications.\n- Refactored or updated utility script (skills/smyx_common/scripts/util.py).\n- Removed redundant or deprecated documentation file (skill-card.md).\n\nv1.0.4 | 2026-07-08T18:42:30.893Z | auto\n\nsmyx-elderly-tachypnea-detection-analysis v1.0.4\n\n- Updated SKILL.md to reflect the new version and documentation improvements.\n- Removed the redundant skill-card.md file.\n- Minor script/configuration updates in skills/smyx_common/scripts/config.py.\n\nv1.0.3 | 2026-06-30T12:57:26.384Z | auto\n\n- Updated version to 1.0.3.\n- Documentation updates in SKILL.md; minor revisions and clarifications.\n- Internal scripts updated: changes to dao.py and util.py in skills/smyx_common/scripts/.\n- Obsolete documentation file skill-card.md removed.\n\nv1.0.2 | 2026-06-26T12:13:28.788Z | auto\n\n- Overhauled user identity handling: now fully automatic and internal, with no user prompt or exposure of identity parameters in any workflow or output.\n- Simplified skill instructions and examples to reflect the automated ID management—user only provides media input, not any form of open-id.\n- Updated documentation, workflows, and constraints to strictly prevent asking for, displaying, or requiring user identity details.\n- Removed prompts and technical requirements related to manual open-id input.\n- Improved resource index and usage examples for clarity under the new process.\n- Removed unused files and updated script locations accordingly.\n\nv1.0.1 | 2026-06-16T08:54:31.155Z | auto\n\n- Updated skill version to 1.0.1 and added license information.\n- Simplified and clarified the main description in SKILL.md.\n- Changed open-id config file lookup path in the workflow to scripts/config.yaml (was skills/smyx_common/scripts/config.yaml).\n- Updated related documentation and instructions to match the new config file path and structure.\n- Removed the deprecated file skill-card.md.\n\nv1.0.0 | 2026-05-25T12:27:01.080Z | auto\n\nInitial release: Automated elderly tachypnea detection using infrared/low-light cameras.\n\n- Monitors chest/abdominal motion of elderly at rest and provides respiratory rate analysis.\n- Sends proactive 'tachypnea' alerts when respiratory rate exceeds a preset threshold (default 24 bpm).\n- Designed for home care, nursing homes, and rehabilitation wards with continuous monitoring.\n- Includes strict open-id management for data security and report tracking.\n- Supports querying historical reports with standardized cloud-based retrieval and Markdown table output.\n\nArchive index:\n\nArchive v1.0.12: 31 files, 40412 bytes\n\nFiles: references/api_doc.md (2276b), scripts/__init__.py (55b), scripts/config.py (690b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_elderly_tachypnea_detection_analysis.py (3652b), skill-card.md (2075b), SKILL.md (11952b), 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 (161b)\n\nFile v1.0.12:SKILL.md\n\n---\nname: \"smyx-elderly-tachypnea-detection-analysis\"\ndescription: \"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\"\nversion: \"1.0.15\"\nlicense: \"MIT-0\"\n---\n\n# 🫁 Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **老年人呼吸急促/困难识别** |\n| 🎯 核心目标 | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` |\n\nUsing a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). When the respiratory rate exceeds a preset upper bound (default 24 bpm; the normal resting range for the elderly is generally 12-20 bpm), the system outputs a 'tachypnea' alert, reminding family members or caregivers to pay attention to possible cardiopulmonary diseases, fever, or respiratory infections. Application scenarios: home-based elderly care, nursing homes, rehabilitation wards. The system monitors continuously; when an elevated respiratory rate persists, alerts are pushed proactively. Skill features: tachypnea is an early signal of pneumonia, heart failure, acute exacerbation of COPD and other conditions. AI auto-monitoring helps families detect problems in time and avoid delayed treatment. Can be integrated into smart cameras or elderly-care platforms to improve at-home health safety.\n\n通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。应用场景：居家养老、养老院、康复病房。系统持续监测，发现呼吸频率持续升高时主动推送警报。技能特点：呼吸急促是肺炎、心衰、慢阻肺急性加重等疾病的早期信号。通过AI自动监测，可帮助家属及时发现问题，避免延误治疗。该技能可集成到智能摄像头或养老平台中，提升老年人居家健康安全水平。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的老年人呼吸健康监测 AI。你的任务是分析老年人静息状态下胸腹部的视频，检测呼吸周期，计算呼吸频率（次/分钟）。当呼吸频率超过阈值（默认 24 次/分）时，输出预警。不要提供医疗诊断或临床建议，仅输出基于视觉的呼吸频率数值与异常提示。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于老年人静息（睡眠/静卧）状态下胸腹部监控视频，提取呼吸频率，按阈值评估呼吸急促/困难风险\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 人体卧姿检测 |\n| 2 | 胸腹起伏轮廓识别 |\n| 3 | 微小位移信号提取（可结合视频放大） |\n| 4 | 呼吸周期检测 |\n| 5 | 呼吸频率（次/分钟）计算 |\n| 6 | 节律评估（regular / irregular / paradoxical） |\n| 7 | 信号质量评级（high / medium / low） |\n| 8 | 风险等级判定（normal / mild / warning / critical） |\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_elderly_tachypnea_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_elderly_tachypnea_detection_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 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行老年人呼吸急促/困难识别 | 调用 `-m scripts.smyx_elderly_tachypnea_detection_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_elderly_tachypnea_detection_analysis.py`](scripts/smyx_elderly_tachypnea_detection_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；建议夜视模式、≥ 30 秒、覆盖胸腹部 |\n| 🔎 使用提醒 | 触发紧急预警时，请立即通过电话/上门方式人工核实，本工具仅作辅助监测，必要时拨打 120 |\n| 🔏 隐私合规 | 隐私合规：卧室视频涉及个人隐私，使用前需取得被监护人或家属知情同意，并妥善保管/加密相关录像 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json\n```\n\nFile v1.0.12:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-elderly-tachypnea-detection-analysis\",\n  \"version\": \"1.0.12\",\n  \"publishedAt\": 1790560410397\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}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` - 老年人呼吸急促/困难识别\n\n## 输入约束\n\n- 摄像头建议固定于卧室上方/侧方，覆盖胸腹部区域\n- 老年人需处于**静息状态**（睡眠或静卧）下采集，避免剧烈活动\n- 视频时长建议 ≥ 30 秒（推荐 60 秒）以稳定计算呼吸周期\n- 帧率建议 ≥ 15 FPS；夜间启用红外/微光模式\n\n## 关键检测对象\n\n- 胸部 / 腹部起伏轮廓\n- 呼吸周期（吸气 + 呼气）\n- 微小位移信号（可结合视频放大技术）\n\n## 呼吸频率参考范围（老年人静息）\n\n- 正常：12-20 次/分\n- 轻度增快：20-24 次/分\n- 呼吸急促（tachypnea）：≥ 24 次/分（默认告警阈值）\n- 严重急促：≥ 30 次/分（critical）\n\n## 输出字段（参考）\n\n- `person_detected` - 是否检测到躺卧人体\n- `is_resting` - 是否处于静息状态\n- `respiratory_rate_bpm` - 呼吸频率（次/分钟）\n- `respiratory_pattern` - 呼吸节律描述（regular / irregular / paradoxical）\n- `chest_amplitude_pixel` - 胸腹起伏幅度（像素，参考值）\n- `signal_quality` - 信号质量（high / medium / low）\n- `risk_level` - 风险等级（normal / mild / warning / critical）\n- `alert_message` - 提示文本（如\"检测到老人静息呼吸频率 26 次/分，超过 24 次/分阈值，建议关注是否有发热、肺炎或心衰等情况，必要时就医\"）\n- `medical_followup_hint` - 医疗复核提示（仅作建议，非诊断）\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 resting older adults' bedroom video for breathing rate and flags possible rapid breathing.\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\nCaregivers and elder-care providers use resting video to review respiratory-rate estimates, alerts, and historical reports. This is monitoring support, not a medical diagnosis.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Sensitive bedroom health video or video URLs may be sent to external lifeemergence services.\n\nMitigation: Obtain explicit consent from the monitored person or guardian and review service retention controls before use.\n\nRisk: Reports may be linked to a silently managed persistent identity, with authentication tokens stored in a local workspace database.\n\nMitigation: Review account controls and protect local token storage; limit access to reports and credentials.\n\nRisk: Visual respiratory estimates and alerts may be mistaken for a clinical diagnosis.\n\nMitigation: Use results only as monitoring support and arrange human or clinical follow-up when warranted.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis)\n- [Skill API reference](references/api_doc.md)\n- [Skill demonstration](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, JSON]\n\n**Output Format:** [Structured breathing analysis or Markdown historical-report table]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include respiratory-rate estimates, alerts, and report links.]\n\n## Skill Version(s):\n\n1.0.12 (source: server-resolved ClawHub release)\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, 40750 bytes\n\nFiles: references/api_doc.md (2276b), scripts/__init__.py (55b), scripts/config.py (690b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_elderly_tachypnea_detection_analysis.py (3652b), skill-card.md (2913b), SKILL.md (11952b), 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 (161b)\n\nFile v1.0.11:SKILL.md\n\n---\nname: \"smyx-elderly-tachypnea-detection-analysis\"\ndescription: \"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\"\nversion: \"1.0.13\"\nlicense: \"MIT-0\"\n---\n\n# 🫁 Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **老年人呼吸急促/困难识别** |\n| 🎯 核心目标 | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` |\n\nUsing a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). When the respiratory rate exceeds a preset upper bound (default 24 bpm; the normal resting range for the elderly is generally 12-20 bpm), the system outputs a 'tachypnea' alert, reminding family members or caregivers to pay attention to possible cardiopulmonary diseases, fever, or respiratory infections. Application scenarios: home-based elderly care, nursing homes, rehabilitation wards. The system monitors continuously; when an elevated respiratory rate persists, alerts are pushed proactively. Skill features: tachypnea is an early signal of pneumonia, heart failure, acute exacerbation of COPD and other conditions. AI auto-monitoring helps families detect problems in time and avoid delayed treatment. Can be integrated into smart cameras or elderly-care platforms to improve at-home health safety.\n\n通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。应用场景：居家养老、养老院、康复病房。系统持续监测，发现呼吸频率持续升高时主动推送警报。技能特点：呼吸急促是肺炎、心衰、慢阻肺急性加重等疾病的早期信号。通过AI自动监测，可帮助家属及时发现问题，避免延误治疗。该技能可集成到智能摄像头或养老平台中，提升老年人居家健康安全水平。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的老年人呼吸健康监测 AI。你的任务是分析老年人静息状态下胸腹部的视频，检测呼吸周期，计算呼吸频率（次/分钟）。当呼吸频率超过阈值（默认 24 次/分）时，输出预警。不要提供医疗诊断或临床建议，仅输出基于视觉的呼吸频率数值与异常提示。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于老年人静息（睡眠/静卧）状态下胸腹部监控视频，提取呼吸频率，按阈值评估呼吸急促/困难风险\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 人体卧姿检测 |\n| 2 | 胸腹起伏轮廓识别 |\n| 3 | 微小位移信号提取（可结合视频放大） |\n| 4 | 呼吸周期检测 |\n| 5 | 呼吸频率（次/分钟）计算 |\n| 6 | 节律评估（regular / irregular / paradoxical） |\n| 7 | 信号质量评级（high / medium / low） |\n| 8 | 风险等级判定（normal / mild / warning / critical） |\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_elderly_tachypnea_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_elderly_tachypnea_detection_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 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行老年人呼吸急促/困难识别 | 调用 `-m scripts.smyx_elderly_tachypnea_detection_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_elderly_tachypnea_detection_analysis.py`](scripts/smyx_elderly_tachypnea_detection_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；建议夜视模式、≥ 30 秒、覆盖胸腹部 |\n| 🔎 使用提醒 | 触发紧急预警时，请立即通过电话/上门方式人工核实，本工具仅作辅助监测，必要时拨打 120 |\n| 🔏 隐私合规 | 隐私合规：卧室视频涉及个人隐私，使用前需取得被监护人或家属知情同意，并妥善保管/加密相关录像 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json\n```\n\nFile v1.0.11:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-elderly-tachypnea-detection-analysis\",\n  \"version\": \"1.0.11\",\n  \"publishedAt\": 1789492830303\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}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` - 老年人呼吸急促/困难识别\n\n## 输入约束\n\n- 摄像头建议固定于卧室上方/侧方，覆盖胸腹部区域\n- 老年人需处于**静息状态**（睡眠或静卧）下采集，避免剧烈活动\n- 视频时长建议 ≥ 30 秒（推荐 60 秒）以稳定计算呼吸周期\n- 帧率建议 ≥ 15 FPS；夜间启用红外/微光模式\n\n## 关键检测对象\n\n- 胸部 / 腹部起伏轮廓\n- 呼吸周期（吸气 + 呼气）\n- 微小位移信号（可结合视频放大技术）\n\n## 呼吸频率参考范围（老年人静息）\n\n- 正常：12-20 次/分\n- 轻度增快：20-24 次/分\n- 呼吸急促（tachypnea）：≥ 24 次/分（默认告警阈值）\n- 严重急促：≥ 30 次/分（critical）\n\n## 输出字段（参考）\n\n- `person_detected` - 是否检测到躺卧人体\n- `is_resting` - 是否处于静息状态\n- `respiratory_rate_bpm` - 呼吸频率（次/分钟）\n- `respiratory_pattern` - 呼吸节律描述（regular / irregular / paradoxical）\n- `chest_amplitude_pixel` - 胸腹起伏幅度（像素，参考值）\n- `signal_quality` - 信号质量（high / medium / low）\n- `risk_level` - 风险等级（normal / mild / warning / critical）\n- `alert_message` - 提示文本（如\"检测到老人静息呼吸频率 26 次/分，超过 24 次/分阈值，建议关注是否有发热、肺炎或心衰等情况，必要时就医\"）\n- `medical_followup_hint` - 医疗复核提示（仅作建议，非诊断）\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: dev\n\nFile v1.0.11:skill-card.md\n\n## Description:\n\nThis skill analyzes fixed-camera infrared or low-light footage of an older adult at rest to estimate respiratory rate and flag tachypnea or dyspnea risk from visual breathing motion.\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, caregivers, and developers can use this skill to submit elderly rest-state chest or abdominal monitoring videos for respiratory-rate analysis, structured risk flags, and historical report lookup. The skill is an auxiliary monitoring aid and is not a medical diagnosis.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Sensitive bedroom monitoring videos and related health reports are uploaded to the publisher cloud service.\n\nMitigation: Use only with explicit consent from the monitored person or authorized caregiver, and apply appropriate retention, access, and encryption controls for source videos and reports.\n\nRisk: The security evidence flags unsafe default HTTP configuration.\n\nMitigation: Require HTTPS production endpoints before use and avoid development or LAN HTTP endpoints for sensitive health footage.\n\nRisk: The security evidence flags automatic local identity and token persistence.\n\nMitigation: Apply token storage controls, limit local access to persisted identity data, and provide a documented way to clear stored local identity records.\n\nRisk: Visual respiratory-rate estimates and alert levels can be mistaken for clinical diagnosis.\n\nMitigation: Present outputs as auxiliary monitoring signals, require human follow-up for urgent alerts, and direct users to qualified medical care when symptoms or risk indicators are serious.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis)\n- [Skill Demo](https://lifeemergence.com/sample.html)\n- [Elderly Tachypnea 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 and JSON text containing structured analysis results, respiratory-rate fields, risk level, alert text, and report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May upload local files or pass remote video URLs to the publisher cloud service; supports historical report listing.]\n\n## Skill Version(s):\n\n1.0.11 (source: ClawHub release metadata; artifact frontmatter reports 1.0.13)\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, 40758 bytes\n\nFiles: references/api_doc.md (2276b), scripts/__init__.py (55b), scripts/config.py (690b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_elderly_tachypnea_detection_analysis.py (3652b), skill-card.md (2918b), SKILL.md (11952b), 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 (161b)\n\nFile v1.0.10:SKILL.md\n\n---\nname: \"smyx-elderly-tachypnea-detection-analysis\"\ndescription: \"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\"\nversion: \"1.0.11\"\nlicense: \"MIT-0\"\n---\n\n# 🫁 Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **老年人呼吸急促/困难识别** |\n| 🎯 核心目标 | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` |\n\nUsing a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). When the respiratory rate exceeds a preset upper bound (default 24 bpm; the normal resting range for the elderly is generally 12-20 bpm), the system outputs a 'tachypnea' alert, reminding family members or caregivers to pay attention to possible cardiopulmonary diseases, fever, or respiratory infections. Application scenarios: home-based elderly care, nursing homes, rehabilitation wards. The system monitors continuously; when an elevated respiratory rate persists, alerts are pushed proactively. Skill features: tachypnea is an early signal of pneumonia, heart failure, acute exacerbation of COPD and other conditions. AI auto-monitoring helps families detect problems in time and avoid delayed treatment. Can be integrated into smart cameras or elderly-care platforms to improve at-home health safety.\n\n通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。应用场景：居家养老、养老院、康复病房。系统持续监测，发现呼吸频率持续升高时主动推送警报。技能特点：呼吸急促是肺炎、心衰、慢阻肺急性加重等疾病的早期信号。通过AI自动监测，可帮助家属及时发现问题，避免延误治疗。该技能可集成到智能摄像头或养老平台中，提升老年人居家健康安全水平。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的老年人呼吸健康监测 AI。你的任务是分析老年人静息状态下胸腹部的视频，检测呼吸周期，计算呼吸频率（次/分钟）。当呼吸频率超过阈值（默认 24 次/分）时，输出预警。不要提供医疗诊断或临床建议，仅输出基于视觉的呼吸频率数值与异常提示。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于老年人静息（睡眠/静卧）状态下胸腹部监控视频，提取呼吸频率，按阈值评估呼吸急促/困难风险\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 人体卧姿检测 |\n| 2 | 胸腹起伏轮廓识别 |\n| 3 | 微小位移信号提取（可结合视频放大） |\n| 4 | 呼吸周期检测 |\n| 5 | 呼吸频率（次/分钟）计算 |\n| 6 | 节律评估（regular / irregular / paradoxical） |\n| 7 | 信号质量评级（high / medium / low） |\n| 8 | 风险等级判定（normal / mild / warning / critical） |\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_elderly_tachypnea_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_elderly_tachypnea_detection_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 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行老年人呼吸急促/困难识别 | 调用 `-m scripts.smyx_elderly_tachypnea_detection_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_elderly_tachypnea_detection_analysis.py`](scripts/smyx_elderly_tachypnea_detection_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；建议夜视模式、≥ 30 秒、覆盖胸腹部 |\n| 🔎 使用提醒 | 触发紧急预警时，请立即通过电话/上门方式人工核实，本工具仅作辅助监测，必要时拨打 120 |\n| 🔏 隐私合规 | 隐私合规：卧室视频涉及个人隐私，使用前需取得被监护人或家属知情同意，并妥善保管/加密相关录像 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json\n```\n\nFile v1.0.10:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-elderly-tachypnea-detection-analysis\",\n  \"version\": \"1.0.10\",\n  \"publishedAt\": 1787998049048\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}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` - 老年人呼吸急促/困难识别\n\n## 输入约束\n\n- 摄像头建议固定于卧室上方/侧方，覆盖胸腹部区域\n- 老年人需处于**静息状态**（睡眠或静卧）下采集，避免剧烈活动\n- 视频时长建议 ≥ 30 秒（推荐 60 秒）以稳定计算呼吸周期\n- 帧率建议 ≥ 15 FPS；夜间启用红外/微光模式\n\n## 关键检测对象\n\n- 胸部 / 腹部起伏轮廓\n- 呼吸周期（吸气 + 呼气）\n- 微小位移信号（可结合视频放大技术）\n\n## 呼吸频率参考范围（老年人静息）\n\n- 正常：12-20 次/分\n- 轻度增快：20-24 次/分\n- 呼吸急促（tachypnea）：≥ 24 次/分（默认告警阈值）\n- 严重急促：≥ 30 次/分（critical）\n\n## 输出字段（参考）\n\n- `person_detected` - 是否检测到躺卧人体\n- `is_resting` - 是否处于静息状态\n- `respiratory_rate_bpm` - 呼吸频率（次/分钟）\n- `respiratory_pattern` - 呼吸节律描述（regular / irregular / paradoxical）\n- `chest_amplitude_pixel` - 胸腹起伏幅度（像素，参考值）\n- `signal_quality` - 信号质量（high / medium / low）\n- `risk_level` - 风险等级（normal / mild / warning / critical）\n- `alert_message` - 提示文本（如\"检测到老人静息呼吸频率 26 次/分，超过 24 次/分阈值，建议关注是否有发热、肺炎或心衰等情况，必要时就医\"）\n- `medical_followup_hint` - 医疗复核提示（仅作建议，非诊断）\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\nUsing a fixed bedroom camera, this skill analyzes an elderly person at rest to estimate respiratory rate and flag possible tachypnea or dyspnea without providing a medical diagnosis.\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 caregivers, family members, and elder-care operators use this skill to analyze fixed-camera bedroom video or image inputs for resting respiratory-rate signals, structured risk levels, report links, and historical respiratory-monitoring reports. It is an assistive monitoring skill and should not be treated as a clinical diagnosis.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Private bedroom video or images may be sent to a remote analysis service.\n\nMitigation: Use the skill only with informed consent from the monitored person or authorized caregiver, and confirm the configured service endpoint is trusted before submitting media.\n\nRisk: Cloud health-report history can be retrieved for the resolved identity.\n\nMitigation: Run history queries only in workspaces where identity reuse is acceptable, and review access controls before sharing outputs or report links.\n\nRisk: The skill may silently create or reuse an identity and store authentication tokens locally.\n\nMitigation: Inspect local credential storage and workspace sharing practices before installation, especially on shared machines or multi-user agent environments.\n\nRisk: Respiratory alerts can be mistaken for medical diagnosis.\n\nMitigation: Present results as assistive monitoring only, require human review for urgent alerts, and escalate to appropriate medical care when symptoms or risk levels warrant it.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis)\n- [Skill demo](https://lifeemergence.com/sample.html)\n- [API interface documentation](references/api_doc.md)\n- [Shared analysis API documentation](skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown or JSON respiratory-analysis report with shell command examples and report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include respiratory rate, breathing-pattern assessment, signal quality, risk level, alert text, medical follow-up hint, and historical report tables.]\n\n## Skill Version(s):\n\n1.0.10 (source: server release metadata; 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.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, 40701 bytes\n\nFiles: references/api_doc.md (2276b), scripts/__init__.py (55b), scripts/config.py (690b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_elderly_tachypnea_detection_analysis.py (3652b), skill-card.md (2745b), SKILL.md (11952b), 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 (160b)\n\nFile v1.0.9:SKILL.md\n\n---\nname: \"smyx-elderly-tachypnea-detection-analysis\"\ndescription: \"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\"\nversion: \"1.0.11\"\nlicense: \"MIT-0\"\n---\n\n# 🫁 Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **老年人呼吸急促/困难识别** |\n| 🎯 核心目标 | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` |\n\nUsing a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). When the respiratory rate exceeds a preset upper bound (default 24 bpm; the normal resting range for the elderly is generally 12-20 bpm), the system outputs a 'tachypnea' alert, reminding family members or caregivers to pay attention to possible cardiopulmonary diseases, fever, or respiratory infections. Application scenarios: home-based elderly care, nursing homes, rehabilitation wards. The system monitors continuously; when an elevated respiratory rate persists, alerts are pushed proactively. Skill features: tachypnea is an early signal of pneumonia, heart failure, acute exacerbation of COPD and other conditions. AI auto-monitoring helps families detect problems in time and avoid delayed treatment. Can be integrated into smart cameras or elderly-care platforms to improve at-home health safety.\n\n通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。应用场景：居家养老、养老院、康复病房。系统持续监测，发现呼吸频率持续升高时主动推送警报。技能特点：呼吸急促是肺炎、心衰、慢阻肺急性加重等疾病的早期信号。通过AI自动监测，可帮助家属及时发现问题，避免延误治疗。该技能可集成到智能摄像头或养老平台中，提升老年人居家健康安全水平。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的老年人呼吸健康监测 AI。你的任务是分析老年人静息状态下胸腹部的视频，检测呼吸周期，计算呼吸频率（次/分钟）。当呼吸频率超过阈值（默认 24 次/分）时，输出预警。不要提供医疗诊断或临床建议，仅输出基于视觉的呼吸频率数值与异常提示。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于老年人静息（睡眠/静卧）状态下胸腹部监控视频，提取呼吸频率，按阈值评估呼吸急促/困难风险\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 人体卧姿检测 |\n| 2 | 胸腹起伏轮廓识别 |\n| 3 | 微小位移信号提取（可结合视频放大） |\n| 4 | 呼吸周期检测 |\n| 5 | 呼吸频率（次/分钟）计算 |\n| 6 | 节律评估（regular / irregular / paradoxical） |\n| 7 | 信号质量评级（high / medium / low） |\n| 8 | 风险等级判定（normal / mild / warning / critical） |\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_elderly_tachypnea_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_elderly_tachypnea_detection_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 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行老年人呼吸急促/困难识别 | 调用 `-m scripts.smyx_elderly_tachypnea_detection_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_elderly_tachypnea_detection_analysis.py`](scripts/smyx_elderly_tachypnea_detection_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；建议夜视模式、≥ 30 秒、覆盖胸腹部 |\n| 🔎 使用提醒 | 触发紧急预警时，请立即通过电话/上门方式人工核实，本工具仅作辅助监测，必要时拨打 120 |\n| 🔏 隐私合规 | 隐私合规：卧室视频涉及个人隐私，使用前需取得被监护人或家属知情同意，并妥善保管/加密相关录像 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json\n```\n\nFile v1.0.9:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-elderly-tachypnea-detection-analysis\",\n  \"version\": \"1.0.9\",\n  \"publishedAt\": 1787399429400\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}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` - 老年人呼吸急促/困难识别\n\n## 输入约束\n\n- 摄像头建议固定于卧室上方/侧方，覆盖胸腹部区域\n- 老年人需处于**静息状态**（睡眠或静卧）下采集，避免剧烈活动\n- 视频时长建议 ≥ 30 秒（推荐 60 秒）以稳定计算呼吸周期\n- 帧率建议 ≥ 15 FPS；夜间启用红外/微光模式\n\n## 关键检测对象\n\n- 胸部 / 腹部起伏轮廓\n- 呼吸周期（吸气 + 呼气）\n- 微小位移信号（可结合视频放大技术）\n\n## 呼吸频率参考范围（老年人静息）\n\n- 正常：12-20 次/分\n- 轻度增快：20-24 次/分\n- 呼吸急促（tachypnea）：≥ 24 次/分（默认告警阈值）\n- 严重急促：≥ 30 次/分（critical）\n\n## 输出字段（参考）\n\n- `person_detected` - 是否检测到躺卧人体\n- `is_resting` - 是否处于静息状态\n- `respiratory_rate_bpm` - 呼吸频率（次/分钟）\n- `respiratory_pattern` - 呼吸节律描述（regular / irregular / paradoxical）\n- `chest_amplitude_pixel` - 胸腹起伏幅度（像素，参考值）\n- `signal_quality` - 信号质量（high / medium / low）\n- `risk_level` - 风险等级（normal / mild / warning / critical）\n- `alert_message` - 提示文本（如\"检测到老人静息呼吸频率 26 次/分，超过 24 次/分阈值，建议关注是否有发热、肺炎或心衰等情况，必要时就医\"）\n- `medical_followup_hint` - 医疗复核提示（仅作建议，非诊断）\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 fixed-camera video of an elderly person at rest to estimate respiratory rate and flag tachypnea or dyspnea risk from visual chest or abdominal motion.\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 caregivers, families, and elder-care platform operators use this skill to analyze elderly resting video, calculate respiratory rate, and produce visual-only alert reports for possible tachypnea or dyspnea. It is an assistive monitoring workflow and should not be treated as a medical diagnosis.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill processes sensitive bedroom video and health-adjacent respiratory reports through configured backend APIs.\n\nMitigation: Use only with clear consent from the monitored person or caregiver, and treat videos, reports, and generated links as sensitive data.\n\nRisk: The bundled configuration includes development HTTP endpoints in addition to production service URLs.\n\nMitigation: Verify backend configuration before deployment and use production HTTPS endpoints rather than development 192.168.1.234 HTTP endpoints.\n\nRisk: The workflow may store or reuse local user and token records for silent identity/account handling.\n\nMitigation: Protect the local data directory, restrict file access, and rotate or clear stored tokens when changing users or deployment environments.\n\nRisk: Respiratory-rate alerts are health-adjacent and may be mistaken for clinical diagnosis.\n\nMitigation: Present outputs as visual monitoring signals only, require human verification for urgent alerts, and escalate to qualified medical care when appropriate.\n\n## Reference(s):\n\n- [API interface documentation](references/api_doc.md)\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis)\n- [Skill demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, files]\n\n**Output Format:** [Markdown or JSON respiratory analysis report with optional saved output file.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include respiratory-rate values, risk levels, alert text, report links, and history tables returned by the configured backend.]\n\n## Skill Version(s):\n\n1.0.9 (source: server release metadata; artifact frontmatter says 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, 40652 bytes\n\nFiles: references/api_doc.md (2276b), scripts/__init__.py (55b), scripts/config.py (690b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_elderly_tachypnea_detection_analysis.py (3652b), skill-card.md (2681b), SKILL.md (11952b), 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 (160b)\n\nFile v1.0.8:SKILL.md\n\n---\nname: \"smyx-elderly-tachypnea-detection-analysis\"\ndescription: \"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\"\nversion: \"1.0.10\"\nlicense: \"MIT-0\"\n---\n\n# 🫁 Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **老年人呼吸急促/困难识别** |\n| 🎯 核心目标 | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` |\n\nUsing a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). When the respiratory rate exceeds a preset upper bound (default 24 bpm; the normal resting range for the elderly is generally 12-20 bpm), the system outputs a 'tachypnea' alert, reminding family members or caregivers to pay attention to possible cardiopulmonary diseases, fever, or respiratory infections. Application scenarios: home-based elderly care, nursing homes, rehabilitation wards. The system monitors continuously; when an elevated respiratory rate persists, alerts are pushed proactively. Skill features: tachypnea is an early signal of pneumonia, heart failure, acute exacerbation of COPD and other conditions. AI auto-monitoring helps families detect problems in time and avoid delayed treatment. Can be integrated into smart cameras or elderly-care platforms to improve at-home health safety.\n\n通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。应用场景：居家养老、养老院、康复病房。系统持续监测，发现呼吸频率持续升高时主动推送警报。技能特点：呼吸急促是肺炎、心衰、慢阻肺急性加重等疾病的早期信号。通过AI自动监测，可帮助家属及时发现问题，避免延误治疗。该技能可集成到智能摄像头或养老平台中，提升老年人居家健康安全水平。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的老年人呼吸健康监测 AI。你的任务是分析老年人静息状态下胸腹部的视频，检测呼吸周期，计算呼吸频率（次/分钟）。当呼吸频率超过阈值（默认 24 次/分）时，输出预警。不要提供医疗诊断或临床建议，仅输出基于视觉的呼吸频率数值与异常提示。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于老年人静息（睡眠/静卧）状态下胸腹部监控视频，提取呼吸频率，按阈值评估呼吸急促/困难风险\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 人体卧姿检测 |\n| 2 | 胸腹起伏轮廓识别 |\n| 3 | 微小位移信号提取（可结合视频放大） |\n| 4 | 呼吸周期检测 |\n| 5 | 呼吸频率（次/分钟）计算 |\n| 6 | 节律评估（regular / irregular / paradoxical） |\n| 7 | 信号质量评级（high / medium / low） |\n| 8 | 风险等级判定（normal / mild / warning / critical） |\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_elderly_tachypnea_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_elderly_tachypnea_detection_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 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行老年人呼吸急促/困难识别 | 调用 `-m scripts.smyx_elderly_tachypnea_detection_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_elderly_tachypnea_detection_analysis.py`](scripts/smyx_elderly_tachypnea_detection_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；建议夜视模式、≥ 30 秒、覆盖胸腹部 |\n| 🔎 使用提醒 | 触发紧急预警时，请立即通过电话/上门方式人工核实，本工具仅作辅助监测，必要时拨打 120 |\n| 🔏 隐私合规 | 隐私合规：卧室视频涉及个人隐私，使用前需取得被监护人或家属知情同意，并妥善保管/加密相关录像 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json\n```\n\nFile v1.0.8:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-elderly-tachypnea-detection-analysis\",\n  \"version\": \"1.0.8\",\n  \"publishedAt\": 1786888530955\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}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` - 老年人呼吸急促/困难识别\n\n## 输入约束\n\n- 摄像头建议固定于卧室上方/侧方，覆盖胸腹部区域\n- 老年人需处于**静息状态**（睡眠或静卧）下采集，避免剧烈活动\n- 视频时长建议 ≥ 30 秒（推荐 60 秒）以稳定计算呼吸周期\n- 帧率建议 ≥ 15 FPS；夜间启用红外/微光模式\n\n## 关键检测对象\n\n- 胸部 / 腹部起伏轮廓\n- 呼吸周期（吸气 + 呼气）\n- 微小位移信号（可结合视频放大技术）\n\n## 呼吸频率参考范围（老年人静息）\n\n- 正常：12-20 次/分\n- 轻度增快：20-24 次/分\n- 呼吸急促（tachypnea）：≥ 24 次/分（默认告警阈值）\n- 严重急促：≥ 30 次/分（critical）\n\n## 输出字段（参考）\n\n- `person_detected` - 是否检测到躺卧人体\n- `is_resting` - 是否处于静息状态\n- `respiratory_rate_bpm` - 呼吸频率（次/分钟）\n- `respiratory_pattern` - 呼吸节律描述（regular / irregular / paradoxical）\n- `chest_amplitude_pixel` - 胸腹起伏幅度（像素，参考值）\n- `signal_quality` - 信号质量（high / medium / low）\n- `risk_level` - 风险等级（normal / mild / warning / critical）\n- `alert_message` - 提示文本（如\"检测到老人静息呼吸频率 26 次/分，超过 24 次/分阈值，建议关注是否有发热、肺炎或心衰等情况，必要时就医\"）\n- `medical_followup_hint` - 医疗复核提示（仅作建议，非诊断）\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 fixed-camera video of an older adult at rest to estimate respiratory rate and produce structured tachypnea or dyspnea alerts.\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 caregivers, care-platform operators, and developers use this skill to analyze resting chest or abdominal video from an elderly-care setting, estimate respiratory rate, classify risk level, and retrieve historical respiratory-monitoring reports. It is an assistive monitoring workflow and should not be used as a medical diagnosis or emergency triage system.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Bedroom health videos or video URLs may be sent to configured cloud services.\n\nMitigation: Use only with informed consent from the monitored person or guardian, minimize captured media, and apply the organization's privacy, retention, and access controls before deployment.\n\nRisk: The skill can automatically create or reuse an identity, query cloud history, and persist access tokens locally.\n\nMitigation: Review token storage and account-linking behavior before installation, restrict filesystem and network access, and rotate or revoke credentials when the skill is removed.\n\nRisk: Respiratory alerts may be mistaken for medical diagnosis or emergency triage.\n\nMitigation: Present outputs as assistive monitoring only and require human verification and appropriate medical follow-up for urgent or concerning results.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis)\n- [API documentation](references/api_doc.md)\n- [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, configuration, guidance]\n\n**Output Format:** [Markdown or JSON analysis report with optional shell command examples and report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include respiratory rate, respiratory pattern, signal quality, risk level, alert text, follow-up guidance, and historical report links.]\n\n## Skill Version(s):\n\n1.0.8 (source: server release metadata; artifact frontmatter states 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.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, 40612 bytes\n\nFiles: references/api_doc.md (2276b), scripts/__init__.py (55b), scripts/config.py (690b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_elderly_tachypnea_detection_analysis.py (3652b), skill-card.md (2531b), SKILL.md (11951b), 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 (160b)\n\nFile v1.0.7:SKILL.md\n\n---\nname: \"smyx-elderly-tachypnea-detection-analysis\"\ndescription: \"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\"\nversion: \"1.0.8\"\nlicense: \"MIT-0\"\n---\n\n# 🫁 Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **老年人呼吸急促/困难识别** |\n| 🎯 核心目标 | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` |\n\nUsing a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). When the respiratory rate exceeds a preset upper bound (default 24 bpm; the normal resting range for the elderly is generally 12-20 bpm), the system outputs a 'tachypnea' alert, reminding family members or caregivers to pay attention to possible cardiopulmonary diseases, fever, or respiratory infections. Application scenarios: home-based elderly care, nursing homes, rehabilitation wards. The system monitors continuously; when an elevated respiratory rate persists, alerts are pushed proactively. Skill features: tachypnea is an early signal of pneumonia, heart failure, acute exacerbation of COPD and other conditions. AI auto-monitoring helps families detect problems in time and avoid delayed treatment. Can be integrated into smart cameras or elderly-care platforms to improve at-home health safety.\n\n通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。应用场景：居家养老、养老院、康复病房。系统持续监测，发现呼吸频率持续升高时主动推送警报。技能特点：呼吸急促是肺炎、心衰、慢阻肺急性加重等疾病的早期信号。通过AI自动监测，可帮助家属及时发现问题，避免延误治疗。该技能可集成到智能摄像头或养老平台中，提升老年人居家健康安全水平。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的老年人呼吸健康监测 AI。你的任务是分析老年人静息状态下胸腹部的视频，检测呼吸周期，计算呼吸频率（次/分钟）。当呼吸频率超过阈值（默认 24 次/分）时，输出预警。不要提供医疗诊断或临床建议，仅输出基于视觉的呼吸频率数值与异常提示。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于老年人静息（睡眠/静卧）状态下胸腹部监控视频，提取呼吸频率，按阈值评估呼吸急促/困难风险\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 人体卧姿检测 |\n| 2 | 胸腹起伏轮廓识别 |\n| 3 | 微小位移信号提取（可结合视频放大） |\n| 4 | 呼吸周期检测 |\n| 5 | 呼吸频率（次/分钟）计算 |\n| 6 | 节律评估（regular / irregular / paradoxical） |\n| 7 | 信号质量评级（high / medium / low） |\n| 8 | 风险等级判定（normal / mild / warning / critical） |\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_elderly_tachypnea_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_elderly_tachypnea_detection_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 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行老年人呼吸急促/困难识别 | 调用 `-m scripts.smyx_elderly_tachypnea_detection_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_elderly_tachypnea_detection_analysis.py`](scripts/smyx_elderly_tachypnea_detection_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；建议夜视模式、≥ 30 秒、覆盖胸腹部 |\n| 🔎 使用提醒 | 触发紧急预警时，请立即通过电话/上门方式人工核实，本工具仅作辅助监测，必要时拨打 120 |\n| 🔏 隐私合规 | 隐私合规：卧室视频涉及个人隐私，使用前需取得被监护人或家属知情同意，并妥善保管/加密相关录像 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json\n```\n\nFile v1.0.7:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-elderly-tachypnea-detection-analysis\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1786120655483\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}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` - 老年人呼吸急促/困难识别\n\n## 输入约束\n\n- 摄像头建议固定于卧室上方/侧方，覆盖胸腹部区域\n- 老年人需处于**静息状态**（睡眠或静卧）下采集，避免剧烈活动\n- 视频时长建议 ≥ 30 秒（推荐 60 秒）以稳定计算呼吸周期\n- 帧率建议 ≥ 15 FPS；夜间启用红外/微光模式\n\n## 关键检测对象\n\n- 胸部 / 腹部起伏轮廓\n- 呼吸周期（吸气 + 呼气）\n- 微小位移信号（可结合视频放大技术）\n\n## 呼吸频率参考范围（老年人静息）\n\n- 正常：12-20 次/分\n- 轻度增快：20-24 次/分\n- 呼吸急促（tachypnea）：≥ 24 次/分（默认告警阈值）\n- 严重急促：≥ 30 次/分（critical）\n\n## 输出字段（参考）\n\n- `person_detected` - 是否检测到躺卧人体\n- `is_resting` - 是否处于静息状态\n- `respiratory_rate_bpm` - 呼吸频率（次/分钟）\n- `respiratory_pattern` - 呼吸节律描述（regular / irregular / paradoxical）\n- `chest_amplitude_pixel` - 胸腹起伏幅度（像素，参考值）\n- `signal_quality` - 信号质量（high / medium / low）\n- `risk_level` - 风险等级（normal / mild / warning / critical）\n- `alert_message` - 提示文本（如\"检测到老人静息呼吸频率 26 次/分，超过 24 次/分阈值，建议关注是否有发热、肺炎或心衰等情况，必要时就医\"）\n- `medical_followup_hint` - 医疗复核提示（仅作建议，非诊断）\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: prod\n\nFile v1.0.7:skill-card.md\n\n## Description:\n\nThis skill analyzes infrared or low-light bedroom video of an older adult at rest to estimate respiratory rate and flag elevated tachypnea risk without providing a medical diagnosis.\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 caregivers, family members, and elder-care platform operators can use this skill to analyze resting chest or abdominal video and receive structured respiratory-rate findings, risk labels, alerts, and report links. It is intended as auxiliary monitoring for home elderly care, nursing homes, and rehabilitation wards, not as clinical diagnosis.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Sensitive bedroom video and respiratory report data may be processed through external cloud APIs.\n\nMitigation: Use only with informed consent from the monitored person or guardian, avoid unrelated private footage, and confirm how uploaded media and reports are protected.\n\nRisk: Historical reports may be linked to a locally persisted identity or token.\n\nMitigation: Review token storage, report-link access controls, and deletion procedures before deployment.\n\nRisk: Respiratory-rate alerts can be mistaken for medical diagnosis.\n\nMitigation: Present outputs as auxiliary visual monitoring, require human follow-up for urgent alerts, and direct users to appropriate medical care when needed.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis)\n- [Skill Demo](https://lifeemergence.com/sample.html)\n- [API Documentation](references/api_doc.md)\n- [Shared Analysis API Documentation](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 and structured JSON text with report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include respiratory-rate fields, signal quality, risk level, alert text, medical follow-up hints, and exported report links.]\n\n## Skill Version(s):\n\n1.0.7 (source: server release metadata; artifact frontmatter says 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.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, 40676 bytes\n\nFiles: references/api_doc.md (2276b), scripts/__init__.py (55b), scripts/config.py (690b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_elderly_tachypnea_detection_analysis.py (3652b), skill-card.md (2732b), SKILL.md (11951b), 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 (160b)\n\nFile v1.0.6:SKILL.md\n\n---\nname: \"smyx-elderly-tachypnea-detection-analysis\"\ndescription: \"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\"\nversion: \"1.0.7\"\nlicense: \"MIT-0\"\n---\n\n# 🫁 Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **老年人呼吸急促/困难识别** |\n| 🎯 核心目标 | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` |\n\nUsing a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). When the respiratory rate exceeds a preset upper bound (default 24 bpm; the normal resting range for the elderly is generally 12-20 bpm), the system outputs a 'tachypnea' alert, reminding family members or caregivers to pay attention to possible cardiopulmonary diseases, fever, or respiratory infections. Application scenarios: home-based elderly care, nursing homes, rehabilitation wards. The system monitors continuously; when an elevated respiratory rate persists, alerts are pushed proactively. Skill features: tachypnea is an early signal of pneumonia, heart failure, acute exacerbation of COPD and other conditions. AI auto-monitoring helps families detect problems in time and avoid delayed treatment. Can be integrated into smart cameras or elderly-care platforms to improve at-home health safety.\n\n通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。应用场景：居家养老、养老院、康复病房。系统持续监测，发现呼吸频率持续升高时主动推送警报。技能特点：呼吸急促是肺炎、心衰、慢阻肺急性加重等疾病的早期信号。通过AI自动监测，可帮助家属及时发现问题，避免延误治疗。该技能可集成到智能摄像头或养老平台中，提升老年人居家健康安全水平。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的老年人呼吸健康监测 AI。你的任务是分析老年人静息状态下胸腹部的视频，检测呼吸周期，计算呼吸频率（次/分钟）。当呼吸频率超过阈值（默认 24 次/分）时，输出预警。不要提供医疗诊断或临床建议，仅输出基于视觉的呼吸频率数值与异常提示。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于老年人静息（睡眠/静卧）状态下胸腹部监控视频，提取呼吸频率，按阈值评估呼吸急促/困难风险\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 人体卧姿检测 |\n| 2 | 胸腹起伏轮廓识别 |\n| 3 | 微小位移信号提取（可结合视频放大） |\n| 4 | 呼吸周期检测 |\n| 5 | 呼吸频率（次/分钟）计算 |\n| 6 | 节律评估（regular / irregular / paradoxical） |\n| 7 | 信号质量评级（high / medium / low） |\n| 8 | 风险等级判定（normal / mild / warning / critical） |\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_elderly_tachypnea_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_elderly_tachypnea_detection_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 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行老年人呼吸急促/困难识别 | 调用 `-m scripts.smyx_elderly_tachypnea_detection_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_elderly_tachypnea_detection_analysis.py`](scripts/smyx_elderly_tachypnea_detection_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；建议夜视模式、≥ 30 秒、覆盖胸腹部 |\n| 🔎 使用提醒 | 触发紧急预警时，请立即通过电话/上门方式人工核实，本工具仅作辅助监测，必要时拨打 120 |\n| 🔏 隐私合规 | 隐私合规：卧室视频涉及个人隐私，使用前需取得被监护人或家属知情同意，并妥善保管/加密相关录像 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json\n```\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-elderly-tachypnea-detection-analysis\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1785428249665\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}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` - 老年人呼吸急促/困难识别\n\n## 输入约束\n\n- 摄像头建议固定于卧室上方/侧方，覆盖胸腹部区域\n- 老年人需处于**静息状态**（睡眠或静卧）下采集，避免剧烈活动\n- 视频时长建议 ≥ 30 秒（推荐 60 秒）以稳定计算呼吸周期\n- 帧率建议 ≥ 15 FPS；夜间启用红外/微光模式\n\n## 关键检测对象\n\n- 胸部 / 腹部起伏轮廓\n- 呼吸周期（吸气 + 呼气）\n- 微小位移信号（可结合视频放大技术）\n\n## 呼吸频率参考范围（老年人静息）\n\n- 正常：12-20 次/分\n- 轻度增快：20-24 次/分\n- 呼吸急促（tachypnea）：≥ 24 次/分（默认告警阈值）\n- 严重急促：≥ 30 次/分（critical）\n\n## 输出字段（参考）\n\n- `person_detected` - 是否检测到躺卧人体\n- `is_resting` - 是否处于静息状态\n- `respiratory_rate_bpm` - 呼吸频率（次/分钟）\n- `respiratory_pattern` - 呼吸节律描述（regular / irregular / paradoxical）\n- `chest_amplitude_pixel` - 胸腹起伏幅度（像素，参考值）\n- `signal_quality` - 信号质量（high / medium / low）\n- `risk_level` - 风险等级（normal / mild / warning / critical）\n- `alert_message` - 提示文本（如\"检测到老人静息呼吸频率 26 次/分，超过 24 次/分阈值，建议关注是否有发热、肺炎或心衰等情况，必要时就医\"）\n- `medical_followup_hint` - 医疗复核提示（仅作建议，非诊断）\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: <br>\nUsing a fixed bedroom camera, the skill analyzes an elderly person's resting chest or abdominal motion in video or images, estimates respiratory rate, and reports tachypnea risk when the rate exceeds the configured threshold. <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 users and developers can use this skill to submit fixed-camera elder-care media for respiratory-rate analysis, structured tachypnea risk reporting, and cloud-backed history lookup. It is intended as assistive monitoring and not as a medical diagnosis. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Sensitive bedroom video or report data may be processed by external cloud services. <br>\nMitigation: Deploy only after obtaining consent from the monitored person or legal caregiver and confirming the service provider, retention policy, deletion process, and storage controls. <br>\nRisk: The skill links requests to local or cloud identities and may persist tokens. <br>\nMitigation: Run in an isolated environment, review local credential storage before deployment, and rotate or remove stored tokens when access is no longer needed. <br>\nRisk: User-supplied video URLs may cause external services to fetch arbitrary media. <br>\nMitigation: Restrict inputs to trusted media locations and validate that URL-based analysis is allowed by organizational policy. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis) <br>\n- [Skill Demo](https://lifeemergence.com/sample.html) <br>\n- [Elderly Tachypnea API Documentation](references/api_doc.md) <br>\n- [Shared Analysis API Documentation](skills/smyx_analysis/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown and JSON-style structured analysis text with report links when available] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Outputs may include respiratory-rate fields, signal quality, risk level, alert text, historical report records, and export links.] <br>\n\n## Skill Version(s): <br>\n1.0.6 (source: server release metadata; artifact frontmatter states 1.0.7) <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.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, 40733 bytes\n\nFiles: references/api_doc.md (2276b), scripts/__init__.py (55b), scripts/config.py (690b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_elderly_tachypnea_detection_analysis.py (3652b), skill-card.md (2874b), SKILL.md (11951b), 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 (160b)\n\nFile v1.0.5:SKILL.md\n\n---\nname: \"smyx-elderly-tachypnea-detection-analysis\"\ndescription: \"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\"\nversion: \"1.0.6\"\nlicense: \"MIT-0\"\n---\n\n# 🫁 Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **老年人呼吸急促/困难识别** |\n| 🎯 核心目标 | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` |\n\nUsing a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). When the respiratory rate exceeds a preset upper bound (default 24 bpm; the normal resting range for the elderly is generally 12-20 bpm), the system outputs a 'tachypnea' alert, reminding family members or caregivers to pay attention to possible cardiopulmonary diseases, fever, or respiratory infections. Application scenarios: home-based elderly care, nursing homes, rehabilitation wards. The system monitors continuously; when an elevated respiratory rate persists, alerts are pushed proactively. Skill features: tachypnea is an early signal of pneumonia, heart failure, acute exacerbation of COPD and other conditions. AI auto-monitoring helps families detect problems in time and avoid delayed treatment. Can be integrated into smart cameras or elderly-care platforms to improve at-home health safety.\n\n通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。应用场景：居家养老、养老院、康复病房。系统持续监测，发现呼吸频率持续升高时主动推送警报。技能特点：呼吸急促是肺炎、心衰、慢阻肺急性加重等疾病的早期信号。通过AI自动监测，可帮助家属及时发现问题，避免延误治疗。该技能可集成到智能摄像头或养老平台中，提升老年人居家健康安全水平。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的老年人呼吸健康监测 AI。你的任务是分析老年人静息状态下胸腹部的视频，检测呼吸周期，计算呼吸频率（次/分钟）。当呼吸频率超过阈值（默认 24 次/分）时，输出预警。不要提供医疗诊断或临床建议，仅输出基于视觉的呼吸频率数值与异常提示。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于老年人静息（睡眠/静卧）状态下胸腹部监控视频，提取呼吸频率，按阈值评估呼吸急促/困难风险\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 人体卧姿检测 |\n| 2 | 胸腹起伏轮廓识别 |\n| 3 | 微小位移信号提取（可结合视频放大） |\n| 4 | 呼吸周期检测 |\n| 5 | 呼吸频率（次/分钟）计算 |\n| 6 | 节律评估（regular / irregular / paradoxical） |\n| 7 | 信号质量评级（high / medium / low） |\n| 8 | 风险等级判定（normal / mild / warning / critical） |\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_elderly_tachypnea_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_elderly_tachypnea_detection_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 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行老年人呼吸急促/困难识别 | 调用 `-m scripts.smyx_elderly_tachypnea_detection_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_elderly_tachypnea_detection_analysis.py`](scripts/smyx_elderly_tachypnea_detection_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；建议夜视模式、≥ 30 秒、覆盖胸腹部 |\n| 🔎 使用提醒 | 触发紧急预警时，请立即通过电话/上门方式人工核实，本工具仅作辅助监测，必要时拨打 120 |\n| 🔏 隐私合规 | 隐私合规：卧室视频涉及个人隐私，使用前需取得被监护人或家属知情同意，并妥善保管/加密相关录像 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json\n```\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-elderly-tachypnea-detection-analysis\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1784323767888\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}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` - 老年人呼吸急促/困难识别\n\n## 输入约束\n\n- 摄像头建议固定于卧室上方/侧方，覆盖胸腹部区域\n- 老年人需处于**静息状态**（睡眠或静卧）下采集，避免剧烈活动\n- 视频时长建议 ≥ 30 秒（推荐 60 秒）以稳定计算呼吸周期\n- 帧率建议 ≥ 15 FPS；夜间启用红外/微光模式\n\n## 关键检测对象\n\n- 胸部 / 腹部起伏轮廓\n- 呼吸周期（吸气 + 呼气）\n- 微小位移信号（可结合视频放大技术）\n\n## 呼吸频率参考范围（老年人静息）\n\n- 正常：12-20 次/分\n- 轻度增快：20-24 次/分\n- 呼吸急促（tachypnea）：≥ 24 次/分（默认告警阈值）\n- 严重急促：≥ 30 次/分（critical）\n\n## 输出字段（参考）\n\n- `person_detected` - 是否检测到躺卧人体\n- `is_resting` - 是否处于静息状态\n- `respiratory_rate_bpm` - 呼吸频率（次/分钟）\n- `respiratory_pattern` - 呼吸节律描述（regular / irregular / paradoxical）\n- `chest_amplitude_pixel` - 胸腹起伏幅度（像素，参考值）\n- `signal_quality` - 信号质量（high / medium / low）\n- `risk_level` - 风险等级（normal / mild / warning / critical）\n- `alert_message` - 提示文本（如\"检测到老人静息呼吸频率 26 次/分，超过 24 次/分阈值，建议关注是否有发热、肺炎或心衰等情况，必要时就医\"）\n- `medical_followup_hint` - 医疗复核提示（仅作建议，非诊断）\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>\nAnalyzes fixed-camera bedroom video of an elderly person at rest to estimate respiratory rate and flag possible tachypnea or dyspnea risk without providing a medical diagnosis. <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 caregivers, elder-care operators, and developers use this skill to submit resting chest or abdomen video, receive a structured respiratory-rate analysis, and review historical cloud reports. It is an assistive monitoring tool and does not replace clinical assessment. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Bedroom-health videos and cloud reports may contain highly sensitive personal and health information. <br>\nMitigation: Use the skill only with consent from the monitored person or an authorized caregiver, and confirm the remote service and data handling practices are trusted before deployment. <br>\nRisk: The skill may silently create or reuse an internal identity and associate analysis activity with that identity. <br>\nMitigation: Run it in per-user workspaces and verify identity, deletion, and retention practices before use in care settings. <br>\nRisk: Authentication tokens may persist in a local workspace database. <br>\nMitigation: Protect local workspaces, restrict access to token storage, and rotate or remove stored credentials when the skill is no longer needed. <br>\nRisk: Respiratory-rate alerts are assistive signals and may be incomplete or wrong. <br>\nMitigation: Require human follow-up for urgent alerts and do not treat the output as a diagnosis or substitute for clinical care. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n- [API documentation](artifact/references/api_doc.md) <br>\n- [Shared analysis API documentation](artifact/skills/smyx_analysis/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, code, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown and JSON-style structured reports with optional report links] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May save analysis output to a file when an output path is provided.] <br>\n\n## Skill Version(s): <br>\n1.0.5 (source: ClawHub release evidence; SKILL.md frontmatter says 1.0.6) <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, 40604 bytes\n\nFiles: references/api_doc.md (2276b), scripts/__init__.py (55b), scripts/config.py (690b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_elderly_tachypnea_detection_analysis.py (3652b), skill-card.md (2850b), SKILL.md (11951b), 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 (28605b), _meta.json (160b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: \"smyx-elderly-tachypnea-detection-analysis\"\ndescription: \"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\"\nversion: \"1.0.4\"\nlicense: \"MIT-0\"\n---\n\n# 🫁 Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **老年人呼吸急促/困难识别** |\n| 🎯 核心目标 | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` |\n\nUsing a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). When the respiratory rate exceeds a preset upper bound (default 24 bpm; the normal resting range for the elderly is generally 12-20 bpm), the system outputs a 'tachypnea' alert, reminding family members or caregivers to pay attention to possible cardiopulmonary diseases, fever, or respiratory infections. Application scenarios: home-based elderly care, nursing homes, rehabilitation wards. The system monitors continuously; when an elevated respiratory rate persists, alerts are pushed proactively. Skill features: tachypnea is an early signal of pneumonia, heart failure, acute exacerbation of COPD and other conditions. AI auto-monitoring helps families detect problems in time and avoid delayed treatment. Can be integrated into smart cameras or elderly-care platforms to improve at-home health safety.\n\n通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。应用场景：居家养老、养老院、康复病房。系统持续监测，发现呼吸频率持续升高时主动推送警报。技能特点：呼吸急促是肺炎、心衰、慢阻肺急性加重等疾病的早期信号。通过AI自动监测，可帮助家属及时发现问题，避免延误治疗。该技能可集成到智能摄像头或养老平台中，提升老年人居家健康安全水平。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的老年人呼吸健康监测 AI。你的任务是分析老年人静息状态下胸腹部的视频，检测呼吸周期，计算呼吸频率（次/分钟）。当呼吸频率超过阈值（默认 24 次/分）时，输出预警。不要提供医疗诊断或临床建议，仅输出基于视觉的呼吸频率数值与异常提示。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于老年人静息（睡眠/静卧）状态下胸腹部监控视频，提取呼吸频率，按阈值评估呼吸急促/困难风险\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 人体卧姿检测 |\n| 2 | 胸腹起伏轮廓识别 |\n| 3 | 微小位移信号提取（可结合视频放大） |\n| 4 | 呼吸周期检测 |\n| 5 | 呼吸频率（次/分钟）计算 |\n| 6 | 节律评估（regular / irregular / paradoxical） |\n| 7 | 信号质量评级（high / medium / low） |\n| 8 | 风险等级判定（normal / mild / warning / critical） |\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_elderly_tachypnea_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_elderly_tachypnea_detection_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 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行老年人呼吸急促/困难识别 | 调用 `-m scripts.smyx_elderly_tachypnea_detection_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_elderly_tachypnea_detection_analysis.py`](scripts/smyx_elderly_tachypnea_detection_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；建议夜视模式、≥ 30 秒、覆盖胸腹部 |\n| 🔎 使用提醒 | 触发紧急预警时，请立即通过电话/上门方式人工核实，本工具仅作辅助监测，必要时拨打 120 |\n| 🔏 隐私合规 | 隐私合规：卧室视频涉及个人隐私，使用前需取得被监护人或家属知情同意，并妥善保管/加密相关录像 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json\n```\n\nFile v1.0.4:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-elderly-tachypnea-detection-analysis\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1783536150893\n}\n\nFile v1.0.4: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}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` - 老年人呼吸急促/困难识别\n\n## 输入约束\n\n- 摄像头建议固定于卧室上方/侧方，覆盖胸腹部区域\n- 老年人需处于**静息状态**（睡眠或静卧）下采集，避免剧烈活动\n- 视频时长建议 ≥ 30 秒（推荐 60 秒）以稳定计算呼吸周期\n- 帧率建议 ≥ 15 FPS；夜间启用红外/微光模式\n\n## 关键检测对象\n\n- 胸部 / 腹部起伏轮廓\n- 呼吸周期（吸气 + 呼气）\n- 微小位移信号（可结合视频放大技术）\n\n## 呼吸频率参考范围（老年人静息）\n\n- 正常：12-20 次/分\n- 轻度增快：20-24 次/分\n- 呼吸急促（tachypnea）：≥ 24 次/分（默认告警阈值）\n- 严重急促：≥ 30 次/分（critical）\n\n## 输出字段（参考）\n\n- `person_detected` - 是否检测到躺卧人体\n- `is_resting` - 是否处于静息状态\n- `respiratory_rate_bpm` - 呼吸频率（次/分钟）\n- `respiratory_pattern` - 呼吸节律描述（regular / irregular / paradoxical）\n- `chest_amplitude_pixel` - 胸腹起伏幅度（像素，参考值）\n- `signal_quality` - 信号质量（high / medium / low）\n- `risk_level` - 风险等级（normal / mild / warning / critical）\n- `alert_message` - 提示文本（如\"检测到老人静息呼吸频率 26 次/分，超过 24 次/分阈值，建议关注是否有发热、肺炎或心衰等情况，必要时就医\"）\n- `medical_followup_hint` - 医疗复核提示（仅作建议，非诊断）\n\n> 仅输出基于视觉的呼吸频率数值与异常提示，不提供医学诊断；如疑似肺炎、心衰、慢阻肺急性加重，请及时就医。\n\nFile v1.0.4: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.4:scripts/config.yaml\n\n{}\n\nFile v1.0.4:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.4: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.4: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.4: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.4:skill-card.md\n\n## Description: <br>\nAnalyzes fixed-camera video of an elderly person at rest to estimate respiratory rate and flag tachypnea risk when configured thresholds are exceeded. <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 developers and care-platform operators can use this skill to submit fixed-camera resting video or a video URL for cloud analysis of respiratory rate, tachypnea alerts, and historical report retrieval. It is intended as auxiliary monitoring and not as medical diagnosis. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill handles sensitive elderly bedroom-monitoring videos or video URLs through configured lifeemergence.com cloud services. <br>\nMitigation: Use only with consent from the monitored person or responsible caregiver, and review the service's data handling, retention, deletion, and access controls before deployment. <br>\nRisk: The skill silently resolves an internal user identity and may rely on local identity or token persistence for report access. <br>\nMitigation: Install only in approved environments, restrict local credential access, and review how user identity, tokens, and report metadata are stored and removed. <br>\nRisk: Respiratory-rate alerts can be misleading if video quality, positioning, or resting-state assumptions are poor. <br>\nMitigation: Require clear fixed-camera input that covers the chest and abdomen, treat outputs as auxiliary monitoring, and confirm urgent alerts with human follow-up or clinical care. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n- [Elderly tachypnea API documentation](references/api_doc.md) <br>\n- [Shared analysis API documentation](skills/smyx_analysis/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance] <br>\n**Output Format:** [Markdown or JSON structured analysis reports with respiratory-rate fields, risk labels, report links, and command examples] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include historical report lists and exported report image links returned by the configured cloud service.] <br>\n\n## Skill Version(s): <br>\n1.0.4 (source: frontmatter and server release metadata) <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.4:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.4:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.3: 31 files, 40332 bytes\n\nFiles: references/api_doc.md (2276b), scripts/__init__.py (55b), scripts/config.py (690b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_elderly_tachypnea_detection_analysis.py (3652b), skill-card.md (2728b), SKILL.md (11951b), 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 (22801b), 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 (28605b), _meta.json (160b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: \"smyx-elderly-tachypnea-detection-analysis\"\ndescription: \"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\"\nversion: \"1.0.3\"\nlicense: \"MIT-0\"\n---\n\n# 🫁 Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **老年人呼吸急促/困难识别** |\n| 🎯 核心目标 | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` |\n\nUsing a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). When the respiratory rate exceeds a preset upper bound (default 24 bpm; the normal resting range for the elderly is generally 12-20 bpm), the system outputs a 'tachypnea' alert, reminding family members or caregivers to pay attention to possible cardiopulmonary diseases, fever, or respiratory infections. Application scenarios: home-based elderly care, nursing homes, rehabilitation wards. The system monitors continuously; when an elevated respiratory rate persists, alerts are pushed proactively. Skill features: tachypnea is an early signal of pneumonia, heart failure, acute exacerbation of COPD and other conditions. AI auto-monitoring helps families detect problems in time and avoid delayed treatment. Can be integrated into smart cameras or elderly-care platforms to improve at-home health safety.\n\n通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。应用场景：居家养老、养老院、康复病房。系统持续监测，发现呼吸频率持续升高时主动推送警报。技能特点：呼吸急促是肺炎、心衰、慢阻肺急性加重等疾病的早期信号。通过AI自动监测，可帮助家属及时发现问题，避免延误治疗。该技能可集成到智能摄像头或养老平台中，提升老年人居家健康安全水平。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的老年人呼吸健康监测 AI。你的任务是分析老年人静息状态下胸腹部的视频，检测呼吸周期，计算呼吸频率（次/分钟）。当呼吸频率超过阈值（默认 24 次/分）时，输出预警。不要提供医疗诊断或临床建议，仅输出基于视觉的呼吸频率数值与异常提示。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于老年人静息（睡眠/静卧）状态下胸腹部监控视频，提取呼吸频率，按阈值评估呼吸急促/困难风险\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 人体卧姿检测 |\n| 2 | 胸腹起伏轮廓识别 |\n| 3 | 微小位移信号提取（可结合视频放大） |\n| 4 | 呼吸周期检测 |\n| 5 | 呼吸频率（次/分钟）计算 |\n| 6 | 节律评估（regular / irregular / paradoxical） |\n| 7 | 信号质量评级（high / medium / low） |\n| 8 | 风险等级判定（normal / mild / warning / critical） |\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_elderly_tachypnea_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_elderly_tachypnea_detection_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 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行老年人呼吸急促/困难识别 | 调用 `-m scripts.smyx_elderly_tachypnea_detection_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_elderly_tachypnea_detection_analysis.py`](scripts/smyx_elderly_tachypnea_detection_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；建议夜视模式、≥ 30 秒、覆盖胸腹部 |\n| 🔎 使用提醒 | 触发紧急预警时，请立即通过电话/上门方式人工核实，本工具仅作辅助监测，必要时拨打 120 |\n| 🔏 隐私合规 | 隐私合规：卧室视频涉及个人隐私，使用前需取得被监护人或家属知情同意，并妥善保管/加密相关录像 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json\n```\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-elderly-tachypnea-detection-analysis\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1782824246384\n}\n\nFile v1.0.3: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}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` - 老年人呼吸急促/困难识别\n\n## 输入约束\n\n- 摄像头建议固定于卧室上方/侧方，覆盖胸腹部区域\n- 老年人需处于**静息状态**（睡眠或静卧）下采集，避免剧烈活动\n- 视频时长建议 ≥ 30 秒（推荐 60 秒）以稳定计算呼吸周期\n- 帧率建议 ≥ 15 FPS；夜间启用红外/微光模式\n\n## 关键检测对象\n\n- 胸部 / 腹部起伏轮廓\n- 呼吸周期（吸气 + 呼气）\n- 微小位移信号（可结合视频放大技术）\n\n## 呼吸频率参考范围（老年人静息）\n\n- 正常：12-20 次/分\n- 轻度增快：20-24 次/分\n- 呼吸急促（tachypnea）：≥ 24 次/分（默认告警阈值）\n- 严重急促：≥ 30 次/分（critical）\n\n## 输出字段（参考）\n\n- `person_detected` - 是否检测到躺卧人体\n- `is_resting` - 是否处于静息状态\n- `respiratory_rate_bpm` - 呼吸频率（次/分钟）\n- `respiratory_pattern` - 呼吸节律描述（regular / irregular / paradoxical）\n- `chest_amplitude_pixel` - 胸腹起伏幅度（像素，参考值）\n- `signal_quality` - 信号质量（high / medium / low）\n- `risk_level` - 风险等级（normal / mild / warning / critical）\n- `alert_message` - 提示文本（如\"检测到老人静息呼吸频率 26 次/分，超过 24 次/分阈值，建议关注是否有发热、肺炎或心衰等情况，必要时就医\"）\n- `medical_followup_hint` - 医疗复核提示（仅作建议，非诊断）\n\n> 仅输出基于视觉的呼吸频率数值与异常提示，不提供医学诊断；如疑似肺炎、心衰、慢阻肺急性加重，请及时就医。\n\nFile v1.0.3: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.3:scripts/config.yaml\n\n{}\n\nFile v1.0.3:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.3: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.3: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.3: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.3:skill-card.md\n\n## Description: <br>\nUsing a fixed bedroom camera (infrared or low-light), the skill analyzes chest and abdominal motion of an elderly person at rest to estimate respiratory rate and flag tachypnea or dyspnea risk. <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>\nCaregivers, elderly-care operators, and developers use this skill to analyze resting bedroom-monitoring videos or URLs for respiratory-rate estimates, tachypnea alerts, structured reports, and cloud report-history lookup. It is an auxiliary monitoring workflow and does not provide a medical diagnosis. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Sensitive bedroom-monitoring videos or video URLs are sent to a cloud service for analysis. <br>\nMitigation: Use only with clear consent from the monitored person or authorized caregiver, and avoid submitting private signed URLs unless cloud access is intended. <br>\nRisk: Reports are linked to an automatically managed identity and local account or token data may be stored in the workspace. <br>\nMitigation: Review or remove the local data store when account linkage is not desired, and restrict workspace access to authorized operators. <br>\nRisk: Respiratory-rate alerts could be mistaken for clinical diagnosis. <br>\nMitigation: Treat outputs as auxiliary visual monitoring only; manually verify urgent alerts and seek clinical or emergency care when appropriate. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-elderly-tachypnea-detection-analysis) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n- [Elderly tachypnea API documentation](references/api_doc.md) <br>\n- [Shared analysis API documentation](skills/smyx_analysis/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, json, shell commands, guidance] <br>\n**Output Format:** [Markdown text containing structured JSON report content, respiratory-rate fields, risk or alert text, and report links; optional saved output file.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May query cloud report history and may return report export links.] <br>\n\n## Skill Version(s): <br>\n1.0.3 (source: frontmatter and server release evidence) <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.3:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.3:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3","readmeExcerpt":"Skill: Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别 Owner: 18072937735 Summary: Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"python -m scripts.smyx_elderly_tachypnea_detection_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json"},{"language":"bash","snippet":"python -m scripts.smyx_elderly_tachypnea_detection_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input /path/to/chest.mp4\n\n# 分析网络静息胸腹部监控视频\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --url https://example.com/chest.mp4\n\n# 显示历史呼吸急促识别报告（自动触发关键词：查看呼吸急促历史报告、呼吸频率报告清单等）\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_elderly_tachypnea_detection_analysis --input chest.mp4 --output result.json"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: \"smyx-elderly-tachypnea-detection-analysis\"\ndescription: \"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。\"\nversion: \"1.0.15\"\nlicense: \"MIT-0\"\n---\n\n# 🫁 Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **老年人呼吸急促/困难识别** |\n| 🎯 核心目标 | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` |\n\nUsing a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). When the respiratory rate exceeds a preset upper bound (default 24 bpm; the normal resting range for the elderly is generally 12-20 bpm), the system outputs a 'tachypnea' alert, reminding family members or caregivers to pay attention to possible cardiopulmonary diseases, fever, or respiratory infections. Application scenarios: home-based elderly care, nursing homes, rehabilitation wards. The system monitors continuously; when an elevated respiratory rate persists, alerts are pushed proactively. Skill features: tachypnea is an early signal of pneumonia, heart failure, acute exacerbation of COPD and other conditions. AI auto-monitoring helps families detect problems in time and avoid delayed treatment. Can be integrated into smart cameras or elderly-care platforms to improve at-home health safety.\n\n通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。应用场景：居家养老、养老院、康复病房。系统持续监测，发现呼吸频率持续升高时主动推送警报。技能特点：呼吸急促是肺炎、心衰、慢阻肺急性加重等疾病的早期信号。通过AI自动监测，可帮助家属及时发现问题，避免延误治疗。该技能可集成到智能摄像头或养老平台中，提升老年人居家健康安全水平。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的老年人呼吸健康监测 AI。你的任务是分析老年人静息状态下胸腹部的视频，检测呼吸周期，计算呼吸频率（次/分钟）。当呼吸频率超过阈值（默认 24 次/分）时，输出预警。不要提供医疗诊断或临床建议，仅输出基于视觉的呼吸频率数值与异常提示。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n基于老年人静息（睡眠/静卧）状态下胸腹部监控视频，提取呼吸频率，按阈值评估呼吸急促/困难风险\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 人体卧姿检测 |\n| 2 | 胸腹起伏轮廓识别 |\n| 3 | 微小位移信号提取（可结合视频放大） |\n| 4 | 呼吸周期检测 |\n| 5 | 呼吸频率（次/分钟）计算 |\n| 6 | 节律评估（regular / irregular / paradoxical） |\n| 7 | 信号质量评级（high / medium / low） |\n| 8 | 风险等级判定（normal / mild / warning / critical） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供老年人静息状态胸腹部监控视频 URL 或文件需要分析时，默认触发本技能进行呼吸急促识别 |\n| 🔎 明确分析意图 "},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-elderly-tachypnea-detection-analysis\",\n  \"version\": \"1.0.12\",\n  \"publishedAt\": 1790560410397\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}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_ELDERLY_TACHYPNEA_DETECTION_ANALYSIS` - 老年人呼吸急促/困难识别\n\n## 输入约束\n\n- 摄像头建议固定于卧室上方/侧方，覆盖胸腹部区域\n- 老年人需处于**静息状态**（睡眠或静卧）下采集，避免剧烈活动\n- 视频时长建议 ≥ 30 秒（推荐 60 秒）以稳定计算呼吸周期\n- 帧率建议 ≥ 15 FPS；夜间启用红外/微光模式\n\n## 关键检测对象\n\n- 胸部 / 腹部起伏轮廓\n- 呼吸周期（吸气 + 呼气）\n- 微小位移信号（可结合视频放大技术）\n\n## 呼吸频率参考范围（老年人静息）\n\n- 正常：12-20 次/分\n- 轻度增快：20-24 次/分\n- 呼吸急促（tachypnea）：≥ 24 次/分（默认告警阈值）\n- 严重急促：≥ 30 次/分（critical）\n\n## 输出字段（参考）\n\n- `person_detected` - 是否检测到躺卧人体\n- `is_resting` - 是否处于静息状态\n- `respiratory_rate_bpm` - 呼吸频率（次/分钟）\n- `respiratory_pattern` - 呼吸节律描述（regular / irregular / paradoxical）\n- `chest_amplitude_pixel` - 胸腹起伏幅度（像素，参考值）\n- `signal_quality` - 信号质量（high / medium / low）\n- `risk_level` - 风险等级（normal / mild / warning / critical）\n- `alert_message` - 提示文本（如\"检测到老人静息呼吸频率 26 次/分，超过 24 次/分阈值，建议关注是否有发热、肺炎或心衰等情况，必要时就医\"）\n- `medical_followup_hint` - 医疗复核提示（仅作建议，非诊断）\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":"Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注老年人是否有心肺疾病、发热或呼吸系统感染等潜在问题。 Skill: Elderly Tachypnea / Dyspnea Detection | 老年人呼吸急促/困难识别 Owner: 18072937735 Summary: Using a fixed bedroom camera (infrared or low-light), the system analyzes chest/abdominal motion of the elderly at rest (sleeping or quietly lying down) and computes the respiratory rate (breaths per minute). | 通过卧室固定摄像头（红外或微光），在老年人静息（睡眠或静卧）状态下分析其胸腹部起伏运动，计算呼吸频率（次/分钟）。当呼吸频率超过正常上限（默认24次/分，老年人静息正常值一般为12-20次/分）时，输出'呼吸急促'预警，提示家属或护理人员关注","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":993,"uniquenessScore":47,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T01:27:01.946Z","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-10T01:27:01.946Z","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:52:59.251Z","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"}]}}}