{"id":"59d03b2c-213a-452a-8ea8-43ed900832ac","entityType":"agent","slug":"clawhub-smyx-sunjinhui-smyx-picky-eater-detection-analysis","name":"Pet Picky Eater Detection | 宠物选择性拒食识别","canonicalUrl":"https://www.xpersona.co/agent/clawhub-smyx-sunjinhui-smyx-picky-eater-detection-analysis","canonicalPath":"/agent/clawhub-smyx-sunjinhui-smyx-picky-eater-detection-analysis","generatedAt":"2026-10-10T08:45:28.648Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T23:31:46.843Z","emptyReason":null},"description":"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.9K downloads reported by the source. Last updated 10/9/2026.","installCommand":"clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-picky-eater-detection-analysis","sourceUrl":"https://clawhub.ai/smyx-sunjinhui/smyx-picky-eater-detection-analysis","homepage":"https://clawhub.ai/smyx-sunjinhui/skills/smyx-picky-eater-detection-analysis","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/smyx-sunjinhui/smyx-picky-eater-detection-analysis","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/smyx-sunjinhui/skills/smyx-picky-eater-detection-analysis","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":66,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Pet Picky Eater Detection | 宠物选择性拒食识别 technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-09T23:31:46.843Z","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-09T23:31:46.843Z","emptyReason":null},"stars":null,"forks":null,"downloads":1887,"packageName":null,"latestVersion":"1.0.10","tractionLabel":"1.9K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T23:31:46.843Z","emptyReason":null},"lastUpdatedAt":"2026-10-09T23:31:46.843Z","lastCrawledAt":"2026-10-09T23:31:46.843Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-10T23:31:46.843Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.10","createdAt":"2026-10-04T04:18:35.503Z","changelog":"- Updated version from 1.0.15 to 1.0.16 in SKILL.md. - Removed the redundant skill-card.md file. - No other feature, logic, or documentation changes.","fileCount":31,"zipByteSize":38687},{"version":"1.0.9","createdAt":"2026-09-27T10:02:25.087Z","changelog":"- Updated skill version to 1.0.15. - Refreshed documentation in SKILL.md to reflect recent changes and ensure up-to-date guidance. - Removed the obsolete skill-card.md file. - Made minor adjustments to internal configuration files.","fileCount":31,"zipByteSize":38594},{"version":"1.0.8","createdAt":"2026-09-07T07:35:28.620Z","changelog":"- Removed the file: skill-card.md. - No updates to features or script logic. - Documentation and functionality remain unchanged.","fileCount":31,"zipByteSize":38851},{"version":"1.0.7","createdAt":"2026-09-04T11:45:32.102Z","changelog":"- Updated SKILL.md with new version and minor documentation changes. - Bumped the version number from 1.0.8 to 1.0.13. - Removed the file skill-card.md (no longer part of the skill). - Adjusted internal documentation and metadata, ensuring consistency and up-to-date descriptions.","fileCount":31,"zipByteSize":38748},{"version":"1.0.6","createdAt":"2026-08-07T12:20:41.632Z","changelog":"- Updated skill version to 1.0.8. - SKILL.md updated for documentation/content improvements. - Removed redundant file: skill-card.md. - No functional or code changes to core detection features.","fileCount":31,"zipByteSize":38986},{"version":"1.0.5","createdAt":"2026-07-28T06:58:31.787Z","changelog":"- Updated SKILL.md to version 1.0.7 with minor documentation changes and clarifications. - Removed the skill-card.md file. - No functional or capability changes to the skill logic. - Documentation is now the only maintained in SKILL.md; redundant or outdated summary files have been removed.","fileCount":31,"zipByteSize":38811},{"version":"1.0.4","createdAt":"2026-07-13T16:32:28.673Z","changelog":"smyx-picky-eater-detection-analysis 1.0.4 changelog - Internal utility code updated in `skills/smyx_common/scripts/util.py`. - Removed outdated documentation file `skill-card.md`.","fileCount":31,"zipByteSize":38929},{"version":"1.0.3","createdAt":"2026-07-09T06:34:32.584Z","changelog":"Version 1.0.3 - Updated documentation in SKILL.md with refined descriptions and instructions. - Renamed and incremented skill version to 1.0.5 in SKILL.md. - Removed the file skill-card.md. - Minor adjustments made in skills/smyx_common/scripts/config.py.","fileCount":31,"zipByteSize":38713}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-picky-eater-detection-analysis","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-picky-eater-detection-analysis` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/smyx-sunjinhui/smyx-picky-eater-detection-analysis before using production credentials."],"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-smyx-sunjinhui-smyx-picky-eater-detection-analysis/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-picky-eater-detection-analysis/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-picky-eater-detection-analysis/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-picky-eater-detection-analysis/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-picky-eater-detection-analysis/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-picky-eater-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-10T08:45:28.645Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-picky-eater-detection-analysis/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-picky-eater-detection-analysis/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-picky-eater-detection-analysis/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-picky-eater-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":"medium","updatedAt":"2026-10-09T23:31:46.843Z","emptyReason":null},"readme":"Skill: Pet Picky Eater Detection | 宠物选择性拒食识别\n\nOwner: smyx-sunjinhui\n\nSummary: Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\nTags: latest:1.0.10\n\nVersion history:\n\nv1.0.10 | 2026-10-04T04:18:35.503Z | auto\n\n- Updated version from 1.0.15 to 1.0.16 in SKILL.md.\n- Removed the redundant skill-card.md file.\n- No other feature, logic, or documentation changes.\n\nv1.0.9 | 2026-09-27T10:02:25.087Z | auto\n\n- Updated skill version to 1.0.15.\n- Refreshed documentation in SKILL.md to reflect recent changes and ensure up-to-date guidance.\n- Removed the obsolete skill-card.md file.\n- Made minor adjustments to internal configuration files.\n\nv1.0.8 | 2026-09-07T07:35:28.620Z | auto\n\n- Removed the file: skill-card.md.\n- No updates to features or script logic.\n- Documentation and functionality remain unchanged.\n\nv1.0.7 | 2026-09-04T11:45:32.102Z | auto\n\n- Updated SKILL.md with new version and minor documentation changes.\n- Bumped the version number from 1.0.8 to 1.0.13.\n- Removed the file skill-card.md (no longer part of the skill).\n- Adjusted internal documentation and metadata, ensuring consistency and up-to-date descriptions.\n\nv1.0.6 | 2026-08-07T12:20:41.632Z | auto\n\n- Updated skill version to 1.0.8.\n- SKILL.md updated for documentation/content improvements.\n- Removed redundant file: skill-card.md. \n- No functional or code changes to core detection features.\n\nv1.0.5 | 2026-07-28T06:58:31.787Z | auto\n\n- Updated SKILL.md to version 1.0.7 with minor documentation changes and clarifications.\n- Removed the skill-card.md file.\n- No functional or capability changes to the skill logic.\n- Documentation is now the only maintained in SKILL.md; redundant or outdated summary files have been removed.\n\nv1.0.4 | 2026-07-13T16:32:28.673Z | auto\n\nsmyx-picky-eater-detection-analysis 1.0.4 changelog\n\n- Internal utility code updated in `skills/smyx_common/scripts/util.py`.\n- Removed outdated documentation file `skill-card.md`.\n\nv1.0.3 | 2026-07-09T06:34:32.584Z | auto\n\nVersion 1.0.3\n\n- Updated documentation in SKILL.md with refined descriptions and instructions.\n- Renamed and incremented skill version to 1.0.5 in SKILL.md.\n- Removed the file skill-card.md.\n- Minor adjustments made in skills/smyx_common/scripts/config.py.\n\nv1.0.2 | 2026-06-29T19:28:25.404Z | auto\n\n- Refactored internal database and utility functions in `dao.py` and `util.py` scripts.\n- Minor improvements and optimizations to increase code reliability and maintainability.\n- No user-facing changes or modifications to feature behavior.\n\nv1.0.1 | 2026-06-27T01:17:32.427Z | auto\n\n**Changelog for smyx-picky-eater-detection-analysis v1.0.1**\n\n- Overhauled the SKILL.md documentation for clearer structure and improved bilingual clarity.\n- Dramatically simplified user experience: identity association and API key handling are now fully automatic and hidden from end users—manual open-id provision and related prompts were removed.\n- Adjusted user workflow and constraints to prevent any identity exposure or queries; the identity is managed entirely by the backend.\n- Refined instructions for history queries and report retrieval: all historical report fetches now strictly use the cloud API, never local storage.\n- Updated sample commands and parameter explanations to reflect the new hands-off identity and report query workflow.\n- File cleanup: removed obsolete `scripts/api_service.py`, updated and aligned code/config files to enforce new handling and documentation.\n\nv1.0.0 | 2026-05-22T14:00:45.208Z | auto\n\n- Initial release of pet picky-eater detection and analysis skill.\n- Supports analysis of feeding area videos (local file or URL) to identify picky-eater behaviors such as pushing kibble out, picking only treats, or sniffing and leaving.\n- Records frequency and severity of picky-eating behaviors, provides feeding adjustment suggestions, and prevents malnutrition.\n- Enforces strict open-id (user identification) retrieval before analysis, following a specified priority order; user must provide if not found in config.\n- Automatically triggers history query and displays results in a Markdown table when relevant keywords are detected.\n- Designed for use in smart pet feeders, boarding centers, and pet hospitals; strictly outputs behavior analysis (no medical advice).\n\nArchive index:\n\nArchive v1.0.10: 31 files, 38687 bytes\n\nFiles: references/api_doc.md (656b), scripts/__init__.py (53b), scripts/config.py (670b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_picky_eater_detection_analysis.py (3580b), skill-card.md (2226b), SKILL.md (11060b), 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 (155b)\n\nFile v1.0.10:SKILL.md\n\n---\nname: \"smyx-picky-eater-detection-analysis\"\ndescription: \"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\"\nversion: \"1.0.16\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Pet Picky Eater Detection | 宠物选择性拒食识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **宠物选择性拒食识别** |\n| 🎯 核心目标 | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_PICKY_EATER_DETECTION_ANALYSIS` |\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards.\n\n当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的宠物行为与营养管理AI。你的任务是分析智能喂食器拍摄的食盆区域视频（从投食开始至宠物离开），检测宠物是否存在\"选择性拒食\"行为，即主动将主粮颗粒拨出食盆、只挑拣其中的零食/冻干食用、或者嗅闻后拒绝进食。不要提供医疗建议，仅输出基于视觉的行为分析结果。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n\n### 1. 🧩 技能用途\n\n通过食盆区域视频识别宠物选择性拒食行为，记录挑食频率、主粮/零食摄入比例，连续异常时输出喂养调整建议，帮助主人及早发现挑食问题，避免营养不均衡\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 视频分析 |\n| 2 | 宠物嘴部/爪部动作识别 |\n| 3 | 主粮与零食颗粒区分 |\n| 4 | 拨食/挑食/嗅闻离开行为检测 |\n| 5 | 进食时长统计 |\n| 6 | 行为发生频率统计 |\n| 7 | 连续异常判定 |\n| 8 | 喂养调整建议输出 |\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_picky_eater_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_picky_eater_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_picky_eater_detection_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 宠物类型，可选值：cat/dog/bird/other，默认 cat | 按需填写 |\n| `--list` | 显示选择性拒食识别历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_picky_eater_detection_analysis.py`](scripts/smyx_picky_eater_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 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供喂养行为参考，不提供疾病诊断或治疗建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json\n```\n\nFile v1.0.10:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-picky-eater-detection-analysis\",\n  \"version\": \"1.0.10\",\n  \"publishedAt\": 1791087515503\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/ai-analysis/v2/start-common-ai-analysis` - 启动选择性拒食识别分析任务\n2. `/web/ai-analysis/get-common-ai-analysis-result` - 获取分析结果\n3. `/web/ai-analysis/page-common-ai-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_PICKY_EATER_DETECTION_ANALYSIS` - 宠物选择性拒食识别\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: prod\n\nFile v1.0.10:skill-card.md\n\n## Description:\n\nAnalyzes pet-feeding videos or video URLs for selective eating behaviors and provides feeding-behavior reports and suggestions without diagnosing disease.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nPet owners and staff at smart-feeder services, boarding centers, or pet hospitals use the skill to identify selective eating patterns in feeding-area videos, review past reports, and consider feeding adjustments. It does not provide veterinary diagnoses.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Pet-feeding videos or video URLs are sent to a Life Emergence cloud service.\n\nMitigation: Use only when the user accepts cloud processing of the footage and links.\n\nRisk: The skill automatically creates or reuses a local cloud identity and persists tokens; shared workspace state can expose report history.\n\nMitigation: Keep identity and token storage isolated per user, especially in shared workspaces.\n\nRisk: A hidden identity value could grant access to another user's reports if passed without authentication.\n\nMitigation: Do not pass or reveal hidden identity values unless the host platform authenticates them.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/smyx-sunjinhui/skills/smyx-picky-eater-detection-analysis)\n- [Skill API documentation](references/api_doc.md)\n- [Skill demonstration](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [Analysis, Markdown, Guidance]\n\n**Output Format:** [Structured results or Markdown reports and history tables]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Includes selective-eating observations, feeding suggestions, and links to cloud reports; not a medical diagnosis.]\n\n## Skill Version(s):\n\n1.0.10 (source: server-resolved ClawHub release metadata)\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, 38594 bytes\n\nFiles: references/api_doc.md (656b), scripts/__init__.py (53b), scripts/config.py (670b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_picky_eater_detection_analysis.py (3580b), skill-card.md (1973b), SKILL.md (11060b), 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 (154b)\n\nFile v1.0.9:SKILL.md\n\n---\nname: \"smyx-picky-eater-detection-analysis\"\ndescription: \"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\"\nversion: \"1.0.15\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Pet Picky Eater Detection | 宠物选择性拒食识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **宠物选择性拒食识别** |\n| 🎯 核心目标 | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_PICKY_EATER_DETECTION_ANALYSIS` |\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards.\n\n当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的宠物行为与营养管理AI。你的任务是分析智能喂食器拍摄的食盆区域视频（从投食开始至宠物离开），检测宠物是否存在\"选择性拒食\"行为，即主动将主粮颗粒拨出食盆、只挑拣其中的零食/冻干食用、或者嗅闻后拒绝进食。不要提供医疗建议，仅输出基于视觉的行为分析结果。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n\n### 1. 🧩 技能用途\n\n通过食盆区域视频识别宠物选择性拒食行为，记录挑食频率、主粮/零食摄入比例，连续异常时输出喂养调整建议，帮助主人及早发现挑食问题，避免营养不均衡\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 视频分析 |\n| 2 | 宠物嘴部/爪部动作识别 |\n| 3 | 主粮与零食颗粒区分 |\n| 4 | 拨食/挑食/嗅闻离开行为检测 |\n| 5 | 进食时长统计 |\n| 6 | 行为发生频率统计 |\n| 7 | 连续异常判定 |\n| 8 | 喂养调整建议输出 |\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_picky_eater_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_picky_eater_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_picky_eater_detection_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 宠物类型，可选值：cat/dog/bird/other，默认 cat | 按需填写 |\n| `--list` | 显示选择性拒食识别历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_picky_eater_detection_analysis.py`](scripts/smyx_picky_eater_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 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供喂养行为参考，不提供疾病诊断或治疗建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json\n```\n\nFile v1.0.9:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-picky-eater-detection-analysis\",\n  \"version\": \"1.0.9\",\n  \"publishedAt\": 1790503345087\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/ai-analysis/v2/start-common-ai-analysis` - 启动选择性拒食识别分析任务\n2. `/web/ai-analysis/get-common-ai-analysis-result` - 获取分析结果\n3. `/web/ai-analysis/page-common-ai-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_PICKY_EATER_DETECTION_ANALYSIS` - 宠物选择性拒食识别\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: prod\n\nFile v1.0.9:skill-card.md\n\n## Description:\n\nAnalyzes pet feeding-area videos or video URLs for selective eating behavior and provides feeding observations and suggestions.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nPet owners and staff at smart-feeder services, boarding facilities, or veterinary wards use the skill to identify selective eating patterns in feeding-area videos and review feeding suggestions or past reports. Results are behavioral observations, not a medical diagnosis.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Feeding videos or video URLs are sent to configured external services.\n\nMitigation: Confirm the service endpoints and obtain appropriate consent before submitting sensitive home, boarding, or hospital footage.\n\nRisk: The skill may create or reuse an account identity and retain reusable authentication tokens in local workspace data.\n\nMitigation: Review the local identity, database, and token storage before installation; restrict access to the workspace data directory.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/smyx-sunjinhui/skills/smyx-picky-eater-detection-analysis)\n- [API documentation](references/api_doc.md)\n- [Skill demonstration](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [Analysis, Guidance, Text]\n\n**Output Format:** [JSON or Markdown report]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include links to cloud reports or an optional saved result file.]\n\n## Skill Version(s):\n\n1.0.9 (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.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, 38851 bytes\n\nFiles: references/api_doc.md (656b), scripts/__init__.py (53b), scripts/config.py (670b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_picky_eater_detection_analysis.py (3580b), skill-card.md (2552b), SKILL.md (11060b), 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 (154b)\n\nFile v1.0.8:SKILL.md\n\n---\nname: \"smyx-picky-eater-detection-analysis\"\ndescription: \"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\"\nversion: \"1.0.13\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Pet Picky Eater Detection | 宠物选择性拒食识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **宠物选择性拒食识别** |\n| 🎯 核心目标 | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_PICKY_EATER_DETECTION_ANALYSIS` |\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards.\n\n当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的宠物行为与营养管理AI。你的任务是分析智能喂食器拍摄的食盆区域视频（从投食开始至宠物离开），检测宠物是否存在\"选择性拒食\"行为，即主动将主粮颗粒拨出食盆、只挑拣其中的零食/冻干食用、或者嗅闻后拒绝进食。不要提供医疗建议，仅输出基于视觉的行为分析结果。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n\n### 1. 🧩 技能用途\n\n通过食盆区域视频识别宠物选择性拒食行为，记录挑食频率、主粮/零食摄入比例，连续异常时输出喂养调整建议，帮助主人及早发现挑食问题，避免营养不均衡\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 视频分析 |\n| 2 | 宠物嘴部/爪部动作识别 |\n| 3 | 主粮与零食颗粒区分 |\n| 4 | 拨食/挑食/嗅闻离开行为检测 |\n| 5 | 进食时长统计 |\n| 6 | 行为发生频率统计 |\n| 7 | 连续异常判定 |\n| 8 | 喂养调整建议输出 |\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_picky_eater_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_picky_eater_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_picky_eater_detection_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 宠物类型，可选值：cat/dog/bird/other，默认 cat | 按需填写 |\n| `--list` | 显示选择性拒食识别历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_picky_eater_detection_analysis.py`](scripts/smyx_picky_eater_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 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供喂养行为参考，不提供疾病诊断或治疗建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json\n```\n\nFile v1.0.8:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-picky-eater-detection-analysis\",\n  \"version\": \"1.0.8\",\n  \"publishedAt\": 1788766528620\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/ai-analysis/v2/start-common-ai-analysis` - 启动选择性拒食识别分析任务\n2. `/web/ai-analysis/get-common-ai-analysis-result` - 获取分析结果\n3. `/web/ai-analysis/page-common-ai-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_PICKY_EATER_DETECTION_ANALYSIS` - 宠物选择性拒食识别\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 pet feeding-bowl videos or URLs through server-side APIs to identify selective eating behaviors, record frequency, and return feeding-adjustment suggestions without providing disease diagnosis.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal pet owners, smart-feeder operators, boarding centers, and pet hospital staff use this skill to analyze feeding-bowl media for selective refusal patterns such as pushing kibble aside, eating only treats, or sniffing and leaving. It can also retrieve cloud-hosted history reports for the associated user identity.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Pet media and identity-linked report data are sent to configured Life Emergence/Open API services.\n\nMitigation: Use the skill only with media and report data approved for that remote service, and review endpoint configuration before deployment.\n\nRisk: The skill may create or reuse a local account record and persist service tokens in the workspace SQLite database.\n\nMitigation: Run it in an isolated workspace, avoid shared environments, and clear local account or token storage according to the operator's retention policy.\n\nRisk: Feeding behavior analysis can be mistaken for medical diagnosis.\n\nMitigation: Treat outputs as feeding-behavior guidance only and route health concerns to qualified veterinary review.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-picky-eater-detection-analysis)\n- [Skill demo](https://lifeemergence.com/sample.html)\n- [Pet picky eater detection API documentation](references/api_doc.md)\n- [SMYX 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 text with JSON-style analysis content and optional report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include feeding behavior findings, frequency summaries, feeding-adjustment suggestions, and cloud report export links.]\n\n## Skill Version(s):\n\n1.0.8 (source: server release metadata)\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, 38748 bytes\n\nFiles: references/api_doc.md (656b), scripts/__init__.py (53b), scripts/config.py (670b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_picky_eater_detection_analysis.py (3580b), skill-card.md (2350b), SKILL.md (11060b), 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 (154b)\n\nFile v1.0.7:SKILL.md\n\n---\nname: \"smyx-picky-eater-detection-analysis\"\ndescription: \"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\"\nversion: \"1.0.13\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Pet Picky Eater Detection | 宠物选择性拒食识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **宠物选择性拒食识别** |\n| 🎯 核心目标 | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_PICKY_EATER_DETECTION_ANALYSIS` |\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards.\n\n当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的宠物行为与营养管理AI。你的任务是分析智能喂食器拍摄的食盆区域视频（从投食开始至宠物离开），检测宠物是否存在\"选择性拒食\"行为，即主动将主粮颗粒拨出食盆、只挑拣其中的零食/冻干食用、或者嗅闻后拒绝进食。不要提供医疗建议，仅输出基于视觉的行为分析结果。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n\n### 1. 🧩 技能用途\n\n通过食盆区域视频识别宠物选择性拒食行为，记录挑食频率、主粮/零食摄入比例，连续异常时输出喂养调整建议，帮助主人及早发现挑食问题，避免营养不均衡\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 视频分析 |\n| 2 | 宠物嘴部/爪部动作识别 |\n| 3 | 主粮与零食颗粒区分 |\n| 4 | 拨食/挑食/嗅闻离开行为检测 |\n| 5 | 进食时长统计 |\n| 6 | 行为发生频率统计 |\n| 7 | 连续异常判定 |\n| 8 | 喂养调整建议输出 |\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_picky_eater_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_picky_eater_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_picky_eater_detection_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 宠物类型，可选值：cat/dog/bird/other，默认 cat | 按需填写 |\n| `--list` | 显示选择性拒食识别历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_picky_eater_detection_analysis.py`](scripts/smyx_picky_eater_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 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供喂养行为参考，不提供疾病诊断或治疗建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json\n```\n\nFile v1.0.7:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-picky-eater-detection-analysis\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1788522332102\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/ai-analysis/v2/start-common-ai-analysis` - 启动选择性拒食识别分析任务\n2. `/web/ai-analysis/get-common-ai-analysis-result` - 获取分析结果\n3. `/web/ai-analysis/page-common-ai-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_PICKY_EATER_DETECTION_ANALYSIS` - 宠物选择性拒食识别\n\nFile v1.0.7:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.7:scripts/config.yaml\n\n{}\n\nFile v1.0.7:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.7:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.7:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.7:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: dev\n\nFile v1.0.7:skill-card.md\n\n## Description:\n\nAnalyzes pet feeding-bowl videos or supplied video URLs through a remote API to detect picky-eating behaviors and return structured feeding behavior reports and feeding-adjustment suggestions without disease diagnosis.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nPet owners, smart feeder operators, boarding centers, and veterinary inpatient teams use this skill to submit feeding-area video for picky-eater behavior detection, frequency tracking, and feeding-adjustment guidance.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Pet feeding videos or supplied video URLs, plus an internal user identifier, are sent to the configured remote service.\n\nMitigation: Install only when this data sharing is acceptable, and review the configured service endpoint before use.\n\nRisk: The package includes non-public HTTP development endpoints in its configuration set.\n\nMitigation: Review and replace development endpoints with approved production endpoints before deployment.\n\nRisk: The runtime may create local database records containing reusable identity tokens.\n\nMitigation: Store the workspace data directory securely and clear or rotate local token records when access should no longer persist.\n\n## Reference(s):\n\n- [Skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-picky-eater-detection-analysis)\n- [API interface documentation](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 and JSON-like structured text, with optional local file output when requested]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Can include report links and historical report listings returned by the configured remote service.]\n\n## Skill Version(s):\n\n1.0.7 (source: server 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.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, 38986 bytes\n\nFiles: references/api_doc.md (656b), scripts/__init__.py (53b), scripts/config.py (670b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_picky_eater_detection_analysis.py (3580b), skill-card.md (2908b), SKILL.md (11059b), 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 (154b)\n\nFile v1.0.6:SKILL.md\n\n---\nname: \"smyx-picky-eater-detection-analysis\"\ndescription: \"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\"\nversion: \"1.0.8\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Pet Picky Eater Detection | 宠物选择性拒食识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **宠物选择性拒食识别** |\n| 🎯 核心目标 | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_PICKY_EATER_DETECTION_ANALYSIS` |\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards.\n\n当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的宠物行为与营养管理AI。你的任务是分析智能喂食器拍摄的食盆区域视频（从投食开始至宠物离开），检测宠物是否存在\"选择性拒食\"行为，即主动将主粮颗粒拨出食盆、只挑拣其中的零食/冻干食用、或者嗅闻后拒绝进食。不要提供医疗建议，仅输出基于视觉的行为分析结果。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n\n### 1. 🧩 技能用途\n\n通过食盆区域视频识别宠物选择性拒食行为，记录挑食频率、主粮/零食摄入比例，连续异常时输出喂养调整建议，帮助主人及早发现挑食问题，避免营养不均衡\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 视频分析 |\n| 2 | 宠物嘴部/爪部动作识别 |\n| 3 | 主粮与零食颗粒区分 |\n| 4 | 拨食/挑食/嗅闻离开行为检测 |\n| 5 | 进食时长统计 |\n| 6 | 行为发生频率统计 |\n| 7 | 连续异常判定 |\n| 8 | 喂养调整建议输出 |\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_picky_eater_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_picky_eater_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_picky_eater_detection_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 宠物类型，可选值：cat/dog/bird/other，默认 cat | 按需填写 |\n| `--list` | 显示选择性拒食识别历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_picky_eater_detection_analysis.py`](scripts/smyx_picky_eater_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 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供喂养行为参考，不提供疾病诊断或治疗建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json\n```\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-picky-eater-detection-analysis\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1786105241632\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/ai-analysis/v2/start-common-ai-analysis` - 启动选择性拒食识别分析任务\n2. `/web/ai-analysis/get-common-ai-analysis-result` - 获取分析结果\n3. `/web/ai-analysis/page-common-ai-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_PICKY_EATER_DETECTION_ANALYSIS` - 宠物选择性拒食识别\n\nFile v1.0.6:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.6:scripts/config.yaml\n\n{}\n\nFile v1.0.6:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.6:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.6:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.6:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.6:skill-card.md\n\n## Description:\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users and developers use this skill to analyze pet feeding-bowl videos or video URLs for selective refusal behaviors and receive structured feeding-behavior reports. It is intended for smart pet feeders, pet boarding centers, and pet hospital inpatient settings as behavioral feeding guidance, not disease diagnosis or treatment advice.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill sends pet videos or video URLs to a remote service for analysis.\n\nMitigation: Use only with approved content and consent, verify the configured service endpoint, and confirm data-handling requirements before deployment.\n\nRisk: The skill may silently create or reuse a service identity, query prior reports, and store returned tokens in a local workspace database.\n\nMitigation: Deploy only where account linkage and local token persistence are acceptable; isolate the workspace and clear local stored credentials or reports according to environment policy.\n\nRisk: The output is feeding-behavior guidance and is not a medical diagnosis.\n\nMitigation: Present results as observational feeding guidance and route persistent appetite, nutrition, or health concerns to qualified veterinary review.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-picky-eater-detection-analysis)\n- [API documentation](references/api_doc.md)\n- [Shared analysis API documentation](skills/smyx_analysis/references/api_doc.md)\n- [Skill demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, json, shell commands, guidance]\n\n**Output Format:** [Markdown or JSON structured analysis report with report links and optional saved output file]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Can analyze a local video file or network video URL, list historical reports, and save output when an output path is provided.]\n\n## Skill Version(s):\n\n1.0.6 (source: server release metadata; SKILL.md frontmatter reports 1.0.8)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.6:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.6:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.5: 31 files, 38811 bytes\n\nFiles: references/api_doc.md (656b), scripts/__init__.py (53b), scripts/config.py (670b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_picky_eater_detection_analysis.py (3580b), skill-card.md (2541b), SKILL.md (11059b), 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 (154b)\n\nFile v1.0.5:SKILL.md\n\n---\nname: \"smyx-picky-eater-detection-analysis\"\ndescription: \"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\"\nversion: \"1.0.7\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Pet Picky Eater Detection | 宠物选择性拒食识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **宠物选择性拒食识别** |\n| 🎯 核心目标 | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_PICKY_EATER_DETECTION_ANALYSIS` |\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards.\n\n当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的宠物行为与营养管理AI。你的任务是分析智能喂食器拍摄的食盆区域视频（从投食开始至宠物离开），检测宠物是否存在\"选择性拒食\"行为，即主动将主粮颗粒拨出食盆、只挑拣其中的零食/冻干食用、或者嗅闻后拒绝进食。不要提供医疗建议，仅输出基于视觉的行为分析结果。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n\n### 1. 🧩 技能用途\n\n通过食盆区域视频识别宠物选择性拒食行为，记录挑食频率、主粮/零食摄入比例，连续异常时输出喂养调整建议，帮助主人及早发现挑食问题，避免营养不均衡\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 视频分析 |\n| 2 | 宠物嘴部/爪部动作识别 |\n| 3 | 主粮与零食颗粒区分 |\n| 4 | 拨食/挑食/嗅闻离开行为检测 |\n| 5 | 进食时长统计 |\n| 6 | 行为发生频率统计 |\n| 7 | 连续异常判定 |\n| 8 | 喂养调整建议输出 |\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_picky_eater_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_picky_eater_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_picky_eater_detection_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 宠物类型，可选值：cat/dog/bird/other，默认 cat | 按需填写 |\n| `--list` | 显示选择性拒食识别历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_picky_eater_detection_analysis.py`](scripts/smyx_picky_eater_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 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供喂养行为参考，不提供疾病诊断或治疗建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json\n```\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-picky-eater-detection-analysis\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1785221911787\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/ai-analysis/v2/start-common-ai-analysis` - 启动选择性拒食识别分析任务\n2. `/web/ai-analysis/get-common-ai-analysis-result` - 获取分析结果\n3. `/web/ai-analysis/page-common-ai-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_PICKY_EATER_DETECTION_ANALYSIS` - 宠物选择性拒食识别\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 pet feeding-area videos or video URLs to detect selective refusal behaviors such as pushing staple food from the bowl, eating only treats, or sniffing and leaving, then returns frequency tracking and feeding-adjustment suggestions. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal pet owners, smart-feeder operators, boarding centers, and pet hospital staff use this skill to analyze feeding-area media for picky-eating behavior and receive a structured behavior report with non-diagnostic feeding guidance. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Pet videos and report history may be sent to remote services. <br>\nMitigation: Use the skill only with media and account context that the user intends to associate with the remote service. <br>\nRisk: The skill automatically creates or reuses identities and stores tokens locally. <br>\nMitigation: Review the workspace data directory before installation and use an isolated workspace when handling sensitive account context. <br>\nRisk: Cloud history retrieval has limited user control. <br>\nMitigation: Confirm the active account context before requesting history and avoid using shared or unintended accounts. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-picky-eater-detection-analysis) <br>\n- [API Interface Documentation](references/api_doc.md) <br>\n- [Analysis API Documentation](skills/smyx_analysis/references/api_doc.md) <br>\n- [Skill Demo](https://lifeemergence.com/sample.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance] <br>\n**Output Format:** [Markdown report or JSON detail output, with optional saved text output file and report links.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Outputs are behavior-analysis references and do not provide disease diagnosis or treatment advice.] <br>\n\n## Skill Version(s): <br>\n1.0.5 (source: server release metadata; artifact SKILL.md frontmatter says 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.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, 38929 bytes\n\nFiles: references/api_doc.md (656b), scripts/__init__.py (53b), scripts/config.py (670b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_picky_eater_detection_analysis.py (3580b), skill-card.md (2786b), SKILL.md (11059b), 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 (154b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: \"smyx-picky-eater-detection-analysis\"\ndescription: \"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\"\nversion: \"1.0.5\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Pet Picky Eater Detection | 宠物选择性拒食识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **宠物选择性拒食识别** |\n| 🎯 核心目标 | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_PICKY_EATER_DETECTION_ANALYSIS` |\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards.\n\n当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的宠物行为与营养管理AI。你的任务是分析智能喂食器拍摄的食盆区域视频（从投食开始至宠物离开），检测宠物是否存在\"选择性拒食\"行为，即主动将主粮颗粒拨出食盆、只挑拣其中的零食/冻干食用、或者嗅闻后拒绝进食。不要提供医疗建议，仅输出基于视觉的行为分析结果。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n\n### 1. 🧩 技能用途\n\n通过食盆区域视频识别宠物选择性拒食行为，记录挑食频率、主粮/零食摄入比例，连续异常时输出喂养调整建议，帮助主人及早发现挑食问题，避免营养不均衡\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 视频分析 |\n| 2 | 宠物嘴部/爪部动作识别 |\n| 3 | 主粮与零食颗粒区分 |\n| 4 | 拨食/挑食/嗅闻离开行为检测 |\n| 5 | 进食时长统计 |\n| 6 | 行为发生频率统计 |\n| 7 | 连续异常判定 |\n| 8 | 喂养调整建议输出 |\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_picky_eater_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_picky_eater_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_picky_eater_detection_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 宠物类型，可选值：cat/dog/bird/other，默认 cat | 按需填写 |\n| `--list` | 显示选择性拒食识别历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_picky_eater_detection_analysis.py`](scripts/smyx_picky_eater_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 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供喂养行为参考，不提供疾病诊断或治疗建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json\n```\n\nFile v1.0.4:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-picky-eater-detection-analysis\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1783960348673\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/ai-analysis/v2/start-common-ai-analysis` - 启动选择性拒食识别分析任务\n2. `/web/ai-analysis/get-common-ai-analysis-result` - 获取分析结果\n3. `/web/ai-analysis/page-common-ai-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_PICKY_EATER_DETECTION_ANALYSIS` - 宠物选择性拒食识别\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 pet feeding-area videos or video URLs through server-side APIs to identify selective eating behaviors, summarize behavior frequency, and provide feeding-adjustment suggestions without diagnosing disease. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users, pet-care operators, and developers can use this skill to analyze pet feeding-bowl videos for picky-eating behaviors such as sorting food, pushing kibble away, or sniffing and leaving, then review structured feeding-behavior reports and related suggestions. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Pet-feeding videos or supplied video URLs are sent to Lifeemergence backend APIs with identity-linked report history. <br>\nMitigation: Use the skill only when the publisher's privacy and retention terms are acceptable, and avoid sensitive home, clinic, or boarding-facility footage unless processing is approved. <br>\nRisk: The skill can silently create or reuse an identity and stores backend tokens in a local workspace SQLite database. <br>\nMitigation: Run it in an isolated workspace, restrict filesystem access, and clear local state or tokens before reusing the workspace for another user. <br>\nRisk: The skill's security verdict is suspicious because it combines video upload, identity handling, cloud report lookup, and local token storage. <br>\nMitigation: Review the skill before installation and limit execution to environments where outbound API calls and local credential storage are acceptable. <br>\n\n\n## Reference(s): <br>\n- [Pet Picky Eater Detection API Documentation](artifact/references/api_doc.md) <br>\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-picky-eater-detection-analysis) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown or JSON-like structured analysis text with report links, plus optional shell commands for running the skill] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Can save output to a file when the output path argument is used.] <br>\n\n## Skill Version(s): <br>\n1.0.4 (source: server release metadata; artifact frontmatter reports 1.0.5) <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, 38713 bytes\n\nFiles: references/api_doc.md (656b), scripts/__init__.py (53b), scripts/config.py (670b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_picky_eater_detection_analysis.py (3580b), skill-card.md (2588b), SKILL.md (11059b), 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 (154b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: \"smyx-picky-eater-detection-analysis\"\ndescription: \"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\"\nversion: \"1.0.5\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Pet Picky Eater Detection | 宠物选择性拒食识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **宠物选择性拒食识别** |\n| 🎯 核心目标 | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_PICKY_EATER_DETECTION_ANALYSIS` |\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards.\n\n当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的宠物行为与营养管理AI。你的任务是分析智能喂食器拍摄的食盆区域视频（从投食开始至宠物离开），检测宠物是否存在\"选择性拒食\"行为，即主动将主粮颗粒拨出食盆、只挑拣其中的零食/冻干食用、或者嗅闻后拒绝进食。不要提供医疗建议，仅输出基于视觉的行为分析结果。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n\n### 1. 🧩 技能用途\n\n通过食盆区域视频识别宠物选择性拒食行为，记录挑食频率、主粮/零食摄入比例，连续异常时输出喂养调整建议，帮助主人及早发现挑食问题，避免营养不均衡\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 视频分析 |\n| 2 | 宠物嘴部/爪部动作识别 |\n| 3 | 主粮与零食颗粒区分 |\n| 4 | 拨食/挑食/嗅闻离开行为检测 |\n| 5 | 进食时长统计 |\n| 6 | 行为发生频率统计 |\n| 7 | 连续异常判定 |\n| 8 | 喂养调整建议输出 |\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_picky_eater_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_picky_eater_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_picky_eater_detection_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 宠物类型，可选值：cat/dog/bird/other，默认 cat | 按需填写 |\n| `--list` | 显示选择性拒食识别历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_picky_eater_detection_analysis.py`](scripts/smyx_picky_eater_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 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供喂养行为参考，不提供疾病诊断或治疗建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json\n```\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-picky-eater-detection-analysis\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1783578872584\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/ai-analysis/v2/start-common-ai-analysis` - 启动选择性拒食识别分析任务\n2. `/web/ai-analysis/get-common-ai-analysis-result` - 获取分析结果\n3. `/web/ai-analysis/page-common-ai-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_PICKY_EATER_DETECTION_ANALYSIS` - 宠物选择性拒食识别\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>\nAnalyzes pet feeding-area videos or video URLs with LifeEmergence cloud APIs to identify selective eating behaviors and return structured feeding-behavior findings, suggestions, and report links. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users, developers, and operators of smart pet feeders, pet boarding centers, or pet hospital wards can use this skill to analyze feeding-area videos for picky-eater behavior and receive structured behavior observations. The skill is for feeding-behavior support and does not provide disease diagnosis or treatment advice. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Pet-feeding media or submitted video URLs are sent to LifeEmergence cloud APIs for analysis. <br>\nMitigation: Use only with media the user is comfortable sending to the cloud, and review the service's retention and access practices before deployment. <br>\nRisk: The skill can create or reuse an identity and query cloud analysis history without asking the user for identity input. <br>\nMitigation: Deploy only where this identity behavior is acceptable, document it for operators, and prefer versions that ask before account creation or history lookup. <br>\nRisk: Account tokens may be stored in a local workspace database. <br>\nMitigation: Run in an isolated workspace, restrict filesystem access, and provide a process for clearing stored tokens. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-picky-eater-detection-analysis) <br>\n- [API documentation](references/api_doc.md) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, JSON, guidance] <br>\n**Output Format:** [Markdown or JSON-like structured analysis text with report links] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include cloud report history and exported report image links when history lookup is requested.] <br>\n\n## Skill Version(s): <br>\n1.0.3 (source: server release metadata; artifact frontmatter states 1.0.5) <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\n\nArchive v1.0.2: 31 files, 38536 bytes\n\nFiles: references/api_doc.md (656b), scripts/__init__.py (53b), scripts/config.py (670b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_picky_eater_detection_analysis.py (3580b), skill-card.md (2608b), SKILL.md (11059b), 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 (154b)\n\nFile v1.0.2:SKILL.md\n\n---\nname: \"smyx-picky-eater-detection-analysis\"\ndescription: \"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\"\nversion: \"1.0.3\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Pet Picky Eater Detection | 宠物选择性拒食识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **宠物选择性拒食识别** |\n| 🎯 核心目标 | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_PICKY_EATER_DETECTION_ANALYSIS` |\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards.\n\n当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的宠物行为与营养管理AI。你的任务是分析智能喂食器拍摄的食盆区域视频（从投食开始至宠物离开），检测宠物是否存在\"选择性拒食\"行为，即主动将主粮颗粒拨出食盆、只挑拣其中的零食/冻干食用、或者嗅闻后拒绝进食。不要提供医疗建议，仅输出基于视觉的行为分析结果。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n\n### 1. 🧩 技能用途\n\n通过食盆区域视频识别宠物选择性拒食行为，记录挑食频率、主粮/零食摄入比例，连续异常时输出喂养调整建议，帮助主人及早发现挑食问题，避免营养不均衡\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 视频分析 |\n| 2 | 宠物嘴部/爪部动作识别 |\n| 3 | 主粮与零食颗粒区分 |\n| 4 | 拨食/挑食/嗅闻离开行为检测 |\n| 5 | 进食时长统计 |\n| 6 | 行为发生频率统计 |\n| 7 | 连续异常判定 |\n| 8 | 喂养调整建议输出 |\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_picky_eater_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_picky_eater_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_picky_eater_detection_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 宠物类型，可选值：cat/dog/bird/other，默认 cat | 按需填写 |\n| `--list` | 显示选择性拒食识别历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_picky_eater_detection_analysis.py`](scripts/smyx_picky_eater_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 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供喂养行为参考，不提供疾病诊断或治疗建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json\n```\n\nFile v1.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-picky-eater-detection-analysis\",\n  \"version\": \"1.0.2\",\n  \"publishedAt\": 1782761305404\n}\n\nFile v1.0.2: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/ai-analysis/v2/start-common-ai-analysis` - 启动选择性拒食识别分析任务\n2. `/web/ai-analysis/get-common-ai-analysis-result` - 获取分析结果\n3. `/web/ai-analysis/page-common-ai-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_PICKY_EATER_DETECTION_ANALYSIS` - 宠物选择性拒食识别\n\nFile v1.0.2: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.2:scripts/config.yaml\n\n{}\n\nFile v1.0.2:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.2: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.2: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.2: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.2:skill-card.md\n\n## Description: <br>\nAnalyzes pet feeding-bowl videos or video URLs through a cloud API to identify selective eating behaviors, summarize frequency, and provide feeding-adjustment suggestions without medical diagnosis. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal pet care operators, smart feeder integrations, boarding centers, and veterinary inpatient teams use this skill to screen feeding-area footage for selective eating behavior. It helps identify patterns such as pushing kibble away, selecting treats, or sniffing and leaving, then returns behavior-focused feeding suggestions. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Pet feeding media or video URLs are sent to the configured cloud analysis service. <br>\nMitigation: Use only media and URLs that the user is comfortable sharing with that service, and avoid sensitive background footage. <br>\nRisk: The skill can create or reuse a backend identity and store local authentication tokens in a workspace SQLite database. <br>\nMitigation: Run it in a scoped workspace, limit access to local data files, and clear stored identity data when continued history access is not needed. <br>\nRisk: Behavior analysis could be mistaken for medical guidance. <br>\nMitigation: Treat outputs as feeding-behavior references only and escalate health concerns to a qualified veterinary professional. <br>\n\n\n## Reference(s): <br>\n- [Pet Picky Eater Detection API Documentation](references/api_doc.md) <br>\n- [Shared Analysis API Documentation](skills/smyx_analysis/references/api_doc.md) <br>\n- [Skill Demo](https://lifeemergence.com/sample.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown, JSON, Guidance] <br>\n**Output Format:** [Markdown report with structured JSON content and report links] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May write the generated report to a user-specified output file; results are feeding-behavior references, not medical diagnosis or treatment advice.] <br>\n\n## Skill Version(s): <br>\n1.0.2 (source: server release metadata; artifact frontmatter reports 1.0.3) <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.2:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.2:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.1: 30 files, 34275 bytes\n\nFiles: references/api_doc.md (656b), scripts/__init__.py (53b), scripts/config.py (670b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_picky_eater_detection_analysis.py (3580b), SKILL.md (11059b), 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 (13468b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (23409b), _meta.json (154b)\n\nFile v1.0.1:SKILL.md\n\n---\nname: \"smyx-picky-eater-detection-analysis\"\ndescription: \"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\"\nversion: \"1.0.3\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Pet Picky Eater Detection | 宠物选择性拒食识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **宠物选择性拒食识别** |\n| 🎯 核心目标 | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_PICKY_EATER_DETECTION_ANALYSIS` |\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards.\n\n当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的宠物行为与营养管理AI。你的任务是分析智能喂食器拍摄的食盆区域视频（从投食开始至宠物离开），检测宠物是否存在\"选择性拒食\"行为，即主动将主粮颗粒拨出食盆、只挑拣其中的零食/冻干食用、或者嗅闻后拒绝进食。不要提供医疗建议，仅输出基于视觉的行为分析结果。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n\n### 1. 🧩 技能用途\n\n通过食盆区域视频识别宠物选择性拒食行为，记录挑食频率、主粮/零食摄入比例，连续异常时输出喂养调整建议，帮助主人及早发现挑食问题，避免营养不均衡\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 视频分析 |\n| 2 | 宠物嘴部/爪部动作识别 |\n| 3 | 主粮与零食颗粒区分 |\n| 4 | 拨食/挑食/嗅闻离开行为检测 |\n| 5 | 进食时长统计 |\n| 6 | 行为发生频率统计 |\n| 7 | 连续异常判定 |\n| 8 | 喂养调整建议输出 |\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_picky_eater_detection_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_picky_eater_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_picky_eater_detection_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 宠物类型，可选值：cat/dog/bird/other，默认 cat | 按需填写 |\n| `--list` | 显示选择性拒食识别历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_picky_eater_detection_analysis.py`](scripts/smyx_picky_eater_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 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供喂养行为参考，不提供疾病诊断或治疗建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json\n```\n\nFile v1.0.1:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-picky-eater-detection-analysis\",\n  \"version\": \"1.0.1\",\n  \"publishedAt\": 1782523052427\n}\n\nFile v1.0.1: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/ai-analysis/v2/start-common-ai-analysis` - 启动选择性拒食识别分析任务\n2. `/web/ai-analysis/get-common-ai-analysis-result` - 获取分析结果\n3. `/web/ai-analysis/page-common-ai-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_PICKY_EATER_DETECTION_ANALYSIS` - 宠物选择性拒食识别\n\nFile v1.0.1: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.1:scripts/config.yaml\n\n{}\n\nFile v1.0.1:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.1: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.1: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.1: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.1:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.1:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3","readmeExcerpt":"Skill: Pet Picky Eater Detection | 宠物选择性拒食识别 Owner: smyx-sunjinhui Summary: Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequenc","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"python -m scripts.smyx_picky_eater_detection_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json"},{"language":"bash","snippet":"python -m scripts.smyx_picky_eater_detection_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --input /path/to/feeder_video.mp4 --pet-type cat\n\n# 分析网络食盆区域视频\npython -m scripts.smyx_picky_eater_detection_analysis --url https://example.com/feeder_video.mp4 --pet-type cat\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史挑食识别报告（自动触发关键词：查看历史挑食报告、历史报告、拒食识别报告清单等）\npython -m scripts.smyx_picky_eater_detection_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_picky_eater_detection_analysis --input video.mp4 --pet-type cat --output result.json"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: \"smyx-picky-eater-detection-analysis\"\ndescription: \"Triggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards. | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\"\nversion: \"1.0.16\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Pet Picky Eater Detection | 宠物选择性拒食识别\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **宠物选择性拒食识别** |\n| 🎯 核心目标 | 当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_PICKY_EATER_DETECTION_ANALYSIS` |\n\nTriggers when a user provides a video of a pet feeding bowl area for analysis; supports local video uploads or network URLs to call server-side APIs for picky-eater behavior detection, identifying behaviors such as pushing kibble out of the bowl, picking only treats/freeze-dried bites, or sniffing then leaving without eating; records frequency and outputs feeding-adjustment suggestions to prevent malnutrition. Application scenarios: smart pet feeders, pet boarding centers, pet hospital inpatient wards.\n\n当用户提供宠物食盆区域视频时，触发本技能进行选择性拒食行为识别；支持通过上传本地视频或网络视频URL，调用服务端API识别宠物把主粮拨出食盆、只挑拣零食/冻干、嗅闻后离开等挑食行为，记录发生频率，连续异常时输出喂养调整建议，预防营养不均衡（不诊断疾病）。应用场景：智能喂食器、宠物寄养中心、宠物医院住院部。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的宠物行为与营养管理AI。你的任务是分析智能喂食器拍摄的食盆区域视频（从投食开始至宠物离开），检测宠物是否存在\"选择性拒食\"行为，即主动将主粮颗粒拨出食盆、只挑拣其中的零食/冻干食用、或者嗅闻后拒绝进食。不要提供医疗建议，仅输出基于视觉的行为分析结果。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n\n### 1. 🧩 技能用途\n\n通过食盆区域视频识别宠物选择性拒食行为，记录挑食频率、主粮/零食摄入比例，连续异常时输出喂养调整建议，帮助主人及早发现挑食问题，避免营养不均衡\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 视频分析 |\n| 2 | 宠物嘴部/爪部动作识别 |\n| 3 | 主粮与零食颗粒区分 |\n| 4 | 拨食/挑食/嗅闻离开行为检测 |\n| 5 | 进食时长统计 |\n| 6 | 行为发生频率统计 |\n| 7 | 连续异常判定 |\n| 8 | 喂养调整建议输出 |\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必须"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-picky-eater-detection-analysis\",\n  \"version\": \"1.0.10\",\n  \"publishedAt\": 1791087515503\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/ai-analysis/v2/start-common-ai-analysis` - 启动选择性拒食识别分析任务\n2. `/web/ai-analysis/get-common-ai-analysis-result` - 获取分析结果\n3. `/web/ai-analysis/page-common-ai-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_PICKY_EATER_DETECTION_ANALYSIS` - 宠物选择性拒食识别"},{"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":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":967,"uniquenessScore":42,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-09T23:31:46.843Z","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-09T23:31:46.843Z","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-10T08:45:28.648Z","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"}]}}}