{"id":"0fd29423-badc-4b93-a393-fe9fedc78419","entityType":"agent","slug":"clawhub-18072937735-smyx-feed-intake-estimation-analysis","name":"Feed Intake Estimation | 畜禽采食量估算","canonicalUrl":"https://www.xpersona.co/agent/clawhub-18072937735-smyx-feed-intake-estimation-analysis","canonicalPath":"/agent/clawhub-18072937735-smyx-feed-intake-estimation-analysis","generatedAt":"2026-10-10T23:46:44.690Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-10T21:40:03.928Z","emptyReason":null},"description":"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。 Skill: Feed Intake Estimation | 畜禽采食量估算 Owner: 18072937735 Summary: Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。 Tags: latest:1.0.12 Version history: v1.0.12 | 2026-09-30T16:17:28.439Z | auto - Bumped skill version from 1.0.11 to 1.0.13 in documentation.","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.3K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s17f8q65zg3y98t86jdg1177g583whq8:smyx-feed-intake-estimation-analysis","sourceUrl":"https://clawhub.ai/18072937735/smyx-feed-intake-estimation-analysis","homepage":"https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/18072937735/smyx-feed-intake-estimation-analysis","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":62,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake tr"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T21:40:03.928Z","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-10T21:40:03.928Z","emptyReason":null},"stars":null,"forks":null,"downloads":1250,"packageName":null,"latestVersion":"1.0.12","tractionLabel":"1.3K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T21:40:03.914Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T21:40:03.928Z","lastCrawledAt":"2026-10-10T21:40:03.914Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T21:40:03.915Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.12","createdAt":"2026-09-30T16:17:28.439Z","changelog":"- Bumped skill version from 1.0.11 to 1.0.13 in documentation. - Updated SKILL.md content; likely minor documentation adjustments and clarifications. - Removed the skill-card.md file. - No functional or API changes described.","fileCount":31,"zipByteSize":39338},{"version":"1.0.11","createdAt":"2026-09-08T13:50:30.506Z","changelog":"- Version updated to 1.0.11. - Documentation improvements in SKILL.md; content streamlined and clarified. - skill-card.md file removed. - No changes to core code or functionality.","fileCount":31,"zipByteSize":39496},{"version":"1.0.10","createdAt":"2026-08-28T10:07:29.664Z","changelog":"- Version number updated from 1.0.8 to 1.0.9. - Minor documentation or metadata update to the SKILL.md file. - Removed the skill-card.md file.","fileCount":31,"zipByteSize":39566},{"version":"1.0.9","createdAt":"2026-08-22T05:52:29.863Z","changelog":"- Updated documentation in SKILL.md with minor clarifications and version bump. - Incremented version number from 1.0.6 to 1.0.8 in SKILL.md. - Removed the file skill-card.md.","fileCount":31,"zipByteSize":39685},{"version":"1.0.8","createdAt":"2026-08-10T15:32:33.878Z","changelog":"- Updated version to 1.0.6 in SKILL.md. - Removed the file skill-card.md. - No changes to functionality or features.","fileCount":31,"zipByteSize":39411},{"version":"1.0.7","createdAt":"2026-08-05T05:23:31.497Z","changelog":"- Updated version to 1.0.5 in SKILL.md. - Removed the file skill-card.md. - No changes to code or functionality; documentation only.","fileCount":31,"zipByteSize":39703},{"version":"1.0.6","createdAt":"2026-07-28T18:42:31.048Z","changelog":"- Bumped version in SKILL.md from 1.0.3 to 1.0.4. - Removed the file skill-card.md. - No functional or workflow changes introduced—documentation update only.","fileCount":31,"zipByteSize":39483},{"version":"1.0.5","createdAt":"2026-07-18T09:33:42.486Z","changelog":"- Version number updated to 1.0.5. - Minor documentation updates in SKILL.md. - Removed redundant file: skill-card.md. - Internal script utility file modified.","fileCount":31,"zipByteSize":39522}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17f8q65zg3y98t86jdg1177g583whq8:smyx-feed-intake-estimation-analysis","setupComplexity":"low","setupSteps":["Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-feed-intake-estimation-analysis/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-feed-intake-estimation-analysis/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-feed-intake-estimation-analysis/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-feed-intake-estimation-analysis/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-feed-intake-estimation-analysis/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-feed-intake-estimation-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-10T23:46:44.686Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-feed-intake-estimation-analysis/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-feed-intake-estimation-analysis/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-feed-intake-estimation-analysis/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-18072937735-smyx-feed-intake-estimation-analysis/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-10T21:40:03.928Z","emptyReason":null},"readme":"Skill: Feed Intake Estimation | 畜禽采食量估算\n\nOwner: 18072937735\n\nSummary: Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\n\nTags: latest:1.0.12\n\nVersion history:\n\nv1.0.12 | 2026-09-30T16:17:28.439Z | auto\n\n- Bumped skill version from 1.0.11 to 1.0.13 in documentation.\n- Updated SKILL.md content; likely minor documentation adjustments and clarifications.\n- Removed the skill-card.md file.\n- No functional or API changes described.\n\nv1.0.11 | 2026-09-08T13:50:30.506Z | auto\n\n- Version updated to 1.0.11.\n- Documentation improvements in SKILL.md; content streamlined and clarified.\n- skill-card.md file removed.\n- No changes to core code or functionality.\n\nv1.0.10 | 2026-08-28T10:07:29.664Z | auto\n\n- Version number updated from 1.0.8 to 1.0.9.\n- Minor documentation or metadata update to the SKILL.md file.\n- Removed the skill-card.md file.\n\nv1.0.9 | 2026-08-22T05:52:29.863Z | auto\n\n- Updated documentation in SKILL.md with minor clarifications and version bump.\n- Incremented version number from 1.0.6 to 1.0.8 in SKILL.md.\n- Removed the file skill-card.md.\n\nv1.0.8 | 2026-08-10T15:32:33.878Z | auto\n\n- Updated version to 1.0.6 in SKILL.md.\n- Removed the file skill-card.md.\n- No changes to functionality or features.\n\nv1.0.7 | 2026-08-05T05:23:31.497Z | auto\n\n- Updated version to 1.0.5 in SKILL.md.\n- Removed the file skill-card.md.\n- No changes to code or functionality; documentation only.\n\nv1.0.6 | 2026-07-28T18:42:31.048Z | auto\n\n- Bumped version in SKILL.md from 1.0.3 to 1.0.4.\n- Removed the file skill-card.md.\n- No functional or workflow changes introduced—documentation update only.\n\nv1.0.5 | 2026-07-18T09:33:42.486Z | auto\n\n- Version number updated to 1.0.5.\n- Minor documentation updates in SKILL.md.\n- Removed redundant file: skill-card.md.\n- Internal script utility file modified.\n\nv1.0.4 | 2026-07-06T08:12:25.260Z | auto\n\n- Updated version from 1.0.0 to 1.0.1 in SKILL.md.\n- No other content or functional changes; version metadata updated only.\n\nv1.0.3 | 2026-07-04T21:50:42.887Z | auto\n\nVersion 1.0.3\n\n- Updated and expanded skill documentation with detailed overview, workflow, and standard operating procedures.\n- Added clear requirements for video/image input, data privacy, and internal user identity handling.\n- Clarified scenarios for automatic triggering and strict rules for historical report retrieval from cloud API.\n- Documented output format, parameter explanations, resource indexing, and report table conventions.\n- Provided comprehensive usage examples and caveats for users.\n\nArchive index:\n\nArchive v1.0.12: 31 files, 39338 bytes\n\nFiles: references/api_doc.md (645b), scripts/__init__.py (51b), scripts/config.py (672b), scripts/config.yaml (3b), scripts/skill.py (570b), scripts/smyx_feed_intake_estimation_analysis.py (3537b), skill-card.md (2179b), SKILL.md (11966b), 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 (156b)\n\nFile v1.0.12:SKILL.md\n\n---\nname: \"smyx-feed-intake-estimation-analysis\"\ndescription: \"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\"\nversion: \"1.0.13\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Livestock Feed Intake Estimation | 畜禽采食量估算\n\n> 通过食槽视频估算每日采食量变化，异常时预警。\n>\n> **精准饲喂计量中枢** · 食槽区域连续视频智能分析 · 剩余料量变化估算 · 每日采食量趋势 · 异常预警 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **畜禽采食量估算** |\n| 🎯 核心目标 | 基于食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体或群体的每日采食量，输出采食量趋势及异常提醒 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、每日采食量估算、采食量趋势曲线、异常提醒等级、报告链接 |\n| 🏢 适用场景 | 猪/牛等畜禽的精准饲喂管理与饲料成本控制，减少饲料浪费，识别采食量异常个体 |\n| 🧩 场景码 | `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS` |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n## 🤖 AI 角色 | AI Role\n\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的畜禽饲喂管理 AI。你的任务是分析食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体的每日采食量，输出采食量趋势及异常提醒。不要提供饲喂调整或饲料配方建议，仅基于视觉变化输出采食量估算结果。** |\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_feed_intake_estimation_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_feed_intake_estimation_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n---\n\n## 📦 前置准备 | Requirements\n\n### 依赖说明\n\n`scripts` 脚本所需的依赖包及版本：\n\n```txt\nrequests>=2.28.0\n```\n\n---\n\n## 📷 采集要求 | Capture Requirements\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 固定摄像头正对食槽（俯视或斜俯视），拍摄角度稳定，避免大幅位移或频繁调整 |\n| 2 | 画面中食槽全景可见，槽底与料面之间高度差清晰可辨，便于估算剩余量 |\n| 3 | 光照条件稳定，白天充足自然光或稳定人工光源，避免强逆光和大面积过曝/欠曝 |\n| 4 | 视频建议 30 秒~10 分钟连续拍摄，覆盖典型饲喂时段，帧率不低于 10fps |\n| 5 | 支持格式：jpg/png/jpeg 图片，及 mp4/avi/mov 视频；单文件不超过 10MB |\n| 6 | 尽量减少人员补料、清扫等大面积遮挡时段，或将其从关键分析片段中剔除 |\n| 7 | 建议保持食槽形状/规格与历史采集一致，以获得更稳定的采食量趋势对比 |\n\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\n## 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备食槽视频输入 | 提供本地文件路径或网络 URL；确保画面稳定、食槽全景可见 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行采食量估算 | 调用 `-m scripts.smyx_feed_intake_estimation_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看每日采食量、趋势曲线、异常提醒与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地食槽区域图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络食槽区域图像/视频 URL 地址 | API 服务自动下载 |\n| `--pet-type` | 类别标识（畜禽场景保持 other） | 默认 `other`，按需填写 |\n| `--list` | 显示历史分析报告清单 | 可以输入起始日期参数过滤数据范围 |\n| `--api-url` | API 服务地址 | 可选，使用默认值 |\n| `--detail` | 输出详细程度 | `basic` / `standard` / `json`，默认 `json` |\n| `--output` | 结果输出文件路径 | 可选 |\n\n---\n\n## 🗂️ 资源索引 | Resource Index\n\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_feed_intake_estimation_analysis.py`](scripts/smyx_feed_intake_estimation_analysis.py) | 调用 API 进行采食量估算或查询历史报告 | 执行分析或查询时使用 |\n| ⚙️ 配置文件 | [`scripts/config.py`](scripts/config.py) | 场景码 `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS`、默认参数配置 | 需要确认默认配置时读取 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n---\n\n## ⚠️ 注意事项 | Notes\n\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 图片支持 `jpg` / `png` / `jpeg`；视频支持 `mp4` / `avi` / `mov`；单文件最大 `10MB` |\n| 🧑‍⚖️ 结果性质 | 分析结果仅为视觉估算与趋势提醒，本技能不提供饲喂调整或饲料配方建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能使用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数无需本地下载，默认为公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 显示历史分析报告清单时，从接口返回 JSON 数据中提取字段作为超链接地址，并自动转化为 Markdown 表格输出 |\n\n---\n\n## 🔒 隐私与数据安全声明 | Privacy & Data Security\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 仅采集与畜禽采食量估算直接相关的食槽图像/视频数据，不采集与采食量估算无关的敏感信息 |\n| 2 | 内部身份参数由系统自动处理，不在任何输出、日志或报告中暴露 |\n| 3 | 分析请求通过服务端 API 完成，网络传输遵循平台既有安全策略 |\n| 4 | 历史报告仅当前身份可读，不做跨养殖场/跨用户汇总或共享 |\n| 5 | 估算结果仅供参考，实际饲喂计量与配方调整请结合养殖场规程与专业营养师意见 |\n\n---\n\n## 📜 历史报告清单输出规范 | Report List Format\n\n当显示历史分析报告清单的时候，从接口返回 JSON 数据中提取字段作为超链接地址，且自动转化为如下 Markdown 表格格式输出。\n\n### 📌 固定输出列\n\n| 列名 | 生成规则 |\n|---|---|\n| 报告名称 | 使用 `畜禽采食量估算报告-{记录id}` 形式拼接 |\n| 采食量趋势 | 从接口返回数据中提取（正常 / 偏低 / 骤降 / 骤升） |\n| 分析时间 | 从接口返回数据中提取 |\n| 点击查看 | 使用 `[🔗 查看报告]()` 格式的超链接 |\n\n### 🧾 表格输出示例\n\n| 报告名称 | 采食量趋势 | 分析时间 | 点击查看 |\n|----------|------------|----------|----------|\n| 畜禽采食量估算报告-20260703160500001 | 骤降 | 2026-07-03 16:05:00 | [🔗 查看报告](https://example.com/report?id=xxx) |\n\n---\n\n## 🧰 使用示例 | Examples\n\n### 🐷 分析本地猪舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/pig_feeder.mp4\n```\n\n### 🐄 分析本地牛舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/cow_feeder.mp4\n```\n\n### 🌐 分析网络食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --url https://example.com/feeder_trough.mp4\n```\n\n### 📚 显示历史分析报告 / 显示分析报告清单列表 / 显示历史采食量报告\n\n> 自动触发关键词：查看历史采食量报告、历史报告、采食量估算清单等。\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --list\n```\n\n### 🪶 输出精简报告\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input pig_feeder.mp4 --detail basic\n```\n\n### 💾 保存结果到文件\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input cow_feeder.mp4 --output result.json\n```\n\nFile v1.0.12:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-feed-intake-estimation-analysis\",\n  \"version\": \"1.0.12\",\n  \"publishedAt\": 1790785048439\n}\n\nFile v1.0.12:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放畜禽采食量估算 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/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_FEED_INTAKE_ESTIMATION_ANALYSIS` - 畜禽采食量估算\n\nFile v1.0.12:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.12:scripts/config.yaml\n\n{}\n\nFile v1.0.12:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.12:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.12:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.12:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.12:skill-card.md\n\n## Description:\n\nEstimates daily livestock feed intake from feeder images or videos and reports intake trends and anomaly alerts.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nLivestock operators and farm managers use feeder footage to estimate individual or group feed intake, monitor trends, and review anomalies or past reports. Results are visual estimates, not feeding or ration advice.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Media or media URLs are sent to a remote analysis service.\n\nMitigation: Send only approved feeder footage and URLs; review remote data handling before use.\n\nRisk: The skill automatically creates or reuses a cloud identity and stores returned tokens locally.\n\nMitigation: Avoid installation until identity override and token storage are tightened; use only an isolated workspace with trusted users if evaluating it.\n\nRisk: Cloud report history access and import-path behavior require review.\n\nMitigation: Restrict access to trusted users and review history permissions and import-path behavior before deployment.\n\n## Reference(s):\n\n- [ClawHub skill release](https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis)\n- [ClawHub publisher profile](https://clawhub.ai/user/18072937735)\n- [Feed intake API reference](references/api_doc.md)\n- [Skill demonstration](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, JSON]\n\n**Output Format:** [Structured analysis report or Markdown report-history table]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Daily intake estimates, trends, anomaly alerts, and links to cloud reports.]\n\n## Skill Version(s):\n\n1.0.12 (source: server-resolved ClawHub release; bundled SKILL.md lists 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.12:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.12:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.11: 31 files, 39496 bytes\n\nFiles: references/api_doc.md (645b), scripts/__init__.py (51b), scripts/config.py (672b), scripts/config.yaml (3b), scripts/skill.py (570b), scripts/smyx_feed_intake_estimation_analysis.py (3537b), skill-card.md (2429b), SKILL.md (11966b), 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 (156b)\n\nFile v1.0.11:SKILL.md\n\n---\nname: \"smyx-feed-intake-estimation-analysis\"\ndescription: \"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\"\nversion: \"1.0.11\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Livestock Feed Intake Estimation | 畜禽采食量估算\n\n> 通过食槽视频估算每日采食量变化，异常时预警。\n>\n> **精准饲喂计量中枢** · 食槽区域连续视频智能分析 · 剩余料量变化估算 · 每日采食量趋势 · 异常预警 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **畜禽采食量估算** |\n| 🎯 核心目标 | 基于食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体或群体的每日采食量，输出采食量趋势及异常提醒 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、每日采食量估算、采食量趋势曲线、异常提醒等级、报告链接 |\n| 🏢 适用场景 | 猪/牛等畜禽的精准饲喂管理与饲料成本控制，减少饲料浪费，识别采食量异常个体 |\n| 🧩 场景码 | `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS` |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n## 🤖 AI 角色 | AI Role\n\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的畜禽饲喂管理 AI。你的任务是分析食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体的每日采食量，输出采食量趋势及异常提醒。不要提供饲喂调整或饲料配方建议，仅基于视觉变化输出采食量估算结果。** |\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_feed_intake_estimation_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_feed_intake_estimation_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n---\n\n## 📦 前置准备 | Requirements\n\n### 依赖说明\n\n`scripts` 脚本所需的依赖包及版本：\n\n```txt\nrequests>=2.28.0\n```\n\n---\n\n## 📷 采集要求 | Capture Requirements\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 固定摄像头正对食槽（俯视或斜俯视），拍摄角度稳定，避免大幅位移或频繁调整 |\n| 2 | 画面中食槽全景可见，槽底与料面之间高度差清晰可辨，便于估算剩余量 |\n| 3 | 光照条件稳定，白天充足自然光或稳定人工光源，避免强逆光和大面积过曝/欠曝 |\n| 4 | 视频建议 30 秒~10 分钟连续拍摄，覆盖典型饲喂时段，帧率不低于 10fps |\n| 5 | 支持格式：jpg/png/jpeg 图片，及 mp4/avi/mov 视频；单文件不超过 10MB |\n| 6 | 尽量减少人员补料、清扫等大面积遮挡时段，或将其从关键分析片段中剔除 |\n| 7 | 建议保持食槽形状/规格与历史采集一致，以获得更稳定的采食量趋势对比 |\n\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\n## 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备食槽视频输入 | 提供本地文件路径或网络 URL；确保画面稳定、食槽全景可见 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行采食量估算 | 调用 `-m scripts.smyx_feed_intake_estimation_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看每日采食量、趋势曲线、异常提醒与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地食槽区域图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络食槽区域图像/视频 URL 地址 | API 服务自动下载 |\n| `--pet-type` | 类别标识（畜禽场景保持 other） | 默认 `other`，按需填写 |\n| `--list` | 显示历史分析报告清单 | 可以输入起始日期参数过滤数据范围 |\n| `--api-url` | API 服务地址 | 可选，使用默认值 |\n| `--detail` | 输出详细程度 | `basic` / `standard` / `json`，默认 `json` |\n| `--output` | 结果输出文件路径 | 可选 |\n\n---\n\n## 🗂️ 资源索引 | Resource Index\n\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_feed_intake_estimation_analysis.py`](scripts/smyx_feed_intake_estimation_analysis.py) | 调用 API 进行采食量估算或查询历史报告 | 执行分析或查询时使用 |\n| ⚙️ 配置文件 | [`scripts/config.py`](scripts/config.py) | 场景码 `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS`、默认参数配置 | 需要确认默认配置时读取 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n---\n\n## ⚠️ 注意事项 | Notes\n\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 图片支持 `jpg` / `png` / `jpeg`；视频支持 `mp4` / `avi` / `mov`；单文件最大 `10MB` |\n| 🧑‍⚖️ 结果性质 | 分析结果仅为视觉估算与趋势提醒，本技能不提供饲喂调整或饲料配方建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能使用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数无需本地下载，默认为公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 显示历史分析报告清单时，从接口返回 JSON 数据中提取字段作为超链接地址，并自动转化为 Markdown 表格输出 |\n\n---\n\n## 🔒 隐私与数据安全声明 | Privacy & Data Security\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 仅采集与畜禽采食量估算直接相关的食槽图像/视频数据，不采集与采食量估算无关的敏感信息 |\n| 2 | 内部身份参数由系统自动处理，不在任何输出、日志或报告中暴露 |\n| 3 | 分析请求通过服务端 API 完成，网络传输遵循平台既有安全策略 |\n| 4 | 历史报告仅当前身份可读，不做跨养殖场/跨用户汇总或共享 |\n| 5 | 估算结果仅供参考，实际饲喂计量与配方调整请结合养殖场规程与专业营养师意见 |\n\n---\n\n## 📜 历史报告清单输出规范 | Report List Format\n\n当显示历史分析报告清单的时候，从接口返回 JSON 数据中提取字段作为超链接地址，且自动转化为如下 Markdown 表格格式输出。\n\n### 📌 固定输出列\n\n| 列名 | 生成规则 |\n|---|---|\n| 报告名称 | 使用 `畜禽采食量估算报告-{记录id}` 形式拼接 |\n| 采食量趋势 | 从接口返回数据中提取（正常 / 偏低 / 骤降 / 骤升） |\n| 分析时间 | 从接口返回数据中提取 |\n| 点击查看 | 使用 `[🔗 查看报告]()` 格式的超链接 |\n\n### 🧾 表格输出示例\n\n| 报告名称 | 采食量趋势 | 分析时间 | 点击查看 |\n|----------|------------|----------|----------|\n| 畜禽采食量估算报告-20260703160500001 | 骤降 | 2026-07-03 16:05:00 | [🔗 查看报告](https://example.com/report?id=xxx) |\n\n---\n\n## 🧰 使用示例 | Examples\n\n### 🐷 分析本地猪舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/pig_feeder.mp4\n```\n\n### 🐄 分析本地牛舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/cow_feeder.mp4\n```\n\n### 🌐 分析网络食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --url https://example.com/feeder_trough.mp4\n```\n\n### 📚 显示历史分析报告 / 显示分析报告清单列表 / 显示历史采食量报告\n\n> 自动触发关键词：查看历史采食量报告、历史报告、采食量估算清单等。\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --list\n```\n\n### 🪶 输出精简报告\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input pig_feeder.mp4 --detail basic\n```\n\n### 💾 保存结果到文件\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input cow_feeder.mp4 --output result.json\n```\n\nFile v1.0.11:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-feed-intake-estimation-analysis\",\n  \"version\": \"1.0.11\",\n  \"publishedAt\": 1788875430506\n}\n\nFile v1.0.11:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放畜禽采食量估算 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/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_FEED_INTAKE_ESTIMATION_ANALYSIS` - 畜禽采食量估算\n\nFile v1.0.11:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.11:scripts/config.yaml\n\n{}\n\nFile v1.0.11:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.11:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.11:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.11:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: dev\n\nFile v1.0.11:skill-card.md\n\n## Description:\n\nEstimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nFarm operators, livestock analysts, and agent workflows use this skill to estimate feed intake trends from feeder-trough images or videos and review anomaly alerts or historical reports.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Livestock images, videos, and report metadata are sent to the skill's configured service.\n\nMitigation: Use the skill only for footage approved for that service and avoid sensitive farm media unless account, token, and data-handling requirements are clear.\n\nRisk: Development HTTP defaults can send media or credentials without transport encryption.\n\nMitigation: Require HTTPS endpoints in configuration before use and review the effective environment-specific settings.\n\nRisk: The skill silently manages identities and local tokens.\n\nMitigation: Review token storage and account association behavior before installation, especially in shared or production agent environments.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis)\n- [Skill Demo](https://lifeemergence.com/sample.html)\n- [Feed Intake Estimation API Documentation](references/api_doc.md)\n- [Common 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 or JSON text with feed-intake estimates, trend status, anomaly alerts, historical report tables, and report links.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Accepts feeder image or video paths and URLs; documented media formats are jpg, png, jpeg, mp4, avi, and mov with a 10 MB file limit.]\n\n## Skill Version(s):\n\n1.0.11 (source: frontmatter and server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.11:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.11:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.10: 31 files, 39566 bytes\n\nFiles: references/api_doc.md (645b), scripts/__init__.py (51b), scripts/config.py (672b), scripts/config.yaml (3b), scripts/skill.py (570b), scripts/smyx_feed_intake_estimation_analysis.py (3537b), skill-card.md (2642b), SKILL.md (11965b), 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 (156b)\n\nFile v1.0.10:SKILL.md\n\n---\nname: \"smyx-feed-intake-estimation-analysis\"\ndescription: \"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\"\nversion: \"1.0.9\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Livestock Feed Intake Estimation | 畜禽采食量估算\n\n> 通过食槽视频估算每日采食量变化，异常时预警。\n>\n> **精准饲喂计量中枢** · 食槽区域连续视频智能分析 · 剩余料量变化估算 · 每日采食量趋势 · 异常预警 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **畜禽采食量估算** |\n| 🎯 核心目标 | 基于食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体或群体的每日采食量，输出采食量趋势及异常提醒 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、每日采食量估算、采食量趋势曲线、异常提醒等级、报告链接 |\n| 🏢 适用场景 | 猪/牛等畜禽的精准饲喂管理与饲料成本控制，减少饲料浪费，识别采食量异常个体 |\n| 🧩 场景码 | `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS` |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n## 🤖 AI 角色 | AI Role\n\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的畜禽饲喂管理 AI。你的任务是分析食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体的每日采食量，输出采食量趋势及异常提醒。不要提供饲喂调整或饲料配方建议，仅基于视觉变化输出采食量估算结果。** |\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_feed_intake_estimation_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_feed_intake_estimation_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n---\n\n## 📦 前置准备 | Requirements\n\n### 依赖说明\n\n`scripts` 脚本所需的依赖包及版本：\n\n```txt\nrequests>=2.28.0\n```\n\n---\n\n## 📷 采集要求 | Capture Requirements\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 固定摄像头正对食槽（俯视或斜俯视），拍摄角度稳定，避免大幅位移或频繁调整 |\n| 2 | 画面中食槽全景可见，槽底与料面之间高度差清晰可辨，便于估算剩余量 |\n| 3 | 光照条件稳定，白天充足自然光或稳定人工光源，避免强逆光和大面积过曝/欠曝 |\n| 4 | 视频建议 30 秒~10 分钟连续拍摄，覆盖典型饲喂时段，帧率不低于 10fps |\n| 5 | 支持格式：jpg/png/jpeg 图片，及 mp4/avi/mov 视频；单文件不超过 10MB |\n| 6 | 尽量减少人员补料、清扫等大面积遮挡时段，或将其从关键分析片段中剔除 |\n| 7 | 建议保持食槽形状/规格与历史采集一致，以获得更稳定的采食量趋势对比 |\n\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\n## 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备食槽视频输入 | 提供本地文件路径或网络 URL；确保画面稳定、食槽全景可见 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行采食量估算 | 调用 `-m scripts.smyx_feed_intake_estimation_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看每日采食量、趋势曲线、异常提醒与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地食槽区域图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络食槽区域图像/视频 URL 地址 | API 服务自动下载 |\n| `--pet-type` | 类别标识（畜禽场景保持 other） | 默认 `other`，按需填写 |\n| `--list` | 显示历史分析报告清单 | 可以输入起始日期参数过滤数据范围 |\n| `--api-url` | API 服务地址 | 可选，使用默认值 |\n| `--detail` | 输出详细程度 | `basic` / `standard` / `json`，默认 `json` |\n| `--output` | 结果输出文件路径 | 可选 |\n\n---\n\n## 🗂️ 资源索引 | Resource Index\n\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_feed_intake_estimation_analysis.py`](scripts/smyx_feed_intake_estimation_analysis.py) | 调用 API 进行采食量估算或查询历史报告 | 执行分析或查询时使用 |\n| ⚙️ 配置文件 | [`scripts/config.py`](scripts/config.py) | 场景码 `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS`、默认参数配置 | 需要确认默认配置时读取 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n---\n\n## ⚠️ 注意事项 | Notes\n\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 图片支持 `jpg` / `png` / `jpeg`；视频支持 `mp4` / `avi` / `mov`；单文件最大 `10MB` |\n| 🧑‍⚖️ 结果性质 | 分析结果仅为视觉估算与趋势提醒，本技能不提供饲喂调整或饲料配方建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能使用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数无需本地下载，默认为公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 显示历史分析报告清单时，从接口返回 JSON 数据中提取字段作为超链接地址，并自动转化为 Markdown 表格输出 |\n\n---\n\n## 🔒 隐私与数据安全声明 | Privacy & Data Security\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 仅采集与畜禽采食量估算直接相关的食槽图像/视频数据，不采集与采食量估算无关的敏感信息 |\n| 2 | 内部身份参数由系统自动处理，不在任何输出、日志或报告中暴露 |\n| 3 | 分析请求通过服务端 API 完成，网络传输遵循平台既有安全策略 |\n| 4 | 历史报告仅当前身份可读，不做跨养殖场/跨用户汇总或共享 |\n| 5 | 估算结果仅供参考，实际饲喂计量与配方调整请结合养殖场规程与专业营养师意见 |\n\n---\n\n## 📜 历史报告清单输出规范 | Report List Format\n\n当显示历史分析报告清单的时候，从接口返回 JSON 数据中提取字段作为超链接地址，且自动转化为如下 Markdown 表格格式输出。\n\n### 📌 固定输出列\n\n| 列名 | 生成规则 |\n|---|---|\n| 报告名称 | 使用 `畜禽采食量估算报告-{记录id}` 形式拼接 |\n| 采食量趋势 | 从接口返回数据中提取（正常 / 偏低 / 骤降 / 骤升） |\n| 分析时间 | 从接口返回数据中提取 |\n| 点击查看 | 使用 `[🔗 查看报告]()` 格式的超链接 |\n\n### 🧾 表格输出示例\n\n| 报告名称 | 采食量趋势 | 分析时间 | 点击查看 |\n|----------|------------|----------|----------|\n| 畜禽采食量估算报告-20260703160500001 | 骤降 | 2026-07-03 16:05:00 | [🔗 查看报告](https://example.com/report?id=xxx) |\n\n---\n\n## 🧰 使用示例 | Examples\n\n### 🐷 分析本地猪舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/pig_feeder.mp4\n```\n\n### 🐄 分析本地牛舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/cow_feeder.mp4\n```\n\n### 🌐 分析网络食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --url https://example.com/feeder_trough.mp4\n```\n\n### 📚 显示历史分析报告 / 显示分析报告清单列表 / 显示历史采食量报告\n\n> 自动触发关键词：查看历史采食量报告、历史报告、采食量估算清单等。\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --list\n```\n\n### 🪶 输出精简报告\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input pig_feeder.mp4 --detail basic\n```\n\n### 💾 保存结果到文件\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input cow_feeder.mp4 --output result.json\n```\n\nFile v1.0.10:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-feed-intake-estimation-analysis\",\n  \"version\": \"1.0.10\",\n  \"publishedAt\": 1787911649664\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_FEED_INTAKE_ESTIMATION_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: dev\n\nFile v1.0.10:skill-card.md\n\n## Description:\n\nEstimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nFarm operators, livestock-management teams, and developers use this skill to analyze feeder-area images or videos, estimate daily feed intake and intake trends, flag anomalies, and retrieve cloud-hosted historical reports.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Feeder images, videos, and report queries may be sent to configured lifeemergence.com services.\n\nMitigation: Use the skill only when that transfer is acceptable for the farm data involved, and review retention, deletion, and account-authorization expectations before using sensitive footage or operational records.\n\nRisk: The skill automatically creates or reuses a local or cloud identity and stores access tokens in the workspace data area.\n\nMitigation: Run it in an access-controlled workspace and clear stored credentials or tokens when the identity should not persist.\n\nRisk: Feed-intake estimates can be affected by camera angle, lighting, occlusions, file size, format support, and inconsistent trough setup.\n\nMitigation: Use stable capture conditions, review anomaly alerts, and validate estimates against farm measurement procedures before making operational decisions.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis)\n- [Skill demo](https://lifeemergence.com/sample.html)\n- [Feed intake estimation API documentation](artifact/references/api_doc.md)\n- [Common AI analysis API documentation](artifact/skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance]\n\n**Output Format:** [Markdown or JSON report text with optional report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Results are visual estimates and anomaly alerts; the skill can submit local media or media URLs to configured lifeemergence.com services.]\n\n## Skill Version(s):\n\n1.0.10 (source: server release metadata; artifact frontmatter says 1.0.9)\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, 39685 bytes\n\nFiles: references/api_doc.md (645b), scripts/__init__.py (51b), scripts/config.py (672b), scripts/config.yaml (3b), scripts/skill.py (570b), scripts/smyx_feed_intake_estimation_analysis.py (3537b), skill-card.md (2704b), SKILL.md (11965b), 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 (155b)\n\nFile v1.0.9:SKILL.md\n\n---\nname: \"smyx-feed-intake-estimation-analysis\"\ndescription: \"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\"\nversion: \"1.0.8\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Livestock Feed Intake Estimation | 畜禽采食量估算\n\n> 通过食槽视频估算每日采食量变化，异常时预警。\n>\n> **精准饲喂计量中枢** · 食槽区域连续视频智能分析 · 剩余料量变化估算 · 每日采食量趋势 · 异常预警 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **畜禽采食量估算** |\n| 🎯 核心目标 | 基于食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体或群体的每日采食量，输出采食量趋势及异常提醒 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、每日采食量估算、采食量趋势曲线、异常提醒等级、报告链接 |\n| 🏢 适用场景 | 猪/牛等畜禽的精准饲喂管理与饲料成本控制，减少饲料浪费，识别采食量异常个体 |\n| 🧩 场景码 | `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS` |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n## 🤖 AI 角色 | AI Role\n\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的畜禽饲喂管理 AI。你的任务是分析食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体的每日采食量，输出采食量趋势及异常提醒。不要提供饲喂调整或饲料配方建议，仅基于视觉变化输出采食量估算结果。** |\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_feed_intake_estimation_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_feed_intake_estimation_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n---\n\n## 📦 前置准备 | Requirements\n\n### 依赖说明\n\n`scripts` 脚本所需的依赖包及版本：\n\n```txt\nrequests>=2.28.0\n```\n\n---\n\n## 📷 采集要求 | Capture Requirements\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 固定摄像头正对食槽（俯视或斜俯视），拍摄角度稳定，避免大幅位移或频繁调整 |\n| 2 | 画面中食槽全景可见，槽底与料面之间高度差清晰可辨，便于估算剩余量 |\n| 3 | 光照条件稳定，白天充足自然光或稳定人工光源，避免强逆光和大面积过曝/欠曝 |\n| 4 | 视频建议 30 秒~10 分钟连续拍摄，覆盖典型饲喂时段，帧率不低于 10fps |\n| 5 | 支持格式：jpg/png/jpeg 图片，及 mp4/avi/mov 视频；单文件不超过 10MB |\n| 6 | 尽量减少人员补料、清扫等大面积遮挡时段，或将其从关键分析片段中剔除 |\n| 7 | 建议保持食槽形状/规格与历史采集一致，以获得更稳定的采食量趋势对比 |\n\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\n## 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备食槽视频输入 | 提供本地文件路径或网络 URL；确保画面稳定、食槽全景可见 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行采食量估算 | 调用 `-m scripts.smyx_feed_intake_estimation_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看每日采食量、趋势曲线、异常提醒与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地食槽区域图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络食槽区域图像/视频 URL 地址 | API 服务自动下载 |\n| `--pet-type` | 类别标识（畜禽场景保持 other） | 默认 `other`，按需填写 |\n| `--list` | 显示历史分析报告清单 | 可以输入起始日期参数过滤数据范围 |\n| `--api-url` | API 服务地址 | 可选，使用默认值 |\n| `--detail` | 输出详细程度 | `basic` / `standard` / `json`，默认 `json` |\n| `--output` | 结果输出文件路径 | 可选 |\n\n---\n\n## 🗂️ 资源索引 | Resource Index\n\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_feed_intake_estimation_analysis.py`](scripts/smyx_feed_intake_estimation_analysis.py) | 调用 API 进行采食量估算或查询历史报告 | 执行分析或查询时使用 |\n| ⚙️ 配置文件 | [`scripts/config.py`](scripts/config.py) | 场景码 `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS`、默认参数配置 | 需要确认默认配置时读取 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n---\n\n## ⚠️ 注意事项 | Notes\n\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 图片支持 `jpg` / `png` / `jpeg`；视频支持 `mp4` / `avi` / `mov`；单文件最大 `10MB` |\n| 🧑‍⚖️ 结果性质 | 分析结果仅为视觉估算与趋势提醒，本技能不提供饲喂调整或饲料配方建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能使用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数无需本地下载，默认为公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 显示历史分析报告清单时，从接口返回 JSON 数据中提取字段作为超链接地址，并自动转化为 Markdown 表格输出 |\n\n---\n\n## 🔒 隐私与数据安全声明 | Privacy & Data Security\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 仅采集与畜禽采食量估算直接相关的食槽图像/视频数据，不采集与采食量估算无关的敏感信息 |\n| 2 | 内部身份参数由系统自动处理，不在任何输出、日志或报告中暴露 |\n| 3 | 分析请求通过服务端 API 完成，网络传输遵循平台既有安全策略 |\n| 4 | 历史报告仅当前身份可读，不做跨养殖场/跨用户汇总或共享 |\n| 5 | 估算结果仅供参考，实际饲喂计量与配方调整请结合养殖场规程与专业营养师意见 |\n\n---\n\n## 📜 历史报告清单输出规范 | Report List Format\n\n当显示历史分析报告清单的时候，从接口返回 JSON 数据中提取字段作为超链接地址，且自动转化为如下 Markdown 表格格式输出。\n\n### 📌 固定输出列\n\n| 列名 | 生成规则 |\n|---|---|\n| 报告名称 | 使用 `畜禽采食量估算报告-{记录id}` 形式拼接 |\n| 采食量趋势 | 从接口返回数据中提取（正常 / 偏低 / 骤降 / 骤升） |\n| 分析时间 | 从接口返回数据中提取 |\n| 点击查看 | 使用 `[🔗 查看报告]()` 格式的超链接 |\n\n### 🧾 表格输出示例\n\n| 报告名称 | 采食量趋势 | 分析时间 | 点击查看 |\n|----------|------------|----------|----------|\n| 畜禽采食量估算报告-20260703160500001 | 骤降 | 2026-07-03 16:05:00 | [🔗 查看报告](https://example.com/report?id=xxx) |\n\n---\n\n## 🧰 使用示例 | Examples\n\n### 🐷 分析本地猪舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/pig_feeder.mp4\n```\n\n### 🐄 分析本地牛舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/cow_feeder.mp4\n```\n\n### 🌐 分析网络食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --url https://example.com/feeder_trough.mp4\n```\n\n### 📚 显示历史分析报告 / 显示分析报告清单列表 / 显示历史采食量报告\n\n> 自动触发关键词：查看历史采食量报告、历史报告、采食量估算清单等。\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --list\n```\n\n### 🪶 输出精简报告\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input pig_feeder.mp4 --detail basic\n```\n\n### 💾 保存结果到文件\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input cow_feeder.mp4 --output result.json\n```\n\nFile v1.0.9:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-feed-intake-estimation-analysis\",\n  \"version\": \"1.0.9\",\n  \"publishedAt\": 1787377949863\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_FEED_INTAKE_ESTIMATION_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: dev\n\nFile v1.0.9:skill-card.md\n\n## Description:\n\nEstimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal livestock operators and farm-management teams use this skill to estimate feed intake trends from feeder-area videos or URLs and review anomaly alerts and cloud report history. It supports visual trend analysis only and does not provide feed-ration or nutrition recommendations.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill sends feeder videos, video URLs, and identity-linked report requests to the lifeemergence cloud service.\n\nMitigation: Install and run it only when users are comfortable sharing feeder media with that service, and avoid submitting media that includes unnecessary people, identifiers, or unrelated sensitive farm information.\n\nRisk: The skill can create or reuse a persistent local identity and store returned service tokens in a workspace SQLite database.\n\nMitigation: Review workspace data storage before deployment, restrict filesystem access to trusted users, and rotate or remove stored tokens when the workspace is shared or retired.\n\nRisk: The security verdict is suspicious because of persistent identity handling and external service token use.\n\nMitigation: Review the skill before installation and scan future versions before deployment; treat cloud report history and token handling as security-sensitive behavior.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis)\n- [Skill demo](https://lifeemergence.com/sample.html)\n- [API 接口文档](references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, shell commands, files, guidance]\n\n**Output Format:** [Markdown or JSON-like structured analysis text, with optional saved output file]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include feed-intake estimates, trend or anomaly labels, report links, and cloud report-history listings.]\n\n## Skill Version(s):\n\n1.0.9 (source: server release metadata; artifact frontmatter says 1.0.8)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.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, 39411 bytes\n\nFiles: references/api_doc.md (645b), scripts/__init__.py (51b), scripts/config.py (672b), scripts/config.yaml (3b), scripts/skill.py (570b), scripts/smyx_feed_intake_estimation_analysis.py (3537b), skill-card.md (2307b), SKILL.md (11965b), 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.8:SKILL.md\n\n---\nname: \"smyx-feed-intake-estimation-analysis\"\ndescription: \"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\"\nversion: \"1.0.6\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Livestock Feed Intake Estimation | 畜禽采食量估算\n\n> 通过食槽视频估算每日采食量变化，异常时预警。\n>\n> **精准饲喂计量中枢** · 食槽区域连续视频智能分析 · 剩余料量变化估算 · 每日采食量趋势 · 异常预警 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **畜禽采食量估算** |\n| 🎯 核心目标 | 基于食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体或群体的每日采食量，输出采食量趋势及异常提醒 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、每日采食量估算、采食量趋势曲线、异常提醒等级、报告链接 |\n| 🏢 适用场景 | 猪/牛等畜禽的精准饲喂管理与饲料成本控制，减少饲料浪费，识别采食量异常个体 |\n| 🧩 场景码 | `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS` |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n## 🤖 AI 角色 | AI Role\n\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的畜禽饲喂管理 AI。你的任务是分析食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体的每日采食量，输出采食量趋势及异常提醒。不要提供饲喂调整或饲料配方建议，仅基于视觉变化输出采食量估算结果。** |\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_feed_intake_estimation_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_feed_intake_estimation_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n---\n\n## 📦 前置准备 | Requirements\n\n### 依赖说明\n\n`scripts` 脚本所需的依赖包及版本：\n\n```txt\nrequests>=2.28.0\n```\n\n---\n\n## 📷 采集要求 | Capture Requirements\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 固定摄像头正对食槽（俯视或斜俯视），拍摄角度稳定，避免大幅位移或频繁调整 |\n| 2 | 画面中食槽全景可见，槽底与料面之间高度差清晰可辨，便于估算剩余量 |\n| 3 | 光照条件稳定，白天充足自然光或稳定人工光源，避免强逆光和大面积过曝/欠曝 |\n| 4 | 视频建议 30 秒~10 分钟连续拍摄，覆盖典型饲喂时段，帧率不低于 10fps |\n| 5 | 支持格式：jpg/png/jpeg 图片，及 mp4/avi/mov 视频；单文件不超过 10MB |\n| 6 | 尽量减少人员补料、清扫等大面积遮挡时段，或将其从关键分析片段中剔除 |\n| 7 | 建议保持食槽形状/规格与历史采集一致，以获得更稳定的采食量趋势对比 |\n\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\n## 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备食槽视频输入 | 提供本地文件路径或网络 URL；确保画面稳定、食槽全景可见 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行采食量估算 | 调用 `-m scripts.smyx_feed_intake_estimation_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看每日采食量、趋势曲线、异常提醒与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地食槽区域图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络食槽区域图像/视频 URL 地址 | API 服务自动下载 |\n| `--pet-type` | 类别标识（畜禽场景保持 other） | 默认 `other`，按需填写 |\n| `--list` | 显示历史分析报告清单 | 可以输入起始日期参数过滤数据范围 |\n| `--api-url` | API 服务地址 | 可选，使用默认值 |\n| `--detail` | 输出详细程度 | `basic` / `standard` / `json`，默认 `json` |\n| `--output` | 结果输出文件路径 | 可选 |\n\n---\n\n## 🗂️ 资源索引 | Resource Index\n\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_feed_intake_estimation_analysis.py`](scripts/smyx_feed_intake_estimation_analysis.py) | 调用 API 进行采食量估算或查询历史报告 | 执行分析或查询时使用 |\n| ⚙️ 配置文件 | [`scripts/config.py`](scripts/config.py) | 场景码 `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS`、默认参数配置 | 需要确认默认配置时读取 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n---\n\n## ⚠️ 注意事项 | Notes\n\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 图片支持 `jpg` / `png` / `jpeg`；视频支持 `mp4` / `avi` / `mov`；单文件最大 `10MB` |\n| 🧑‍⚖️ 结果性质 | 分析结果仅为视觉估算与趋势提醒，本技能不提供饲喂调整或饲料配方建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能使用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数无需本地下载，默认为公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 显示历史分析报告清单时，从接口返回 JSON 数据中提取字段作为超链接地址，并自动转化为 Markdown 表格输出 |\n\n---\n\n## 🔒 隐私与数据安全声明 | Privacy & Data Security\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 仅采集与畜禽采食量估算直接相关的食槽图像/视频数据，不采集与采食量估算无关的敏感信息 |\n| 2 | 内部身份参数由系统自动处理，不在任何输出、日志或报告中暴露 |\n| 3 | 分析请求通过服务端 API 完成，网络传输遵循平台既有安全策略 |\n| 4 | 历史报告仅当前身份可读，不做跨养殖场/跨用户汇总或共享 |\n| 5 | 估算结果仅供参考，实际饲喂计量与配方调整请结合养殖场规程与专业营养师意见 |\n\n---\n\n## 📜 历史报告清单输出规范 | Report List Format\n\n当显示历史分析报告清单的时候，从接口返回 JSON 数据中提取字段作为超链接地址，且自动转化为如下 Markdown 表格格式输出。\n\n### 📌 固定输出列\n\n| 列名 | 生成规则 |\n|---|---|\n| 报告名称 | 使用 `畜禽采食量估算报告-{记录id}` 形式拼接 |\n| 采食量趋势 | 从接口返回数据中提取（正常 / 偏低 / 骤降 / 骤升） |\n| 分析时间 | 从接口返回数据中提取 |\n| 点击查看 | 使用 `[🔗 查看报告]()` 格式的超链接 |\n\n### 🧾 表格输出示例\n\n| 报告名称 | 采食量趋势 | 分析时间 | 点击查看 |\n|----------|------------|----------|----------|\n| 畜禽采食量估算报告-20260703160500001 | 骤降 | 2026-07-03 16:05:00 | [🔗 查看报告](https://example.com/report?id=xxx) |\n\n---\n\n## 🧰 使用示例 | Examples\n\n### 🐷 分析本地猪舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/pig_feeder.mp4\n```\n\n### 🐄 分析本地牛舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/cow_feeder.mp4\n```\n\n### 🌐 分析网络食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --url https://example.com/feeder_trough.mp4\n```\n\n### 📚 显示历史分析报告 / 显示分析报告清单列表 / 显示历史采食量报告\n\n> 自动触发关键词：查看历史采食量报告、历史报告、采食量估算清单等。\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --list\n```\n\n### 🪶 输出精简报告\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input pig_feeder.mp4 --detail basic\n```\n\n### 💾 保存结果到文件\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input cow_feeder.mp4 --output result.json\n```\n\nFile v1.0.8:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-feed-intake-estimation-analysis\",\n  \"version\": \"1.0.8\",\n  \"publishedAt\": 1786375953878\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_FEED_INTAKE_ESTIMATION_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: prod\n\nFile v1.0.8:skill-card.md\n\n## Description:\n\nEstimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal livestock operators and developers use this skill to estimate feed intake from fixed feeder-trough images or videos, review daily intake trends, and identify abnormal intake patterns. The skill also supports querying prior cloud-hosted analysis reports for the current managed identity.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Feeder videos, images, or URLs may be sent to lifeemergence.com services for analysis.\n\nMitigation: Install and run the skill only when that external data flow is acceptable; avoid submitting sensitive footage unless the service use is approved.\n\nRisk: The skill creates or reuses a managed identity and stores service tokens and report history in local workspace data.\n\nMitigation: Run the skill in an isolated workspace when evaluating it, and review or clear the workspace data directory before and after use.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis)\n- [Skill Demo](https://lifeemergence.com/sample.html)\n- [Feed Intake Estimation API Reference](references/api_doc.md)\n- [SMYX Analysis API Reference](skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, JSON, Files]\n\n**Output Format:** [Markdown and JSON analysis reports, with optional saved text output]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Includes feed-intake estimates, trend status, anomaly alerts, historical report tables, and report links when returned by the service.]\n\n## Skill Version(s):\n\n1.0.8 (source: server release metadata; artifact frontmatter says 1.0.6)\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, 39703 bytes\n\nFiles: references/api_doc.md (645b), scripts/__init__.py (51b), scripts/config.py (672b), scripts/config.yaml (3b), scripts/skill.py (570b), scripts/smyx_feed_intake_estimation_analysis.py (3537b), skill-card.md (2756b), SKILL.md (11965b), 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.7:SKILL.md\n\n---\nname: \"smyx-feed-intake-estimation-analysis\"\ndescription: \"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\"\nversion: \"1.0.5\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Livestock Feed Intake Estimation | 畜禽采食量估算\n\n> 通过食槽视频估算每日采食量变化，异常时预警。\n>\n> **精准饲喂计量中枢** · 食槽区域连续视频智能分析 · 剩余料量变化估算 · 每日采食量趋势 · 异常预警 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **畜禽采食量估算** |\n| 🎯 核心目标 | 基于食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体或群体的每日采食量，输出采食量趋势及异常提醒 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、每日采食量估算、采食量趋势曲线、异常提醒等级、报告链接 |\n| 🏢 适用场景 | 猪/牛等畜禽的精准饲喂管理与饲料成本控制，减少饲料浪费，识别采食量异常个体 |\n| 🧩 场景码 | `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS` |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n## 🤖 AI 角色 | AI Role\n\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的畜禽饲喂管理 AI。你的任务是分析食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体的每日采食量，输出采食量趋势及异常提醒。不要提供饲喂调整或饲料配方建议，仅基于视觉变化输出采食量估算结果。** |\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_feed_intake_estimation_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_feed_intake_estimation_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n---\n\n## 📦 前置准备 | Requirements\n\n### 依赖说明\n\n`scripts` 脚本所需的依赖包及版本：\n\n```txt\nrequests>=2.28.0\n```\n\n---\n\n## 📷 采集要求 | Capture Requirements\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 固定摄像头正对食槽（俯视或斜俯视），拍摄角度稳定，避免大幅位移或频繁调整 |\n| 2 | 画面中食槽全景可见，槽底与料面之间高度差清晰可辨，便于估算剩余量 |\n| 3 | 光照条件稳定，白天充足自然光或稳定人工光源，避免强逆光和大面积过曝/欠曝 |\n| 4 | 视频建议 30 秒~10 分钟连续拍摄，覆盖典型饲喂时段，帧率不低于 10fps |\n| 5 | 支持格式：jpg/png/jpeg 图片，及 mp4/avi/mov 视频；单文件不超过 10MB |\n| 6 | 尽量减少人员补料、清扫等大面积遮挡时段，或将其从关键分析片段中剔除 |\n| 7 | 建议保持食槽形状/规格与历史采集一致，以获得更稳定的采食量趋势对比 |\n\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\n## 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备食槽视频输入 | 提供本地文件路径或网络 URL；确保画面稳定、食槽全景可见 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行采食量估算 | 调用 `-m scripts.smyx_feed_intake_estimation_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看每日采食量、趋势曲线、异常提醒与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地食槽区域图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络食槽区域图像/视频 URL 地址 | API 服务自动下载 |\n| `--pet-type` | 类别标识（畜禽场景保持 other） | 默认 `other`，按需填写 |\n| `--list` | 显示历史分析报告清单 | 可以输入起始日期参数过滤数据范围 |\n| `--api-url` | API 服务地址 | 可选，使用默认值 |\n| `--detail` | 输出详细程度 | `basic` / `standard` / `json`，默认 `json` |\n| `--output` | 结果输出文件路径 | 可选 |\n\n---\n\n## 🗂️ 资源索引 | Resource Index\n\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_feed_intake_estimation_analysis.py`](scripts/smyx_feed_intake_estimation_analysis.py) | 调用 API 进行采食量估算或查询历史报告 | 执行分析或查询时使用 |\n| ⚙️ 配置文件 | [`scripts/config.py`](scripts/config.py) | 场景码 `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS`、默认参数配置 | 需要确认默认配置时读取 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n---\n\n## ⚠️ 注意事项 | Notes\n\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 图片支持 `jpg` / `png` / `jpeg`；视频支持 `mp4` / `avi` / `mov`；单文件最大 `10MB` |\n| 🧑‍⚖️ 结果性质 | 分析结果仅为视觉估算与趋势提醒，本技能不提供饲喂调整或饲料配方建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能使用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数无需本地下载，默认为公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 显示历史分析报告清单时，从接口返回 JSON 数据中提取字段作为超链接地址，并自动转化为 Markdown 表格输出 |\n\n---\n\n## 🔒 隐私与数据安全声明 | Privacy & Data Security\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 仅采集与畜禽采食量估算直接相关的食槽图像/视频数据，不采集与采食量估算无关的敏感信息 |\n| 2 | 内部身份参数由系统自动处理，不在任何输出、日志或报告中暴露 |\n| 3 | 分析请求通过服务端 API 完成，网络传输遵循平台既有安全策略 |\n| 4 | 历史报告仅当前身份可读，不做跨养殖场/跨用户汇总或共享 |\n| 5 | 估算结果仅供参考，实际饲喂计量与配方调整请结合养殖场规程与专业营养师意见 |\n\n---\n\n## 📜 历史报告清单输出规范 | Report List Format\n\n当显示历史分析报告清单的时候，从接口返回 JSON 数据中提取字段作为超链接地址，且自动转化为如下 Markdown 表格格式输出。\n\n### 📌 固定输出列\n\n| 列名 | 生成规则 |\n|---|---|\n| 报告名称 | 使用 `畜禽采食量估算报告-{记录id}` 形式拼接 |\n| 采食量趋势 | 从接口返回数据中提取（正常 / 偏低 / 骤降 / 骤升） |\n| 分析时间 | 从接口返回数据中提取 |\n| 点击查看 | 使用 `[🔗 查看报告]()` 格式的超链接 |\n\n### 🧾 表格输出示例\n\n| 报告名称 | 采食量趋势 | 分析时间 | 点击查看 |\n|----------|------------|----------|----------|\n| 畜禽采食量估算报告-20260703160500001 | 骤降 | 2026-07-03 16:05:00 | [🔗 查看报告](https://example.com/report?id=xxx) |\n\n---\n\n## 🧰 使用示例 | Examples\n\n### 🐷 分析本地猪舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/pig_feeder.mp4\n```\n\n### 🐄 分析本地牛舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/cow_feeder.mp4\n```\n\n### 🌐 分析网络食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --url https://example.com/feeder_trough.mp4\n```\n\n### 📚 显示历史分析报告 / 显示分析报告清单列表 / 显示历史采食量报告\n\n> 自动触发关键词：查看历史采食量报告、历史报告、采食量估算清单等。\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --list\n```\n\n### 🪶 输出精简报告\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input pig_feeder.mp4 --detail basic\n```\n\n### 💾 保存结果到文件\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input cow_feeder.mp4 --output result.json\n```\n\nFile v1.0.7:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-feed-intake-estimation-analysis\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1785907411497\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_FEED_INTAKE_ESTIMATION_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: prod\n\nFile v1.0.7:skill-card.md\n\n## Description:\n\nEstimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[18072937735](https://clawhub.ai/user/18072937735)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal livestock operators and developers use this skill to estimate feed intake from feeder-area images or videos, review intake trends, and surface anomaly alerts. The skill provides visual estimates and trend reporting, not feeding adjustment or ration-formulation advice.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill may silently handle local identity material, provision or log in to a remote account, and persist tokens in the workspace.\n\nMitigation: Review the identity and token behavior before installing, run it in a separate workspace, and use non-sensitive test media unless the Life Emergence API service and retention model are trusted.\n\nRisk: Uploaded feeder media and generated historical reports are processed through a remote API service.\n\nMitigation: Use media appropriate for the API provider's retention and account model, and avoid uploading sensitive farm footage until those terms are acceptable.\n\nRisk: Feed intake values are visual estimates and may be affected by camera angle, lighting, occlusion, or inconsistent trough setup.\n\nMitigation: Treat results as trend and anomaly signals, maintain stable capture conditions, and confirm feeding decisions against farm procedures and qualified nutrition guidance.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis)\n- [Skill demo](https://lifeemergence.com/sample.html)\n- [Feed intake API documentation](references/api_doc.md)\n- [Shared analysis API documentation](skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance]\n\n**Output Format:** [Markdown and JSON, with optional saved output files]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include daily intake estimates, trend labels, anomaly alert levels, report links, and historical report tables.]\n\n## Skill Version(s):\n\n1.0.7 (source: server release metadata; SKILL.md frontmatter states 1.0.5)\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, 39483 bytes\n\nFiles: references/api_doc.md (645b), scripts/__init__.py (51b), scripts/config.py (672b), scripts/config.yaml (3b), scripts/skill.py (570b), scripts/smyx_feed_intake_estimation_analysis.py (3537b), skill-card.md (2611b), SKILL.md (11965b), 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.6:SKILL.md\n\n---\nname: \"smyx-feed-intake-estimation-analysis\"\ndescription: \"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\"\nversion: \"1.0.4\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Livestock Feed Intake Estimation | 畜禽采食量估算\n\n> 通过食槽视频估算每日采食量变化，异常时预警。\n>\n> **精准饲喂计量中枢** · 食槽区域连续视频智能分析 · 剩余料量变化估算 · 每日采食量趋势 · 异常预警 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **畜禽采食量估算** |\n| 🎯 核心目标 | 基于食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体或群体的每日采食量，输出采食量趋势及异常提醒 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、每日采食量估算、采食量趋势曲线、异常提醒等级、报告链接 |\n| 🏢 适用场景 | 猪/牛等畜禽的精准饲喂管理与饲料成本控制，减少饲料浪费，识别采食量异常个体 |\n| 🧩 场景码 | `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS` |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n## 🤖 AI 角色 | AI Role\n\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的畜禽饲喂管理 AI。你的任务是分析食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体的每日采食量，输出采食量趋势及异常提醒。不要提供饲喂调整或饲料配方建议，仅基于视觉变化输出采食量估算结果。** |\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_feed_intake_estimation_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_feed_intake_estimation_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n---\n\n## 📦 前置准备 | Requirements\n\n### 依赖说明\n\n`scripts` 脚本所需的依赖包及版本：\n\n```txt\nrequests>=2.28.0\n```\n\n---\n\n## 📷 采集要求 | Capture Requirements\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 固定摄像头正对食槽（俯视或斜俯视），拍摄角度稳定，避免大幅位移或频繁调整 |\n| 2 | 画面中食槽全景可见，槽底与料面之间高度差清晰可辨，便于估算剩余量 |\n| 3 | 光照条件稳定，白天充足自然光或稳定人工光源，避免强逆光和大面积过曝/欠曝 |\n| 4 | 视频建议 30 秒~10 分钟连续拍摄，覆盖典型饲喂时段，帧率不低于 10fps |\n| 5 | 支持格式：jpg/png/jpeg 图片，及 mp4/avi/mov 视频；单文件不超过 10MB |\n| 6 | 尽量减少人员补料、清扫等大面积遮挡时段，或将其从关键分析片段中剔除 |\n| 7 | 建议保持食槽形状/规格与历史采集一致，以获得更稳定的采食量趋势对比 |\n\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\n## 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备食槽视频输入 | 提供本地文件路径或网络 URL；确保画面稳定、食槽全景可见 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行采食量估算 | 调用 `-m scripts.smyx_feed_intake_estimation_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看每日采食量、趋势曲线、异常提醒与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地食槽区域图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络食槽区域图像/视频 URL 地址 | API 服务自动下载 |\n| `--pet-type` | 类别标识（畜禽场景保持 other） | 默认 `other`，按需填写 |\n| `--list` | 显示历史分析报告清单 | 可以输入起始日期参数过滤数据范围 |\n| `--api-url` | API 服务地址 | 可选，使用默认值 |\n| `--detail` | 输出详细程度 | `basic` / `standard` / `json`，默认 `json` |\n| `--output` | 结果输出文件路径 | 可选 |\n\n---\n\n## 🗂️ 资源索引 | Resource Index\n\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_feed_intake_estimation_analysis.py`](scripts/smyx_feed_intake_estimation_analysis.py) | 调用 API 进行采食量估算或查询历史报告 | 执行分析或查询时使用 |\n| ⚙️ 配置文件 | [`scripts/config.py`](scripts/config.py) | 场景码 `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS`、默认参数配置 | 需要确认默认配置时读取 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n---\n\n## ⚠️ 注意事项 | Notes\n\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 图片支持 `jpg` / `png` / `jpeg`；视频支持 `mp4` / `avi` / `mov`；单文件最大 `10MB` |\n| 🧑‍⚖️ 结果性质 | 分析结果仅为视觉估算与趋势提醒，本技能不提供饲喂调整或饲料配方建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能使用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数无需本地下载，默认为公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 显示历史分析报告清单时，从接口返回 JSON 数据中提取字段作为超链接地址，并自动转化为 Markdown 表格输出 |\n\n---\n\n## 🔒 隐私与数据安全声明 | Privacy & Data Security\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 仅采集与畜禽采食量估算直接相关的食槽图像/视频数据，不采集与采食量估算无关的敏感信息 |\n| 2 | 内部身份参数由系统自动处理，不在任何输出、日志或报告中暴露 |\n| 3 | 分析请求通过服务端 API 完成，网络传输遵循平台既有安全策略 |\n| 4 | 历史报告仅当前身份可读，不做跨养殖场/跨用户汇总或共享 |\n| 5 | 估算结果仅供参考，实际饲喂计量与配方调整请结合养殖场规程与专业营养师意见 |\n\n---\n\n## 📜 历史报告清单输出规范 | Report List Format\n\n当显示历史分析报告清单的时候，从接口返回 JSON 数据中提取字段作为超链接地址，且自动转化为如下 Markdown 表格格式输出。\n\n### 📌 固定输出列\n\n| 列名 | 生成规则 |\n|---|---|\n| 报告名称 | 使用 `畜禽采食量估算报告-{记录id}` 形式拼接 |\n| 采食量趋势 | 从接口返回数据中提取（正常 / 偏低 / 骤降 / 骤升） |\n| 分析时间 | 从接口返回数据中提取 |\n| 点击查看 | 使用 `[🔗 查看报告]()` 格式的超链接 |\n\n### 🧾 表格输出示例\n\n| 报告名称 | 采食量趋势 | 分析时间 | 点击查看 |\n|----------|------------|----------|----------|\n| 畜禽采食量估算报告-20260703160500001 | 骤降 | 2026-07-03 16:05:00 | [🔗 查看报告](https://example.com/report?id=xxx) |\n\n---\n\n## 🧰 使用示例 | Examples\n\n### 🐷 分析本地猪舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/pig_feeder.mp4\n```\n\n### 🐄 分析本地牛舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/cow_feeder.mp4\n```\n\n### 🌐 分析网络食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --url https://example.com/feeder_trough.mp4\n```\n\n### 📚 显示历史分析报告 / 显示分析报告清单列表 / 显示历史采食量报告\n\n> 自动触发关键词：查看历史采食量报告、历史报告、采食量估算清单等。\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --list\n```\n\n### 🪶 输出精简报告\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input pig_feeder.mp4 --detail basic\n```\n\n### 💾 保存结果到文件\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input cow_feeder.mp4 --output result.json\n```\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-feed-intake-estimation-analysis\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1785264151048\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_FEED_INTAKE_ESTIMATION_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: <br>\nEstimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[18072937735](https://clawhub.ai/user/18072937735) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users and farm-management teams use this skill to analyze feeder images, videos, or media URLs and estimate livestock feed intake trends with anomaly alerts. It is intended for visual intake estimation and report lookup, not feeding-ration or nutrition advice. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill sends feeder images, videos, or supplied media URLs to lifeemergence.com services for cloud analysis. <br>\nMitigation: Use it only with media approved for external cloud processing and avoid uploading unrelated sensitive footage. <br>\nRisk: The skill can create or reuse a local service identity and persist session tokens locally. <br>\nMitigation: Review or clear workspace data files when identity or token reuse is not desired. <br>\nRisk: History lookup can query account-scoped cloud reports when broad report-list triggers are used. <br>\nMitigation: Invoke history lookup only when the user clearly intends to retrieve prior feed-intake reports. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n- [Feed intake API documentation](artifact/references/api_doc.md) <br>\n- [Shared analysis API documentation](artifact/skills/smyx_analysis/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance] <br>\n**Output Format:** [Markdown or JSON analysis output with feed-intake estimates, trend labels, anomaly alerts, and report links.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Accepts feeder image or video file paths and media URLs; history lookup returns an account-scoped report table.] <br>\n\n## Skill Version(s): <br>\n1.0.6 (source: server release metadata; artifact frontmatter reports 1.0.4) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.6:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.6:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.5: 31 files, 39522 bytes\n\nFiles: references/api_doc.md (645b), scripts/__init__.py (51b), scripts/config.py (672b), scripts/config.yaml (3b), scripts/skill.py (570b), scripts/smyx_feed_intake_estimation_analysis.py (3537b), skill-card.md (2481b), SKILL.md (11965b), 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.5:SKILL.md\n\n---\nname: \"smyx-feed-intake-estimation-analysis\"\ndescription: \"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\"\nversion: \"1.0.3\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Livestock Feed Intake Estimation | 畜禽采食量估算\n\n> 通过食槽视频估算每日采食量变化，异常时预警。\n>\n> **精准饲喂计量中枢** · 食槽区域连续视频智能分析 · 剩余料量变化估算 · 每日采食量趋势 · 异常预警 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **畜禽采食量估算** |\n| 🎯 核心目标 | 基于食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体或群体的每日采食量，输出采食量趋势及异常提醒 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、每日采食量估算、采食量趋势曲线、异常提醒等级、报告链接 |\n| 🏢 适用场景 | 猪/牛等畜禽的精准饲喂管理与饲料成本控制，减少饲料浪费，识别采食量异常个体 |\n| 🧩 场景码 | `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS` |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n## 🤖 AI 角色 | AI Role\n\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的畜禽饲喂管理 AI。你的任务是分析食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体的每日采食量，输出采食量趋势及异常提醒。不要提供饲喂调整或饲料配方建议，仅基于视觉变化输出采食量估算结果。** |\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_feed_intake_estimation_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_feed_intake_estimation_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n---\n\n## 📦 前置准备 | Requirements\n\n### 依赖说明\n\n`scripts` 脚本所需的依赖包及版本：\n\n```txt\nrequests>=2.28.0\n```\n\n---\n\n## 📷 采集要求 | Capture Requirements\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 固定摄像头正对食槽（俯视或斜俯视），拍摄角度稳定，避免大幅位移或频繁调整 |\n| 2 | 画面中食槽全景可见，槽底与料面之间高度差清晰可辨，便于估算剩余量 |\n| 3 | 光照条件稳定，白天充足自然光或稳定人工光源，避免强逆光和大面积过曝/欠曝 |\n| 4 | 视频建议 30 秒~10 分钟连续拍摄，覆盖典型饲喂时段，帧率不低于 10fps |\n| 5 | 支持格式：jpg/png/jpeg 图片，及 mp4/avi/mov 视频；单文件不超过 10MB |\n| 6 | 尽量减少人员补料、清扫等大面积遮挡时段，或将其从关键分析片段中剔除 |\n| 7 | 建议保持食槽形状/规格与历史采集一致，以获得更稳定的采食量趋势对比 |\n\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\n## 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备食槽视频输入 | 提供本地文件路径或网络 URL；确保画面稳定、食槽全景可见 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行采食量估算 | 调用 `-m scripts.smyx_feed_intake_estimation_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看每日采食量、趋势曲线、异常提醒与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地食槽区域图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络食槽区域图像/视频 URL 地址 | API 服务自动下载 |\n| `--pet-type` | 类别标识（畜禽场景保持 other） | 默认 `other`，按需填写 |\n| `--list` | 显示历史分析报告清单 | 可以输入起始日期参数过滤数据范围 |\n| `--api-url` | API 服务地址 | 可选，使用默认值 |\n| `--detail` | 输出详细程度 | `basic` / `standard` / `json`，默认 `json` |\n| `--output` | 结果输出文件路径 | 可选 |\n\n---\n\n## 🗂️ 资源索引 | Resource Index\n\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_feed_intake_estimation_analysis.py`](scripts/smyx_feed_intake_estimation_analysis.py) | 调用 API 进行采食量估算或查询历史报告 | 执行分析或查询时使用 |\n| ⚙️ 配置文件 | [`scripts/config.py`](scripts/config.py) | 场景码 `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS`、默认参数配置 | 需要确认默认配置时读取 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n---\n\n## ⚠️ 注意事项 | Notes\n\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 图片支持 `jpg` / `png` / `jpeg`；视频支持 `mp4` / `avi` / `mov`；单文件最大 `10MB` |\n| 🧑‍⚖️ 结果性质 | 分析结果仅为视觉估算与趋势提醒，本技能不提供饲喂调整或饲料配方建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能使用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数无需本地下载，默认为公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 显示历史分析报告清单时，从接口返回 JSON 数据中提取字段作为超链接地址，并自动转化为 Markdown 表格输出 |\n\n---\n\n## 🔒 隐私与数据安全声明 | Privacy & Data Security\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 仅采集与畜禽采食量估算直接相关的食槽图像/视频数据，不采集与采食量估算无关的敏感信息 |\n| 2 | 内部身份参数由系统自动处理，不在任何输出、日志或报告中暴露 |\n| 3 | 分析请求通过服务端 API 完成，网络传输遵循平台既有安全策略 |\n| 4 | 历史报告仅当前身份可读，不做跨养殖场/跨用户汇总或共享 |\n| 5 | 估算结果仅供参考，实际饲喂计量与配方调整请结合养殖场规程与专业营养师意见 |\n\n---\n\n## 📜 历史报告清单输出规范 | Report List Format\n\n当显示历史分析报告清单的时候，从接口返回 JSON 数据中提取字段作为超链接地址，且自动转化为如下 Markdown 表格格式输出。\n\n### 📌 固定输出列\n\n| 列名 | 生成规则 |\n|---|---|\n| 报告名称 | 使用 `畜禽采食量估算报告-{记录id}` 形式拼接 |\n| 采食量趋势 | 从接口返回数据中提取（正常 / 偏低 / 骤降 / 骤升） |\n| 分析时间 | 从接口返回数据中提取 |\n| 点击查看 | 使用 `[🔗 查看报告]()` 格式的超链接 |\n\n### 🧾 表格输出示例\n\n| 报告名称 | 采食量趋势 | 分析时间 | 点击查看 |\n|----------|------------|----------|----------|\n| 畜禽采食量估算报告-20260703160500001 | 骤降 | 2026-07-03 16:05:00 | [🔗 查看报告](https://example.com/report?id=xxx) |\n\n---\n\n## 🧰 使用示例 | Examples\n\n### 🐷 分析本地猪舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/pig_feeder.mp4\n```\n\n### 🐄 分析本地牛舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/cow_feeder.mp4\n```\n\n### 🌐 分析网络食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --url https://example.com/feeder_trough.mp4\n```\n\n### 📚 显示历史分析报告 / 显示分析报告清单列表 / 显示历史采食量报告\n\n> 自动触发关键词：查看历史采食量报告、历史报告、采食量估算清单等。\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --list\n```\n\n### 🪶 输出精简报告\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input pig_feeder.mp4 --detail basic\n```\n\n### 💾 保存结果到文件\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input cow_feeder.mp4 --output result.json\n```\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-feed-intake-estimation-analysis\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1784367222486\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_FEED_INTAKE_ESTIMATION_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>\nEstimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。 <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[18072937735](https://clawhub.ai/user/18072937735) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users and developers use this skill to estimate livestock feed intake from fixed feeder images or videos, review intake trends, and identify abnormal feeding patterns. It also supports querying prior feed-intake reports associated with the current account identity. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Feeder images or videos, report queries, and account identity data are sent to lifeemergence.com services. <br>\nMitigation: Install and use only after confirming that these remote-service data flows are acceptable for the workspace and livestock operation. <br>\nRisk: The security evidence reports automatic identity creation or reuse and local token storage. <br>\nMitigation: Review identity lifecycle, token storage location, and shared-workspace access before use in sensitive environments. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n- [Feed intake API documentation](artifact/references/api_doc.md) <br>\n- [Shared analysis API documentation](artifact/skills/smyx_analysis/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown or JSON text, with optional saved output file] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Outputs can include structured intake estimates, trend labels, anomaly alerts, historical report tables, and report links.] <br>\n\n## Skill Version(s): <br>\n1.0.5 (source: server release metadata; skill 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.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, 39462 bytes\n\nFiles: references/api_doc.md (645b), scripts/__init__.py (51b), scripts/config.py (672b), scripts/config.yaml (3b), scripts/skill.py (570b), scripts/smyx_feed_intake_estimation_analysis.py (3537b), skill-card.md (2694b), SKILL.md (11965b), 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 (155b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: \"smyx-feed-intake-estimation-analysis\"\ndescription: \"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\"\nversion: \"1.0.1\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Livestock Feed Intake Estimation | 畜禽采食量估算\n\n> 通过食槽视频估算每日采食量变化，异常时预警。\n>\n> **精准饲喂计量中枢** · 食槽区域连续视频智能分析 · 剩余料量变化估算 · 每日采食量趋势 · 异常预警 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **畜禽采食量估算** |\n| 🎯 核心目标 | 基于食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体或群体的每日采食量，输出采食量趋势及异常提醒 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、每日采食量估算、采食量趋势曲线、异常提醒等级、报告链接 |\n| 🏢 适用场景 | 猪/牛等畜禽的精准饲喂管理与饲料成本控制，减少饲料浪费，识别采食量异常个体 |\n| 🧩 场景码 | `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS` |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n## 🤖 AI 角色 | AI Role\n\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的畜禽饲喂管理 AI。你的任务是分析食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体的每日采食量，输出采食量趋势及异常提醒。不要提供饲喂调整或饲料配方建议，仅基于视觉变化输出采食量估算结果。** |\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_feed_intake_estimation_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_feed_intake_estimation_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n---\n\n## 📦 前置准备 | Requirements\n\n### 依赖说明\n\n`scripts` 脚本所需的依赖包及版本：\n\n```txt\nrequests>=2.28.0\n```\n\n---\n\n## 📷 采集要求 | Capture Requirements\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 固定摄像头正对食槽（俯视或斜俯视），拍摄角度稳定，避免大幅位移或频繁调整 |\n| 2 | 画面中食槽全景可见，槽底与料面之间高度差清晰可辨，便于估算剩余量 |\n| 3 | 光照条件稳定，白天充足自然光或稳定人工光源，避免强逆光和大面积过曝/欠曝 |\n| 4 | 视频建议 30 秒~10 分钟连续拍摄，覆盖典型饲喂时段，帧率不低于 10fps |\n| 5 | 支持格式：jpg/png/jpeg 图片，及 mp4/avi/mov 视频；单文件不超过 10MB |\n| 6 | 尽量减少人员补料、清扫等大面积遮挡时段，或将其从关键分析片段中剔除 |\n| 7 | 建议保持食槽形状/规格与历史采集一致，以获得更稳定的采食量趋势对比 |\n\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\n## 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备食槽视频输入 | 提供本地文件路径或网络 URL；确保画面稳定、食槽全景可见 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行采食量估算 | 调用 `-m scripts.smyx_feed_intake_estimation_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看每日采食量、趋势曲线、异常提醒与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地食槽区域图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络食槽区域图像/视频 URL 地址 | API 服务自动下载 |\n| `--pet-type` | 类别标识（畜禽场景保持 other） | 默认 `other`，按需填写 |\n| `--list` | 显示历史分析报告清单 | 可以输入起始日期参数过滤数据范围 |\n| `--api-url` | API 服务地址 | 可选，使用默认值 |\n| `--detail` | 输出详细程度 | `basic` / `standard` / `json`，默认 `json` |\n| `--output` | 结果输出文件路径 | 可选 |\n\n---\n\n## 🗂️ 资源索引 | Resource Index\n\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_feed_intake_estimation_analysis.py`](scripts/smyx_feed_intake_estimation_analysis.py) | 调用 API 进行采食量估算或查询历史报告 | 执行分析或查询时使用 |\n| ⚙️ 配置文件 | [`scripts/config.py`](scripts/config.py) | 场景码 `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS`、默认参数配置 | 需要确认默认配置时读取 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n---\n\n## ⚠️ 注意事项 | Notes\n\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 图片支持 `jpg` / `png` / `jpeg`；视频支持 `mp4` / `avi` / `mov`；单文件最大 `10MB` |\n| 🧑‍⚖️ 结果性质 | 分析结果仅为视觉估算与趋势提醒，本技能不提供饲喂调整或饲料配方建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能使用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数无需本地下载，默认为公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 显示历史分析报告清单时，从接口返回 JSON 数据中提取字段作为超链接地址，并自动转化为 Markdown 表格输出 |\n\n---\n\n## 🔒 隐私与数据安全声明 | Privacy & Data Security\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 仅采集与畜禽采食量估算直接相关的食槽图像/视频数据，不采集与采食量估算无关的敏感信息 |\n| 2 | 内部身份参数由系统自动处理，不在任何输出、日志或报告中暴露 |\n| 3 | 分析请求通过服务端 API 完成，网络传输遵循平台既有安全策略 |\n| 4 | 历史报告仅当前身份可读，不做跨养殖场/跨用户汇总或共享 |\n| 5 | 估算结果仅供参考，实际饲喂计量与配方调整请结合养殖场规程与专业营养师意见 |\n\n---\n\n## 📜 历史报告清单输出规范 | Report List Format\n\n当显示历史分析报告清单的时候，从接口返回 JSON 数据中提取字段作为超链接地址，且自动转化为如下 Markdown 表格格式输出。\n\n### 📌 固定输出列\n\n| 列名 | 生成规则 |\n|---|---|\n| 报告名称 | 使用 `畜禽采食量估算报告-{记录id}` 形式拼接 |\n| 采食量趋势 | 从接口返回数据中提取（正常 / 偏低 / 骤降 / 骤升） |\n| 分析时间 | 从接口返回数据中提取 |\n| 点击查看 | 使用 `[🔗 查看报告]()` 格式的超链接 |\n\n### 🧾 表格输出示例\n\n| 报告名称 | 采食量趋势 | 分析时间 | 点击查看 |\n|----------|------------|----------|----------|\n| 畜禽采食量估算报告-20260703160500001 | 骤降 | 2026-07-03 16:05:00 | [🔗 查看报告](https://example.com/report?id=xxx) |\n\n---\n\n## 🧰 使用示例 | Examples\n\n### 🐷 分析本地猪舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/pig_feeder.mp4\n```\n\n### 🐄 分析本地牛舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/cow_feeder.mp4\n```\n\n### 🌐 分析网络食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --url https://example.com/feeder_trough.mp4\n```\n\n### 📚 显示历史分析报告 / 显示分析报告清单列表 / 显示历史采食量报告\n\n> 自动触发关键词：查看历史采食量报告、历史报告、采食量估算清单等。\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --list\n```\n\n### 🪶 输出精简报告\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input pig_feeder.mp4 --detail basic\n```\n\n### 💾 保存结果到文件\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input cow_feeder.mp4 --output result.json\n```\n\nFile v1.0.4:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-feed-intake-estimation-analysis\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1783325545260\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_FEED_INTAKE_ESTIMATION_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>\nEstimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[18072937735](https://clawhub.ai/user/18072937735) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nLivestock operators, farm management teams, and supporting agents use this skill to estimate feed intake from feeder-area images or videos, summarize trends, flag intake anomalies, and retrieve prior analysis reports. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Feeder images or videos and account-linked identifiers may be sent to the lifeemergence.com service. <br>\nMitigation: Use the skill only where remote processing of those media and identifiers is acceptable, and avoid sensitive shared workspaces unless the data flow has been reviewed. <br>\nRisk: The skill may silently create or reuse an identity, reuse a local API key file, and persist authentication tokens locally. <br>\nMitigation: Review or disable the automatic identity flow, protect or remove local credential files, and inspect SQLite token storage before deployment. <br>\nRisk: Feed-intake estimates can be affected by camera angle, lighting, occlusion, file format, and file-size constraints. <br>\nMitigation: Use stable feeder-area footage that follows the capture requirements and review estimates before relying on them for farm operations. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n- [Feed intake API documentation](references/api_doc.md) <br>\n- [Shared analysis API documentation](skills/smyx_analysis/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance] <br>\n**Output Format:** [Markdown reports and tables, JSON responses, and inline shell commands] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include daily feed-intake estimates, trend labels, anomaly alerts, report links, and saved output files.] <br>\n\n## Skill Version(s): <br>\n1.0.4 (source: server release metadata; artifact frontmatter reports 1.0.1) <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, 39527 bytes\n\nFiles: references/api_doc.md (645b), scripts/__init__.py (51b), scripts/config.py (672b), scripts/config.yaml (3b), scripts/skill.py (570b), scripts/smyx_feed_intake_estimation_analysis.py (3537b), skill-card.md (2844b), SKILL.md (11965b), 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 (155b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: \"smyx-feed-intake-estimation-analysis\"\ndescription: \"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\"\nversion: \"1.0.0\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Livestock Feed Intake Estimation | 畜禽采食量估算\n\n> 通过食槽视频估算每日采食量变化，异常时预警。\n>\n> **精准饲喂计量中枢** · 食槽区域连续视频智能分析 · 剩余料量变化估算 · 每日采食量趋势 · 异常预警 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **畜禽采食量估算** |\n| 🎯 核心目标 | 基于食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体或群体的每日采食量，输出采食量趋势及异常提醒 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、每日采食量估算、采食量趋势曲线、异常提醒等级、报告链接 |\n| 🏢 适用场景 | 猪/牛等畜禽的精准饲喂管理与饲料成本控制，减少饲料浪费，识别采食量异常个体 |\n| 🧩 场景码 | `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS` |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n## 🤖 AI 角色 | AI Role\n\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的畜禽饲喂管理 AI。你的任务是分析食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体的每日采食量，输出采食量趋势及异常提醒。不要提供饲喂调整或饲料配方建议，仅基于视觉变化输出采食量估算结果。** |\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_feed_intake_estimation_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_feed_intake_estimation_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n---\n\n## 📦 前置准备 | Requirements\n\n### 依赖说明\n\n`scripts` 脚本所需的依赖包及版本：\n\n```txt\nrequests>=2.28.0\n```\n\n---\n\n## 📷 采集要求 | Capture Requirements\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 固定摄像头正对食槽（俯视或斜俯视），拍摄角度稳定，避免大幅位移或频繁调整 |\n| 2 | 画面中食槽全景可见，槽底与料面之间高度差清晰可辨，便于估算剩余量 |\n| 3 | 光照条件稳定，白天充足自然光或稳定人工光源，避免强逆光和大面积过曝/欠曝 |\n| 4 | 视频建议 30 秒~10 分钟连续拍摄，覆盖典型饲喂时段，帧率不低于 10fps |\n| 5 | 支持格式：jpg/png/jpeg 图片，及 mp4/avi/mov 视频；单文件不超过 10MB |\n| 6 | 尽量减少人员补料、清扫等大面积遮挡时段，或将其从关键分析片段中剔除 |\n| 7 | 建议保持食槽形状/规格与历史采集一致，以获得更稳定的采食量趋势对比 |\n\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\n## 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备食槽视频输入 | 提供本地文件路径或网络 URL；确保画面稳定、食槽全景可见 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行采食量估算 | 调用 `-m scripts.smyx_feed_intake_estimation_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看每日采食量、趋势曲线、异常提醒与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地食槽区域图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络食槽区域图像/视频 URL 地址 | API 服务自动下载 |\n| `--pet-type` | 类别标识（畜禽场景保持 other） | 默认 `other`，按需填写 |\n| `--list` | 显示历史分析报告清单 | 可以输入起始日期参数过滤数据范围 |\n| `--api-url` | API 服务地址 | 可选，使用默认值 |\n| `--detail` | 输出详细程度 | `basic` / `standard` / `json`，默认 `json` |\n| `--output` | 结果输出文件路径 | 可选 |\n\n---\n\n## 🗂️ 资源索引 | Resource Index\n\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_feed_intake_estimation_analysis.py`](scripts/smyx_feed_intake_estimation_analysis.py) | 调用 API 进行采食量估算或查询历史报告 | 执行分析或查询时使用 |\n| ⚙️ 配置文件 | [`scripts/config.py`](scripts/config.py) | 场景码 `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS`、默认参数配置 | 需要确认默认配置时读取 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n---\n\n## ⚠️ 注意事项 | Notes\n\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 图片支持 `jpg` / `png` / `jpeg`；视频支持 `mp4` / `avi` / `mov`；单文件最大 `10MB` |\n| 🧑‍⚖️ 结果性质 | 分析结果仅为视觉估算与趋势提醒，本技能不提供饲喂调整或饲料配方建议 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能使用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数无需本地下载，默认为公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 显示历史分析报告清单时，从接口返回 JSON 数据中提取字段作为超链接地址，并自动转化为 Markdown 表格输出 |\n\n---\n\n## 🔒 隐私与数据安全声明 | Privacy & Data Security\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 仅采集与畜禽采食量估算直接相关的食槽图像/视频数据，不采集与采食量估算无关的敏感信息 |\n| 2 | 内部身份参数由系统自动处理，不在任何输出、日志或报告中暴露 |\n| 3 | 分析请求通过服务端 API 完成，网络传输遵循平台既有安全策略 |\n| 4 | 历史报告仅当前身份可读，不做跨养殖场/跨用户汇总或共享 |\n| 5 | 估算结果仅供参考，实际饲喂计量与配方调整请结合养殖场规程与专业营养师意见 |\n\n---\n\n## 📜 历史报告清单输出规范 | Report List Format\n\n当显示历史分析报告清单的时候，从接口返回 JSON 数据中提取字段作为超链接地址，且自动转化为如下 Markdown 表格格式输出。\n\n### 📌 固定输出列\n\n| 列名 | 生成规则 |\n|---|---|\n| 报告名称 | 使用 `畜禽采食量估算报告-{记录id}` 形式拼接 |\n| 采食量趋势 | 从接口返回数据中提取（正常 / 偏低 / 骤降 / 骤升） |\n| 分析时间 | 从接口返回数据中提取 |\n| 点击查看 | 使用 `[🔗 查看报告]()` 格式的超链接 |\n\n### 🧾 表格输出示例\n\n| 报告名称 | 采食量趋势 | 分析时间 | 点击查看 |\n|----------|------------|----------|----------|\n| 畜禽采食量估算报告-20260703160500001 | 骤降 | 2026-07-03 16:05:00 | [🔗 查看报告](https://example.com/report?id=xxx) |\n\n---\n\n## 🧰 使用示例 | Examples\n\n### 🐷 分析本地猪舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/pig_feeder.mp4\n```\n\n### 🐄 分析本地牛舍食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/cow_feeder.mp4\n```\n\n### 🌐 分析网络食槽视频\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --url https://example.com/feeder_trough.mp4\n```\n\n### 📚 显示历史分析报告 / 显示分析报告清单列表 / 显示历史采食量报告\n\n> 自动触发关键词：查看历史采食量报告、历史报告、采食量估算清单等。\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --list\n```\n\n### 🪶 输出精简报告\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input pig_feeder.mp4 --detail basic\n```\n\n### 💾 保存结果到文件\n\n```bash\npython -m scripts.smyx_feed_intake_estimation_analysis --input cow_feeder.mp4 --output result.json\n```\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-feed-intake-estimation-analysis\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1783201842887\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_FEED_INTAKE_ESTIMATION_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>\nEstimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[18072937735](https://clawhub.ai/user/18072937735) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users, developers, and livestock operations teams use this skill to estimate feed intake from feeder-area images, videos, or URLs and review structured intake trends, anomaly alerts, and report links. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill sends feeder images, videos, or media URLs to Life Emergence cloud APIs for analysis. <br>\nMitigation: Use only media approved for cloud processing, avoid unrelated sensitive content in uploads, and confirm the configured API endpoint before running analysis. <br>\nRisk: The skill may automatically create or reuse an identity and read data/smyx-api-key.txt when present. <br>\nMitigation: Run it in a workspace where this identity behavior is expected, and review or remove local identity files before use in shared or sensitive environments. <br>\nRisk: The skill can persist account tokens in a local SQLite database. <br>\nMitigation: Limit workspace access, inspect stored local state after use, and clear persisted tokens when the skill is no longer needed. <br>\nRisk: Historical report retrieval queries cloud API data associated with the resolved identity. <br>\nMitigation: Confirm that automatic history lookup is acceptable for the current user and workspace before invoking report-list workflows. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/18072937735/skills/smyx-feed-intake-estimation-analysis) <br>\n- [Skill Demo](https://lifeemergence.com/sample.html) <br>\n- [API Interface Documentation](references/api_doc.md) <br>\n- [Shared API Error Documentation](skills/smyx_analysis/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance] <br>\n**Output Format:** [Markdown or JSON analysis text, with optional saved output file] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Outputs may include feed-intake estimates, trend and anomaly fields, historical report lists, and report export links.] <br>\n\n## Skill Version(s): <br>\n1.0.3 (source: server release metadata; artifact frontmatter reports 1.0.0) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.3:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.3:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3","readmeExcerpt":"Skill: Feed Intake Estimation | 畜禽采食量估算 Owner: 18072937735 Summary: Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。 Tags: latest:1.0.12 Version history: v1.0.12 | 2026-09-30T16:17:28.439Z | auto - Bumped skill version from 1.0.11 to 1.0.13 in documentation. ","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"python -m scripts.smyx_feed_intake_estimation_analysis --list"},{"language":"txt","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"python -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/pig_feeder.mp4"},{"language":"bash","snippet":"python -m scripts.smyx_feed_intake_estimation_analysis --input /path/to/cow_feeder.mp4"},{"language":"bash","snippet":"python -m scripts.smyx_feed_intake_estimation_analysis --url https://example.com/feeder_trough.mp4"},{"language":"bash","snippet":"python -m scripts.smyx_feed_intake_estimation_analysis --list"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: \"smyx-feed-intake-estimation-analysis\"\ndescription: \"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。\"\nversion: \"1.0.13\"\nlicense: \"MIT-0\"\n---\n\n# 🥣 Livestock Feed Intake Estimation | 畜禽采食量估算\n\n> 通过食槽视频估算每日采食量变化，异常时预警。\n>\n> **精准饲喂计量中枢** · 食槽区域连续视频智能分析 · 剩余料量变化估算 · 每日采食量趋势 · 异常预警 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **畜禽采食量估算** |\n| 🎯 核心目标 | 基于食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体或群体的每日采食量，输出采食量趋势及异常提醒 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、每日采食量估算、采食量趋势曲线、异常提醒等级、报告链接 |\n| 🏢 适用场景 | 猪/牛等畜禽的精准饲喂管理与饲料成本控制，减少饲料浪费，识别采食量异常个体 |\n| 🧩 场景码 | `SMYX_FEED_INTAKE_ESTIMATION_ANALYSIS` |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n## 🤖 AI 角色 | AI Role\n\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **你是一个专业的畜禽饲喂管理 AI。你的任务是分析食槽区域固定摄像头的连续视频，通过识别食槽内饲料剩余量的变化，估算畜禽个体的每日采食量，输出采食量趋势及异常提醒。不要提供饲喂调整或饲料配方建议，仅基于视觉变化输出采食量估算结果。** |\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_feed_intake_estimation_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_feed_intake_estimation_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n---\n\n## 📦 前置准备 | Requirements\n\n### 依赖说明\n\n`scripts` 脚本所需的依赖包及版本：\n\n```txt\nrequests>=2.28.0\n```\n\n---\n\n## 📷 采集要求 | Capture Requirements\n\n| 序号 | 说明 |\n|---:|---|\n| 1 | 固定摄像头正对食槽（俯视或斜俯视），拍摄角度稳定，避免大幅位移或频繁调整 |\n| 2 | 画面中食槽全景可见，槽底与料面之间高度差清晰可辨，便于估算剩余量 |\n| 3 | 光照条件稳定，白天充足自然光或稳定人工光源，避免强逆光和大面积过曝/欠曝 |\n| 4 | 视频建议 30 秒~10 分钟连续拍摄，覆盖典型饲喂时段，帧率不低于 10fps |\n| 5 | 支持格式：jpg/png/jpeg 图片，及 mp4/avi/mov 视频；单文件不超过 10MB |\n| 6 | 尽量减少人员补料、清扫等大面积遮挡时段，或将其从关键分析片段中剔除 |\n| 7 | 建议保持食槽形状/规格与历史采集一致，以获得更稳定的采食量趋势对比 |\n\n---\n\n## 🚀 操作步骤 | Workflow\n\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7e2caqj7pnsvr9r7t8zenghs83xw7n\",\n  \"slug\": \"smyx-feed-intake-estimation-analysis\",\n  \"version\": \"1.0.12\",\n  \"publishedAt\": 1790785048439\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_FEED_INTAKE_ESTIMATION_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":"Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。 Skill: Feed Intake Estimation | 畜禽采食量估算 Owner: 18072937735 Summary: Estimates daily feed intake per livestock individual from continuous feeder videos by tracking the change of feed remaining in the trough, and outputs intake trend with anomaly alerts. | 通过食槽视频估算每日采食量变化，异常时预警。 Tags: latest:1.0.12 Version history: v1.0.12 | 2026-09-30T16:17:28.439Z | auto - Bumped skill version from 1.0.11 to 1.0.13 in documentation.","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":747,"uniquenessScore":49,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T21:40:03.928Z","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-10T21:40:03.928Z","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-10T23:46:44.690Z","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"}]}}}