{"id":"e317248b-aa82-4941-94ea-cc924a531117","entityType":"agent","slug":"clawhub-smyx-sunjinhui-smyx-hydroponic-nutrient-assessment-anal","name":"Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估","canonicalUrl":"https://www.xpersona.co/agent/clawhub-smyx-sunjinhui-smyx-hydroponic-nutrient-assessment-anal","canonicalPath":"/agent/clawhub-smyx-sunjinhui-smyx-hydroponic-nutrient-assessment-anal","generatedAt":"2026-10-10T08:57:56.164Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T00:40:48.908Z","emptyReason":null},"description":"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.8K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-hydroponic-nutrient-assessment-analysis","sourceUrl":"https://clawhub.ai/smyx-sunjinhui/smyx-hydroponic-nutrient-assessment-analysis","homepage":"https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-analysis","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/smyx-sunjinhui/smyx-hydroponic-nutrient-assessment-analysis","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-analysis","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":65,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估 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-10T00:40:48.908Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T00:40:48.908Z","emptyReason":null},"stars":null,"forks":null,"downloads":1829,"packageName":null,"latestVersion":"1.0.10","tractionLabel":"1.8K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T00:40:48.870Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T00:40:48.908Z","lastCrawledAt":"2026-10-10T00:40:48.870Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T00:40:48.870Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.10","createdAt":"2026-09-27T20:08:32.304Z","changelog":"- Updated skill version to 1.0.16. - SKILL.md and config files were updated to reflect the latest version and content. - skill-card.md was removed for consolidation or cleanup. - No changes to overall functionality or workflow.","fileCount":31,"zipByteSize":40103},{"version":"1.0.9","createdAt":"2026-09-08T01:43:37.080Z","changelog":"- Updated version to 1.0.14. - Removed the file skill-card.md. - SKILL.md: No substantial content changes; version increment and skill-card.md removal reflected. - No updates to features, usage, or workflow.","fileCount":31,"zipByteSize":40162},{"version":"1.0.8","createdAt":"2026-08-29T05:57:30.309Z","changelog":"- Updated the skill version to 1.0.13 in SKILL.md. - Removed the file skill-card.md. - No changes to core workflow, functionality, or user instructions. - Documentation now reflects the version update and documentation set cleanup.","fileCount":31,"zipByteSize":40304},{"version":"1.0.7","createdAt":"2026-08-18T02:24:28.442Z","changelog":"smyx-hydroponic-nutrient-assessment-analysis 1.0.7 - Updated version numbers and metadata in documentation. - Removed outdated skill-card documentation file. - Made minor revisions to configuration files for improved accuracy and consistency.","fileCount":31,"zipByteSize":40175},{"version":"1.0.6","createdAt":"2026-08-11T21:22:35.086Z","changelog":"- Removed the file: skill-card.md. - No changes made to core functionalities or documentation content. - Package contents are now slightly simplified due to the removal of ancillary documentation. - No user-facing impact; skill usage and features remain the same.","fileCount":31,"zipByteSize":40223},{"version":"1.0.5","createdAt":"2026-08-06T11:33:32.176Z","changelog":"- Updated version to 1.0.10 in SKILL.md. - Removed the file skill-card.md. - No functional changes to features or capabilities; documentation update only.","fileCount":31,"zipByteSize":40341},{"version":"1.0.4","createdAt":"2026-07-31T17:23:32.601Z","changelog":"- Updated version to 1.0.9 and revised documentation in SKILL.md. - Removed redundant documentation file: skill-card.md. - No changes to core functionality or code; documentation and metadata only.","fileCount":31,"zipByteSize":40288},{"version":"1.0.3","createdAt":"2026-07-18T18:04:27.867Z","changelog":"- Updated skill version to 1.0.7. - Removed the obsolete file skill-card.md. - Made minor content updates, including changes in SKILL.md and utility scripts. - General documentation cleanup and version alignment.","fileCount":31,"zipByteSize":40245}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-hydroponic-nutrient-assessment-analysis","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-hydroponic-nutrient-assessment-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-hydroponic-nutrient-assessment-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-hydroponic-nutrient-assessment-anal/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-hydroponic-nutrient-assessment-anal/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-hydroponic-nutrient-assessment-anal/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-hydroponic-nutrient-assessment-anal/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-hydroponic-nutrient-assessment-anal/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-hydroponic-nutrient-assessment-anal/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T08:57:56.159Z"}},"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-hydroponic-nutrient-assessment-anal/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-hydroponic-nutrient-assessment-anal/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-hydroponic-nutrient-assessment-anal/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-hydroponic-nutrient-assessment-anal/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-10T00:40:48.908Z","emptyReason":null},"readme":"Skill: Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n\nOwner: smyx-sunjinhui\n\nSummary: Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\n\nTags: latest:1.0.10\n\nVersion history:\n\nv1.0.10 | 2026-09-27T20:08:32.304Z | auto\n\n- Updated skill version to 1.0.16.\n- SKILL.md and config files were updated to reflect the latest version and content.\n- skill-card.md was removed for consolidation or cleanup.\n- No changes to overall functionality or workflow.\n\nv1.0.9 | 2026-09-08T01:43:37.080Z | auto\n\n- Updated version to 1.0.14.\n- Removed the file skill-card.md.\n- SKILL.md: No substantial content changes; version increment and skill-card.md removal reflected.\n- No updates to features, usage, or workflow.\n\nv1.0.8 | 2026-08-29T05:57:30.309Z | auto\n\n- Updated the skill version to 1.0.13 in SKILL.md.\n- Removed the file skill-card.md.\n- No changes to core workflow, functionality, or user instructions.\n- Documentation now reflects the version update and documentation set cleanup.\n\nv1.0.7 | 2026-08-18T02:24:28.442Z | auto\n\nsmyx-hydroponic-nutrient-assessment-analysis 1.0.7\n\n- Updated version numbers and metadata in documentation.\n- Removed outdated skill-card documentation file.\n- Made minor revisions to configuration files for improved accuracy and consistency.\n\nv1.0.6 | 2026-08-11T21:22:35.086Z | auto\n\n- Removed the file: skill-card.md.\n- No changes made to core functionalities or documentation content.\n- Package contents are now slightly simplified due to the removal of ancillary documentation.\n- No user-facing impact; skill usage and features remain the same.\n\nv1.0.5 | 2026-08-06T11:33:32.176Z | auto\n\n- Updated version to 1.0.10 in SKILL.md.\n- Removed the file skill-card.md.\n- No functional changes to features or capabilities; documentation update only.\n\nv1.0.4 | 2026-07-31T17:23:32.601Z | auto\n\n- Updated version to 1.0.9 and revised documentation in SKILL.md.\n- Removed redundant documentation file: skill-card.md.\n- No changes to core functionality or code; documentation and metadata only.\n\nv1.0.3 | 2026-07-18T18:04:27.867Z | auto\n\n- Updated skill version to 1.0.7.\n- Removed the obsolete file skill-card.md.\n- Made minor content updates, including changes in SKILL.md and utility scripts.\n- General documentation cleanup and version alignment.\n\nv1.0.2 | 2026-07-10T05:49:29.634Z | auto\n\n- Updated version to 1.0.6.\n- Removed the file: skill-card.md.\n- Updated documentation and parameters in SKILL.md to reflect latest workflow and features.\n- No changes to core logic or main scripts reported.\n\nv1.0.1 | 2026-06-30T20:22:26.669Z | auto\n\n- Updated skill logic to remove all end-user exposure to identity parameters; user no longer needs to provide or view open-id.\n- Historical report queries now always use internal system identity management, fully automated and hidden from the user.\n- All steps and UI prompts adjusted to reflect identity auto-management and prevent any identity-related user interaction.\n- Documentation updated: new workflow, requirements, and restrictions to ensure compliance with internal-only identity handling.\n- Removed old script files and references to deprecated open-id prompting logic.\n\nv1.0.0 | 2026-05-24T11:18:07.906Z | auto\n\nInitial release of smyx-hydroponic-nutrient-assessment-analysis:\n\n- Enables AI visual assessment of hydroponic nutrient concentration using root and leaf images (no EC meter needed).\n- Identifies root color and leaf morphology to detect stress and nutrient issues; provides actionable adjustment advice.\n- Automatically analyzes and pushes alerts based on periodic image capture in hydroponic systems.\n- History report queries fetch results directly from the cloud API, with strict open-id management and markdown table output.\n- Designed for hydroponic beginners and experts; reduces error risk and lowers the barrier to successful plant care.\n\nArchive index:\n\nArchive v1.0.10: 31 files, 40103 bytes\n\nFiles: references/api_doc.md (1660b), scripts/__init__.py (72b), scripts/config.py (698b), scripts/config.yaml (3b), scripts/skill.py (588b), scripts/smyx_hydroponic_nutrient_assessment_analysis.py (3605b), skill-card.md (2230b), SKILL.md (12599b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (164b)\n\nFile v1.0.10:SKILL.md\n\n---\nname: \"smyx-hydroponic-nutrient-assessment-analysis\"\ndescription: \"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\"\nversion: \"1.0.16\"\nlicense: \"MIT-0\"\n---\n\n# 💧 Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水培植物营养液浓度视觉评估** |\n| 🎯 核心目标 | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` |\n\nUsing fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent\ncontainers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early\nstress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling)\nto judge whether the nutrient solution is too concentrated or too dilute, and outputs adjustment advice (dilute with\nfresh water or add concentrated nutrient solution). This skill lets hydroponic growers quickly assess nutrient solution\nstatus without an EC meter. Application scenarios: hydroponic growing racks, home hydroponic vegetables, plant\nfactories, research hydroponic systems. The system periodically (e.g., weekly) captures root and leaf images,\nautomatically analyzes them and pushes alerts (e.g., 'roots are turning yellow, leaf tips are burned, nutrient\nconcentration may be too high, suggest adding fresh water to dilute'). Skill features: hydroponic beginners often suffer\nfrom burnt seedlings or nutrient deficiency due to wrong nutrient concentration. AI visual assessment lets users judge\nquickly without instruments, lowering the learning curve. Can be integrated into hydroponic racks or mobile apps to\nimprove user experience and success rate.\n\n通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。该技能帮助水培种植者在不使用EC计的情况下，快速评估营养液状态。应用场景：水培种植架、家庭水培蔬菜、植物工厂、科研水培装置。系统定期（如每周）拍摄根部和叶部图像，自动分析并推送提醒（如'根系变黄，叶尖灼伤，营养液浓度可能过高，建议加入清水稀释'\n）。技能特点：水培新手常因营养液浓度不当导致烧苗或缺素。通过AI视觉评估，用户无需仪器即可快速判断，降低种植门槛。该技能可集成到水培种植架或手机APP中，提升用户体验和成功率。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水培植物营养 AI。你的任务是分析水培植物的根系图像（透明容器内）和叶片图像，识别根须颜色、根尖状态、叶片灼伤和黄化等特征，判断营养液浓度是否适宜，输出调整建议。不要提供具体的 EC 值或 ppm 数值，仅基于视觉特征给出定性结论与方向性调整建议。** |\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\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水培植物根系/叶片图像或视频 URL/文件需要分析时，默认触发本技能进行营养液浓度视觉评估 |\n| 🔎 明确分析意图 | 当用户明确提及水培、营养液、EC、烧苗、根系发黄、根系发黑、根腐、叶尖灼伤、叶缘焦枯、水培蔬菜、种植架、营养液浓度、稀释、换液等关键词，并且上传了图像/视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看水培营养液历史报告、营养液浓度评估清单、水培诊断报告清单、查询历史水培评估、显示所有水培报告、显示根系健康诊断报告，查询营养液调整建议清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_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_hydroponic_nutrient_concentration_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水培根系/叶片图像或视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水培根系/叶片图像或视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，水培植物场景默认 `other` | 按需填写 |\n| `--list` | 显示水培营养液浓度评估历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_hydroponic_nutrient_concentration_assessment_analysis.py`](scripts/smyx_hydroponic_nutrient_concentration_assessment_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| 🧑‍⚖️ 结果性质 | 评估结果仅供水培养护参考，严重过浓/严重过稀建议立即换液并观察 24 小时 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json\n```\n\nFile v1.0.10:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-hydroponic-nutrient-assessment-analysis\",\n  \"version\": \"1.0.10\",\n  \"publishedAt\": 1790539712304\n}\n\nFile v1.0.10:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放水培植物营养液浓度视觉评估 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动水培营养液浓度评估任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果与调整建议\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史评估记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` - 水培植物营养液浓度视觉评估\n\n## 输入约束\n\n- 推荐分别拍摄根系（透明容器内）与叶片（新叶+老叶）的高清图像\n- 拍摄环境建议光照均匀、镜头无水雾，避免反光遮挡根须\n- 关键观测特征：\n    - 根须颜色（白色健康 / 黄色初期胁迫 / 褐色严重胁迫 / 黑色腐烂）\n    - 根尖状态（饱满白尖 / 萎缩 / 发黑）\n    - 叶片：叶尖灼伤、叶缘焦枯、叶片黄化、卷曲\n\n## 输出字段（参考）\n\n- `root_color_grade` - 根系颜色等级（healthy / mild_stress / severe_stress / rot）\n- `leaf_burn_signs` - 叶片灼伤体征（叶尖灼伤 / 叶缘焦枯 / 黄化 / 卷曲）\n- `nutrient_status` - 营养液浓度判断（适宜 / 偏浓 / 偏稀 / 严重过浓 / 严重过稀）\n- `adjust_advice` - 调整建议（如\"加入清水稀释\"、\"补充浓缩营养液\"、\"立即换液并清洗根系\"）\n\n> 仅基于视觉特征给出定性结论，不输出具体 EC / ppm 数值。\n\nFile v1.0.10:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.10:scripts/config.yaml\n\n{}\n\nFile v1.0.10:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.10:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.10:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.10:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.10:skill-card.md\n\n## Description:\n\nAssesses hydroponic root and leaf images or videos for signs of nutrient imbalance and provides qualitative adjustment advice 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\nHydroponic growers and developers use root and leaf media to assess possible nutrient-solution imbalance, receive directional care advice, and access historical reports. The assessment is qualitative and does not provide EC or ppm measurements.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Plant images, videos, or media URLs are sent to the configured cloud service.\n\nMitigation: Use only media you are comfortable sharing with that service; avoid sensitive or unrelated content.\n\nRisk: The skill creates and reuses a local user identity and stores cloud tokens in a workspace database.\n\nMitigation: Review local data storage and limit access to the workspace before installation.\n\nRisk: Implementation differences from the documented image-focused workflow may affect results.\n\nMitigation: Test with non-sensitive sample media and review outputs before relying on care recommendations.\n\n## Reference(s):\n\n- [ClawHub skill release](https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-analysis)\n- [Publisher profile](https://clawhub.ai/user/smyx-sunjinhui)\n- [API reference](references/api_doc.md)\n- [Skill demonstration](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Guidance]\n\n**Output Format:** [Structured analysis text or JSON, with Markdown report links and history tables]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Qualitative assessments and adjustment suggestions; optional saved JSON report]\n\n## Skill Version(s):\n\n1.0.10 (source: server-resolved ClawHub release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.10:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.10:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.9: 31 files, 40162 bytes\n\nFiles: references/api_doc.md (1660b), scripts/__init__.py (72b), scripts/config.py (698b), scripts/config.yaml (3b), scripts/skill.py (588b), scripts/smyx_hydroponic_nutrient_assessment_analysis.py (3605b), skill-card.md (2287b), SKILL.md (12599b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (472b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.9:SKILL.md\n\n---\nname: \"smyx-hydroponic-nutrient-assessment-analysis\"\ndescription: \"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\"\nversion: \"1.0.14\"\nlicense: \"MIT-0\"\n---\n\n# 💧 Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水培植物营养液浓度视觉评估** |\n| 🎯 核心目标 | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` |\n\nUsing fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent\ncontainers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early\nstress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling)\nto judge whether the nutrient solution is too concentrated or too dilute, and outputs adjustment advice (dilute with\nfresh water or add concentrated nutrient solution). This skill lets hydroponic growers quickly assess nutrient solution\nstatus without an EC meter. Application scenarios: hydroponic growing racks, home hydroponic vegetables, plant\nfactories, research hydroponic systems. The system periodically (e.g., weekly) captures root and leaf images,\nautomatically analyzes them and pushes alerts (e.g., 'roots are turning yellow, leaf tips are burned, nutrient\nconcentration may be too high, suggest adding fresh water to dilute'). Skill features: hydroponic beginners often suffer\nfrom burnt seedlings or nutrient deficiency due to wrong nutrient concentration. AI visual assessment lets users judge\nquickly without instruments, lowering the learning curve. Can be integrated into hydroponic racks or mobile apps to\nimprove user experience and success rate.\n\n通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。该技能帮助水培种植者在不使用EC计的情况下，快速评估营养液状态。应用场景：水培种植架、家庭水培蔬菜、植物工厂、科研水培装置。系统定期（如每周）拍摄根部和叶部图像，自动分析并推送提醒（如'根系变黄，叶尖灼伤，营养液浓度可能过高，建议加入清水稀释'\n）。技能特点：水培新手常因营养液浓度不当导致烧苗或缺素。通过AI视觉评估，用户无需仪器即可快速判断，降低种植门槛。该技能可集成到水培种植架或手机APP中，提升用户体验和成功率。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水培植物营养 AI。你的任务是分析水培植物的根系图像（透明容器内）和叶片图像，识别根须颜色、根尖状态、叶片灼伤和黄化等特征，判断营养液浓度是否适宜，输出调整建议。不要提供具体的 EC 值或 ppm 数值，仅基于视觉特征给出定性结论与方向性调整建议。** |\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\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水培植物根系/叶片图像或视频 URL/文件需要分析时，默认触发本技能进行营养液浓度视觉评估 |\n| 🔎 明确分析意图 | 当用户明确提及水培、营养液、EC、烧苗、根系发黄、根系发黑、根腐、叶尖灼伤、叶缘焦枯、水培蔬菜、种植架、营养液浓度、稀释、换液等关键词，并且上传了图像/视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看水培营养液历史报告、营养液浓度评估清单、水培诊断报告清单、查询历史水培评估、显示所有水培报告、显示根系健康诊断报告，查询营养液调整建议清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_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_hydroponic_nutrient_concentration_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水培根系/叶片图像或视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水培根系/叶片图像或视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，水培植物场景默认 `other` | 按需填写 |\n| `--list` | 显示水培营养液浓度评估历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_hydroponic_nutrient_concentration_assessment_analysis.py`](scripts/smyx_hydroponic_nutrient_concentration_assessment_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| 🧑‍⚖️ 结果性质 | 评估结果仅供水培养护参考，严重过浓/严重过稀建议立即换液并观察 24 小时 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json\n```\n\nFile v1.0.9:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-hydroponic-nutrient-assessment-analysis\",\n  \"version\": \"1.0.9\",\n  \"publishedAt\": 1788831817080\n}\n\nFile v1.0.9:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放水培植物营养液浓度视觉评估 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动水培营养液浓度评估任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果与调整建议\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史评估记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` - 水培植物营养液浓度视觉评估\n\n## 输入约束\n\n- 推荐分别拍摄根系（透明容器内）与叶片（新叶+老叶）的高清图像\n- 拍摄环境建议光照均匀、镜头无水雾，避免反光遮挡根须\n- 关键观测特征：\n    - 根须颜色（白色健康 / 黄色初期胁迫 / 褐色严重胁迫 / 黑色腐烂）\n    - 根尖状态（饱满白尖 / 萎缩 / 发黑）\n    - 叶片：叶尖灼伤、叶缘焦枯、叶片黄化、卷曲\n\n## 输出字段（参考）\n\n- `root_color_grade` - 根系颜色等级（healthy / mild_stress / severe_stress / rot）\n- `leaf_burn_signs` - 叶片灼伤体征（叶尖灼伤 / 叶缘焦枯 / 黄化 / 卷曲）\n- `nutrient_status` - 营养液浓度判断（适宜 / 偏浓 / 偏稀 / 严重过浓 / 严重过稀）\n- `adjust_advice` - 调整建议（如\"加入清水稀释\"、\"补充浓缩营养液\"、\"立即换液并清洗根系\"）\n\n> 仅基于视觉特征给出定性结论，不输出具体 EC / ppm 数值。\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\nAssesses hydroponic root and leaf images or videos to identify visual stress signs, estimate whether nutrient solution is too concentrated or too dilute, and provide qualitative adjustment guidance.\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\nHydroponic growers, plant-factory operators, and developers integrating grow-rack or mobile-app workflows use this skill to analyze root and leaf media and receive qualitative nutrient concentration guidance and report links.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Uploaded plant images or videos may be processed by remote services.\n\nMitigation: Use the skill only when remote processing is acceptable and avoid uploading sensitive or unnecessary media.\n\nRisk: Account-linked history retrieval and local identity reuse may occur without explicit user interaction.\n\nMitigation: Require clear user confirmation before cloud history queries and document identity behavior for operators.\n\nRisk: Default service settings include HTTP endpoints and local plaintext token persistence.\n\nMitigation: Use HTTPS-only production endpoints and secure token storage before deployment.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-analysis)\n- [Skill demo](https://lifeemergence.com/sample.html)\n- [API 接口文档](references/api_doc.md)\n- [API接口文档](skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown and JSON-like structured text with report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Qualitative visual assessment only; no EC or ppm values are produced.]\n\n## Skill Version(s):\n\n1.0.9 (source: server release metadata; artifact frontmatter declares 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.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, 40304 bytes\n\nFiles: references/api_doc.md (1660b), scripts/__init__.py (72b), scripts/config.py (698b), scripts/config.yaml (3b), scripts/skill.py (588b), scripts/smyx_hydroponic_nutrient_assessment_analysis.py (3605b), skill-card.md (2723b), SKILL.md (12599b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (472b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.8:SKILL.md\n\n---\nname: \"smyx-hydroponic-nutrient-assessment-analysis\"\ndescription: \"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\"\nversion: \"1.0.13\"\nlicense: \"MIT-0\"\n---\n\n# 💧 Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水培植物营养液浓度视觉评估** |\n| 🎯 核心目标 | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` |\n\nUsing fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent\ncontainers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early\nstress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling)\nto judge whether the nutrient solution is too concentrated or too dilute, and outputs adjustment advice (dilute with\nfresh water or add concentrated nutrient solution). This skill lets hydroponic growers quickly assess nutrient solution\nstatus without an EC meter. Application scenarios: hydroponic growing racks, home hydroponic vegetables, plant\nfactories, research hydroponic systems. The system periodically (e.g., weekly) captures root and leaf images,\nautomatically analyzes them and pushes alerts (e.g., 'roots are turning yellow, leaf tips are burned, nutrient\nconcentration may be too high, suggest adding fresh water to dilute'). Skill features: hydroponic beginners often suffer\nfrom burnt seedlings or nutrient deficiency due to wrong nutrient concentration. AI visual assessment lets users judge\nquickly without instruments, lowering the learning curve. Can be integrated into hydroponic racks or mobile apps to\nimprove user experience and success rate.\n\n通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。该技能帮助水培种植者在不使用EC计的情况下，快速评估营养液状态。应用场景：水培种植架、家庭水培蔬菜、植物工厂、科研水培装置。系统定期（如每周）拍摄根部和叶部图像，自动分析并推送提醒（如'根系变黄，叶尖灼伤，营养液浓度可能过高，建议加入清水稀释'\n）。技能特点：水培新手常因营养液浓度不当导致烧苗或缺素。通过AI视觉评估，用户无需仪器即可快速判断，降低种植门槛。该技能可集成到水培种植架或手机APP中，提升用户体验和成功率。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水培植物营养 AI。你的任务是分析水培植物的根系图像（透明容器内）和叶片图像，识别根须颜色、根尖状态、叶片灼伤和黄化等特征，判断营养液浓度是否适宜，输出调整建议。不要提供具体的 EC 值或 ppm 数值，仅基于视觉特征给出定性结论与方向性调整建议。** |\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\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水培植物根系/叶片图像或视频 URL/文件需要分析时，默认触发本技能进行营养液浓度视觉评估 |\n| 🔎 明确分析意图 | 当用户明确提及水培、营养液、EC、烧苗、根系发黄、根系发黑、根腐、叶尖灼伤、叶缘焦枯、水培蔬菜、种植架、营养液浓度、稀释、换液等关键词，并且上传了图像/视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看水培营养液历史报告、营养液浓度评估清单、水培诊断报告清单、查询历史水培评估、显示所有水培报告、显示根系健康诊断报告，查询营养液调整建议清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_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_hydroponic_nutrient_concentration_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水培根系/叶片图像或视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水培根系/叶片图像或视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，水培植物场景默认 `other` | 按需填写 |\n| `--list` | 显示水培营养液浓度评估历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_hydroponic_nutrient_concentration_assessment_analysis.py`](scripts/smyx_hydroponic_nutrient_concentration_assessment_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| 🧑‍⚖️ 结果性质 | 评估结果仅供水培养护参考，严重过浓/严重过稀建议立即换液并观察 24 小时 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json\n```\n\nFile v1.0.8:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-hydroponic-nutrient-assessment-analysis\",\n  \"version\": \"1.0.8\",\n  \"publishedAt\": 1787983050309\n}\n\nFile v1.0.8:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放水培植物营养液浓度视觉评估 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动水培营养液浓度评估任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果与调整建议\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史评估记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` - 水培植物营养液浓度视觉评估\n\n## 输入约束\n\n- 推荐分别拍摄根系（透明容器内）与叶片（新叶+老叶）的高清图像\n- 拍摄环境建议光照均匀、镜头无水雾，避免反光遮挡根须\n- 关键观测特征：\n    - 根须颜色（白色健康 / 黄色初期胁迫 / 褐色严重胁迫 / 黑色腐烂）\n    - 根尖状态（饱满白尖 / 萎缩 / 发黑）\n    - 叶片：叶尖灼伤、叶缘焦枯、叶片黄化、卷曲\n\n## 输出字段（参考）\n\n- `root_color_grade` - 根系颜色等级（healthy / mild_stress / severe_stress / rot）\n- `leaf_burn_signs` - 叶片灼伤体征（叶尖灼伤 / 叶缘焦枯 / 黄化 / 卷曲）\n- `nutrient_status` - 营养液浓度判断（适宜 / 偏浓 / 偏稀 / 严重过浓 / 严重过稀）\n- `adjust_advice` - 调整建议（如\"加入清水稀释\"、\"补充浓缩营养液\"、\"立即换液并清洗根系\"）\n\n> 仅基于视觉特征给出定性结论，不输出具体 EC / ppm 数值。\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\nThis skill analyzes hydroponic root and leaf images or videos to provide a qualitative visual assessment of nutrient concentration status and adjustment guidance.\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, developers, and hydroponic growers use this skill to assess whether nutrient solution appears too concentrated, too dilute, or suitable from plant root and leaf imagery. It can also retrieve account-linked historical assessment reports from the configured cloud service.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Plant media or media URLs may be sent to the configured LifeEmergence/Open API service for analysis.\n\nMitigation: Use non-sensitive plant media, prefer isolated workspaces, and confirm endpoint ownership, retention, and deletion controls before deployment.\n\nRisk: The skill can create or reuse a local account identity, store tokens locally, and retrieve cloud report history under that identity.\n\nMitigation: Avoid shared workspaces for execution, review local data storage expectations, and limit use to accounts whose report history may be safely queried.\n\nRisk: The nutrient concentration result is based on visual symptoms and may be less precise than instrumented EC or ppm measurement.\n\nMitigation: Treat output as cultivation guidance and verify material decisions with appropriate measurement tools or expert review.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-analysis)\n- [Hydroponic nutrient assessment API 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, Guidance]\n\n**Output Format:** [Markdown or text containing structured analysis results, qualitative nutrient status, adjustment advice, and report links; JSON is available for detailed output.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Visual assessment is qualitative and does not provide EC or ppm values; results may also be written to an output file when requested.]\n\n## Skill Version(s):\n\n1.0.8 (source: server release metadata; artifact frontmatter declares 1.0.13)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.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, 40175 bytes\n\nFiles: references/api_doc.md (1660b), scripts/__init__.py (72b), scripts/config.py (698b), scripts/config.yaml (3b), scripts/skill.py (588b), scripts/smyx_hydroponic_nutrient_assessment_analysis.py (3605b), skill-card.md (2269b), SKILL.md (12599b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (472b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.7:SKILL.md\n\n---\nname: \"smyx-hydroponic-nutrient-assessment-analysis\"\ndescription: \"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\"\nversion: \"1.0.12\"\nlicense: \"MIT-0\"\n---\n\n# 💧 Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水培植物营养液浓度视觉评估** |\n| 🎯 核心目标 | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` |\n\nUsing fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent\ncontainers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early\nstress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling)\nto judge whether the nutrient solution is too concentrated or too dilute, and outputs adjustment advice (dilute with\nfresh water or add concentrated nutrient solution). This skill lets hydroponic growers quickly assess nutrient solution\nstatus without an EC meter. Application scenarios: hydroponic growing racks, home hydroponic vegetables, plant\nfactories, research hydroponic systems. The system periodically (e.g., weekly) captures root and leaf images,\nautomatically analyzes them and pushes alerts (e.g., 'roots are turning yellow, leaf tips are burned, nutrient\nconcentration may be too high, suggest adding fresh water to dilute'). Skill features: hydroponic beginners often suffer\nfrom burnt seedlings or nutrient deficiency due to wrong nutrient concentration. AI visual assessment lets users judge\nquickly without instruments, lowering the learning curve. Can be integrated into hydroponic racks or mobile apps to\nimprove user experience and success rate.\n\n通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。该技能帮助水培种植者在不使用EC计的情况下，快速评估营养液状态。应用场景：水培种植架、家庭水培蔬菜、植物工厂、科研水培装置。系统定期（如每周）拍摄根部和叶部图像，自动分析并推送提醒（如'根系变黄，叶尖灼伤，营养液浓度可能过高，建议加入清水稀释'\n）。技能特点：水培新手常因营养液浓度不当导致烧苗或缺素。通过AI视觉评估，用户无需仪器即可快速判断，降低种植门槛。该技能可集成到水培种植架或手机APP中，提升用户体验和成功率。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水培植物营养 AI。你的任务是分析水培植物的根系图像（透明容器内）和叶片图像，识别根须颜色、根尖状态、叶片灼伤和黄化等特征，判断营养液浓度是否适宜，输出调整建议。不要提供具体的 EC 值或 ppm 数值，仅基于视觉特征给出定性结论与方向性调整建议。** |\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\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水培植物根系/叶片图像或视频 URL/文件需要分析时，默认触发本技能进行营养液浓度视觉评估 |\n| 🔎 明确分析意图 | 当用户明确提及水培、营养液、EC、烧苗、根系发黄、根系发黑、根腐、叶尖灼伤、叶缘焦枯、水培蔬菜、种植架、营养液浓度、稀释、换液等关键词，并且上传了图像/视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看水培营养液历史报告、营养液浓度评估清单、水培诊断报告清单、查询历史水培评估、显示所有水培报告、显示根系健康诊断报告，查询营养液调整建议清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_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_hydroponic_nutrient_concentration_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水培根系/叶片图像或视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水培根系/叶片图像或视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，水培植物场景默认 `other` | 按需填写 |\n| `--list` | 显示水培营养液浓度评估历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_hydroponic_nutrient_concentration_assessment_analysis.py`](scripts/smyx_hydroponic_nutrient_concentration_assessment_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| 🧑‍⚖️ 结果性质 | 评估结果仅供水培养护参考，严重过浓/严重过稀建议立即换液并观察 24 小时 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json\n```\n\nFile v1.0.7:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-hydroponic-nutrient-assessment-analysis\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1787019868442\n}\n\nFile v1.0.7:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放水培植物营养液浓度视觉评估 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动水培营养液浓度评估任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果与调整建议\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史评估记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` - 水培植物营养液浓度视觉评估\n\n## 输入约束\n\n- 推荐分别拍摄根系（透明容器内）与叶片（新叶+老叶）的高清图像\n- 拍摄环境建议光照均匀、镜头无水雾，避免反光遮挡根须\n- 关键观测特征：\n    - 根须颜色（白色健康 / 黄色初期胁迫 / 褐色严重胁迫 / 黑色腐烂）\n    - 根尖状态（饱满白尖 / 萎缩 / 发黑）\n    - 叶片：叶尖灼伤、叶缘焦枯、叶片黄化、卷曲\n\n## 输出字段（参考）\n\n- `root_color_grade` - 根系颜色等级（healthy / mild_stress / severe_stress / rot）\n- `leaf_burn_signs` - 叶片灼伤体征（叶尖灼伤 / 叶缘焦枯 / 黄化 / 卷曲）\n- `nutrient_status` - 营养液浓度判断（适宜 / 偏浓 / 偏稀 / 严重过浓 / 严重过稀）\n- `adjust_advice` - 调整建议（如\"加入清水稀释\"、\"补充浓缩营养液\"、\"立即换液并清洗根系\"）\n\n> 仅基于视觉特征给出定性结论，不输出具体 EC / ppm 数值。\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\nAssesses hydroponic nutrient concentration qualitatively from root and leaf images or videos, identifying visual stress indicators and returning structured adjustment guidance.\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 hydroponic growers, plant factory operators, researchers, and developers use this skill to inspect root and leaf media for signs of nutrient solution imbalance. It supports qualitative care decisions such as dilution, nutrient supplementation, water changes, and follow-up observation without producing EC or ppm measurements.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Plant images, videos, supplied URLs, report history requests, and account-linked metadata may be sent to configured Lifeemergence/API endpoints.\n\nMitigation: Review the configured API endpoints before use and avoid submitting sensitive local files or private/internal URLs.\n\nRisk: The skill may silently create or reuse an account identity and store tokens locally.\n\nMitigation: Inspect the workspace data directory for retained user and token records and deploy only where this storage behavior is acceptable.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-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, shell commands, guidance]\n\n**Output Format:** [Markdown or JSON structured analysis report with findings, adjustment advice, and report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Accepts local image/video paths or public media URLs; history queries return API-derived report lists.]\n\n## Skill Version(s):\n\n1.0.7 (source: server release evidence; artifact frontmatter lists 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.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, 40223 bytes\n\nFiles: references/api_doc.md (1660b), scripts/__init__.py (72b), scripts/config.py (698b), scripts/config.yaml (3b), scripts/skill.py (588b), scripts/smyx_hydroponic_nutrient_assessment_analysis.py (3605b), skill-card.md (2524b), SKILL.md (12599b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.6:SKILL.md\n\n---\nname: \"smyx-hydroponic-nutrient-assessment-analysis\"\ndescription: \"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\"\nversion: \"1.0.10\"\nlicense: \"MIT-0\"\n---\n\n# 💧 Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水培植物营养液浓度视觉评估** |\n| 🎯 核心目标 | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` |\n\nUsing fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent\ncontainers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early\nstress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling)\nto judge whether the nutrient solution is too concentrated or too dilute, and outputs adjustment advice (dilute with\nfresh water or add concentrated nutrient solution). This skill lets hydroponic growers quickly assess nutrient solution\nstatus without an EC meter. Application scenarios: hydroponic growing racks, home hydroponic vegetables, plant\nfactories, research hydroponic systems. The system periodically (e.g., weekly) captures root and leaf images,\nautomatically analyzes them and pushes alerts (e.g., 'roots are turning yellow, leaf tips are burned, nutrient\nconcentration may be too high, suggest adding fresh water to dilute'). Skill features: hydroponic beginners often suffer\nfrom burnt seedlings or nutrient deficiency due to wrong nutrient concentration. AI visual assessment lets users judge\nquickly without instruments, lowering the learning curve. Can be integrated into hydroponic racks or mobile apps to\nimprove user experience and success rate.\n\n通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。该技能帮助水培种植者在不使用EC计的情况下，快速评估营养液状态。应用场景：水培种植架、家庭水培蔬菜、植物工厂、科研水培装置。系统定期（如每周）拍摄根部和叶部图像，自动分析并推送提醒（如'根系变黄，叶尖灼伤，营养液浓度可能过高，建议加入清水稀释'\n）。技能特点：水培新手常因营养液浓度不当导致烧苗或缺素。通过AI视觉评估，用户无需仪器即可快速判断，降低种植门槛。该技能可集成到水培种植架或手机APP中，提升用户体验和成功率。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水培植物营养 AI。你的任务是分析水培植物的根系图像（透明容器内）和叶片图像，识别根须颜色、根尖状态、叶片灼伤和黄化等特征，判断营养液浓度是否适宜，输出调整建议。不要提供具体的 EC 值或 ppm 数值，仅基于视觉特征给出定性结论与方向性调整建议。** |\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\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水培植物根系/叶片图像或视频 URL/文件需要分析时，默认触发本技能进行营养液浓度视觉评估 |\n| 🔎 明确分析意图 | 当用户明确提及水培、营养液、EC、烧苗、根系发黄、根系发黑、根腐、叶尖灼伤、叶缘焦枯、水培蔬菜、种植架、营养液浓度、稀释、换液等关键词，并且上传了图像/视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看水培营养液历史报告、营养液浓度评估清单、水培诊断报告清单、查询历史水培评估、显示所有水培报告、显示根系健康诊断报告，查询营养液调整建议清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_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_hydroponic_nutrient_concentration_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水培根系/叶片图像或视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水培根系/叶片图像或视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，水培植物场景默认 `other` | 按需填写 |\n| `--list` | 显示水培营养液浓度评估历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_hydroponic_nutrient_concentration_assessment_analysis.py`](scripts/smyx_hydroponic_nutrient_concentration_assessment_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| 🧑‍⚖️ 结果性质 | 评估结果仅供水培养护参考，严重过浓/严重过稀建议立即换液并观察 24 小时 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json\n```\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-hydroponic-nutrient-assessment-analysis\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1786483355086\n}\n\nFile v1.0.6:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放水培植物营养液浓度视觉评估 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动水培营养液浓度评估任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果与调整建议\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史评估记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` - 水培植物营养液浓度视觉评估\n\n## 输入约束\n\n- 推荐分别拍摄根系（透明容器内）与叶片（新叶+老叶）的高清图像\n- 拍摄环境建议光照均匀、镜头无水雾，避免反光遮挡根须\n- 关键观测特征：\n    - 根须颜色（白色健康 / 黄色初期胁迫 / 褐色严重胁迫 / 黑色腐烂）\n    - 根尖状态（饱满白尖 / 萎缩 / 发黑）\n    - 叶片：叶尖灼伤、叶缘焦枯、叶片黄化、卷曲\n\n## 输出字段（参考）\n\n- `root_color_grade` - 根系颜色等级（healthy / mild_stress / severe_stress / rot）\n- `leaf_burn_signs` - 叶片灼伤体征（叶尖灼伤 / 叶缘焦枯 / 黄化 / 卷曲）\n- `nutrient_status` - 营养液浓度判断（适宜 / 偏浓 / 偏稀 / 严重过浓 / 严重过稀）\n- `adjust_advice` - 调整建议（如\"加入清水稀释\"、\"补充浓缩营养液\"、\"立即换液并清洗根系\"）\n\n> 仅基于视觉特征给出定性结论，不输出具体 EC / ppm 数值。\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\nAssesses hydroponic root and leaf images or videos to identify visual stress signs, judge whether nutrient concentration is likely too high or too low, and return qualitative adjustment advice.\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 hydroponic growers, plant factory operators, researchers, and developers use this skill to evaluate plant root and leaf media for signs that nutrient solution concentration is too concentrated, too dilute, or visually acceptable. It returns qualitative findings and adjustment guidance rather than EC or ppm measurements.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Plant images, videos, or provided media URLs may be sent to a configured external service for analysis.\n\nMitigation: Use only media appropriate for external processing and avoid sensitive local files or private URLs.\n\nRisk: The skill can silently create or reuse an identity and query cloud report history.\n\nMitigation: Confirm that automatic identity handling and cloud history lookup fit the workspace policy before installing or running the skill.\n\nRisk: Local token persistence may leave service credentials or session state in the workspace.\n\nMitigation: Run in an approved workspace and clear persisted tokens or state according to local security policy.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-analysis)\n- [Hydroponic Nutrient Assessment API Documentation](references/api_doc.md)\n- [Analysis API Documentation](skills/smyx_analysis/references/api_doc.md)\n- [Skill Demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, code, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown and JSON-style structured analysis text, with optional shell commands and saved output files.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include report links and cloud history results returned by the configured external service.]\n\n## Skill Version(s):\n\n1.0.6 (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.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, 40341 bytes\n\nFiles: references/api_doc.md (1660b), scripts/__init__.py (72b), scripts/config.py (698b), scripts/config.yaml (3b), scripts/skill.py (588b), scripts/smyx_hydroponic_nutrient_assessment_analysis.py (3605b), skill-card.md (2792b), SKILL.md (12599b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.5:SKILL.md\n\n---\nname: \"smyx-hydroponic-nutrient-assessment-analysis\"\ndescription: \"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\"\nversion: \"1.0.10\"\nlicense: \"MIT-0\"\n---\n\n# 💧 Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水培植物营养液浓度视觉评估** |\n| 🎯 核心目标 | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` |\n\nUsing fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent\ncontainers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early\nstress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling)\nto judge whether the nutrient solution is too concentrated or too dilute, and outputs adjustment advice (dilute with\nfresh water or add concentrated nutrient solution). This skill lets hydroponic growers quickly assess nutrient solution\nstatus without an EC meter. Application scenarios: hydroponic growing racks, home hydroponic vegetables, plant\nfactories, research hydroponic systems. The system periodically (e.g., weekly) captures root and leaf images,\nautomatically analyzes them and pushes alerts (e.g., 'roots are turning yellow, leaf tips are burned, nutrient\nconcentration may be too high, suggest adding fresh water to dilute'). Skill features: hydroponic beginners often suffer\nfrom burnt seedlings or nutrient deficiency due to wrong nutrient concentration. AI visual assessment lets users judge\nquickly without instruments, lowering the learning curve. Can be integrated into hydroponic racks or mobile apps to\nimprove user experience and success rate.\n\n通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。该技能帮助水培种植者在不使用EC计的情况下，快速评估营养液状态。应用场景：水培种植架、家庭水培蔬菜、植物工厂、科研水培装置。系统定期（如每周）拍摄根部和叶部图像，自动分析并推送提醒（如'根系变黄，叶尖灼伤，营养液浓度可能过高，建议加入清水稀释'\n）。技能特点：水培新手常因营养液浓度不当导致烧苗或缺素。通过AI视觉评估，用户无需仪器即可快速判断，降低种植门槛。该技能可集成到水培种植架或手机APP中，提升用户体验和成功率。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水培植物营养 AI。你的任务是分析水培植物的根系图像（透明容器内）和叶片图像，识别根须颜色、根尖状态、叶片灼伤和黄化等特征，判断营养液浓度是否适宜，输出调整建议。不要提供具体的 EC 值或 ppm 数值，仅基于视觉特征给出定性结论与方向性调整建议。** |\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\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水培植物根系/叶片图像或视频 URL/文件需要分析时，默认触发本技能进行营养液浓度视觉评估 |\n| 🔎 明确分析意图 | 当用户明确提及水培、营养液、EC、烧苗、根系发黄、根系发黑、根腐、叶尖灼伤、叶缘焦枯、水培蔬菜、种植架、营养液浓度、稀释、换液等关键词，并且上传了图像/视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看水培营养液历史报告、营养液浓度评估清单、水培诊断报告清单、查询历史水培评估、显示所有水培报告、显示根系健康诊断报告，查询营养液调整建议清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_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_hydroponic_nutrient_concentration_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水培根系/叶片图像或视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水培根系/叶片图像或视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，水培植物场景默认 `other` | 按需填写 |\n| `--list` | 显示水培营养液浓度评估历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_hydroponic_nutrient_concentration_assessment_analysis.py`](scripts/smyx_hydroponic_nutrient_concentration_assessment_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| 🧑‍⚖️ 结果性质 | 评估结果仅供水培养护参考，严重过浓/严重过稀建议立即换液并观察 24 小时 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json\n```\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-hydroponic-nutrient-assessment-analysis\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1786016012176\n}\n\nFile v1.0.5:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放水培植物营养液浓度视觉评估 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动水培营养液浓度评估任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果与调整建议\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史评估记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` - 水培植物营养液浓度视觉评估\n\n## 输入约束\n\n- 推荐分别拍摄根系（透明容器内）与叶片（新叶+老叶）的高清图像\n- 拍摄环境建议光照均匀、镜头无水雾，避免反光遮挡根须\n- 关键观测特征：\n    - 根须颜色（白色健康 / 黄色初期胁迫 / 褐色严重胁迫 / 黑色腐烂）\n    - 根尖状态（饱满白尖 / 萎缩 / 发黑）\n    - 叶片：叶尖灼伤、叶缘焦枯、叶片黄化、卷曲\n\n## 输出字段（参考）\n\n- `root_color_grade` - 根系颜色等级（healthy / mild_stress / severe_stress / rot）\n- `leaf_burn_signs` - 叶片灼伤体征（叶尖灼伤 / 叶缘焦枯 / 黄化 / 卷曲）\n- `nutrient_status` - 营养液浓度判断（适宜 / 偏浓 / 偏稀 / 严重过浓 / 严重过稀）\n- `adjust_advice` - 调整建议（如\"加入清水稀释\"、\"补充浓缩营养液\"、\"立即换液并清洗根系\"）\n\n> 仅基于视觉特征给出定性结论，不输出具体 EC / ppm 数值。\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:\n\nThis skill analyzes hydroponic root and leaf images or videos to qualitatively assess nutrient concentration status and provide directionally appropriate adjustment advice.\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\nHydroponic growers, plant-factory operators, home gardeners, and developers integrating ClawHub skills use this agent to review root and leaf media for visual signs of overly concentrated or overly dilute nutrient solution. It returns qualitative findings, adjustment guidance, report links, and history-list output for follow-up review.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Hydroponic media inputs or URLs are sent to a lifeemergence.com cloud service for analysis and report retrieval.\n\nMitigation: Use only intended hydroponic images, videos, or public URLs, and review the cloud-service data handling expectations before installation.\n\nRisk: The skill can create or reuse a local/cloud identity and store authentication tokens for report history.\n\nMitigation: Check the workspace data directory for retained smyx user or token database files when removing the skill, and avoid sharing workspaces that may contain those files.\n\nRisk: Visual-only nutrient assessment may be incomplete for operational decisions.\n\nMitigation: Treat results as qualitative growing guidance, and verify severe concentration concerns with direct observation or measurement before making high-impact changes.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-analysis)\n- [Skill demo](https://lifeemergence.com/sample.html)\n- [Hydroponic nutrient assessment API documentation](references/api_doc.md)\n- [Shared analysis API documentation](skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, guidance]\n\n**Output Format:** [Structured report text or JSON with qualitative nutrient status, visual findings, adjustment advice, and report links; history queries can be formatted as Markdown tables.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Supports local file paths or public media URLs for jpg, png, mp4, avi, and mov inputs up to 10 MB; output can optionally be written to a file.]\n\n## Skill Version(s):\n\n1.0.5 (source: server release metadata; artifact frontmatter reports 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.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, 40288 bytes\n\nFiles: references/api_doc.md (1660b), scripts/__init__.py (72b), scripts/config.py (698b), scripts/config.yaml (3b), scripts/skill.py (588b), scripts/smyx_hydroponic_nutrient_assessment_analysis.py (3605b), skill-card.md (2749b), SKILL.md (12598b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (163b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: \"smyx-hydroponic-nutrient-assessment-analysis\"\ndescription: \"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\"\nversion: \"1.0.9\"\nlicense: \"MIT-0\"\n---\n\n# 💧 Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水培植物营养液浓度视觉评估** |\n| 🎯 核心目标 | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` |\n\nUsing fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent\ncontainers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early\nstress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling)\nto judge whether the nutrient solution is too concentrated or too dilute, and outputs adjustment advice (dilute with\nfresh water or add concentrated nutrient solution). This skill lets hydroponic growers quickly assess nutrient solution\nstatus without an EC meter. Application scenarios: hydroponic growing racks, home hydroponic vegetables, plant\nfactories, research hydroponic systems. The system periodically (e.g., weekly) captures root and leaf images,\nautomatically analyzes them and pushes alerts (e.g., 'roots are turning yellow, leaf tips are burned, nutrient\nconcentration may be too high, suggest adding fresh water to dilute'). Skill features: hydroponic beginners often suffer\nfrom burnt seedlings or nutrient deficiency due to wrong nutrient concentration. AI visual assessment lets users judge\nquickly without instruments, lowering the learning curve. Can be integrated into hydroponic racks or mobile apps to\nimprove user experience and success rate.\n\n通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。该技能帮助水培种植者在不使用EC计的情况下，快速评估营养液状态。应用场景：水培种植架、家庭水培蔬菜、植物工厂、科研水培装置。系统定期（如每周）拍摄根部和叶部图像，自动分析并推送提醒（如'根系变黄，叶尖灼伤，营养液浓度可能过高，建议加入清水稀释'\n）。技能特点：水培新手常因营养液浓度不当导致烧苗或缺素。通过AI视觉评估，用户无需仪器即可快速判断，降低种植门槛。该技能可集成到水培种植架或手机APP中，提升用户体验和成功率。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水培植物营养 AI。你的任务是分析水培植物的根系图像（透明容器内）和叶片图像，识别根须颜色、根尖状态、叶片灼伤和黄化等特征，判断营养液浓度是否适宜，输出调整建议。不要提供具体的 EC 值或 ppm 数值，仅基于视觉特征给出定性结论与方向性调整建议。** |\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\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水培植物根系/叶片图像或视频 URL/文件需要分析时，默认触发本技能进行营养液浓度视觉评估 |\n| 🔎 明确分析意图 | 当用户明确提及水培、营养液、EC、烧苗、根系发黄、根系发黑、根腐、叶尖灼伤、叶缘焦枯、水培蔬菜、种植架、营养液浓度、稀释、换液等关键词，并且上传了图像/视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看水培营养液历史报告、营养液浓度评估清单、水培诊断报告清单、查询历史水培评估、显示所有水培报告、显示根系健康诊断报告，查询营养液调整建议清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_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_hydroponic_nutrient_concentration_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水培根系/叶片图像或视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水培根系/叶片图像或视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，水培植物场景默认 `other` | 按需填写 |\n| `--list` | 显示水培营养液浓度评估历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_hydroponic_nutrient_concentration_assessment_analysis.py`](scripts/smyx_hydroponic_nutrient_concentration_assessment_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| 🧑‍⚖️ 结果性质 | 评估结果仅供水培养护参考，严重过浓/严重过稀建议立即换液并观察 24 小时 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json\n```\n\nFile v1.0.4:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-hydroponic-nutrient-assessment-analysis\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1785518612601\n}\n\nFile v1.0.4:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放水培植物营养液浓度视觉评估 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动水培营养液浓度评估任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果与调整建议\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史评估记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` - 水培植物营养液浓度视觉评估\n\n## 输入约束\n\n- 推荐分别拍摄根系（透明容器内）与叶片（新叶+老叶）的高清图像\n- 拍摄环境建议光照均匀、镜头无水雾，避免反光遮挡根须\n- 关键观测特征：\n    - 根须颜色（白色健康 / 黄色初期胁迫 / 褐色严重胁迫 / 黑色腐烂）\n    - 根尖状态（饱满白尖 / 萎缩 / 发黑）\n    - 叶片：叶尖灼伤、叶缘焦枯、叶片黄化、卷曲\n\n## 输出字段（参考）\n\n- `root_color_grade` - 根系颜色等级（healthy / mild_stress / severe_stress / rot）\n- `leaf_burn_signs` - 叶片灼伤体征（叶尖灼伤 / 叶缘焦枯 / 黄化 / 卷曲）\n- `nutrient_status` - 营养液浓度判断（适宜 / 偏浓 / 偏稀 / 严重过浓 / 严重过稀）\n- `adjust_advice` - 调整建议（如\"加入清水稀释\"、\"补充浓缩营养液\"、\"立即换液并清洗根系\"）\n\n> 仅基于视觉特征给出定性结论，不输出具体 EC / ppm 数值。\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>\nAssesses hydroponic plant root and leaf images or video to identify visual stress indicators, qualitatively judge nutrient solution concentration, and provide adjustment 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 hydroponic growers, plant factory operators, and developers use this skill to review root and leaf media for qualitative nutrient concentration status and directionally adjust dilution or nutrient supplementation. It is intended as visual support for cultivation decisions, not as a replacement for direct EC or ppm measurement. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Plant images, videos, and report-history requests may be sent to external cloud APIs for processing. <br>\nMitigation: Deploy only where cloud processing is acceptable, disclose upload behavior to users, and avoid submitting sensitive media. <br>\nRisk: The skill may silently create or reuse an identity and store credentials or tokens locally. <br>\nMitigation: Review token storage and account-association behavior before deployment, restrict local file access, and rotate credentials if exposure is suspected. <br>\nRisk: Visual assessment can provide misleading nutrient guidance because it does not measure EC or ppm directly. <br>\nMitigation: Treat outputs as cultivation guidance, confirm serious findings with direct measurements or expert review, and monitor plants after adjustments. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-analysis) <br>\n- [API Documentation](references/api_doc.md) <br>\n- [SMYX Analysis API Documentation](skills/smyx_analysis/references/api_doc.md) <br>\n- [Skill Demo](https://lifeemergence.com/sample.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown and JSON-style structured analysis with report links when available] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Outputs qualitative visual findings, nutrient concentration status, adjustment advice, and optional cloud history-report listings.] <br>\n\n## Skill Version(s): <br>\n1.0.4 (source: 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, 40245 bytes\n\nFiles: references/api_doc.md (1660b), scripts/__init__.py (72b), scripts/config.py (698b), scripts/config.yaml (3b), scripts/skill.py (588b), scripts/smyx_hydroponic_nutrient_assessment_analysis.py (3605b), skill-card.md (2631b), SKILL.md (12598b), 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.3:SKILL.md\n\n---\nname: \"smyx-hydroponic-nutrient-assessment-analysis\"\ndescription: \"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\"\nversion: \"1.0.7\"\nlicense: \"MIT-0\"\n---\n\n# 💧 Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水培植物营养液浓度视觉评估** |\n| 🎯 核心目标 | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` |\n\nUsing fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent\ncontainers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early\nstress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling)\nto judge whether the nutrient solution is too concentrated or too dilute, and outputs adjustment advice (dilute with\nfresh water or add concentrated nutrient solution). This skill lets hydroponic growers quickly assess nutrient solution\nstatus without an EC meter. Application scenarios: hydroponic growing racks, home hydroponic vegetables, plant\nfactories, research hydroponic systems. The system periodically (e.g., weekly) captures root and leaf images,\nautomatically analyzes them and pushes alerts (e.g., 'roots are turning yellow, leaf tips are burned, nutrient\nconcentration may be too high, suggest adding fresh water to dilute'). Skill features: hydroponic beginners often suffer\nfrom burnt seedlings or nutrient deficiency due to wrong nutrient concentration. AI visual assessment lets users judge\nquickly without instruments, lowering the learning curve. Can be integrated into hydroponic racks or mobile apps to\nimprove user experience and success rate.\n\n通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。该技能帮助水培种植者在不使用EC计的情况下，快速评估营养液状态。应用场景：水培种植架、家庭水培蔬菜、植物工厂、科研水培装置。系统定期（如每周）拍摄根部和叶部图像，自动分析并推送提醒（如'根系变黄，叶尖灼伤，营养液浓度可能过高，建议加入清水稀释'\n）。技能特点：水培新手常因营养液浓度不当导致烧苗或缺素。通过AI视觉评估，用户无需仪器即可快速判断，降低种植门槛。该技能可集成到水培种植架或手机APP中，提升用户体验和成功率。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水培植物营养 AI。你的任务是分析水培植物的根系图像（透明容器内）和叶片图像，识别根须颜色、根尖状态、叶片灼伤和黄化等特征，判断营养液浓度是否适宜，输出调整建议。不要提供具体的 EC 值或 ppm 数值，仅基于视觉特征给出定性结论与方向性调整建议。** |\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\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水培植物根系/叶片图像或视频 URL/文件需要分析时，默认触发本技能进行营养液浓度视觉评估 |\n| 🔎 明确分析意图 | 当用户明确提及水培、营养液、EC、烧苗、根系发黄、根系发黑、根腐、叶尖灼伤、叶缘焦枯、水培蔬菜、种植架、营养液浓度、稀释、换液等关键词，并且上传了图像/视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看水培营养液历史报告、营养液浓度评估清单、水培诊断报告清单、查询历史水培评估、显示所有水培报告、显示根系健康诊断报告，查询营养液调整建议清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_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_hydroponic_nutrient_concentration_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水培根系/叶片图像或视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水培根系/叶片图像或视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，水培植物场景默认 `other` | 按需填写 |\n| `--list` | 显示水培营养液浓度评估历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_hydroponic_nutrient_concentration_assessment_analysis.py`](scripts/smyx_hydroponic_nutrient_concentration_assessment_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| 🧑‍⚖️ 结果性质 | 评估结果仅供水培养护参考，严重过浓/严重过稀建议立即换液并观察 24 小时 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json\n```\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-hydroponic-nutrient-assessment-analysis\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1784397867867\n}\n\nFile v1.0.3:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放水培植物营养液浓度视觉评估 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动水培营养液浓度评估任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果与调整建议\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史评估记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` - 水培植物营养液浓度视觉评估\n\n## 输入约束\n\n- 推荐分别拍摄根系（透明容器内）与叶片（新叶+老叶）的高清图像\n- 拍摄环境建议光照均匀、镜头无水雾，避免反光遮挡根须\n- 关键观测特征：\n    - 根须颜色（白色健康 / 黄色初期胁迫 / 褐色严重胁迫 / 黑色腐烂）\n    - 根尖状态（饱满白尖 / 萎缩 / 发黑）\n    - 叶片：叶尖灼伤、叶缘焦枯、叶片黄化、卷曲\n\n## 输出字段（参考）\n\n- `root_color_grade` - 根系颜色等级（healthy / mild_stress / severe_stress / rot）\n- `leaf_burn_signs` - 叶片灼伤体征（叶尖灼伤 / 叶缘焦枯 / 黄化 / 卷曲）\n- `nutrient_status` - 营养液浓度判断（适宜 / 偏浓 / 偏稀 / 严重过浓 / 严重过稀）\n- `adjust_advice` - 调整建议（如\"加入清水稀释\"、\"补充浓缩营养液\"、\"立即换液并清洗根系\"）\n\n> 仅基于视觉特征给出定性结论，不输出具体 EC / ppm 数值。\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>\nThis skill analyzes hydroponic root and leaf images or videos to qualitatively assess nutrient concentration status and provide adjustment guidance without producing EC or ppm values. <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>\nHydroponic growers, plant-factory operators, and developers integrating plant monitoring workflows use this skill to analyze root and leaf media, identify visual stress indicators, and receive qualitative nutrient adjustment advice. It can also query cloud-hosted historical assessment records associated with the local user identity. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Cloud analysis sends selected plant media and account-linked metadata to lifeemergence.com services. <br>\nMitigation: Use only intended hydroponic media, avoid unrelated private files, and confirm that sharing the media with the external service is acceptable before running analysis. <br>\nRisk: The skill can create or reuse a local identity and store service tokens in the workspace data directory. <br>\nMitigation: Review or clear data/smyx-api-key.txt and smyx-common-claw.db before use, and restrict access to workspaces where those files may be created. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-analysis) <br>\n- [Skill Demo](https://lifeemergence.com/sample.html) <br>\n- [API Interface Documentation](artifact/references/api_doc.md) <br>\n- [SMYX Analysis API Documentation](artifact/skills/smyx_analysis/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown and JSON-like structured analysis text with optional saved output files] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Outputs include qualitative nutrient status, root and leaf observations, adjustment advice, historical report records, and report links when returned by the service.] <br>\n\n## Skill Version(s): <br>\n1.0.3 (source: server-resolved release metadata; artifact frontmatter reports 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.3:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.3:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.2: 31 files, 40160 bytes\n\nFiles: references/api_doc.md (1660b), scripts/__init__.py (72b), scripts/config.py (698b), scripts/config.yaml (3b), scripts/skill.py (588b), scripts/smyx_hydroponic_nutrient_assessment_analysis.py (3605b), skill-card.md (2632b), SKILL.md (12598b), 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 (163b)\n\nFile v1.0.2:SKILL.md\n\n---\nname: \"smyx-hydroponic-nutrient-assessment-analysis\"\ndescription: \"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\"\nversion: \"1.0.6\"\nlicense: \"MIT-0\"\n---\n\n# 💧 Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水培植物营养液浓度视觉评估** |\n| 🎯 核心目标 | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` |\n\nUsing fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent\ncontainers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early\nstress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling)\nto judge whether the nutrient solution is too concentrated or too dilute, and outputs adjustment advice (dilute with\nfresh water or add concentrated nutrient solution). This skill lets hydroponic growers quickly assess nutrient solution\nstatus without an EC meter. Application scenarios: hydroponic growing racks, home hydroponic vegetables, plant\nfactories, research hydroponic systems. The system periodically (e.g., weekly) captures root and leaf images,\nautomatically analyzes them and pushes alerts (e.g., 'roots are turning yellow, leaf tips are burned, nutrient\nconcentration may be too high, suggest adding fresh water to dilute'). Skill features: hydroponic beginners often suffer\nfrom burnt seedlings or nutrient deficiency due to wrong nutrient concentration. AI visual assessment lets users judge\nquickly without instruments, lowering the learning curve. Can be integrated into hydroponic racks or mobile apps to\nimprove user experience and success rate.\n\n通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。该技能帮助水培种植者在不使用EC计的情况下，快速评估营养液状态。应用场景：水培种植架、家庭水培蔬菜、植物工厂、科研水培装置。系统定期（如每周）拍摄根部和叶部图像，自动分析并推送提醒（如'根系变黄，叶尖灼伤，营养液浓度可能过高，建议加入清水稀释'\n）。技能特点：水培新手常因营养液浓度不当导致烧苗或缺素。通过AI视觉评估，用户无需仪器即可快速判断，降低种植门槛。该技能可集成到水培种植架或手机APP中，提升用户体验和成功率。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水培植物营养 AI。你的任务是分析水培植物的根系图像（透明容器内）和叶片图像，识别根须颜色、根尖状态、叶片灼伤和黄化等特征，判断营养液浓度是否适宜，输出调整建议。不要提供具体的 EC 值或 ppm 数值，仅基于视觉特征给出定性结论与方向性调整建议。** |\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\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水培植物根系/叶片图像或视频 URL/文件需要分析时，默认触发本技能进行营养液浓度视觉评估 |\n| 🔎 明确分析意图 | 当用户明确提及水培、营养液、EC、烧苗、根系发黄、根系发黑、根腐、叶尖灼伤、叶缘焦枯、水培蔬菜、种植架、营养液浓度、稀释、换液等关键词，并且上传了图像/视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看水培营养液历史报告、营养液浓度评估清单、水培诊断报告清单、查询历史水培评估、显示所有水培报告、显示根系健康诊断报告，查询营养液调整建议清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_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_hydroponic_nutrient_concentration_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水培根系/叶片图像或视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水培根系/叶片图像或视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，水培植物场景默认 `other` | 按需填写 |\n| `--list` | 显示水培营养液浓度评估历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_hydroponic_nutrient_concentration_assessment_analysis.py`](scripts/smyx_hydroponic_nutrient_concentration_assessment_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| 🧑‍⚖️ 结果性质 | 评估结果仅供水培养护参考，严重过浓/严重过稀建议立即换液并观察 24 小时 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json\n```\n\nFile v1.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-hydroponic-nutrient-assessment-analysis\",\n  \"version\": \"1.0.2\",\n  \"publishedAt\": 1783662569634\n}\n\nFile v1.0.2:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放水培植物营养液浓度视觉评估 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动水培营养液浓度评估任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果与调整建议\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史评估记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` - 水培植物营养液浓度视觉评估\n\n## 输入约束\n\n- 推荐分别拍摄根系（透明容器内）与叶片（新叶+老叶）的高清图像\n- 拍摄环境建议光照均匀、镜头无水雾，避免反光遮挡根须\n- 关键观测特征：\n    - 根须颜色（白色健康 / 黄色初期胁迫 / 褐色严重胁迫 / 黑色腐烂）\n    - 根尖状态（饱满白尖 / 萎缩 / 发黑）\n    - 叶片：叶尖灼伤、叶缘焦枯、叶片黄化、卷曲\n\n## 输出字段（参考）\n\n- `root_color_grade` - 根系颜色等级（healthy / mild_stress / severe_stress / rot）\n- `leaf_burn_signs` - 叶片灼伤体征（叶尖灼伤 / 叶缘焦枯 / 黄化 / 卷曲）\n- `nutrient_status` - 营养液浓度判断（适宜 / 偏浓 / 偏稀 / 严重过浓 / 严重过稀）\n- `adjust_advice` - 调整建议（如\"加入清水稀释\"、\"补充浓缩营养液\"、\"立即换液并清洗根系\"）\n\n> 仅基于视觉特征给出定性结论，不输出具体 EC / ppm 数值。\n\nFile v1.0.2:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.2:scripts/config.yaml\n\n{}\n\nFile v1.0.2:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.2:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.2:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.2:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.2:skill-card.md\n\n## Description: <br>\nUses root and leaf images or videos from hydroponic systems to provide a qualitative visual assessment of nutrient concentration and directional adjustment advice. <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 hydroponic growers, plant-factory operators, and developers use this skill to analyze root and leaf media, identify visual stress patterns, and receive qualitative nutrient adjustment guidance without relying on EC or ppm readings. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Plant images, videos, URLs, and identity-linked metadata are sent to LifeEmergence remote services for analysis and history retrieval. <br>\nMitigation: Use the skill only with media and report metadata approved for external processing, and avoid submitting sensitive or identifying imagery unless the remote service terms are acceptable. <br>\nRisk: The skill can create or reuse a local workspace identity and store returned access tokens in a SQLite database. <br>\nMitigation: Install and run it in a workspace where local identity files and token storage are acceptable, and clear the workspace data store when access should no longer persist. <br>\nRisk: The nutrient assessment is qualitative and based on visual symptoms rather than direct EC or ppm measurement. <br>\nMitigation: Treat recommendations as cultivation guidance and confirm critical nutrient decisions with appropriate measurement tools or expert review. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-analysis) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n- [API documentation](references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, json, guidance] <br>\n**Output Format:** [Structured analysis report as text, JSON, or Markdown table with report links] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Qualitative visual assessment only; does not output EC or ppm values.] <br>\n\n## Skill Version(s): <br>\n1.0.2 (source: server release evidence; artifact frontmatter lists 1.0.6) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.2:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.2:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.1: 31 files, 39890 bytes\n\nFiles: references/api_doc.md (1660b), scripts/__init__.py (72b), scripts/config.py (698b), scripts/config.yaml (3b), scripts/skill.py (588b), scripts/smyx_hydroponic_nutrient_assessment_analysis.py (3605b), skill-card.md (2540b), SKILL.md (12598b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (22801b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28605b), _meta.json (163b)\n\nFile v1.0.1:SKILL.md\n\n---\nname: \"smyx-hydroponic-nutrient-assessment-analysis\"\ndescription: \"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\"\nversion: \"1.0.4\"\nlicense: \"MIT-0\"\n---\n\n# 💧 Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水培植物营养液浓度视觉评估** |\n| 🎯 核心目标 | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` |\n\nUsing fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent\ncontainers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early\nstress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling)\nto judge whether the nutrient solution is too concentrated or too dilute, and outputs adjustment advice (dilute with\nfresh water or add concentrated nutrient solution). This skill lets hydroponic growers quickly assess nutrient solution\nstatus without an EC meter. Application scenarios: hydroponic growing racks, home hydroponic vegetables, plant\nfactories, research hydroponic systems. The system periodically (e.g., weekly) captures root and leaf images,\nautomatically analyzes them and pushes alerts (e.g., 'roots are turning yellow, leaf tips are burned, nutrient\nconcentration may be too high, suggest adding fresh water to dilute'). Skill features: hydroponic beginners often suffer\nfrom burnt seedlings or nutrient deficiency due to wrong nutrient concentration. AI visual assessment lets users judge\nquickly without instruments, lowering the learning curve. Can be integrated into hydroponic racks or mobile apps to\nimprove user experience and success rate.\n\n通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。该技能帮助水培种植者在不使用EC计的情况下，快速评估营养液状态。应用场景：水培种植架、家庭水培蔬菜、植物工厂、科研水培装置。系统定期（如每周）拍摄根部和叶部图像，自动分析并推送提醒（如'根系变黄，叶尖灼伤，营养液浓度可能过高，建议加入清水稀释'\n）。技能特点：水培新手常因营养液浓度不当导致烧苗或缺素。通过AI视觉评估，用户无需仪器即可快速判断，降低种植门槛。该技能可集成到水培种植架或手机APP中，提升用户体验和成功率。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水培植物营养 AI。你的任务是分析水培植物的根系图像（透明容器内）和叶片图像，识别根须颜色、根尖状态、叶片灼伤和黄化等特征，判断营养液浓度是否适宜，输出调整建议。不要提供具体的 EC 值或 ppm 数值，仅基于视觉特征给出定性结论与方向性调整建议。** |\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\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供水培植物根系/叶片图像或视频 URL/文件需要分析时，默认触发本技能进行营养液浓度视觉评估 |\n| 🔎 明确分析意图 | 当用户明确提及水培、营养液、EC、烧苗、根系发黄、根系发黑、根腐、叶尖灼伤、叶缘焦枯、水培蔬菜、种植架、营养液浓度、稀释、换液等关键词，并且上传了图像/视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能** ：查看水培营养液历史报告、营养液浓度评估清单、水培诊断报告清单、查询历史水培评估、显示所有水培报告、显示根系健康诊断报告，查询营养液调整建议清单 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_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_hydroponic_nutrient_concentration_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地水培根系/叶片图像或视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络水培根系/叶片图像或视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，水培植物场景默认 `other` | 按需填写 |\n| `--list` | 显示水培营养液浓度评估历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_hydroponic_nutrient_concentration_assessment_analysis.py`](scripts/smyx_hydroponic_nutrient_concentration_assessment_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| 🧑‍⚖️ 结果性质 | 评估结果仅供水培养护参考，严重过浓/严重过稀建议立即换液并观察 24 小时 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网络地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📜 报告输出 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json\n```\n\nFile v1.0.1:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-hydroponic-nutrient-assessment-analysis\",\n  \"version\": \"1.0.1\",\n  \"publishedAt\": 1782850946669\n}\n\nFile v1.0.1:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放水培植物营养液浓度视觉评估 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动水培营养液浓度评估任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果与调整建议\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史评估记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` - 水培植物营养液浓度视觉评估\n\n## 输入约束\n\n- 推荐分别拍摄根系（透明容器内）与叶片（新叶+老叶）的高清图像\n- 拍摄环境建议光照均匀、镜头无水雾，避免反光遮挡根须\n- 关键观测特征：\n    - 根须颜色（白色健康 / 黄色初期胁迫 / 褐色严重胁迫 / 黑色腐烂）\n    - 根尖状态（饱满白尖 / 萎缩 / 发黑）\n    - 叶片：叶尖灼伤、叶缘焦枯、叶片黄化、卷曲\n\n## 输出字段（参考）\n\n- `root_color_grade` - 根系颜色等级（healthy / mild_stress / severe_stress / rot）\n- `leaf_burn_signs` - 叶片灼伤体征（叶尖灼伤 / 叶缘焦枯 / 黄化 / 卷曲）\n- `nutrient_status` - 营养液浓度判断（适宜 / 偏浓 / 偏稀 / 严重过浓 / 严重过稀）\n- `adjust_advice` - 调整建议（如\"加入清水稀释\"、\"补充浓缩营养液\"、\"立即换液并清洗根系\"）\n\n> 仅基于视觉特征给出定性结论，不输出具体 EC / ppm 数值。\n\nFile v1.0.1:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.1:scripts/config.yaml\n\n{}\n\nFile v1.0.1:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.1:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.1:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.1:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.1:skill-card.md\n\n## Description: <br>\nAssesses hydroponic root and leaf images or videos for visual signs of nutrient concentration imbalance and returns qualitative status, adjustment advice, report links, or report history. <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>\nHydroponic growers, plant-factory operators, researchers, and agents assisting them use this skill to analyze root and leaf media, identify visual signs of nutrient solution imbalance, and produce qualitative adjustment guidance or history reports. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Plant images or videos and report data may be sent to the publisher's remote service. <br>\nMitigation: Avoid sensitive facility footage or private media URLs unless the publisher clarifies retention, deletion, and access controls. <br>\nRisk: Analysis and history queries are silently associated with a local or upstream identity, and reusable tokens may be stored in workspace data. <br>\nMitigation: Use only in workspaces where automatic identity reuse and local token storage are acceptable; clear workspace data after use when appropriate. <br>\nRisk: Cloud report history queries may expose user-linked report history to the remote service. <br>\nMitigation: Use cloud history features only with accounts and environments approved for that data flow. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-hydroponic-nutrient-assessment-analysis) <br>\n- [Skill Demo](https://lifeemergence.com/sample.html) <br>\n- [API 接口文档](references/api_doc.md) <br>\n- [API接口文档](skills/smyx_analysis/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown reports and tables, JSON detail output, and report URLs] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Qualitative visual assessment only; does not output EC or ppm values.] <br>\n\n## Skill Version(s): <br>\n1.0.1 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.1:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.1:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3","readmeExcerpt":"Skill: Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估 Owner: smyx-sunjinhui Summary: Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-ma","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json"},{"language":"bash","snippet":"python -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地水培根系/叶片图像或视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input /path/to/hydroponic_root.jpg\n\n# 分析网络水培图像/视频\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --url https://example.com/hydroponic_root.jpg\n\n# 显示历史评估报告/营养液浓度评估清单（自动触发关键词：查看水培营养液历史报告、营养液浓度评估清单等）\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_hydroponic_nutrient_concentration_assessment_analysis --input root.jpg --output result.json"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: \"smyx-hydroponic-nutrient-assessment-analysis\"\ndescription: \"Using fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent containers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early stress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling) to judge whether the nutrient solution is too concentrated or too dilute, and. | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。\"\nversion: \"1.0.16\"\nlicense: \"MIT-0\"\n---\n\n# 💧 Hydroponic Nutrient Concentration Visual Assessment | 水培植物营养液浓度视觉评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **水培植物营养液浓度视觉评估** |\n| 🎯 核心目标 | 通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` |\n\nUsing fixed cameras on a hydroponic growing rack to capture high-resolution images of plant roots (in transparent\ncontainers) and leaves (young and old), AI vision analysis identifies root color (white = healthy, yellow = early\nstress, brown = severe stress, black = rotting) and leaf morphology (tip burn, leaf-margin scorch, yellowing, curling)\nto judge whether the nutrient solution is too concentrated or too dilute, and outputs adjustment advice (dilute with\nfresh water or add concentrated nutrient solution). This skill lets hydroponic growers quickly assess nutrient solution\nstatus without an EC meter. Application scenarios: hydroponic growing racks, home hydroponic vegetables, plant\nfactories, research hydroponic systems. The system periodically (e.g., weekly) captures root and leaf images,\nautomatically analyzes them and pushes alerts (e.g., 'roots are turning yellow, leaf tips are burned, nutrient\nconcentration may be too high, suggest adding fresh water to dilute'). Skill features: hydroponic beginners often suffer\nfrom burnt seedlings or nutrient deficiency due to wrong nutrient concentration. AI visual assessment lets users judge\nquickly without instruments, lowering the learning curve. Can be integrated into hydroponic racks or mobile apps to\nimprove user experience and success rate.\n\n通过水培种植架的固定摄像头拍摄植物根系（透明容器）和叶片（新叶、老叶）的高清图像，利用AI视觉分析技术识别根须颜色（白色健康、黄色初期胁迫、褐色严重胁迫、黑色腐烂）、叶片形态（叶尖灼伤、叶缘焦枯、叶片黄化、卷曲）等特征，判断营养液浓度是否过浓或过稀，并输出调整建议（增加清水稀释或补充浓缩营养液）。该技能帮助水培种植者在不使用EC计的情况下，快速评估营养液状态。应用场景：水培种植架、家庭水培蔬菜、植物工厂、科研水培装置。系统定期（如每周）拍摄根部和叶部图像，自动分析并推送提醒（如'根系变黄，叶尖灼伤，营养液浓度可能过高，建议加入清水稀释'\n）。技能特点：水培新手常因营养液浓度不当导致烧苗或缺素。通过AI视觉评估，用户无需仪器即可快速判断，降低种植门槛。该技能可集成到水培种植架或手机APP中，提升用户体验和成功率。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的水培植物营养 AI。你的任务是分析水培植物的根系图像（透明容器内）和叶片图像，识别根须颜色、根尖状态、叶片灼伤和黄化等特征，判断营养液浓度是"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-hydroponic-nutrient-assessment-analysis\",\n  \"version\": \"1.0.10\",\n  \"publishedAt\": 1790539712304\n}"},{"path":"references/api_doc.md","content":"# API 接口文档\n\n此处用于存放水培植物营养液浓度视觉评估 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动水培营养液浓度评估任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果与调整建议\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史评估记录\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `SMYX_HYDROPONIC_NUTRIENT_ASSESSMENT_ANALYSIS` - 水培植物营养液浓度视觉评估\n\n## 输入约束\n\n- 推荐分别拍摄根系（透明容器内）与叶片（新叶+老叶）的高清图像\n- 拍摄环境建议光照均匀、镜头无水雾，避免反光遮挡根须\n- 关键观测特征：\n    - 根须颜色（白色健康 / 黄色初期胁迫 / 褐色严重胁迫 / 黑色腐烂）\n    - 根尖状态（饱满白尖 / 萎缩 / 发黑）\n    - 叶片：叶尖灼伤、叶缘焦枯、叶片黄化、卷曲\n\n## 输出字段（参考）\n\n- `root_color_grade` - 根系颜色等级（healthy / mild_stress / severe_stress / rot）\n- `leaf_burn_signs` - 叶片灼伤体征（叶尖灼伤 / 叶缘焦枯 / 黄化 / 卷曲）\n- `nutrient_status` - 营养液浓度判断（适宜 / 偏浓 / 偏稀 / 严重过浓 / 严重过稀）\n- `adjust_advice` - 调整建议（如\"加入清水稀释\"、\"补充浓缩营养液\"、\"立即换液并清洗根系\"）\n\n> 仅基于视觉特征给出定性结论，不输出具体 EC / ppm 数值。"},{"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":1072,"uniquenessScore":44,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T00:40:48.908Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-10T00:40:48.908Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T08:57:56.164Z","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"}]}}}