{"id":"1bcd232c-d191-46b4-87a7-2d69e82c4d2b","entityType":"agent","slug":"clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy","name":"Aquarium Plant Health Monitor | 水族箱水草健康监测","canonicalUrl":"https://www.xpersona.co/agent/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy","canonicalPath":"/agent/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy","generatedAt":"2026-10-10T07:13:00.440Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T03:37:16.993Z","emptyReason":null},"description":"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.7K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-aquarium-plant-health-monitor-analysis","sourceUrl":"https://clawhub.ai/smyx-sunjinhui/smyx-aquarium-plant-health-monitor-analysis","homepage":"https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/smyx-sunjinhui/smyx-aquarium-plant-health-monitor-analysis","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":65,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Aquarium Plant Health Monitor | 水族箱水草健康监测 technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T03:37:16.993Z","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-10T03:37:16.993Z","emptyReason":null},"stars":null,"forks":null,"downloads":1726,"packageName":null,"latestVersion":"1.0.12","tractionLabel":"1.7K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T03:37:16.992Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T03:37:16.993Z","lastCrawledAt":"2026-10-10T03:37:16.992Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T03:37:16.992Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.12","createdAt":"2026-09-28T05:17:26.312Z","changelog":"- Updated documentation version number from 1.0.14 to 1.0.15. - Removed the skill-card.md file from the distribution. - No changes to core features or user-facing functionality.","fileCount":31,"zipByteSize":41177},{"version":"1.0.11","createdAt":"2026-09-23T14:32:38.012Z","changelog":"Aquarium Plant Health Monitor Analysis v1.0.11 - Updated configuration and documentation files for accuracy and alignment. - Removed redundant or outdated documentation (skill-card.md) for streamlined maintenance. - No changes to core functionality or user-facing behavior.","fileCount":31,"zipByteSize":41242},{"version":"1.0.10","createdAt":"2026-09-06T22:54:29.121Z","changelog":"- Version update to 1.0.12 with documentation refresh. - SKILL.md improved: updated version number, clarified usage and workflow details. - skill-card.md file removed as part of documentation cleanup. - No changes to core functionality; only documentation and metadata updated.","fileCount":31,"zipByteSize":41167},{"version":"1.0.9","createdAt":"2026-08-26T07:35:29.224Z","changelog":"- Removed the file `skill-card.md` from the project. - No feature or logic changes introduced in this version. - Documentation footprint reduced by removing an extra documentation file.","fileCount":31,"zipByteSize":41373},{"version":"1.0.8","createdAt":"2026-08-23T02:40:35.213Z","changelog":"Version 1.0.8 - Updated documentation in SKILL.md. - Removed skill-card.md. - No changes to functionality or code; this update is focused on documentation cleanup and maintenance.","fileCount":31,"zipByteSize":41161},{"version":"1.0.7","createdAt":"2026-08-16T14:28:28.893Z","changelog":"- Updated version to 1.0.9. - SKILL.md refined with minor wording changes and version update. - Removed obsolete file: skill-card.md. - No user-facing functional or API changes.","fileCount":31,"zipByteSize":41356},{"version":"1.0.6","createdAt":"2026-08-07T02:44:30.483Z","changelog":"- Updated version to 1.0.8 in SKILL.md. - Documentation (SKILL.md) updated with minor edits and formatting adjustments. - Removed the file skill-card.md.","fileCount":31,"zipByteSize":41255},{"version":"1.0.5","createdAt":"2026-08-02T14:49:28.540Z","changelog":"smyx-aquarium-plant-health-monitor-analysis 1.0.5 - Documentation updated in SKILL.md for clarity, instruction, and details. - Obsolete file skill-card.md removed for consistency. - No changes to core functionality or code.","fileCount":31,"zipByteSize":41150}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-aquarium-plant-health-monitor-analysis","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-aquarium-plant-health-monitor-analysis` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/smyx-sunjinhui/smyx-aquarium-plant-health-monitor-analysis before using production credentials."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T07:13:00.436Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-aquarium-plant-health-monitor-analy/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T03:37:16.993Z","emptyReason":null},"readme":"Skill: Aquarium Plant Health Monitor | 水族箱水草健康监测\n\nOwner: smyx-sunjinhui\n\nSummary: AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\nTags: latest:1.0.12\n\nVersion history:\n\nv1.0.12 | 2026-09-28T05:17:26.312Z | auto\n\n- Updated documentation version number from 1.0.14 to 1.0.15.\n- Removed the skill-card.md file from the distribution.\n- No changes to core features or user-facing functionality.\n\nv1.0.11 | 2026-09-23T14:32:38.012Z | auto\n\nAquarium Plant Health Monitor Analysis v1.0.11\n\n- Updated configuration and documentation files for accuracy and alignment.\n- Removed redundant or outdated documentation (skill-card.md) for streamlined maintenance.\n- No changes to core functionality or user-facing behavior.\n\nv1.0.10 | 2026-09-06T22:54:29.121Z | auto\n\n- Version update to 1.0.12 with documentation refresh.\n- SKILL.md improved: updated version number, clarified usage and workflow details.\n- skill-card.md file removed as part of documentation cleanup.\n- No changes to core functionality; only documentation and metadata updated.\n\nv1.0.9 | 2026-08-26T07:35:29.224Z | auto\n\n- Removed the file `skill-card.md` from the project.\n- No feature or logic changes introduced in this version.\n- Documentation footprint reduced by removing an extra documentation file.\n\nv1.0.8 | 2026-08-23T02:40:35.213Z | auto\n\nVersion 1.0.8\n\n- Updated documentation in SKILL.md.\n- Removed skill-card.md.\n- No changes to functionality or code; this update is focused on documentation cleanup and maintenance.\n\nv1.0.7 | 2026-08-16T14:28:28.893Z | auto\n\n- Updated version to 1.0.9.\n- SKILL.md refined with minor wording changes and version update.\n- Removed obsolete file: skill-card.md.\n- No user-facing functional or API changes.\n\nv1.0.6 | 2026-08-07T02:44:30.483Z | auto\n\n- Updated version to 1.0.8 in SKILL.md.\n- Documentation (SKILL.md) updated with minor edits and formatting adjustments.\n- Removed the file skill-card.md.\n\nv1.0.5 | 2026-08-02T14:49:28.540Z | auto\n\nsmyx-aquarium-plant-health-monitor-analysis 1.0.5\n\n- Documentation updated in SKILL.md for clarity, instruction, and details.\n- Obsolete file skill-card.md removed for consistency.\n- No changes to core functionality or code.\n\nv1.0.4 | 2026-07-14T00:15:27.311Z | auto\n\nAquarium Plant Health Monitor v1.0.4\n\n- Updated skill documentation for improved clarity and versioning (SKILL.md).\n- Internal utility script modified for compatibility or enhancements (util.py).\n- Removed deprecated or redundant documentation file (skill-card.md).\n\nv1.0.3 | 2026-07-06T23:38:27.980Z | auto\n\nsmyx-aquarium-plant-health-monitor-analysis 1.0.3\n\n- Updated internal script files for improved configuration, data access, and utilities.\n- Documentation (SKILL.md) revised for clarity and version update.\n- Removed redundant file: skill-card.md.\n\nv1.0.2 | 2026-06-29T04:15:26.690Z | auto\n\n- Version number updated to 1.0.2.\n- Documentation updated in SKILL.md; minor clarifications and formatting adjustments.\n- Removed redundant file: skill-card.md.\n\nv1.0.1 | 2026-06-25T00:29:27.159Z | auto\n\nSkill version 1.0.1 — Major update with improved user privacy and streamlined workflow:\n\n- User identity (open-id) management is now fully automatic and handled internally—users are no longer prompted to provide or see identity values.\n- Streamlined usage flow: all user identity linkage, including for history queries, is transparent and automatic.\n- Documentation and workflow updated to emphasize fully internalized authentication, with prior open-id request steps and user prompts removed.\n- Strict enforcement that all history report queries fetch from the cloud API only; local/memory/aggregation is absolutely forbidden.\n- More concise, visually structured SKILL.md, with improved parameter guidance and demo resource.\n- One obsolete script file removed; improved modularity and clarity in supporting scripts.\n\nv1.0.0 | 2026-05-23T16:05:32.685Z | auto\n\nInitial release of smyx-aquarium-plant-health-monitor-analysis.\n\n- Monitors aquarium plant health using AI vision analysis on camera images or videos.\n- Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency in submerged plants.\n- Outputs structured health assessment and care suggestions (e.g., supplement iron, adjust lighting, increase CO₂), focusing on early problem detection and ecological balance.\n- Supports automatic saving and listing of historical reports, with strict open-id authentication for API calls.\n- Designed for use in smart fish tanks, aquascaping tanks, and aquarium shops.\n\nArchive index:\n\nArchive v1.0.12: 31 files, 41177 bytes\n\nFiles: references/api_doc.md (686b), scripts/__init__.py (57b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_aquarium_plant_health_monitor_analysis.py (3486b), skill-card.md (2296b), SKILL.md (16590b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.12:SKILL.md\n\n---\nname: \"smyx-aquarium-plant-health-monitor-analysis\"\ndescription: \"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\"\nversion: \"1.0.15\"\nlicense: \"MIT-0\"\n---\n\n# 🌿 Aquarium Plant Health Monitor | 水族箱水草健康监测\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水族箱水草健康监测** |\n| 🎯 核心目标 | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` |\n\nAI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops.\n\n通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水族植物健康AI。你的任务是分析水族箱中水草（沉水植物）的高清图像，识别叶片颜色和形态异常，与常见水草健康问题特征库比对，输出健康状态及可能的病因。不要提供具体水质参数调整方案，仅输出基于视觉的评估。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过水族箱水草图像进行健康监测，输出水草健康评估、可能病因及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 水草叶片颜色异常检测（黄化/白化/发黑/褐变） |\n| 2 | 形态异常识别（溶叶/卷曲/穿孔/徒长） |\n| 3 | 藻类附着检测 |\n| 4 | 常见缺素症状比对（缺铁/缺氮/缺钾/缺镁等） |\n| 5 | 健康等级评估 |\n| 6 | 养护方向建议（施肥/光照/CO₂/修剪） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水族箱水草图像或视频需要健康分析时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要水草健康诊断时，提及水草黄叶、水草溶叶、水草发黑、水草白化、水草徒长、水草状态差、草缸问题、水草缺肥、鱼缸水草不健康等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看历史水草报告、历史水族箱报告、水草健康报告清单、显示所有水草监测报告、查询水草诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备图像/视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行水草健康监测 | 调用 `-m scripts.smyx_aquarium_plant_health_monitor_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看监测结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水族箱水草图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水族箱水草图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 对象类型，水族场景默认 other | 按需填写 |\n| `--list` | 显示水族箱水草健康监测历史报告列表清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🌿 常见水草健康问题对照表\n\n| 问题类型 | 典型症状 | 可能病因 | 易发水草 |\n|----------|----------|----------|----------|\n| 🟡 黄化 | 叶片整体或叶脉间变黄 | 缺氮/缺铁/光照不足 | 皇冠草、椒草、榕草 |\n| ⚪ 白化 | 新叶发白或半透明 | 严重缺铁/缺微量元素 | 皇冠草、水榕、铁皇冠 |\n| ⚫ 发黑 | 叶片变黑腐烂 | 缺钾/有机物过多/水质恶化 | 莫斯、水榕、椒草 |\n| 🟤 褐变 | 叶片出现褐色斑点或整体褐化 | 硅藻覆盖/缺钾/光照光谱不佳 | 各类水草均可能 |\n| 💧 溶叶 | 叶片透明软化溶解 | 水质剧烈变化/新草转水/缺肥 | 皇冠草、椒草、谷精草 |\n| 🌀 卷曲 | 叶片向内卷曲或扭曲 | 缺钙/缺钾/CO₂不足 | 皇冠草、椒草、牛顿草 |\n| 🔴 穿孔 | 叶片出现孔洞 | 缺钾/蜗牛啃食/细菌感染 | 皇冠草、水榕、椒草 |\n| 📏 徒长 | 节间拉长、叶片稀疏 | 光照不足/光谱偏红 | 红蝴蝶、宫廷草、珍珠草 |\n| 🦠 藻害 | 叶面覆盖绿斑/丝藻/黑毛藻 | 光照过强/肥力过剩/CO₂不足 | 各类水草均可能 |\n| 🥀 老叶脱落 | 底部老叶逐步枯黄脱落 | 缺氮/缺镁/自然代谢 | 皇冠草、椒草、水榕 |\n| 🔴 红草褪色 | 红色水草变绿 | 光照不足/缺铁/缺磷 | 红蝴蝶、红宫廷、血红宫廷 |\n\n## 🔍 水草健康识别维度\n\n| 维度 | 观察重点 | 判断意义 |\n|------|----------|----------|\n| 颜色变化 | 黄化/白化/发黑/褐变/褪色 | 不同颜色指向不同病因 |\n| 症状部位 | 老叶 vs 新叶 vs 嫩芽 | 老叶→移动性元素缺乏(N/K/Mg)，新叶→非移动性元素(Fe/Ca) |\n| 形态异常 | 溶叶/卷曲/穿孔/徒长 | 溶叶→水质突变，卷曲→缺Ca/K，徒长→光照不足 |\n| 藻类附着 | 绿斑藻/丝藻/黑毛藻/硅藻 | 藻类类型指示不同水质问题 |\n| 叶片质地 | 透明软化/厚硬/脆裂 | 软化→溶叶/缺肥，脆裂→缺钾 |\n| 生长状态 | 节间长度/叶片密度/顶端优势 | 徒长→光照/CO₂不足，矮化→缺肥 |\n\n## 📊 水草健康等级评估\n\n| 等级 | 症状表现 | 养护建议 |\n|------|----------|----------|\n| 🟢 健康 | 叶色翠绿/形态正常、无藻类附着 | 保持当前养护，定期监测 |\n| 🟡 亚健康 | 叶色轻微偏黄或少量褐斑 | 适当补充液肥，观察变化 |\n| 🟠 轻度异常 | 明确黄化/少量溶叶/轻度藻害 | 针对性施肥，调整光照/CO₂ |\n| 🔴 重度异常 | 大面积溶叶/发黑/严重藻害/徒长 | 紧急干预，修剪病叶，咨询水族专家 |\n\n## 💡 养护方向参考\n\n| 问题类型 | 养护方向 |\n|----------|----------|\n| 🟡 缺氮（整体黄化） | 适当增加含氮液肥；注意不要过量引发藻类 |\n| 🟢 缺铁（新叶白化/黄化） | 补充铁肥（EDTA-Fe/DTPA-Fe）；配合适当光照促进吸收 |\n| 🟤 缺钾（叶缘褐变/穿孔） | 追施钾肥；注意K与Ca/Mg的平衡 |\n| 🟡 缺镁（老叶叶脉间黄化） | 补充镁肥；与钾肥交替施用避免拮抗 |\n| ☀️ 光照不足（徒长/褪色） | 延长光照时长或增加光照强度；检查灯管是否老化 |\n| 💨 CO₂不足（生长缓慢/藻害） | 提高CO₂浓度；检查CO₂设备是否正常工作 |\n| 🦠 藻害 | 减少光照时长；适量减少施肥；引入除藻生物（黑壳虾/小精灵鱼） |\n| 💧 溶叶/水质突变 | 换水时注意温差和水质匹配；新草转水需逐步适应 |\n\n> ⚠️ 本技能仅提供**养护方向建议**，**不提供具体水质参数调整方案**（如pH/KH/GH具体数值）；专业水质调控需根据缸内实际情况咨询水族专家。\n\n## 🔄 与陆生植物问题的区分要点\n\n| 特征 | 水草（沉水植物） | 陆生植物 |\n|------|------------------|----------|\n| 环境 | 水下生长，受水质/CO₂/光照综合影响 | 空气中生长，主要受土壤/光照影响 |\n| 缺铁表现 | 新叶白化或严重黄化（水中铁易沉淀） | 新叶叶脉间失绿（网纹状） |\n| 溶叶现象 | ✅ 常见（水质突变/转水） | ❌ 极少发生 |\n| 藻类竞争 | ✅ 常见（与水草争夺营养/光照） | ❌ 不存在 |\n| CO₂影响 | ⚡ 关键因素（水中CO₂浓度远低于空气） | 影响较小（空气中CO₂充足） |\n\n> 💡 水草问题的诊断需综合考量水质、光照、CO₂、肥料四要素，单纯视觉判断可能存在不确定性。建议结合水质测试数据综合分析。\n\n## 🐟 常见水草品种与典型问题\n\n| 水草品种 | 易发问题 | 注意事项 |\n|----------|----------|----------|\n| 皇冠草 | 新叶白化(缺铁)、老叶穿孔(缺钾) | 重根肥需求大，需定期补充 |\n| 椒草 | 溶叶(水质突变)、褐斑 | 对水质变化敏感，换水需温和 |\n| 水榕 | 发黑、藻害 | 生长缓慢，对CO₂需求低 |\n| 铁皇冠 | 白化(缺铁)、黑毛藻 | 名字带\"铁\"，对铁肥需求高 |\n| 莫斯 | 发黑、丝藻缠绕 | 需良好水流，避免有机物沉积 |\n| 红蝴蝶 | 褪色变绿(光照/缺铁)、徒长 | 需强光+足量铁肥维持红色 |\n| 宫廷草 | 徒长(光照不足)、底部落叶 | 需高光高CO₂，定期修剪 |\n| 珍珠草 | 徒长、稀疏 | 需强光，否则底部叶片脱落 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_aquarium_plant_health_monitor_analysis.py`](scripts/smyx_aquarium_plant_health_monitor_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | **拍摄要求**：透过缸壁或水下拍摄，聚焦水草，避免反光；模糊/逆光/反光严重的图像无法得出可靠结果 |\n| 🧑‍⚖️ 结果性质 | **监测结果仅供水草健康参考，不提供具体水质参数调整方案**；专业水质调控请咨询水族专家 |\n| 🔎 使用提醒 | 部分水草问题症状相似（如缺铁与缺氮均可致黄化），AI 识别可能存在不确定性，建议结合水质测试数据综合判断 |\n| 🔎 使用提醒 | 玻璃缸壁反光、水面波纹、水中悬浮颗粒可能干扰识别，建议拍摄时尽量减少干扰因素 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史监测报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json\n```\n\nFile v1.0.12:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-aquarium-plant-health-monitor-analysis\",\n  \"version\": \"1.0.12\",\n  \"publishedAt\": 1790572646312\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` - 启动通用 AI 分析任务（水族箱水草健康监测）\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_AQUARIUM_PLANT_HEALTH_MONITOR_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\nAnalyzes aquarium plant images or videos for visible health issues and provides health assessments and care suggestions.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nAquarium keepers, aquascapers, and aquarium shops use camera images or videos to check aquatic plants for discoloration, damaged leaves, algae, and possible nutrient deficiencies, then review care suggestions or past reports.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Aquarium images, videos, or media URLs are sent to lifeemergence.com services for analysis.\n\nMitigation: Review the service's data handling before use; do not submit private or sensitive media unless acceptable.\n\nRisk: The skill silently creates or reuses an account identity, stores account tokens locally, and retrieves account-linked cloud report history.\n\nMitigation: Review account creation, token storage, and cloud history access before installing or running the skill.\n\nRisk: Image-based symptoms can be ambiguous or distorted by glare, blur, and water conditions.\n\nMitigation: Use clear images, corroborate findings with water tests, and consult an aquarium expert before major water-quality changes.\n\n## Reference(s):\n\n- [ClawHub skill release](https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis)\n- [Aquarium plant analysis API documentation](artifact/references/api_doc.md)\n- [Analysis API error codes](artifact/skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [Analysis, Guidance, Text]\n\n**Output Format:** [Structured JSON or Markdown text; report links and Markdown tables for history]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Results may be saved to a file; visual assessments are advisory.]\n\n## Skill Version(s):\n\n1.0.12 (source: ClawHub release metadata; bundled SKILL.md declares 1.0.15)\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, 41242 bytes\n\nFiles: references/api_doc.md (686b), scripts/__init__.py (57b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_aquarium_plant_health_monitor_analysis.py (3486b), skill-card.md (2472b), SKILL.md (16590b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.11:SKILL.md\n\n---\nname: \"smyx-aquarium-plant-health-monitor-analysis\"\ndescription: \"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\"\nversion: \"1.0.14\"\nlicense: \"MIT-0\"\n---\n\n# 🌿 Aquarium Plant Health Monitor | 水族箱水草健康监测\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水族箱水草健康监测** |\n| 🎯 核心目标 | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` |\n\nAI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops.\n\n通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水族植物健康AI。你的任务是分析水族箱中水草（沉水植物）的高清图像，识别叶片颜色和形态异常，与常见水草健康问题特征库比对，输出健康状态及可能的病因。不要提供具体水质参数调整方案，仅输出基于视觉的评估。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过水族箱水草图像进行健康监测，输出水草健康评估、可能病因及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 水草叶片颜色异常检测（黄化/白化/发黑/褐变） |\n| 2 | 形态异常识别（溶叶/卷曲/穿孔/徒长） |\n| 3 | 藻类附着检测 |\n| 4 | 常见缺素症状比对（缺铁/缺氮/缺钾/缺镁等） |\n| 5 | 健康等级评估 |\n| 6 | 养护方向建议（施肥/光照/CO₂/修剪） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水族箱水草图像或视频需要健康分析时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要水草健康诊断时，提及水草黄叶、水草溶叶、水草发黑、水草白化、水草徒长、水草状态差、草缸问题、水草缺肥、鱼缸水草不健康等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看历史水草报告、历史水族箱报告、水草健康报告清单、显示所有水草监测报告、查询水草诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备图像/视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行水草健康监测 | 调用 `-m scripts.smyx_aquarium_plant_health_monitor_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看监测结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水族箱水草图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水族箱水草图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 对象类型，水族场景默认 other | 按需填写 |\n| `--list` | 显示水族箱水草健康监测历史报告列表清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🌿 常见水草健康问题对照表\n\n| 问题类型 | 典型症状 | 可能病因 | 易发水草 |\n|----------|----------|----------|----------|\n| 🟡 黄化 | 叶片整体或叶脉间变黄 | 缺氮/缺铁/光照不足 | 皇冠草、椒草、榕草 |\n| ⚪ 白化 | 新叶发白或半透明 | 严重缺铁/缺微量元素 | 皇冠草、水榕、铁皇冠 |\n| ⚫ 发黑 | 叶片变黑腐烂 | 缺钾/有机物过多/水质恶化 | 莫斯、水榕、椒草 |\n| 🟤 褐变 | 叶片出现褐色斑点或整体褐化 | 硅藻覆盖/缺钾/光照光谱不佳 | 各类水草均可能 |\n| 💧 溶叶 | 叶片透明软化溶解 | 水质剧烈变化/新草转水/缺肥 | 皇冠草、椒草、谷精草 |\n| 🌀 卷曲 | 叶片向内卷曲或扭曲 | 缺钙/缺钾/CO₂不足 | 皇冠草、椒草、牛顿草 |\n| 🔴 穿孔 | 叶片出现孔洞 | 缺钾/蜗牛啃食/细菌感染 | 皇冠草、水榕、椒草 |\n| 📏 徒长 | 节间拉长、叶片稀疏 | 光照不足/光谱偏红 | 红蝴蝶、宫廷草、珍珠草 |\n| 🦠 藻害 | 叶面覆盖绿斑/丝藻/黑毛藻 | 光照过强/肥力过剩/CO₂不足 | 各类水草均可能 |\n| 🥀 老叶脱落 | 底部老叶逐步枯黄脱落 | 缺氮/缺镁/自然代谢 | 皇冠草、椒草、水榕 |\n| 🔴 红草褪色 | 红色水草变绿 | 光照不足/缺铁/缺磷 | 红蝴蝶、红宫廷、血红宫廷 |\n\n## 🔍 水草健康识别维度\n\n| 维度 | 观察重点 | 判断意义 |\n|------|----------|----------|\n| 颜色变化 | 黄化/白化/发黑/褐变/褪色 | 不同颜色指向不同病因 |\n| 症状部位 | 老叶 vs 新叶 vs 嫩芽 | 老叶→移动性元素缺乏(N/K/Mg)，新叶→非移动性元素(Fe/Ca) |\n| 形态异常 | 溶叶/卷曲/穿孔/徒长 | 溶叶→水质突变，卷曲→缺Ca/K，徒长→光照不足 |\n| 藻类附着 | 绿斑藻/丝藻/黑毛藻/硅藻 | 藻类类型指示不同水质问题 |\n| 叶片质地 | 透明软化/厚硬/脆裂 | 软化→溶叶/缺肥，脆裂→缺钾 |\n| 生长状态 | 节间长度/叶片密度/顶端优势 | 徒长→光照/CO₂不足，矮化→缺肥 |\n\n## 📊 水草健康等级评估\n\n| 等级 | 症状表现 | 养护建议 |\n|------|----------|----------|\n| 🟢 健康 | 叶色翠绿/形态正常、无藻类附着 | 保持当前养护，定期监测 |\n| 🟡 亚健康 | 叶色轻微偏黄或少量褐斑 | 适当补充液肥，观察变化 |\n| 🟠 轻度异常 | 明确黄化/少量溶叶/轻度藻害 | 针对性施肥，调整光照/CO₂ |\n| 🔴 重度异常 | 大面积溶叶/发黑/严重藻害/徒长 | 紧急干预，修剪病叶，咨询水族专家 |\n\n## 💡 养护方向参考\n\n| 问题类型 | 养护方向 |\n|----------|----------|\n| 🟡 缺氮（整体黄化） | 适当增加含氮液肥；注意不要过量引发藻类 |\n| 🟢 缺铁（新叶白化/黄化） | 补充铁肥（EDTA-Fe/DTPA-Fe）；配合适当光照促进吸收 |\n| 🟤 缺钾（叶缘褐变/穿孔） | 追施钾肥；注意K与Ca/Mg的平衡 |\n| 🟡 缺镁（老叶叶脉间黄化） | 补充镁肥；与钾肥交替施用避免拮抗 |\n| ☀️ 光照不足（徒长/褪色） | 延长光照时长或增加光照强度；检查灯管是否老化 |\n| 💨 CO₂不足（生长缓慢/藻害） | 提高CO₂浓度；检查CO₂设备是否正常工作 |\n| 🦠 藻害 | 减少光照时长；适量减少施肥；引入除藻生物（黑壳虾/小精灵鱼） |\n| 💧 溶叶/水质突变 | 换水时注意温差和水质匹配；新草转水需逐步适应 |\n\n> ⚠️ 本技能仅提供**养护方向建议**，**不提供具体水质参数调整方案**（如pH/KH/GH具体数值）；专业水质调控需根据缸内实际情况咨询水族专家。\n\n## 🔄 与陆生植物问题的区分要点\n\n| 特征 | 水草（沉水植物） | 陆生植物 |\n|------|------------------|----------|\n| 环境 | 水下生长，受水质/CO₂/光照综合影响 | 空气中生长，主要受土壤/光照影响 |\n| 缺铁表现 | 新叶白化或严重黄化（水中铁易沉淀） | 新叶叶脉间失绿（网纹状） |\n| 溶叶现象 | ✅ 常见（水质突变/转水） | ❌ 极少发生 |\n| 藻类竞争 | ✅ 常见（与水草争夺营养/光照） | ❌ 不存在 |\n| CO₂影响 | ⚡ 关键因素（水中CO₂浓度远低于空气） | 影响较小（空气中CO₂充足） |\n\n> 💡 水草问题的诊断需综合考量水质、光照、CO₂、肥料四要素，单纯视觉判断可能存在不确定性。建议结合水质测试数据综合分析。\n\n## 🐟 常见水草品种与典型问题\n\n| 水草品种 | 易发问题 | 注意事项 |\n|----------|----------|----------|\n| 皇冠草 | 新叶白化(缺铁)、老叶穿孔(缺钾) | 重根肥需求大，需定期补充 |\n| 椒草 | 溶叶(水质突变)、褐斑 | 对水质变化敏感，换水需温和 |\n| 水榕 | 发黑、藻害 | 生长缓慢，对CO₂需求低 |\n| 铁皇冠 | 白化(缺铁)、黑毛藻 | 名字带\"铁\"，对铁肥需求高 |\n| 莫斯 | 发黑、丝藻缠绕 | 需良好水流，避免有机物沉积 |\n| 红蝴蝶 | 褪色变绿(光照/缺铁)、徒长 | 需强光+足量铁肥维持红色 |\n| 宫廷草 | 徒长(光照不足)、底部落叶 | 需高光高CO₂，定期修剪 |\n| 珍珠草 | 徒长、稀疏 | 需强光，否则底部叶片脱落 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_aquarium_plant_health_monitor_analysis.py`](scripts/smyx_aquarium_plant_health_monitor_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | **拍摄要求**：透过缸壁或水下拍摄，聚焦水草，避免反光；模糊/逆光/反光严重的图像无法得出可靠结果 |\n| 🧑‍⚖️ 结果性质 | **监测结果仅供水草健康参考，不提供具体水质参数调整方案**；专业水质调控请咨询水族专家 |\n| 🔎 使用提醒 | 部分水草问题症状相似（如缺铁与缺氮均可致黄化），AI 识别可能存在不确定性，建议结合水质测试数据综合判断 |\n| 🔎 使用提醒 | 玻璃缸壁反光、水面波纹、水中悬浮颗粒可能干扰识别，建议拍摄时尽量减少干扰因素 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史监测报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json\n```\n\nFile v1.0.11:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-aquarium-plant-health-monitor-analysis\",\n  \"version\": \"1.0.11\",\n  \"publishedAt\": 1790173958012\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` - 启动通用 AI 分析任务（水族箱水草健康监测）\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_AQUARIUM_PLANT_HEALTH_MONITOR_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: prod\n\nFile v1.0.11:skill-card.md\n\n## Description:\n\nAnalyzes aquarium plant images or videos for visible leaf color changes, shape anomalies, algae attachment, and likely nutrient symptoms, then returns a structured health assessment with care-direction suggestions.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nAquarium owners, aquascaping maintainers, aquarium shops, and developers use this skill to submit plant images, videos, or URLs for visible plant-health monitoring and care-direction guidance. The skill can also retrieve account-linked historical cloud reports for follow-up review.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Aquarium images, videos, submitted URLs, and report-history queries are sent to configured lifeemergence.com cloud services.\n\nMitigation: Use only with media and URLs approved for that cloud service, and disclose upload and history-query behavior before execution.\n\nRisk: The skill automatically creates or reuses a persistent identity and stores service tokens locally.\n\nMitigation: Run it in an isolated workspace, review token storage and cleanup expectations, and remove local workspace data when finished.\n\nRisk: Historical report retrieval is account-linked and may expose previous cloud-stored analysis records.\n\nMitigation: Confirm user intent before running history-list commands and avoid displaying or requesting internal identity values.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis)\n- [API interface documentation](artifact/references/api_doc.md)\n- [Skill demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, guidance]\n\n**Output Format:** [Markdown text with structured JSON-style report content and report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include a report export link; historical report queries return cloud-backed report records.]\n\n## Skill Version(s):\n\n1.0.11 (source: server release metadata; artifact frontmatter says 1.0.14)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.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, 41167 bytes\n\nFiles: references/api_doc.md (686b), scripts/__init__.py (57b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_aquarium_plant_health_monitor_analysis.py (3486b), skill-card.md (2403b), SKILL.md (16590b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (472b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.10:SKILL.md\n\n---\nname: \"smyx-aquarium-plant-health-monitor-analysis\"\ndescription: \"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\"\nversion: \"1.0.12\"\nlicense: \"MIT-0\"\n---\n\n# 🌿 Aquarium Plant Health Monitor | 水族箱水草健康监测\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水族箱水草健康监测** |\n| 🎯 核心目标 | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` |\n\nAI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops.\n\n通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水族植物健康AI。你的任务是分析水族箱中水草（沉水植物）的高清图像，识别叶片颜色和形态异常，与常见水草健康问题特征库比对，输出健康状态及可能的病因。不要提供具体水质参数调整方案，仅输出基于视觉的评估。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过水族箱水草图像进行健康监测，输出水草健康评估、可能病因及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 水草叶片颜色异常检测（黄化/白化/发黑/褐变） |\n| 2 | 形态异常识别（溶叶/卷曲/穿孔/徒长） |\n| 3 | 藻类附着检测 |\n| 4 | 常见缺素症状比对（缺铁/缺氮/缺钾/缺镁等） |\n| 5 | 健康等级评估 |\n| 6 | 养护方向建议（施肥/光照/CO₂/修剪） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水族箱水草图像或视频需要健康分析时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要水草健康诊断时，提及水草黄叶、水草溶叶、水草发黑、水草白化、水草徒长、水草状态差、草缸问题、水草缺肥、鱼缸水草不健康等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看历史水草报告、历史水族箱报告、水草健康报告清单、显示所有水草监测报告、查询水草诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备图像/视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行水草健康监测 | 调用 `-m scripts.smyx_aquarium_plant_health_monitor_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看监测结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水族箱水草图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水族箱水草图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 对象类型，水族场景默认 other | 按需填写 |\n| `--list` | 显示水族箱水草健康监测历史报告列表清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🌿 常见水草健康问题对照表\n\n| 问题类型 | 典型症状 | 可能病因 | 易发水草 |\n|----------|----------|----------|----------|\n| 🟡 黄化 | 叶片整体或叶脉间变黄 | 缺氮/缺铁/光照不足 | 皇冠草、椒草、榕草 |\n| ⚪ 白化 | 新叶发白或半透明 | 严重缺铁/缺微量元素 | 皇冠草、水榕、铁皇冠 |\n| ⚫ 发黑 | 叶片变黑腐烂 | 缺钾/有机物过多/水质恶化 | 莫斯、水榕、椒草 |\n| 🟤 褐变 | 叶片出现褐色斑点或整体褐化 | 硅藻覆盖/缺钾/光照光谱不佳 | 各类水草均可能 |\n| 💧 溶叶 | 叶片透明软化溶解 | 水质剧烈变化/新草转水/缺肥 | 皇冠草、椒草、谷精草 |\n| 🌀 卷曲 | 叶片向内卷曲或扭曲 | 缺钙/缺钾/CO₂不足 | 皇冠草、椒草、牛顿草 |\n| 🔴 穿孔 | 叶片出现孔洞 | 缺钾/蜗牛啃食/细菌感染 | 皇冠草、水榕、椒草 |\n| 📏 徒长 | 节间拉长、叶片稀疏 | 光照不足/光谱偏红 | 红蝴蝶、宫廷草、珍珠草 |\n| 🦠 藻害 | 叶面覆盖绿斑/丝藻/黑毛藻 | 光照过强/肥力过剩/CO₂不足 | 各类水草均可能 |\n| 🥀 老叶脱落 | 底部老叶逐步枯黄脱落 | 缺氮/缺镁/自然代谢 | 皇冠草、椒草、水榕 |\n| 🔴 红草褪色 | 红色水草变绿 | 光照不足/缺铁/缺磷 | 红蝴蝶、红宫廷、血红宫廷 |\n\n## 🔍 水草健康识别维度\n\n| 维度 | 观察重点 | 判断意义 |\n|------|----------|----------|\n| 颜色变化 | 黄化/白化/发黑/褐变/褪色 | 不同颜色指向不同病因 |\n| 症状部位 | 老叶 vs 新叶 vs 嫩芽 | 老叶→移动性元素缺乏(N/K/Mg)，新叶→非移动性元素(Fe/Ca) |\n| 形态异常 | 溶叶/卷曲/穿孔/徒长 | 溶叶→水质突变，卷曲→缺Ca/K，徒长→光照不足 |\n| 藻类附着 | 绿斑藻/丝藻/黑毛藻/硅藻 | 藻类类型指示不同水质问题 |\n| 叶片质地 | 透明软化/厚硬/脆裂 | 软化→溶叶/缺肥，脆裂→缺钾 |\n| 生长状态 | 节间长度/叶片密度/顶端优势 | 徒长→光照/CO₂不足，矮化→缺肥 |\n\n## 📊 水草健康等级评估\n\n| 等级 | 症状表现 | 养护建议 |\n|------|----------|----------|\n| 🟢 健康 | 叶色翠绿/形态正常、无藻类附着 | 保持当前养护，定期监测 |\n| 🟡 亚健康 | 叶色轻微偏黄或少量褐斑 | 适当补充液肥，观察变化 |\n| 🟠 轻度异常 | 明确黄化/少量溶叶/轻度藻害 | 针对性施肥，调整光照/CO₂ |\n| 🔴 重度异常 | 大面积溶叶/发黑/严重藻害/徒长 | 紧急干预，修剪病叶，咨询水族专家 |\n\n## 💡 养护方向参考\n\n| 问题类型 | 养护方向 |\n|----------|----------|\n| 🟡 缺氮（整体黄化） | 适当增加含氮液肥；注意不要过量引发藻类 |\n| 🟢 缺铁（新叶白化/黄化） | 补充铁肥（EDTA-Fe/DTPA-Fe）；配合适当光照促进吸收 |\n| 🟤 缺钾（叶缘褐变/穿孔） | 追施钾肥；注意K与Ca/Mg的平衡 |\n| 🟡 缺镁（老叶叶脉间黄化） | 补充镁肥；与钾肥交替施用避免拮抗 |\n| ☀️ 光照不足（徒长/褪色） | 延长光照时长或增加光照强度；检查灯管是否老化 |\n| 💨 CO₂不足（生长缓慢/藻害） | 提高CO₂浓度；检查CO₂设备是否正常工作 |\n| 🦠 藻害 | 减少光照时长；适量减少施肥；引入除藻生物（黑壳虾/小精灵鱼） |\n| 💧 溶叶/水质突变 | 换水时注意温差和水质匹配；新草转水需逐步适应 |\n\n> ⚠️ 本技能仅提供**养护方向建议**，**不提供具体水质参数调整方案**（如pH/KH/GH具体数值）；专业水质调控需根据缸内实际情况咨询水族专家。\n\n## 🔄 与陆生植物问题的区分要点\n\n| 特征 | 水草（沉水植物） | 陆生植物 |\n|------|------------------|----------|\n| 环境 | 水下生长，受水质/CO₂/光照综合影响 | 空气中生长，主要受土壤/光照影响 |\n| 缺铁表现 | 新叶白化或严重黄化（水中铁易沉淀） | 新叶叶脉间失绿（网纹状） |\n| 溶叶现象 | ✅ 常见（水质突变/转水） | ❌ 极少发生 |\n| 藻类竞争 | ✅ 常见（与水草争夺营养/光照） | ❌ 不存在 |\n| CO₂影响 | ⚡ 关键因素（水中CO₂浓度远低于空气） | 影响较小（空气中CO₂充足） |\n\n> 💡 水草问题的诊断需综合考量水质、光照、CO₂、肥料四要素，单纯视觉判断可能存在不确定性。建议结合水质测试数据综合分析。\n\n## 🐟 常见水草品种与典型问题\n\n| 水草品种 | 易发问题 | 注意事项 |\n|----------|----------|----------|\n| 皇冠草 | 新叶白化(缺铁)、老叶穿孔(缺钾) | 重根肥需求大，需定期补充 |\n| 椒草 | 溶叶(水质突变)、褐斑 | 对水质变化敏感，换水需温和 |\n| 水榕 | 发黑、藻害 | 生长缓慢，对CO₂需求低 |\n| 铁皇冠 | 白化(缺铁)、黑毛藻 | 名字带\"铁\"，对铁肥需求高 |\n| 莫斯 | 发黑、丝藻缠绕 | 需良好水流，避免有机物沉积 |\n| 红蝴蝶 | 褪色变绿(光照/缺铁)、徒长 | 需强光+足量铁肥维持红色 |\n| 宫廷草 | 徒长(光照不足)、底部落叶 | 需高光高CO₂，定期修剪 |\n| 珍珠草 | 徒长、稀疏 | 需强光，否则底部叶片脱落 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_aquarium_plant_health_monitor_analysis.py`](scripts/smyx_aquarium_plant_health_monitor_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | **拍摄要求**：透过缸壁或水下拍摄，聚焦水草，避免反光；模糊/逆光/反光严重的图像无法得出可靠结果 |\n| 🧑‍⚖️ 结果性质 | **监测结果仅供水草健康参考，不提供具体水质参数调整方案**；专业水质调控请咨询水族专家 |\n| 🔎 使用提醒 | 部分水草问题症状相似（如缺铁与缺氮均可致黄化），AI 识别可能存在不确定性，建议结合水质测试数据综合判断 |\n| 🔎 使用提醒 | 玻璃缸壁反光、水面波纹、水中悬浮颗粒可能干扰识别，建议拍摄时尽量减少干扰因素 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史监测报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json\n```\n\nFile v1.0.10:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-aquarium-plant-health-monitor-analysis\",\n  \"version\": \"1.0.10\",\n  \"publishedAt\": 1788735269121\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` - 启动通用 AI 分析任务（水族箱水草健康监测）\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_AQUARIUM_PLANT_HEALTH_MONITOR_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\nThis skill analyzes aquarium plant images or videos to detect visible health symptoms and produce a structured assessment with care-direction suggestions.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users, aquarium operators, aquascapers, and aquarium shops use this skill to analyze aquarium plant images or videos for visible leaf color, morphology, algae, and deficiency symptoms. The skill returns a health assessment, likely cause categories, care-direction suggestions, and report links.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Security evidence reports unsafe cloud communication and local credential handling that are not suitable for normal installation.\n\nMitigation: Review before installing; require HTTPS-only approved service hosts and avoid plaintext token storage before deployment.\n\nRisk: Security evidence reports that media upload and report retrieval are not explained clearly enough for user control.\n\nMitigation: Document what media is uploaded, how reports are retrieved, and what user or operator approval is required before use.\n\nRisk: Security evidence reports a dependency naming issue.\n\nMitigation: Fix dependency declarations before normal installation or packaging.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis)\n- [Aquarium Plant Health Monitor API documentation](references/api_doc.md)\n- [SMYX analysis API documentation](skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, json, shell commands, guidance]\n\n**Output Format:** [Markdown or JSON text with optional saved output file]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include structured analysis results, health status, care suggestions, historical report tables, and report links.]\n\n## Skill Version(s):\n\n1.0.10 (source: server release metadata; artifact frontmatter reports 1.0.12)\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, 41373 bytes\n\nFiles: references/api_doc.md (686b), scripts/__init__.py (57b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_aquarium_plant_health_monitor_analysis.py (3486b), skill-card.md (2782b), SKILL.md (16590b), 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 (162b)\n\nFile v1.0.9:SKILL.md\n\n---\nname: \"smyx-aquarium-plant-health-monitor-analysis\"\ndescription: \"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\"\nversion: \"1.0.10\"\nlicense: \"MIT-0\"\n---\n\n# 🌿 Aquarium Plant Health Monitor | 水族箱水草健康监测\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水族箱水草健康监测** |\n| 🎯 核心目标 | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` |\n\nAI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops.\n\n通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水族植物健康AI。你的任务是分析水族箱中水草（沉水植物）的高清图像，识别叶片颜色和形态异常，与常见水草健康问题特征库比对，输出健康状态及可能的病因。不要提供具体水质参数调整方案，仅输出基于视觉的评估。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过水族箱水草图像进行健康监测，输出水草健康评估、可能病因及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 水草叶片颜色异常检测（黄化/白化/发黑/褐变） |\n| 2 | 形态异常识别（溶叶/卷曲/穿孔/徒长） |\n| 3 | 藻类附着检测 |\n| 4 | 常见缺素症状比对（缺铁/缺氮/缺钾/缺镁等） |\n| 5 | 健康等级评估 |\n| 6 | 养护方向建议（施肥/光照/CO₂/修剪） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水族箱水草图像或视频需要健康分析时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要水草健康诊断时，提及水草黄叶、水草溶叶、水草发黑、水草白化、水草徒长、水草状态差、草缸问题、水草缺肥、鱼缸水草不健康等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看历史水草报告、历史水族箱报告、水草健康报告清单、显示所有水草监测报告、查询水草诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备图像/视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行水草健康监测 | 调用 `-m scripts.smyx_aquarium_plant_health_monitor_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看监测结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水族箱水草图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水族箱水草图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 对象类型，水族场景默认 other | 按需填写 |\n| `--list` | 显示水族箱水草健康监测历史报告列表清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🌿 常见水草健康问题对照表\n\n| 问题类型 | 典型症状 | 可能病因 | 易发水草 |\n|----------|----------|----------|----------|\n| 🟡 黄化 | 叶片整体或叶脉间变黄 | 缺氮/缺铁/光照不足 | 皇冠草、椒草、榕草 |\n| ⚪ 白化 | 新叶发白或半透明 | 严重缺铁/缺微量元素 | 皇冠草、水榕、铁皇冠 |\n| ⚫ 发黑 | 叶片变黑腐烂 | 缺钾/有机物过多/水质恶化 | 莫斯、水榕、椒草 |\n| 🟤 褐变 | 叶片出现褐色斑点或整体褐化 | 硅藻覆盖/缺钾/光照光谱不佳 | 各类水草均可能 |\n| 💧 溶叶 | 叶片透明软化溶解 | 水质剧烈变化/新草转水/缺肥 | 皇冠草、椒草、谷精草 |\n| 🌀 卷曲 | 叶片向内卷曲或扭曲 | 缺钙/缺钾/CO₂不足 | 皇冠草、椒草、牛顿草 |\n| 🔴 穿孔 | 叶片出现孔洞 | 缺钾/蜗牛啃食/细菌感染 | 皇冠草、水榕、椒草 |\n| 📏 徒长 | 节间拉长、叶片稀疏 | 光照不足/光谱偏红 | 红蝴蝶、宫廷草、珍珠草 |\n| 🦠 藻害 | 叶面覆盖绿斑/丝藻/黑毛藻 | 光照过强/肥力过剩/CO₂不足 | 各类水草均可能 |\n| 🥀 老叶脱落 | 底部老叶逐步枯黄脱落 | 缺氮/缺镁/自然代谢 | 皇冠草、椒草、水榕 |\n| 🔴 红草褪色 | 红色水草变绿 | 光照不足/缺铁/缺磷 | 红蝴蝶、红宫廷、血红宫廷 |\n\n## 🔍 水草健康识别维度\n\n| 维度 | 观察重点 | 判断意义 |\n|------|----------|----------|\n| 颜色变化 | 黄化/白化/发黑/褐变/褪色 | 不同颜色指向不同病因 |\n| 症状部位 | 老叶 vs 新叶 vs 嫩芽 | 老叶→移动性元素缺乏(N/K/Mg)，新叶→非移动性元素(Fe/Ca) |\n| 形态异常 | 溶叶/卷曲/穿孔/徒长 | 溶叶→水质突变，卷曲→缺Ca/K，徒长→光照不足 |\n| 藻类附着 | 绿斑藻/丝藻/黑毛藻/硅藻 | 藻类类型指示不同水质问题 |\n| 叶片质地 | 透明软化/厚硬/脆裂 | 软化→溶叶/缺肥，脆裂→缺钾 |\n| 生长状态 | 节间长度/叶片密度/顶端优势 | 徒长→光照/CO₂不足，矮化→缺肥 |\n\n## 📊 水草健康等级评估\n\n| 等级 | 症状表现 | 养护建议 |\n|------|----------|----------|\n| 🟢 健康 | 叶色翠绿/形态正常、无藻类附着 | 保持当前养护，定期监测 |\n| 🟡 亚健康 | 叶色轻微偏黄或少量褐斑 | 适当补充液肥，观察变化 |\n| 🟠 轻度异常 | 明确黄化/少量溶叶/轻度藻害 | 针对性施肥，调整光照/CO₂ |\n| 🔴 重度异常 | 大面积溶叶/发黑/严重藻害/徒长 | 紧急干预，修剪病叶，咨询水族专家 |\n\n## 💡 养护方向参考\n\n| 问题类型 | 养护方向 |\n|----------|----------|\n| 🟡 缺氮（整体黄化） | 适当增加含氮液肥；注意不要过量引发藻类 |\n| 🟢 缺铁（新叶白化/黄化） | 补充铁肥（EDTA-Fe/DTPA-Fe）；配合适当光照促进吸收 |\n| 🟤 缺钾（叶缘褐变/穿孔） | 追施钾肥；注意K与Ca/Mg的平衡 |\n| 🟡 缺镁（老叶叶脉间黄化） | 补充镁肥；与钾肥交替施用避免拮抗 |\n| ☀️ 光照不足（徒长/褪色） | 延长光照时长或增加光照强度；检查灯管是否老化 |\n| 💨 CO₂不足（生长缓慢/藻害） | 提高CO₂浓度；检查CO₂设备是否正常工作 |\n| 🦠 藻害 | 减少光照时长；适量减少施肥；引入除藻生物（黑壳虾/小精灵鱼） |\n| 💧 溶叶/水质突变 | 换水时注意温差和水质匹配；新草转水需逐步适应 |\n\n> ⚠️ 本技能仅提供**养护方向建议**，**不提供具体水质参数调整方案**（如pH/KH/GH具体数值）；专业水质调控需根据缸内实际情况咨询水族专家。\n\n## 🔄 与陆生植物问题的区分要点\n\n| 特征 | 水草（沉水植物） | 陆生植物 |\n|------|------------------|----------|\n| 环境 | 水下生长，受水质/CO₂/光照综合影响 | 空气中生长，主要受土壤/光照影响 |\n| 缺铁表现 | 新叶白化或严重黄化（水中铁易沉淀） | 新叶叶脉间失绿（网纹状） |\n| 溶叶现象 | ✅ 常见（水质突变/转水） | ❌ 极少发生 |\n| 藻类竞争 | ✅ 常见（与水草争夺营养/光照） | ❌ 不存在 |\n| CO₂影响 | ⚡ 关键因素（水中CO₂浓度远低于空气） | 影响较小（空气中CO₂充足） |\n\n> 💡 水草问题的诊断需综合考量水质、光照、CO₂、肥料四要素，单纯视觉判断可能存在不确定性。建议结合水质测试数据综合分析。\n\n## 🐟 常见水草品种与典型问题\n\n| 水草品种 | 易发问题 | 注意事项 |\n|----------|----------|----------|\n| 皇冠草 | 新叶白化(缺铁)、老叶穿孔(缺钾) | 重根肥需求大，需定期补充 |\n| 椒草 | 溶叶(水质突变)、褐斑 | 对水质变化敏感，换水需温和 |\n| 水榕 | 发黑、藻害 | 生长缓慢，对CO₂需求低 |\n| 铁皇冠 | 白化(缺铁)、黑毛藻 | 名字带\"铁\"，对铁肥需求高 |\n| 莫斯 | 发黑、丝藻缠绕 | 需良好水流，避免有机物沉积 |\n| 红蝴蝶 | 褪色变绿(光照/缺铁)、徒长 | 需强光+足量铁肥维持红色 |\n| 宫廷草 | 徒长(光照不足)、底部落叶 | 需高光高CO₂，定期修剪 |\n| 珍珠草 | 徒长、稀疏 | 需强光，否则底部叶片脱落 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_aquarium_plant_health_monitor_analysis.py`](scripts/smyx_aquarium_plant_health_monitor_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | **拍摄要求**：透过缸壁或水下拍摄，聚焦水草，避免反光；模糊/逆光/反光严重的图像无法得出可靠结果 |\n| 🧑‍⚖️ 结果性质 | **监测结果仅供水草健康参考，不提供具体水质参数调整方案**；专业水质调控请咨询水族专家 |\n| 🔎 使用提醒 | 部分水草问题症状相似（如缺铁与缺氮均可致黄化），AI 识别可能存在不确定性，建议结合水质测试数据综合判断 |\n| 🔎 使用提醒 | 玻璃缸壁反光、水面波纹、水中悬浮颗粒可能干扰识别，建议拍摄时尽量减少干扰因素 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史监测报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json\n```\n\nFile v1.0.9:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-aquarium-plant-health-monitor-analysis\",\n  \"version\": \"1.0.9\",\n  \"publishedAt\": 1787729729224\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` - 启动通用 AI 分析任务（水族箱水草健康监测）\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_AQUARIUM_PLANT_HEALTH_MONITOR_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\nAnalyzes aquarium plant images or videos to identify visible leaf color and morphology issues, produce health assessments, and suggest care directions for aquarium owners, aquascapers, and aquarium shops.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users and aquarium operators use this skill to submit aquarium plant images, videos, or URLs for visual health assessment, likely symptom identification, care-direction suggestions, report links, and cloud history lookup.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Media files, media URLs, and cloud report queries may be sent to backend services.\n\nMitigation: Use the skill only with aquarium media and report data that are approved for the configured backend.\n\nRisk: The skill can create or reuse a local account identity and store service tokens in workspace data.\n\nMitigation: Run it in an isolated workspace, inspect local data storage after use, and remove stored identity or token files when they are no longer needed.\n\nRisk: The configured backend may resolve to a development or private service.\n\nMitigation: Review the bundled configuration before installation or execution and confirm the service endpoints are intended for the deployment environment.\n\nRisk: Visual plant-health symptoms can be ambiguous and may not support precise water-chemistry conclusions.\n\nMitigation: Treat results as care-direction guidance and confirm significant aquarium changes with water testing or expert review.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis)\n- [API interface documentation](references/api_doc.md)\n- [SMYX analysis API documentation](skills/smyx_analysis/references/api_doc.md)\n- [Skill demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, configuration, guidance]\n\n**Output Format:** [Markdown text with structured analysis content, JSON-formatted result details where available, and report links; optional file output when requested.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Supports local media files and media URLs; artifact documentation states jpg, png, mp4, avi, and mov inputs up to 10 MB.]\n\n## Skill Version(s):\n\n1.0.9 (source: server release metadata; artifact frontmatter lists 1.0.10)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.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, 41161 bytes\n\nFiles: references/api_doc.md (686b), scripts/__init__.py (57b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_aquarium_plant_health_monitor_analysis.py (3486b), skill-card.md (2409b), SKILL.md (16590b), 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 (162b)\n\nFile v1.0.8:SKILL.md\n\n---\nname: \"smyx-aquarium-plant-health-monitor-analysis\"\ndescription: \"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\"\nversion: \"1.0.10\"\nlicense: \"MIT-0\"\n---\n\n# 🌿 Aquarium Plant Health Monitor | 水族箱水草健康监测\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水族箱水草健康监测** |\n| 🎯 核心目标 | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` |\n\nAI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops.\n\n通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水族植物健康AI。你的任务是分析水族箱中水草（沉水植物）的高清图像，识别叶片颜色和形态异常，与常见水草健康问题特征库比对，输出健康状态及可能的病因。不要提供具体水质参数调整方案，仅输出基于视觉的评估。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过水族箱水草图像进行健康监测，输出水草健康评估、可能病因及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 水草叶片颜色异常检测（黄化/白化/发黑/褐变） |\n| 2 | 形态异常识别（溶叶/卷曲/穿孔/徒长） |\n| 3 | 藻类附着检测 |\n| 4 | 常见缺素症状比对（缺铁/缺氮/缺钾/缺镁等） |\n| 5 | 健康等级评估 |\n| 6 | 养护方向建议（施肥/光照/CO₂/修剪） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水族箱水草图像或视频需要健康分析时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要水草健康诊断时，提及水草黄叶、水草溶叶、水草发黑、水草白化、水草徒长、水草状态差、草缸问题、水草缺肥、鱼缸水草不健康等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看历史水草报告、历史水族箱报告、水草健康报告清单、显示所有水草监测报告、查询水草诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备图像/视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行水草健康监测 | 调用 `-m scripts.smyx_aquarium_plant_health_monitor_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看监测结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水族箱水草图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水族箱水草图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 对象类型，水族场景默认 other | 按需填写 |\n| `--list` | 显示水族箱水草健康监测历史报告列表清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🌿 常见水草健康问题对照表\n\n| 问题类型 | 典型症状 | 可能病因 | 易发水草 |\n|----------|----------|----------|----------|\n| 🟡 黄化 | 叶片整体或叶脉间变黄 | 缺氮/缺铁/光照不足 | 皇冠草、椒草、榕草 |\n| ⚪ 白化 | 新叶发白或半透明 | 严重缺铁/缺微量元素 | 皇冠草、水榕、铁皇冠 |\n| ⚫ 发黑 | 叶片变黑腐烂 | 缺钾/有机物过多/水质恶化 | 莫斯、水榕、椒草 |\n| 🟤 褐变 | 叶片出现褐色斑点或整体褐化 | 硅藻覆盖/缺钾/光照光谱不佳 | 各类水草均可能 |\n| 💧 溶叶 | 叶片透明软化溶解 | 水质剧烈变化/新草转水/缺肥 | 皇冠草、椒草、谷精草 |\n| 🌀 卷曲 | 叶片向内卷曲或扭曲 | 缺钙/缺钾/CO₂不足 | 皇冠草、椒草、牛顿草 |\n| 🔴 穿孔 | 叶片出现孔洞 | 缺钾/蜗牛啃食/细菌感染 | 皇冠草、水榕、椒草 |\n| 📏 徒长 | 节间拉长、叶片稀疏 | 光照不足/光谱偏红 | 红蝴蝶、宫廷草、珍珠草 |\n| 🦠 藻害 | 叶面覆盖绿斑/丝藻/黑毛藻 | 光照过强/肥力过剩/CO₂不足 | 各类水草均可能 |\n| 🥀 老叶脱落 | 底部老叶逐步枯黄脱落 | 缺氮/缺镁/自然代谢 | 皇冠草、椒草、水榕 |\n| 🔴 红草褪色 | 红色水草变绿 | 光照不足/缺铁/缺磷 | 红蝴蝶、红宫廷、血红宫廷 |\n\n## 🔍 水草健康识别维度\n\n| 维度 | 观察重点 | 判断意义 |\n|------|----------|----------|\n| 颜色变化 | 黄化/白化/发黑/褐变/褪色 | 不同颜色指向不同病因 |\n| 症状部位 | 老叶 vs 新叶 vs 嫩芽 | 老叶→移动性元素缺乏(N/K/Mg)，新叶→非移动性元素(Fe/Ca) |\n| 形态异常 | 溶叶/卷曲/穿孔/徒长 | 溶叶→水质突变，卷曲→缺Ca/K，徒长→光照不足 |\n| 藻类附着 | 绿斑藻/丝藻/黑毛藻/硅藻 | 藻类类型指示不同水质问题 |\n| 叶片质地 | 透明软化/厚硬/脆裂 | 软化→溶叶/缺肥，脆裂→缺钾 |\n| 生长状态 | 节间长度/叶片密度/顶端优势 | 徒长→光照/CO₂不足，矮化→缺肥 |\n\n## 📊 水草健康等级评估\n\n| 等级 | 症状表现 | 养护建议 |\n|------|----------|----------|\n| 🟢 健康 | 叶色翠绿/形态正常、无藻类附着 | 保持当前养护，定期监测 |\n| 🟡 亚健康 | 叶色轻微偏黄或少量褐斑 | 适当补充液肥，观察变化 |\n| 🟠 轻度异常 | 明确黄化/少量溶叶/轻度藻害 | 针对性施肥，调整光照/CO₂ |\n| 🔴 重度异常 | 大面积溶叶/发黑/严重藻害/徒长 | 紧急干预，修剪病叶，咨询水族专家 |\n\n## 💡 养护方向参考\n\n| 问题类型 | 养护方向 |\n|----------|----------|\n| 🟡 缺氮（整体黄化） | 适当增加含氮液肥；注意不要过量引发藻类 |\n| 🟢 缺铁（新叶白化/黄化） | 补充铁肥（EDTA-Fe/DTPA-Fe）；配合适当光照促进吸收 |\n| 🟤 缺钾（叶缘褐变/穿孔） | 追施钾肥；注意K与Ca/Mg的平衡 |\n| 🟡 缺镁（老叶叶脉间黄化） | 补充镁肥；与钾肥交替施用避免拮抗 |\n| ☀️ 光照不足（徒长/褪色） | 延长光照时长或增加光照强度；检查灯管是否老化 |\n| 💨 CO₂不足（生长缓慢/藻害） | 提高CO₂浓度；检查CO₂设备是否正常工作 |\n| 🦠 藻害 | 减少光照时长；适量减少施肥；引入除藻生物（黑壳虾/小精灵鱼） |\n| 💧 溶叶/水质突变 | 换水时注意温差和水质匹配；新草转水需逐步适应 |\n\n> ⚠️ 本技能仅提供**养护方向建议**，**不提供具体水质参数调整方案**（如pH/KH/GH具体数值）；专业水质调控需根据缸内实际情况咨询水族专家。\n\n## 🔄 与陆生植物问题的区分要点\n\n| 特征 | 水草（沉水植物） | 陆生植物 |\n|------|------------------|----------|\n| 环境 | 水下生长，受水质/CO₂/光照综合影响 | 空气中生长，主要受土壤/光照影响 |\n| 缺铁表现 | 新叶白化或严重黄化（水中铁易沉淀） | 新叶叶脉间失绿（网纹状） |\n| 溶叶现象 | ✅ 常见（水质突变/转水） | ❌ 极少发生 |\n| 藻类竞争 | ✅ 常见（与水草争夺营养/光照） | ❌ 不存在 |\n| CO₂影响 | ⚡ 关键因素（水中CO₂浓度远低于空气） | 影响较小（空气中CO₂充足） |\n\n> 💡 水草问题的诊断需综合考量水质、光照、CO₂、肥料四要素，单纯视觉判断可能存在不确定性。建议结合水质测试数据综合分析。\n\n## 🐟 常见水草品种与典型问题\n\n| 水草品种 | 易发问题 | 注意事项 |\n|----------|----------|----------|\n| 皇冠草 | 新叶白化(缺铁)、老叶穿孔(缺钾) | 重根肥需求大，需定期补充 |\n| 椒草 | 溶叶(水质突变)、褐斑 | 对水质变化敏感，换水需温和 |\n| 水榕 | 发黑、藻害 | 生长缓慢，对CO₂需求低 |\n| 铁皇冠 | 白化(缺铁)、黑毛藻 | 名字带\"铁\"，对铁肥需求高 |\n| 莫斯 | 发黑、丝藻缠绕 | 需良好水流，避免有机物沉积 |\n| 红蝴蝶 | 褪色变绿(光照/缺铁)、徒长 | 需强光+足量铁肥维持红色 |\n| 宫廷草 | 徒长(光照不足)、底部落叶 | 需高光高CO₂，定期修剪 |\n| 珍珠草 | 徒长、稀疏 | 需强光，否则底部叶片脱落 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_aquarium_plant_health_monitor_analysis.py`](scripts/smyx_aquarium_plant_health_monitor_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | **拍摄要求**：透过缸壁或水下拍摄，聚焦水草，避免反光；模糊/逆光/反光严重的图像无法得出可靠结果 |\n| 🧑‍⚖️ 结果性质 | **监测结果仅供水草健康参考，不提供具体水质参数调整方案**；专业水质调控请咨询水族专家 |\n| 🔎 使用提醒 | 部分水草问题症状相似（如缺铁与缺氮均可致黄化），AI 识别可能存在不确定性，建议结合水质测试数据综合判断 |\n| 🔎 使用提醒 | 玻璃缸壁反光、水面波纹、水中悬浮颗粒可能干扰识别，建议拍摄时尽量减少干扰因素 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史监测报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json\n```\n\nFile v1.0.8:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-aquarium-plant-health-monitor-analysis\",\n  \"version\": \"1.0.8\",\n  \"publishedAt\": 1787452835213\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` - 启动通用 AI 分析任务（水族箱水草健康监测）\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_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` - 水族箱水草健康监测\n\nFile v1.0.8:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.8:scripts/config.yaml\n\n{}\n\nFile v1.0.8:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.8:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.8:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.8:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: dev\n\nFile v1.0.8:skill-card.md\n\n## Description:\n\nAI-powered aquatic plant health monitoring from aquarium camera images, detecting visual leaf color and morphology issues and returning health assessments with care direction.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users, aquascaping operators, aquarium shops, and developers use this skill to analyze aquarium plant images or videos for visible health symptoms, likely causes, care guidance, and account-linked history reports.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill sends aquarium media or media URLs to a configured remote analysis service.\n\nMitigation: Review the configured endpoints and only provide media that is appropriate for the remote service before running analysis.\n\nRisk: The skill silently creates or reuses a local account identifier and stores service tokens or profile data in the workspace data directory.\n\nMitigation: Review local data retention expectations and clear workspace data when account-linked state should not persist.\n\nRisk: The skill can query account-linked cloud history with limited user control.\n\nMitigation: Confirm that cloud history access is acceptable for the deployment context before enabling history report queries.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis)\n- [API Interface Documentation](references/api_doc.md)\n- [SMYX Analysis API Documentation](skills/smyx_analysis/references/api_doc.md)\n- [Skill Demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, json, shell commands, guidance]\n\n**Output Format:** [Markdown or JSON analysis report with report links and optional saved output file]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May query account-linked cloud history and may send aquarium media or media URLs to the configured analysis service.]\n\n## Skill Version(s):\n\n1.0.8 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.8:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.8:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.7: 31 files, 41356 bytes\n\nFiles: references/api_doc.md (686b), scripts/__init__.py (57b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_aquarium_plant_health_monitor_analysis.py (3486b), skill-card.md (2828b), SKILL.md (16589b), 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 (162b)\n\nFile v1.0.7:SKILL.md\n\n---\nname: \"smyx-aquarium-plant-health-monitor-analysis\"\ndescription: \"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\"\nversion: \"1.0.9\"\nlicense: \"MIT-0\"\n---\n\n# 🌿 Aquarium Plant Health Monitor | 水族箱水草健康监测\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水族箱水草健康监测** |\n| 🎯 核心目标 | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` |\n\nAI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops.\n\n通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水族植物健康AI。你的任务是分析水族箱中水草（沉水植物）的高清图像，识别叶片颜色和形态异常，与常见水草健康问题特征库比对，输出健康状态及可能的病因。不要提供具体水质参数调整方案，仅输出基于视觉的评估。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过水族箱水草图像进行健康监测，输出水草健康评估、可能病因及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 水草叶片颜色异常检测（黄化/白化/发黑/褐变） |\n| 2 | 形态异常识别（溶叶/卷曲/穿孔/徒长） |\n| 3 | 藻类附着检测 |\n| 4 | 常见缺素症状比对（缺铁/缺氮/缺钾/缺镁等） |\n| 5 | 健康等级评估 |\n| 6 | 养护方向建议（施肥/光照/CO₂/修剪） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水族箱水草图像或视频需要健康分析时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要水草健康诊断时，提及水草黄叶、水草溶叶、水草发黑、水草白化、水草徒长、水草状态差、草缸问题、水草缺肥、鱼缸水草不健康等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看历史水草报告、历史水族箱报告、水草健康报告清单、显示所有水草监测报告、查询水草诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备图像/视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行水草健康监测 | 调用 `-m scripts.smyx_aquarium_plant_health_monitor_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看监测结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水族箱水草图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水族箱水草图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 对象类型，水族场景默认 other | 按需填写 |\n| `--list` | 显示水族箱水草健康监测历史报告列表清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🌿 常见水草健康问题对照表\n\n| 问题类型 | 典型症状 | 可能病因 | 易发水草 |\n|----------|----------|----------|----------|\n| 🟡 黄化 | 叶片整体或叶脉间变黄 | 缺氮/缺铁/光照不足 | 皇冠草、椒草、榕草 |\n| ⚪ 白化 | 新叶发白或半透明 | 严重缺铁/缺微量元素 | 皇冠草、水榕、铁皇冠 |\n| ⚫ 发黑 | 叶片变黑腐烂 | 缺钾/有机物过多/水质恶化 | 莫斯、水榕、椒草 |\n| 🟤 褐变 | 叶片出现褐色斑点或整体褐化 | 硅藻覆盖/缺钾/光照光谱不佳 | 各类水草均可能 |\n| 💧 溶叶 | 叶片透明软化溶解 | 水质剧烈变化/新草转水/缺肥 | 皇冠草、椒草、谷精草 |\n| 🌀 卷曲 | 叶片向内卷曲或扭曲 | 缺钙/缺钾/CO₂不足 | 皇冠草、椒草、牛顿草 |\n| 🔴 穿孔 | 叶片出现孔洞 | 缺钾/蜗牛啃食/细菌感染 | 皇冠草、水榕、椒草 |\n| 📏 徒长 | 节间拉长、叶片稀疏 | 光照不足/光谱偏红 | 红蝴蝶、宫廷草、珍珠草 |\n| 🦠 藻害 | 叶面覆盖绿斑/丝藻/黑毛藻 | 光照过强/肥力过剩/CO₂不足 | 各类水草均可能 |\n| 🥀 老叶脱落 | 底部老叶逐步枯黄脱落 | 缺氮/缺镁/自然代谢 | 皇冠草、椒草、水榕 |\n| 🔴 红草褪色 | 红色水草变绿 | 光照不足/缺铁/缺磷 | 红蝴蝶、红宫廷、血红宫廷 |\n\n## 🔍 水草健康识别维度\n\n| 维度 | 观察重点 | 判断意义 |\n|------|----------|----------|\n| 颜色变化 | 黄化/白化/发黑/褐变/褪色 | 不同颜色指向不同病因 |\n| 症状部位 | 老叶 vs 新叶 vs 嫩芽 | 老叶→移动性元素缺乏(N/K/Mg)，新叶→非移动性元素(Fe/Ca) |\n| 形态异常 | 溶叶/卷曲/穿孔/徒长 | 溶叶→水质突变，卷曲→缺Ca/K，徒长→光照不足 |\n| 藻类附着 | 绿斑藻/丝藻/黑毛藻/硅藻 | 藻类类型指示不同水质问题 |\n| 叶片质地 | 透明软化/厚硬/脆裂 | 软化→溶叶/缺肥，脆裂→缺钾 |\n| 生长状态 | 节间长度/叶片密度/顶端优势 | 徒长→光照/CO₂不足，矮化→缺肥 |\n\n## 📊 水草健康等级评估\n\n| 等级 | 症状表现 | 养护建议 |\n|------|----------|----------|\n| 🟢 健康 | 叶色翠绿/形态正常、无藻类附着 | 保持当前养护，定期监测 |\n| 🟡 亚健康 | 叶色轻微偏黄或少量褐斑 | 适当补充液肥，观察变化 |\n| 🟠 轻度异常 | 明确黄化/少量溶叶/轻度藻害 | 针对性施肥，调整光照/CO₂ |\n| 🔴 重度异常 | 大面积溶叶/发黑/严重藻害/徒长 | 紧急干预，修剪病叶，咨询水族专家 |\n\n## 💡 养护方向参考\n\n| 问题类型 | 养护方向 |\n|----------|----------|\n| 🟡 缺氮（整体黄化） | 适当增加含氮液肥；注意不要过量引发藻类 |\n| 🟢 缺铁（新叶白化/黄化） | 补充铁肥（EDTA-Fe/DTPA-Fe）；配合适当光照促进吸收 |\n| 🟤 缺钾（叶缘褐变/穿孔） | 追施钾肥；注意K与Ca/Mg的平衡 |\n| 🟡 缺镁（老叶叶脉间黄化） | 补充镁肥；与钾肥交替施用避免拮抗 |\n| ☀️ 光照不足（徒长/褪色） | 延长光照时长或增加光照强度；检查灯管是否老化 |\n| 💨 CO₂不足（生长缓慢/藻害） | 提高CO₂浓度；检查CO₂设备是否正常工作 |\n| 🦠 藻害 | 减少光照时长；适量减少施肥；引入除藻生物（黑壳虾/小精灵鱼） |\n| 💧 溶叶/水质突变 | 换水时注意温差和水质匹配；新草转水需逐步适应 |\n\n> ⚠️ 本技能仅提供**养护方向建议**，**不提供具体水质参数调整方案**（如pH/KH/GH具体数值）；专业水质调控需根据缸内实际情况咨询水族专家。\n\n## 🔄 与陆生植物问题的区分要点\n\n| 特征 | 水草（沉水植物） | 陆生植物 |\n|------|------------------|----------|\n| 环境 | 水下生长，受水质/CO₂/光照综合影响 | 空气中生长，主要受土壤/光照影响 |\n| 缺铁表现 | 新叶白化或严重黄化（水中铁易沉淀） | 新叶叶脉间失绿（网纹状） |\n| 溶叶现象 | ✅ 常见（水质突变/转水） | ❌ 极少发生 |\n| 藻类竞争 | ✅ 常见（与水草争夺营养/光照） | ❌ 不存在 |\n| CO₂影响 | ⚡ 关键因素（水中CO₂浓度远低于空气） | 影响较小（空气中CO₂充足） |\n\n> 💡 水草问题的诊断需综合考量水质、光照、CO₂、肥料四要素，单纯视觉判断可能存在不确定性。建议结合水质测试数据综合分析。\n\n## 🐟 常见水草品种与典型问题\n\n| 水草品种 | 易发问题 | 注意事项 |\n|----------|----------|----------|\n| 皇冠草 | 新叶白化(缺铁)、老叶穿孔(缺钾) | 重根肥需求大，需定期补充 |\n| 椒草 | 溶叶(水质突变)、褐斑 | 对水质变化敏感，换水需温和 |\n| 水榕 | 发黑、藻害 | 生长缓慢，对CO₂需求低 |\n| 铁皇冠 | 白化(缺铁)、黑毛藻 | 名字带\"铁\"，对铁肥需求高 |\n| 莫斯 | 发黑、丝藻缠绕 | 需良好水流，避免有机物沉积 |\n| 红蝴蝶 | 褪色变绿(光照/缺铁)、徒长 | 需强光+足量铁肥维持红色 |\n| 宫廷草 | 徒长(光照不足)、底部落叶 | 需高光高CO₂，定期修剪 |\n| 珍珠草 | 徒长、稀疏 | 需强光，否则底部叶片脱落 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_aquarium_plant_health_monitor_analysis.py`](scripts/smyx_aquarium_plant_health_monitor_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | **拍摄要求**：透过缸壁或水下拍摄，聚焦水草，避免反光；模糊/逆光/反光严重的图像无法得出可靠结果 |\n| 🧑‍⚖️ 结果性质 | **监测结果仅供水草健康参考，不提供具体水质参数调整方案**；专业水质调控请咨询水族专家 |\n| 🔎 使用提醒 | 部分水草问题症状相似（如缺铁与缺氮均可致黄化），AI 识别可能存在不确定性，建议结合水质测试数据综合判断 |\n| 🔎 使用提醒 | 玻璃缸壁反光、水面波纹、水中悬浮颗粒可能干扰识别，建议拍摄时尽量减少干扰因素 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史监测报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json\n```\n\nFile v1.0.7:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-aquarium-plant-health-monitor-analysis\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1786890508893\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` - 启动通用 AI 分析任务（水族箱水草健康监测）\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_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` - 水族箱水草健康监测\n\nFile v1.0.7:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.7:scripts/config.yaml\n\n{}\n\nFile v1.0.7:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.7:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.7:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.7:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: dev\n\nFile v1.0.7:skill-card.md\n\n## Description:\n\nAnalyzes aquarium plant images, videos, or URLs to identify visual health issues and return structured health assessments with care suggestions.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal aquarium hobbyists, aquascaping shops, and developers operating ClawHub agents use this skill to submit aquarium plant media for visual health assessment, likely causes, care direction, and historical report lookup.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Aquarium media or URLs may be sent to the LifeEmergence cloud service.\n\nMitigation: Use only media and URLs that are appropriate for third-party processing, and avoid submitting sensitive imagery unless retention and access controls are clarified.\n\nRisk: The skill may link analysis activity to an automatically selected local identity and store account or token data locally.\n\nMitigation: Run the skill in an isolated workspace and review or clear data/smyx-api-key.txt and any smyx-common SQLite database before and after use.\n\nRisk: Cloud report links and historical report queries may expose prior analysis results associated with the local identity.\n\nMitigation: Treat generated report links and history output as sensitive, and confirm account controls with the publisher before commercial deployment.\n\nRisk: Visual plant-health assessments can be uncertain when symptoms overlap or image quality is poor.\n\nMitigation: Use the output as advisory guidance and confirm care decisions with water tests, direct inspection, or an aquarium specialist.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis)\n- [Publisher profile](https://clawhub.ai/user/smyx-sunjinhui)\n- [Skill demo](https://lifeemergence.com/sample.html)\n- [API documentation](artifact/references/api_doc.md)\n- [Shared analysis API documentation](artifact/skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, configuration, guidance]\n\n**Output Format:** [Markdown or JSON-like structured text; optional saved output file]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Can include health assessment details, care suggestions, report export links, and historical report lists returned by the cloud API.]\n\n## Skill Version(s):\n\n1.0.7 (source: server release metadata; artifact frontmatter states 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.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, 41255 bytes\n\nFiles: references/api_doc.md (686b), scripts/__init__.py (57b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_aquarium_plant_health_monitor_analysis.py (3486b), skill-card.md (2434b), SKILL.md (16589b), 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 (162b)\n\nFile v1.0.6:SKILL.md\n\n---\nname: \"smyx-aquarium-plant-health-monitor-analysis\"\ndescription: \"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\"\nversion: \"1.0.8\"\nlicense: \"MIT-0\"\n---\n\n# 🌿 Aquarium Plant Health Monitor | 水族箱水草健康监测\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水族箱水草健康监测** |\n| 🎯 核心目标 | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` |\n\nAI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops.\n\n通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水族植物健康AI。你的任务是分析水族箱中水草（沉水植物）的高清图像，识别叶片颜色和形态异常，与常见水草健康问题特征库比对，输出健康状态及可能的病因。不要提供具体水质参数调整方案，仅输出基于视觉的评估。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过水族箱水草图像进行健康监测，输出水草健康评估、可能病因及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 水草叶片颜色异常检测（黄化/白化/发黑/褐变） |\n| 2 | 形态异常识别（溶叶/卷曲/穿孔/徒长） |\n| 3 | 藻类附着检测 |\n| 4 | 常见缺素症状比对（缺铁/缺氮/缺钾/缺镁等） |\n| 5 | 健康等级评估 |\n| 6 | 养护方向建议（施肥/光照/CO₂/修剪） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水族箱水草图像或视频需要健康分析时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要水草健康诊断时，提及水草黄叶、水草溶叶、水草发黑、水草白化、水草徒长、水草状态差、草缸问题、水草缺肥、鱼缸水草不健康等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看历史水草报告、历史水族箱报告、水草健康报告清单、显示所有水草监测报告、查询水草诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备图像/视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行水草健康监测 | 调用 `-m scripts.smyx_aquarium_plant_health_monitor_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看监测结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水族箱水草图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水族箱水草图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 对象类型，水族场景默认 other | 按需填写 |\n| `--list` | 显示水族箱水草健康监测历史报告列表清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🌿 常见水草健康问题对照表\n\n| 问题类型 | 典型症状 | 可能病因 | 易发水草 |\n|----------|----------|----------|----------|\n| 🟡 黄化 | 叶片整体或叶脉间变黄 | 缺氮/缺铁/光照不足 | 皇冠草、椒草、榕草 |\n| ⚪ 白化 | 新叶发白或半透明 | 严重缺铁/缺微量元素 | 皇冠草、水榕、铁皇冠 |\n| ⚫ 发黑 | 叶片变黑腐烂 | 缺钾/有机物过多/水质恶化 | 莫斯、水榕、椒草 |\n| 🟤 褐变 | 叶片出现褐色斑点或整体褐化 | 硅藻覆盖/缺钾/光照光谱不佳 | 各类水草均可能 |\n| 💧 溶叶 | 叶片透明软化溶解 | 水质剧烈变化/新草转水/缺肥 | 皇冠草、椒草、谷精草 |\n| 🌀 卷曲 | 叶片向内卷曲或扭曲 | 缺钙/缺钾/CO₂不足 | 皇冠草、椒草、牛顿草 |\n| 🔴 穿孔 | 叶片出现孔洞 | 缺钾/蜗牛啃食/细菌感染 | 皇冠草、水榕、椒草 |\n| 📏 徒长 | 节间拉长、叶片稀疏 | 光照不足/光谱偏红 | 红蝴蝶、宫廷草、珍珠草 |\n| 🦠 藻害 | 叶面覆盖绿斑/丝藻/黑毛藻 | 光照过强/肥力过剩/CO₂不足 | 各类水草均可能 |\n| 🥀 老叶脱落 | 底部老叶逐步枯黄脱落 | 缺氮/缺镁/自然代谢 | 皇冠草、椒草、水榕 |\n| 🔴 红草褪色 | 红色水草变绿 | 光照不足/缺铁/缺磷 | 红蝴蝶、红宫廷、血红宫廷 |\n\n## 🔍 水草健康识别维度\n\n| 维度 | 观察重点 | 判断意义 |\n|------|----------|----------|\n| 颜色变化 | 黄化/白化/发黑/褐变/褪色 | 不同颜色指向不同病因 |\n| 症状部位 | 老叶 vs 新叶 vs 嫩芽 | 老叶→移动性元素缺乏(N/K/Mg)，新叶→非移动性元素(Fe/Ca) |\n| 形态异常 | 溶叶/卷曲/穿孔/徒长 | 溶叶→水质突变，卷曲→缺Ca/K，徒长→光照不足 |\n| 藻类附着 | 绿斑藻/丝藻/黑毛藻/硅藻 | 藻类类型指示不同水质问题 |\n| 叶片质地 | 透明软化/厚硬/脆裂 | 软化→溶叶/缺肥，脆裂→缺钾 |\n| 生长状态 | 节间长度/叶片密度/顶端优势 | 徒长→光照/CO₂不足，矮化→缺肥 |\n\n## 📊 水草健康等级评估\n\n| 等级 | 症状表现 | 养护建议 |\n|------|----------|----------|\n| 🟢 健康 | 叶色翠绿/形态正常、无藻类附着 | 保持当前养护，定期监测 |\n| 🟡 亚健康 | 叶色轻微偏黄或少量褐斑 | 适当补充液肥，观察变化 |\n| 🟠 轻度异常 | 明确黄化/少量溶叶/轻度藻害 | 针对性施肥，调整光照/CO₂ |\n| 🔴 重度异常 | 大面积溶叶/发黑/严重藻害/徒长 | 紧急干预，修剪病叶，咨询水族专家 |\n\n## 💡 养护方向参考\n\n| 问题类型 | 养护方向 |\n|----------|----------|\n| 🟡 缺氮（整体黄化） | 适当增加含氮液肥；注意不要过量引发藻类 |\n| 🟢 缺铁（新叶白化/黄化） | 补充铁肥（EDTA-Fe/DTPA-Fe）；配合适当光照促进吸收 |\n| 🟤 缺钾（叶缘褐变/穿孔） | 追施钾肥；注意K与Ca/Mg的平衡 |\n| 🟡 缺镁（老叶叶脉间黄化） | 补充镁肥；与钾肥交替施用避免拮抗 |\n| ☀️ 光照不足（徒长/褪色） | 延长光照时长或增加光照强度；检查灯管是否老化 |\n| 💨 CO₂不足（生长缓慢/藻害） | 提高CO₂浓度；检查CO₂设备是否正常工作 |\n| 🦠 藻害 | 减少光照时长；适量减少施肥；引入除藻生物（黑壳虾/小精灵鱼） |\n| 💧 溶叶/水质突变 | 换水时注意温差和水质匹配；新草转水需逐步适应 |\n\n> ⚠️ 本技能仅提供**养护方向建议**，**不提供具体水质参数调整方案**（如pH/KH/GH具体数值）；专业水质调控需根据缸内实际情况咨询水族专家。\n\n## 🔄 与陆生植物问题的区分要点\n\n| 特征 | 水草（沉水植物） | 陆生植物 |\n|------|------------------|----------|\n| 环境 | 水下生长，受水质/CO₂/光照综合影响 | 空气中生长，主要受土壤/光照影响 |\n| 缺铁表现 | 新叶白化或严重黄化（水中铁易沉淀） | 新叶叶脉间失绿（网纹状） |\n| 溶叶现象 | ✅ 常见（水质突变/转水） | ❌ 极少发生 |\n| 藻类竞争 | ✅ 常见（与水草争夺营养/光照） | ❌ 不存在 |\n| CO₂影响 | ⚡ 关键因素（水中CO₂浓度远低于空气） | 影响较小（空气中CO₂充足） |\n\n> 💡 水草问题的诊断需综合考量水质、光照、CO₂、肥料四要素，单纯视觉判断可能存在不确定性。建议结合水质测试数据综合分析。\n\n## 🐟 常见水草品种与典型问题\n\n| 水草品种 | 易发问题 | 注意事项 |\n|----------|----------|----------|\n| 皇冠草 | 新叶白化(缺铁)、老叶穿孔(缺钾) | 重根肥需求大，需定期补充 |\n| 椒草 | 溶叶(水质突变)、褐斑 | 对水质变化敏感，换水需温和 |\n| 水榕 | 发黑、藻害 | 生长缓慢，对CO₂需求低 |\n| 铁皇冠 | 白化(缺铁)、黑毛藻 | 名字带\"铁\"，对铁肥需求高 |\n| 莫斯 | 发黑、丝藻缠绕 | 需良好水流，避免有机物沉积 |\n| 红蝴蝶 | 褪色变绿(光照/缺铁)、徒长 | 需强光+足量铁肥维持红色 |\n| 宫廷草 | 徒长(光照不足)、底部落叶 | 需高光高CO₂，定期修剪 |\n| 珍珠草 | 徒长、稀疏 | 需强光，否则底部叶片脱落 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_aquarium_plant_health_monitor_analysis.py`](scripts/smyx_aquarium_plant_health_monitor_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | **拍摄要求**：透过缸壁或水下拍摄，聚焦水草，避免反光；模糊/逆光/反光严重的图像无法得出可靠结果 |\n| 🧑‍⚖️ 结果性质 | **监测结果仅供水草健康参考，不提供具体水质参数调整方案**；专业水质调控请咨询水族专家 |\n| 🔎 使用提醒 | 部分水草问题症状相似（如缺铁与缺氮均可致黄化），AI 识别可能存在不确定性，建议结合水质测试数据综合判断 |\n| 🔎 使用提醒 | 玻璃缸壁反光、水面波纹、水中悬浮颗粒可能干扰识别，建议拍摄时尽量减少干扰因素 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史监测报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json\n```\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-aquarium-plant-health-monitor-analysis\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1786070670483\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` - 启动通用 AI 分析任务（水族箱水草健康监测）\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_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` - 水族箱水草健康监测\n\nFile v1.0.6:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.6:scripts/config.yaml\n\n{}\n\nFile v1.0.6:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.6:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.6:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.6:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.6:skill-card.md\n\n## Description:\n\nAnalyzes aquarium plant images or videos to identify visual health issues and produce structured care suggestions and report links.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users and developers use this skill to assess aquatic plant health from aquarium camera media, including color changes, morphology issues, algae, likely nutrient symptoms, and practical care direction. It also supports cloud report retrieval for prior analyses linked to the resolved user identity.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Media, provided URLs, report history, and an automatically generated or environment-derived identity may be sent to lifeemergence.com services.\n\nMitigation: Treat the skill as cloud-connected and account-linked; avoid sensitive aquarium footage or private media URLs unless that data flow is acceptable.\n\nRisk: The skill stores or reuses local identity tokens to associate analyses and history retrieval.\n\nMitigation: Review token storage and identity handling before installation in shared or regulated environments.\n\nRisk: Visual plant-health symptoms can be ambiguous and the output is not a substitute for full water-quality diagnosis.\n\nMitigation: Use the results as care direction only and confirm important decisions with water testing or an aquarium specialist.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis)\n- [API documentation](references/api_doc.md)\n- [Skill demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, JSON, Shell commands, Guidance]\n\n**Output Format:** [Markdown or JSON analysis report with optional saved output file and report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Accepts local image/video paths or media URLs; history lookup returns cloud report records.]\n\n## Skill Version(s):\n\n1.0.6 (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.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, 41150 bytes\n\nFiles: references/api_doc.md (686b), scripts/__init__.py (57b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_aquarium_plant_health_monitor_analysis.py (3486b), skill-card.md (2268b), SKILL.md (16589b), 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 (162b)\n\nFile v1.0.5:SKILL.md\n\n---\nname: \"smyx-aquarium-plant-health-monitor-analysis\"\ndescription: \"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\"\nversion: \"1.0.7\"\nlicense: \"MIT-0\"\n---\n\n# 🌿 Aquarium Plant Health Monitor | 水族箱水草健康监测\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水族箱水草健康监测** |\n| 🎯 核心目标 | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` |\n\nAI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops.\n\n通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水族植物健康AI。你的任务是分析水族箱中水草（沉水植物）的高清图像，识别叶片颜色和形态异常，与常见水草健康问题特征库比对，输出健康状态及可能的病因。不要提供具体水质参数调整方案，仅输出基于视觉的评估。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过水族箱水草图像进行健康监测，输出水草健康评估、可能病因及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 水草叶片颜色异常检测（黄化/白化/发黑/褐变） |\n| 2 | 形态异常识别（溶叶/卷曲/穿孔/徒长） |\n| 3 | 藻类附着检测 |\n| 4 | 常见缺素症状比对（缺铁/缺氮/缺钾/缺镁等） |\n| 5 | 健康等级评估 |\n| 6 | 养护方向建议（施肥/光照/CO₂/修剪） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水族箱水草图像或视频需要健康分析时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要水草健康诊断时，提及水草黄叶、水草溶叶、水草发黑、水草白化、水草徒长、水草状态差、草缸问题、水草缺肥、鱼缸水草不健康等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看历史水草报告、历史水族箱报告、水草健康报告清单、显示所有水草监测报告、查询水草诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备图像/视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行水草健康监测 | 调用 `-m scripts.smyx_aquarium_plant_health_monitor_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看监测结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水族箱水草图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水族箱水草图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 对象类型，水族场景默认 other | 按需填写 |\n| `--list` | 显示水族箱水草健康监测历史报告列表清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🌿 常见水草健康问题对照表\n\n| 问题类型 | 典型症状 | 可能病因 | 易发水草 |\n|----------|----------|----------|----------|\n| 🟡 黄化 | 叶片整体或叶脉间变黄 | 缺氮/缺铁/光照不足 | 皇冠草、椒草、榕草 |\n| ⚪ 白化 | 新叶发白或半透明 | 严重缺铁/缺微量元素 | 皇冠草、水榕、铁皇冠 |\n| ⚫ 发黑 | 叶片变黑腐烂 | 缺钾/有机物过多/水质恶化 | 莫斯、水榕、椒草 |\n| 🟤 褐变 | 叶片出现褐色斑点或整体褐化 | 硅藻覆盖/缺钾/光照光谱不佳 | 各类水草均可能 |\n| 💧 溶叶 | 叶片透明软化溶解 | 水质剧烈变化/新草转水/缺肥 | 皇冠草、椒草、谷精草 |\n| 🌀 卷曲 | 叶片向内卷曲或扭曲 | 缺钙/缺钾/CO₂不足 | 皇冠草、椒草、牛顿草 |\n| 🔴 穿孔 | 叶片出现孔洞 | 缺钾/蜗牛啃食/细菌感染 | 皇冠草、水榕、椒草 |\n| 📏 徒长 | 节间拉长、叶片稀疏 | 光照不足/光谱偏红 | 红蝴蝶、宫廷草、珍珠草 |\n| 🦠 藻害 | 叶面覆盖绿斑/丝藻/黑毛藻 | 光照过强/肥力过剩/CO₂不足 | 各类水草均可能 |\n| 🥀 老叶脱落 | 底部老叶逐步枯黄脱落 | 缺氮/缺镁/自然代谢 | 皇冠草、椒草、水榕 |\n| 🔴 红草褪色 | 红色水草变绿 | 光照不足/缺铁/缺磷 | 红蝴蝶、红宫廷、血红宫廷 |\n\n## 🔍 水草健康识别维度\n\n| 维度 | 观察重点 | 判断意义 |\n|------|----------|----------|\n| 颜色变化 | 黄化/白化/发黑/褐变/褪色 | 不同颜色指向不同病因 |\n| 症状部位 | 老叶 vs 新叶 vs 嫩芽 | 老叶→移动性元素缺乏(N/K/Mg)，新叶→非移动性元素(Fe/Ca) |\n| 形态异常 | 溶叶/卷曲/穿孔/徒长 | 溶叶→水质突变，卷曲→缺Ca/K，徒长→光照不足 |\n| 藻类附着 | 绿斑藻/丝藻/黑毛藻/硅藻 | 藻类类型指示不同水质问题 |\n| 叶片质地 | 透明软化/厚硬/脆裂 | 软化→溶叶/缺肥，脆裂→缺钾 |\n| 生长状态 | 节间长度/叶片密度/顶端优势 | 徒长→光照/CO₂不足，矮化→缺肥 |\n\n## 📊 水草健康等级评估\n\n| 等级 | 症状表现 | 养护建议 |\n|------|----------|----------|\n| 🟢 健康 | 叶色翠绿/形态正常、无藻类附着 | 保持当前养护，定期监测 |\n| 🟡 亚健康 | 叶色轻微偏黄或少量褐斑 | 适当补充液肥，观察变化 |\n| 🟠 轻度异常 | 明确黄化/少量溶叶/轻度藻害 | 针对性施肥，调整光照/CO₂ |\n| 🔴 重度异常 | 大面积溶叶/发黑/严重藻害/徒长 | 紧急干预，修剪病叶，咨询水族专家 |\n\n## 💡 养护方向参考\n\n| 问题类型 | 养护方向 |\n|----------|----------|\n| 🟡 缺氮（整体黄化） | 适当增加含氮液肥；注意不要过量引发藻类 |\n| 🟢 缺铁（新叶白化/黄化） | 补充铁肥（EDTA-Fe/DTPA-Fe）；配合适当光照促进吸收 |\n| 🟤 缺钾（叶缘褐变/穿孔） | 追施钾肥；注意K与Ca/Mg的平衡 |\n| 🟡 缺镁（老叶叶脉间黄化） | 补充镁肥；与钾肥交替施用避免拮抗 |\n| ☀️ 光照不足（徒长/褪色） | 延长光照时长或增加光照强度；检查灯管是否老化 |\n| 💨 CO₂不足（生长缓慢/藻害） | 提高CO₂浓度；检查CO₂设备是否正常工作 |\n| 🦠 藻害 | 减少光照时长；适量减少施肥；引入除藻生物（黑壳虾/小精灵鱼） |\n| 💧 溶叶/水质突变 | 换水时注意温差和水质匹配；新草转水需逐步适应 |\n\n> ⚠️ 本技能仅提供**养护方向建议**，**不提供具体水质参数调整方案**（如pH/KH/GH具体数值）；专业水质调控需根据缸内实际情况咨询水族专家。\n\n## 🔄 与陆生植物问题的区分要点\n\n| 特征 | 水草（沉水植物） | 陆生植物 |\n|------|------------------|----------|\n| 环境 | 水下生长，受水质/CO₂/光照综合影响 | 空气中生长，主要受土壤/光照影响 |\n| 缺铁表现 | 新叶白化或严重黄化（水中铁易沉淀） | 新叶叶脉间失绿（网纹状） |\n| 溶叶现象 | ✅ 常见（水质突变/转水） | ❌ 极少发生 |\n| 藻类竞争 | ✅ 常见（与水草争夺营养/光照） | ❌ 不存在 |\n| CO₂影响 | ⚡ 关键因素（水中CO₂浓度远低于空气） | 影响较小（空气中CO₂充足） |\n\n> 💡 水草问题的诊断需综合考量水质、光照、CO₂、肥料四要素，单纯视觉判断可能存在不确定性。建议结合水质测试数据综合分析。\n\n## 🐟 常见水草品种与典型问题\n\n| 水草品种 | 易发问题 | 注意事项 |\n|----------|----------|----------|\n| 皇冠草 | 新叶白化(缺铁)、老叶穿孔(缺钾) | 重根肥需求大，需定期补充 |\n| 椒草 | 溶叶(水质突变)、褐斑 | 对水质变化敏感，换水需温和 |\n| 水榕 | 发黑、藻害 | 生长缓慢，对CO₂需求低 |\n| 铁皇冠 | 白化(缺铁)、黑毛藻 | 名字带\"铁\"，对铁肥需求高 |\n| 莫斯 | 发黑、丝藻缠绕 | 需良好水流，避免有机物沉积 |\n| 红蝴蝶 | 褪色变绿(光照/缺铁)、徒长 | 需强光+足量铁肥维持红色 |\n| 宫廷草 | 徒长(光照不足)、底部落叶 | 需高光高CO₂，定期修剪 |\n| 珍珠草 | 徒长、稀疏 | 需强光，否则底部叶片脱落 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_aquarium_plant_health_monitor_analysis.py`](scripts/smyx_aquarium_plant_health_monitor_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | **拍摄要求**：透过缸壁或水下拍摄，聚焦水草，避免反光；模糊/逆光/反光严重的图像无法得出可靠结果 |\n| 🧑‍⚖️ 结果性质 | **监测结果仅供水草健康参考，不提供具体水质参数调整方案**；专业水质调控请咨询水族专家 |\n| 🔎 使用提醒 | 部分水草问题症状相似（如缺铁与缺氮均可致黄化），AI 识别可能存在不确定性，建议结合水质测试数据综合判断 |\n| 🔎 使用提醒 | 玻璃缸壁反光、水面波纹、水中悬浮颗粒可能干扰识别，建议拍摄时尽量减少干扰因素 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史监测报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json\n```\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-aquarium-plant-health-monitor-analysis\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1785682168540\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` - 启动通用 AI 分析任务（水族箱水草健康监测）\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_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` - 水族箱水草健康监测\n\nFile v1.0.5:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.5:scripts/config.yaml\n\n{}\n\nFile v1.0.5:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.5:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.5:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.5:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.5:skill-card.md\n\n## Description: <br>\nAnalyzes aquarium plant images or videos to identify visual health issues such as discoloration, leaf damage, algae, and deficiency symptoms, then returns a structured assessment with care suggestions and report links. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nAquarium keepers, aquascaping shops, and support agents use this skill to analyze plant media for visible health symptoms and retrieve structured health reports. It supports local files, public media URLs, and report-history queries through the skill's configured services. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Aquarium media or supplied URLs may be sent to external lifeemergence.com or open.lifeemergence.com services. <br>\nMitigation: Install and run the skill only when that external transfer is acceptable for the media being analyzed. <br>\nRisk: The skill may create or reuse a local/backend identity and retain authentication tokens locally. <br>\nMitigation: Review the workspace data directory before and after use, and clear persisted identity or token data when retention is not desired. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis) <br>\n- [API Interface Documentation](references/api_doc.md) <br>\n- [Skill Demo](https://lifeemergence.com/sample.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance] <br>\n**Output Format:** [Markdown and JSON text with report links] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May write an optional result file when an output path is provided.] <br>\n\n## Skill Version(s): <br>\n1.0.5 (source: server release metadata; artifact frontmatter says 1.0.7) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.5:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.5:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.4: 31 files, 41354 bytes\n\nFiles: references/api_doc.md (686b), scripts/__init__.py (57b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_aquarium_plant_health_monitor_analysis.py (3486b), skill-card.md (2887b), SKILL.md (16589b), 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 (162b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: \"smyx-aquarium-plant-health-monitor-analysis\"\ndescription: \"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\"\nversion: \"1.0.4\"\nlicense: \"MIT-0\"\n---\n\n# 🌿 Aquarium Plant Health Monitor | 水族箱水草健康监测\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水族箱水草健康监测** |\n| 🎯 核心目标 | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` |\n\nAI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops.\n\n通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水族植物健康AI。你的任务是分析水族箱中水草（沉水植物）的高清图像，识别叶片颜色和形态异常，与常见水草健康问题特征库比对，输出健康状态及可能的病因。不要提供具体水质参数调整方案，仅输出基于视觉的评估。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过水族箱水草图像进行健康监测，输出水草健康评估、可能病因及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 水草叶片颜色异常检测（黄化/白化/发黑/褐变） |\n| 2 | 形态异常识别（溶叶/卷曲/穿孔/徒长） |\n| 3 | 藻类附着检测 |\n| 4 | 常见缺素症状比对（缺铁/缺氮/缺钾/缺镁等） |\n| 5 | 健康等级评估 |\n| 6 | 养护方向建议（施肥/光照/CO₂/修剪） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水族箱水草图像或视频需要健康分析时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要水草健康诊断时，提及水草黄叶、水草溶叶、水草发黑、水草白化、水草徒长、水草状态差、草缸问题、水草缺肥、鱼缸水草不健康等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看历史水草报告、历史水族箱报告、水草健康报告清单、显示所有水草监测报告、查询水草诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备图像/视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行水草健康监测 | 调用 `-m scripts.smyx_aquarium_plant_health_monitor_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看监测结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水族箱水草图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水族箱水草图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 对象类型，水族场景默认 other | 按需填写 |\n| `--list` | 显示水族箱水草健康监测历史报告列表清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🌿 常见水草健康问题对照表\n\n| 问题类型 | 典型症状 | 可能病因 | 易发水草 |\n|----------|----------|----------|----------|\n| 🟡 黄化 | 叶片整体或叶脉间变黄 | 缺氮/缺铁/光照不足 | 皇冠草、椒草、榕草 |\n| ⚪ 白化 | 新叶发白或半透明 | 严重缺铁/缺微量元素 | 皇冠草、水榕、铁皇冠 |\n| ⚫ 发黑 | 叶片变黑腐烂 | 缺钾/有机物过多/水质恶化 | 莫斯、水榕、椒草 |\n| 🟤 褐变 | 叶片出现褐色斑点或整体褐化 | 硅藻覆盖/缺钾/光照光谱不佳 | 各类水草均可能 |\n| 💧 溶叶 | 叶片透明软化溶解 | 水质剧烈变化/新草转水/缺肥 | 皇冠草、椒草、谷精草 |\n| 🌀 卷曲 | 叶片向内卷曲或扭曲 | 缺钙/缺钾/CO₂不足 | 皇冠草、椒草、牛顿草 |\n| 🔴 穿孔 | 叶片出现孔洞 | 缺钾/蜗牛啃食/细菌感染 | 皇冠草、水榕、椒草 |\n| 📏 徒长 | 节间拉长、叶片稀疏 | 光照不足/光谱偏红 | 红蝴蝶、宫廷草、珍珠草 |\n| 🦠 藻害 | 叶面覆盖绿斑/丝藻/黑毛藻 | 光照过强/肥力过剩/CO₂不足 | 各类水草均可能 |\n| 🥀 老叶脱落 | 底部老叶逐步枯黄脱落 | 缺氮/缺镁/自然代谢 | 皇冠草、椒草、水榕 |\n| 🔴 红草褪色 | 红色水草变绿 | 光照不足/缺铁/缺磷 | 红蝴蝶、红宫廷、血红宫廷 |\n\n## 🔍 水草健康识别维度\n\n| 维度 | 观察重点 | 判断意义 |\n|------|----------|----------|\n| 颜色变化 | 黄化/白化/发黑/褐变/褪色 | 不同颜色指向不同病因 |\n| 症状部位 | 老叶 vs 新叶 vs 嫩芽 | 老叶→移动性元素缺乏(N/K/Mg)，新叶→非移动性元素(Fe/Ca) |\n| 形态异常 | 溶叶/卷曲/穿孔/徒长 | 溶叶→水质突变，卷曲→缺Ca/K，徒长→光照不足 |\n| 藻类附着 | 绿斑藻/丝藻/黑毛藻/硅藻 | 藻类类型指示不同水质问题 |\n| 叶片质地 | 透明软化/厚硬/脆裂 | 软化→溶叶/缺肥，脆裂→缺钾 |\n| 生长状态 | 节间长度/叶片密度/顶端优势 | 徒长→光照/CO₂不足，矮化→缺肥 |\n\n## 📊 水草健康等级评估\n\n| 等级 | 症状表现 | 养护建议 |\n|------|----------|----------|\n| 🟢 健康 | 叶色翠绿/形态正常、无藻类附着 | 保持当前养护，定期监测 |\n| 🟡 亚健康 | 叶色轻微偏黄或少量褐斑 | 适当补充液肥，观察变化 |\n| 🟠 轻度异常 | 明确黄化/少量溶叶/轻度藻害 | 针对性施肥，调整光照/CO₂ |\n| 🔴 重度异常 | 大面积溶叶/发黑/严重藻害/徒长 | 紧急干预，修剪病叶，咨询水族专家 |\n\n## 💡 养护方向参考\n\n| 问题类型 | 养护方向 |\n|----------|----------|\n| 🟡 缺氮（整体黄化） | 适当增加含氮液肥；注意不要过量引发藻类 |\n| 🟢 缺铁（新叶白化/黄化） | 补充铁肥（EDTA-Fe/DTPA-Fe）；配合适当光照促进吸收 |\n| 🟤 缺钾（叶缘褐变/穿孔） | 追施钾肥；注意K与Ca/Mg的平衡 |\n| 🟡 缺镁（老叶叶脉间黄化） | 补充镁肥；与钾肥交替施用避免拮抗 |\n| ☀️ 光照不足（徒长/褪色） | 延长光照时长或增加光照强度；检查灯管是否老化 |\n| 💨 CO₂不足（生长缓慢/藻害） | 提高CO₂浓度；检查CO₂设备是否正常工作 |\n| 🦠 藻害 | 减少光照时长；适量减少施肥；引入除藻生物（黑壳虾/小精灵鱼） |\n| 💧 溶叶/水质突变 | 换水时注意温差和水质匹配；新草转水需逐步适应 |\n\n> ⚠️ 本技能仅提供**养护方向建议**，**不提供具体水质参数调整方案**（如pH/KH/GH具体数值）；专业水质调控需根据缸内实际情况咨询水族专家。\n\n## 🔄 与陆生植物问题的区分要点\n\n| 特征 | 水草（沉水植物） | 陆生植物 |\n|------|------------------|----------|\n| 环境 | 水下生长，受水质/CO₂/光照综合影响 | 空气中生长，主要受土壤/光照影响 |\n| 缺铁表现 | 新叶白化或严重黄化（水中铁易沉淀） | 新叶叶脉间失绿（网纹状） |\n| 溶叶现象 | ✅ 常见（水质突变/转水） | ❌ 极少发生 |\n| 藻类竞争 | ✅ 常见（与水草争夺营养/光照） | ❌ 不存在 |\n| CO₂影响 | ⚡ 关键因素（水中CO₂浓度远低于空气） | 影响较小（空气中CO₂充足） |\n\n> 💡 水草问题的诊断需综合考量水质、光照、CO₂、肥料四要素，单纯视觉判断可能存在不确定性。建议结合水质测试数据综合分析。\n\n## 🐟 常见水草品种与典型问题\n\n| 水草品种 | 易发问题 | 注意事项 |\n|----------|----------|----------|\n| 皇冠草 | 新叶白化(缺铁)、老叶穿孔(缺钾) | 重根肥需求大，需定期补充 |\n| 椒草 | 溶叶(水质突变)、褐斑 | 对水质变化敏感，换水需温和 |\n| 水榕 | 发黑、藻害 | 生长缓慢，对CO₂需求低 |\n| 铁皇冠 | 白化(缺铁)、黑毛藻 | 名字带\"铁\"，对铁肥需求高 |\n| 莫斯 | 发黑、丝藻缠绕 | 需良好水流，避免有机物沉积 |\n| 红蝴蝶 | 褪色变绿(光照/缺铁)、徒长 | 需强光+足量铁肥维持红色 |\n| 宫廷草 | 徒长(光照不足)、底部落叶 | 需高光高CO₂，定期修剪 |\n| 珍珠草 | 徒长、稀疏 | 需强光，否则底部叶片脱落 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_aquarium_plant_health_monitor_analysis.py`](scripts/smyx_aquarium_plant_health_monitor_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | **拍摄要求**：透过缸壁或水下拍摄，聚焦水草，避免反光；模糊/逆光/反光严重的图像无法得出可靠结果 |\n| 🧑‍⚖️ 结果性质 | **监测结果仅供水草健康参考，不提供具体水质参数调整方案**；专业水质调控请咨询水族专家 |\n| 🔎 使用提醒 | 部分水草问题症状相似（如缺铁与缺氮均可致黄化），AI 识别可能存在不确定性，建议结合水质测试数据综合判断 |\n| 🔎 使用提醒 | 玻璃缸壁反光、水面波纹、水中悬浮颗粒可能干扰识别，建议拍摄时尽量减少干扰因素 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史监测报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json\n```\n\nFile v1.0.4:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-aquarium-plant-health-monitor-analysis\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1783988127311\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` - 启动通用 AI 分析任务（水族箱水草健康监测）\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_AQUARIUM_PLANT_HEALTH_MONITOR_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>\nAquarium Plant Health Monitor analyzes aquarium plant images or video to detect visual signs such as yellowing, bleaching, blackening, melting, curling, holes, algae, and nutrient-deficiency symptoms, then returns a structured health assessment and care guidance. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal aquarium hobbyists, aquascaping shops, and developers can use the skill to submit aquarium plant media for cloud analysis, review structured health findings, and retrieve historical reports. The skill supports visual monitoring workflows for smart aquariums, aquascaping tanks, and aquarium shops. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Aquarium media and report queries are sent to the publisher's cloud service. <br>\nMitigation: Use the skill only with media and report data that are acceptable to share with the publisher-operated service. <br>\nRisk: The skill silently creates or reuses a local account identity and stores service tokens in the workspace data area. <br>\nMitigation: Review workspace identity and token storage before installation, and avoid shared or sensitive workspaces where automatic identity reuse is not acceptable. <br>\nRisk: Historical report queries can surface prior analysis records associated with the local identity. <br>\nMitigation: Use separate workspaces or identities when report history should remain isolated. <br>\nRisk: Visual aquarium plant symptoms can be ambiguous and may not fully determine water quality or nutrient causes. <br>\nMitigation: Treat the output as care guidance and combine it with water testing or expert review before making significant aquarium changes. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis) <br>\n- [Aquarium Plant Health Monitor API documentation](artifact/references/api_doc.md) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown or JSON report text with optional report export links] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May save report output to a local file when an output path is supplied.] <br>\n\n## Skill Version(s): <br>\n1.0.4 (source: frontmatter and server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.4:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.4:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.3: 31 files, 41135 bytes\n\nFiles: references/api_doc.md (686b), scripts/__init__.py (57b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (576b), scripts/smyx_aquarium_plant_health_monitor_analysis.py (3486b), skill-card.md (2504b), SKILL.md (16589b), 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 (162b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: \"smyx-aquarium-plant-health-monitor-analysis\"\ndescription: \"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\"\nversion: \"1.0.3\"\nlicense: \"MIT-0\"\n---\n\n# 🌿 Aquarium Plant Health Monitor | 水族箱水草健康监测\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水族箱水草健康监测** |\n| 🎯 核心目标 | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` |\n\nAI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops.\n\n通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水族植物健康AI。你的任务是分析水族箱中水草（沉水植物）的高清图像，识别叶片颜色和形态异常，与常见水草健康问题特征库比对，输出健康状态及可能的病因。不要提供具体水质参数调整方案，仅输出基于视觉的评估。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过水族箱水草图像进行健康监测，输出水草健康评估、可能病因及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 水草叶片颜色异常检测（黄化/白化/发黑/褐变） |\n| 2 | 形态异常识别（溶叶/卷曲/穿孔/徒长） |\n| 3 | 藻类附着检测 |\n| 4 | 常见缺素症状比对（缺铁/缺氮/缺钾/缺镁等） |\n| 5 | 健康等级评估 |\n| 6 | 养护方向建议（施肥/光照/CO₂/修剪） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水族箱水草图像或视频需要健康分析时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要水草健康诊断时，提及水草黄叶、水草溶叶、水草发黑、水草白化、水草徒长、水草状态差、草缸问题、水草缺肥、鱼缸水草不健康等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看历史水草报告、历史水族箱报告、水草健康报告清单、显示所有水草监测报告、查询水草诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list` 调用 API 查询云端的历史报告数据 |\n| 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 |\n| 🚫 严格禁止 | 手动汇总本地记录中的报告 |\n| 🚫 严格禁止 | 从长期记忆中提取报告 |\n| ✅ 输出格式 | 必须统一从云端接口获取最新完整数据，然后以 Markdown 表格格式输出结果 |\n\n## 📦 前置准备 | Requirements\n- 依赖说明:scripts 脚本所需的依赖包及版本\n  ```\n  requests>=2.28.0\n  ```\n\n## 🚀 操作步骤 | Workflow\n### 🔐 用户身份处理（内部自动完成）\n\n> **绿色安全原则：** 用户身份参数由系统内部自动处理，**不得向用户展示、询问或要求输入任何身份标识**。\n\n执行本技能分析或历史报告查询时，脚本会自动完成身份初始化：\n\n| 场景 | 系统行为 |\n|---|---|\n| 上游系统有内部身份参数 | 由脚本静默接收并使用 |\n| 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 |\n| 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 |\n| 对用户输出 | 只展示分析进度、分析结果和报告链接，不展示内部身份值 |\n\n#### 🔒 关键约束\n\n| 禁止/要求 | 说明 |\n|---|---|\n| 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 |\n| 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 |\n| 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 |\n| ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联，用户只需表达“查看历史报告/报告清单”等意图 |\n\n---\n\n### 🧪 标准流程 | Standard Flow\n\n| 步骤 | 阶段 | 执行动作 |\n|---:|---|---|\n| 1 | 📥 准备图像/视频输入 | 提供本地文件路径或网络 URL；确保输入内容清晰、符合技能场景要求 |\n| 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数；不在回复中展示内部身份值 |\n| 3 | ⚙️ 执行水草健康监测 | 调用 `-m scripts.smyx_aquarium_plant_health_monitor_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看监测结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水族箱水草图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水族箱水草图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 对象类型，水族场景默认 other | 按需填写 |\n| `--list` | 显示水族箱水草健康监测历史报告列表清单 | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🌿 常见水草健康问题对照表\n\n| 问题类型 | 典型症状 | 可能病因 | 易发水草 |\n|----------|----------|----------|----------|\n| 🟡 黄化 | 叶片整体或叶脉间变黄 | 缺氮/缺铁/光照不足 | 皇冠草、椒草、榕草 |\n| ⚪ 白化 | 新叶发白或半透明 | 严重缺铁/缺微量元素 | 皇冠草、水榕、铁皇冠 |\n| ⚫ 发黑 | 叶片变黑腐烂 | 缺钾/有机物过多/水质恶化 | 莫斯、水榕、椒草 |\n| 🟤 褐变 | 叶片出现褐色斑点或整体褐化 | 硅藻覆盖/缺钾/光照光谱不佳 | 各类水草均可能 |\n| 💧 溶叶 | 叶片透明软化溶解 | 水质剧烈变化/新草转水/缺肥 | 皇冠草、椒草、谷精草 |\n| 🌀 卷曲 | 叶片向内卷曲或扭曲 | 缺钙/缺钾/CO₂不足 | 皇冠草、椒草、牛顿草 |\n| 🔴 穿孔 | 叶片出现孔洞 | 缺钾/蜗牛啃食/细菌感染 | 皇冠草、水榕、椒草 |\n| 📏 徒长 | 节间拉长、叶片稀疏 | 光照不足/光谱偏红 | 红蝴蝶、宫廷草、珍珠草 |\n| 🦠 藻害 | 叶面覆盖绿斑/丝藻/黑毛藻 | 光照过强/肥力过剩/CO₂不足 | 各类水草均可能 |\n| 🥀 老叶脱落 | 底部老叶逐步枯黄脱落 | 缺氮/缺镁/自然代谢 | 皇冠草、椒草、水榕 |\n| 🔴 红草褪色 | 红色水草变绿 | 光照不足/缺铁/缺磷 | 红蝴蝶、红宫廷、血红宫廷 |\n\n## 🔍 水草健康识别维度\n\n| 维度 | 观察重点 | 判断意义 |\n|------|----------|----------|\n| 颜色变化 | 黄化/白化/发黑/褐变/褪色 | 不同颜色指向不同病因 |\n| 症状部位 | 老叶 vs 新叶 vs 嫩芽 | 老叶→移动性元素缺乏(N/K/Mg)，新叶→非移动性元素(Fe/Ca) |\n| 形态异常 | 溶叶/卷曲/穿孔/徒长 | 溶叶→水质突变，卷曲→缺Ca/K，徒长→光照不足 |\n| 藻类附着 | 绿斑藻/丝藻/黑毛藻/硅藻 | 藻类类型指示不同水质问题 |\n| 叶片质地 | 透明软化/厚硬/脆裂 | 软化→溶叶/缺肥，脆裂→缺钾 |\n| 生长状态 | 节间长度/叶片密度/顶端优势 | 徒长→光照/CO₂不足，矮化→缺肥 |\n\n## 📊 水草健康等级评估\n\n| 等级 | 症状表现 | 养护建议 |\n|------|----------|----------|\n| 🟢 健康 | 叶色翠绿/形态正常、无藻类附着 | 保持当前养护，定期监测 |\n| 🟡 亚健康 | 叶色轻微偏黄或少量褐斑 | 适当补充液肥，观察变化 |\n| 🟠 轻度异常 | 明确黄化/少量溶叶/轻度藻害 | 针对性施肥，调整光照/CO₂ |\n| 🔴 重度异常 | 大面积溶叶/发黑/严重藻害/徒长 | 紧急干预，修剪病叶，咨询水族专家 |\n\n## 💡 养护方向参考\n\n| 问题类型 | 养护方向 |\n|----------|----------|\n| 🟡 缺氮（整体黄化） | 适当增加含氮液肥；注意不要过量引发藻类 |\n| 🟢 缺铁（新叶白化/黄化） | 补充铁肥（EDTA-Fe/DTPA-Fe）；配合适当光照促进吸收 |\n| 🟤 缺钾（叶缘褐变/穿孔） | 追施钾肥；注意K与Ca/Mg的平衡 |\n| 🟡 缺镁（老叶叶脉间黄化） | 补充镁肥；与钾肥交替施用避免拮抗 |\n| ☀️ 光照不足（徒长/褪色） | 延长光照时长或增加光照强度；检查灯管是否老化 |\n| 💨 CO₂不足（生长缓慢/藻害） | 提高CO₂浓度；检查CO₂设备是否正常工作 |\n| 🦠 藻害 | 减少光照时长；适量减少施肥；引入除藻生物（黑壳虾/小精灵鱼） |\n| 💧 溶叶/水质突变 | 换水时注意温差和水质匹配；新草转水需逐步适应 |\n\n> ⚠️ 本技能仅提供**养护方向建议**，**不提供具体水质参数调整方案**（如pH/KH/GH具体数值）；专业水质调控需根据缸内实际情况咨询水族专家。\n\n## 🔄 与陆生植物问题的区分要点\n\n| 特征 | 水草（沉水植物） | 陆生植物 |\n|------|------------------|----------|\n| 环境 | 水下生长，受水质/CO₂/光照综合影响 | 空气中生长，主要受土壤/光照影响 |\n| 缺铁表现 | 新叶白化或严重黄化（水中铁易沉淀） | 新叶叶脉间失绿（网纹状） |\n| 溶叶现象 | ✅ 常见（水质突变/转水） | ❌ 极少发生 |\n| 藻类竞争 | ✅ 常见（与水草争夺营养/光照） | ❌ 不存在 |\n| CO₂影响 | ⚡ 关键因素（水中CO₂浓度远低于空气） | 影响较小（空气中CO₂充足） |\n\n> 💡 水草问题的诊断需综合考量水质、光照、CO₂、肥料四要素，单纯视觉判断可能存在不确定性。建议结合水质测试数据综合分析。\n\n## 🐟 常见水草品种与典型问题\n\n| 水草品种 | 易发问题 | 注意事项 |\n|----------|----------|----------|\n| 皇冠草 | 新叶白化(缺铁)、老叶穿孔(缺钾) | 重根肥需求大，需定期补充 |\n| 椒草 | 溶叶(水质突变)、褐斑 | 对水质变化敏感，换水需温和 |\n| 水榕 | 发黑、藻害 | 生长缓慢，对CO₂需求低 |\n| 铁皇冠 | 白化(缺铁)、黑毛藻 | 名字带\"铁\"，对铁肥需求高 |\n| 莫斯 | 发黑、丝藻缠绕 | 需良好水流，避免有机物沉积 |\n| 红蝴蝶 | 褪色变绿(光照/缺铁)、徒长 | 需强光+足量铁肥维持红色 |\n| 宫廷草 | 徒长(光照不足)、底部落叶 | 需高光高CO₂，定期修剪 |\n| 珍珠草 | 徒长、稀疏 | 需强光，否则底部叶片脱落 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_aquarium_plant_health_monitor_analysis.py`](scripts/smyx_aquarium_plant_health_monitor_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | **拍摄要求**：透过缸壁或水下拍摄，聚焦水草，避免反光；模糊/逆光/反光严重的图像无法得出可靠结果 |\n| 🧑‍⚖️ 结果性质 | **监测结果仅供水草健康参考，不提供具体水质参数调整方案**；专业水质调控请咨询水族专家 |\n| 🔎 使用提醒 | 部分水草问题症状相似（如缺铁与缺氮均可致黄化），AI 识别可能存在不确定性，建议结合水质测试数据综合判断 |\n| 🔎 使用提醒 | 玻璃缸壁反光、水面波纹、水中悬浮颗粒可能干扰识别，建议拍摄时尽量减少干扰因素 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，API 服务会自动下载 |\n| 📜 报告输出 | 当显示历史监测报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json\n```\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-aquarium-plant-health-monitor-analysis\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1783381107980\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` - 启动通用 AI 分析任务（水族箱水草健康监测）\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_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` - 水族箱水草健康监测\n\nFile v1.0.3:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.3:scripts/config.yaml\n\n{}\n\nFile v1.0.3:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.3:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.3:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.3:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.3:skill-card.md\n\n## Description: <br>\nAnalyzes aquarium plant images or videos for visual health issues and returns a structured health report with likely symptoms, care-direction guidance, and report links. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nAquarium owners, aquascaping teams, aquarium shops, and developers use this skill to submit plant media or URLs for visual health monitoring and to retrieve prior reports. It supports early detection of aquatic plant issues from images or videos, while keeping recommendations to visual assessment and care direction. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Aquarium images, videos, or URLs are sent to the publisher's cloud service for analysis. <br>\nMitigation: Use only media and URLs that are appropriate to share with the publisher, and avoid private local files or internal network URLs. <br>\nRisk: The skill can silently create or reuse a local account identity and store tokens in the workspace data directory. <br>\nMitigation: Review local workspace data after use, restrict workspace access, and remove stored tokens or identity data when they are no longer needed. <br>\nRisk: Cloud history queries have limited user-visible scoping. <br>\nMitigation: Confirm the active account context before relying on historical reports and avoid using the history feature for sensitive or shared environments. <br>\n\n\n## Reference(s): <br>\n- [API documentation](artifact/references/api_doc.md) <br>\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-aquarium-plant-health-monitor-analysis) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, guidance] <br>\n**Output Format:** [Markdown or text report, with optional JSON detail output] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Can print analysis results, list cloud history reports, or save output to a local file when requested.] <br>\n\n## Skill Version(s): <br>\n1.0.3 (source: server release metadata and SKILL.md frontmatter) <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: Aquarium Plant Health Monitor | 水族箱水草健康监测 Owner: smyx-sunjinhui Summary: AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, incre","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json"},{"language":"bash","snippet":"python -m scripts.smyx_aquarium_plant_health_monitor_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input /path/to/aquarium_plant.jpg\n\n# 分析网络水族箱水草图像\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --url https://example.com/aquarium.jpg\n\n# 显示历史监测报告/显示报告清单列表\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_aquarium_plant_health_monitor_analysis --input aquarium.jpg --output result.json"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: \"smyx-aquarium-plant-health-monitor-analysis\"\ndescription: \"AI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops. | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\"\nversion: \"1.0.15\"\nlicense: \"MIT-0\"\n---\n\n# 🌿 Aquarium Plant Health Monitor | 水族箱水草健康监测\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水族箱水草健康监测** |\n| 🎯 核心目标 | 通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` |\n\nAI-powered aquatic plant health monitoring from aquarium camera images. Detects leaf color changes (yellowing, bleaching, blackening), morphological anomalies (melting, curling, holes), and iron deficiency symptoms in submerged plants. Outputs health assessment and care suggestions (e.g., supplement iron fertilizer, adjust lighting, increase CO₂). Helps early detection of aquatic plant issues and maintains aquarium ecological balance. Scenarios: smart fish tanks, aquascaping tanks, aquarium shops.\n\n通过智能鱼缸或水下摄像头拍摄水草的图像，利用AI视觉分析技术识别水草叶片的颜色变化（黄化、白化、发黑）、形态异常（溶叶、卷曲、穿孔）以及缺铁等典型症状，输出健康评估及养护建议（如补充铁肥、调整光照、增加CO₂）。有助于及早发现水草生长问题，维持水族箱生态平衡。应用场景：智能鱼缸、水族箱、水草造景缸、水族店。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水族植物健康AI。你的任务是分析水族箱中水草（沉水植物）的高清图像，识别叶片颜色和形态异常，与常见水草健康问题特征库比对，输出健康状态及可能的病因。不要提供具体水质参数调整方案，仅输出基于视觉的评估。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过水族箱水草图像进行健康监测，输出水草健康评估、可能病因及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 水草叶片颜色异常检测（黄化/白化/发黑/褐变） |\n| 2 | 形态异常识别（溶叶/卷曲/穿孔/徒长） |\n| 3 | 藻类附着检测 |\n| 4 | 常见缺素症状比对（缺铁/缺氮/缺钾/缺镁等） |\n| 5 | 健康等级评估 |\n| 6 | 养护方向建议（施肥/光照/CO₂/修剪） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水族箱水草图像或视频需要健康分析时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要水草健康诊断时，提及水草黄叶、水草溶叶、水草发黑、水草白化、水草徒长、水草状态差、草缸问题、水草缺肥、鱼缸水草不健康等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看历史水草报告、历史水族箱报告、水草健康报告清单、显示所有水草监测报告、查询水草诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_aquarium_plant_healt"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-aquarium-plant-health-monitor-analysis\",\n  \"version\": \"1.0.12\",\n  \"publishedAt\": 1790572646312\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` - 启动通用 AI 分析任务（水族箱水草健康监测）\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_AQUARIUM_PLANT_HEALTH_MONITOR_ANALYSIS` - 水族箱水草健康监测"},{"path":"skills/smyx_analysis/references/api_doc.md","content":"# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |"},{"path":"scripts/config.yaml","content":"{}"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":922,"uniquenessScore":43,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T03:37:16.993Z","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-10T03:37:16.993Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T07:13:00.440Z","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"}]}}}