{"id":"ae983039-1375-4aad-95b8-e846740675ce","entityType":"agent","slug":"clawhub-smyx-sunjinhui-smyx-lawn-health-assessment-analysis","name":"Lawn Health Assessment | 草坪枯黄率与杂草密度评估","canonicalUrl":"https://www.xpersona.co/agent/clawhub-smyx-sunjinhui-smyx-lawn-health-assessment-analysis","canonicalPath":"/agent/clawhub-smyx-sunjinhui-smyx-lawn-health-assessment-analysis","generatedAt":"2026-10-10T07:12:47.667Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T03:57:35.175Z","emptyReason":null},"description":"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.7K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-lawn-health-assessment-analysis","sourceUrl":"https://clawhub.ai/smyx-sunjinhui/smyx-lawn-health-assessment-analysis","homepage":"https://clawhub.ai/smyx-sunjinhui/skills/smyx-lawn-health-assessment-analysis","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/smyx-sunjinhui/smyx-lawn-health-assessment-analysis","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/smyx-sunjinhui/skills/smyx-lawn-health-assessment-analysis","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":65,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Lawn Health 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-10T03:57:35.175Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T03:57:35.175Z","emptyReason":null},"stars":null,"forks":null,"downloads":1709,"packageName":null,"latestVersion":"1.0.11","tractionLabel":"1.7K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T03:57:35.175Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T03:57:35.175Z","lastCrawledAt":"2026-10-10T03:57:35.175Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T03:57:35.175Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.11","createdAt":"2026-10-01T14:28:27.914Z","changelog":"- Updated version metadata in SKILL.md to 1.0.16. - Adjusted documentation content in SKILL.md for accuracy and consistency. - Removed redundant file skill-card.md. - No changes to core analysis logic or user workflow.","fileCount":31,"zipByteSize":39021},{"version":"1.0.10","createdAt":"2026-09-07T06:14:33.266Z","changelog":"- Updated SKILL.md metadata: version number changed to 1.0.13. - Minor documentation revision in SKILL.md; no functional or usage changes. - Removed redundant file: skill-card.md. - No changes to underlying skill logic or interfaces.","fileCount":31,"zipByteSize":39197},{"version":"1.0.9","createdAt":"2026-08-30T07:55:28.735Z","changelog":"- Updated SKILL.md documentation with new version, raising it from 1.0.10 to 1.0.12. - Removed the file skill-card.md from the project. - No changes to core logic or capabilities; only documentation and file cleanup updates.","fileCount":31,"zipByteSize":39292},{"version":"1.0.8","createdAt":"2026-08-22T18:00:29.825Z","changelog":"# smyx-lawn-health-assessment-analysis 1.0.8 Changelog - Internal configuration updated: changes made to `skills/smyx_common/scripts/config.yaml`. - Documentation update: removed `skill-card.md` file. No impact on skill behavior or features.","fileCount":31,"zipByteSize":39140},{"version":"1.0.7","createdAt":"2026-08-14T01:29:44.123Z","changelog":"- Version updated from 1.0.9 to 1.0.10. - Documentation (SKILL.md) revised and updated. - Obsolete skill-card.md file removed.","fileCount":31,"zipByteSize":39175},{"version":"1.0.6","createdAt":"2026-08-08T13:47:41.374Z","changelog":"- Updated SKILL.md with minor version/copyright adjustments. - Removed redundant file: skill-card.md. - No changes to core features or workflow.","fileCount":31,"zipByteSize":38996},{"version":"1.0.5","createdAt":"2026-07-29T11:12:30.178Z","changelog":"- Updated SKILL.md for version 1.0.7 with expanded descriptions and details. - Bumped skill version from 1.0.5 to 1.0.7. - Removed the file skill-card.md. - No code-level or functional changes; all updates are limited to documentation.","fileCount":31,"zipByteSize":39191},{"version":"1.0.4","createdAt":"2026-07-13T15:28:31.954Z","changelog":"- Updated version to 1.0.5. - Documentation improvements in SKILL.md with no feature or logic changes. - Removed redundant skill-card.md file and consolidated information into SKILL.md. - No changes to code or core functionality.","fileCount":31,"zipByteSize":39245}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-lawn-health-assessment-analysis","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-lawn-health-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-lawn-health-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-lawn-health-assessment-analysis/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-lawn-health-assessment-analysis/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-lawn-health-assessment-analysis/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-lawn-health-assessment-analysis/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-lawn-health-assessment-analysis/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-lawn-health-assessment-analysis/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T07:12:47.664Z"}},"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-lawn-health-assessment-analysis/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-lawn-health-assessment-analysis/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-lawn-health-assessment-analysis/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-lawn-health-assessment-analysis/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T03:57:35.175Z","emptyReason":null},"readme":"Skill: Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n\nOwner: smyx-sunjinhui\n\nSummary: AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\nTags: latest:1.0.11\n\nVersion history:\n\nv1.0.11 | 2026-10-01T14:28:27.914Z | auto\n\n- Updated version metadata in SKILL.md to 1.0.16.\n- Adjusted documentation content in SKILL.md for accuracy and consistency.\n- Removed redundant file skill-card.md.\n- No changes to core analysis logic or user workflow.\n\nv1.0.10 | 2026-09-07T06:14:33.266Z | auto\n\n- Updated SKILL.md metadata: version number changed to 1.0.13.\n- Minor documentation revision in SKILL.md; no functional or usage changes.\n- Removed redundant file: skill-card.md.\n- No changes to underlying skill logic or interfaces.\n\nv1.0.9 | 2026-08-30T07:55:28.735Z | auto\n\n- Updated SKILL.md documentation with new version, raising it from 1.0.10 to 1.0.12.\n- Removed the file skill-card.md from the project.\n- No changes to core logic or capabilities; only documentation and file cleanup updates.\n\nv1.0.8 | 2026-08-22T18:00:29.825Z | auto\n\n# smyx-lawn-health-assessment-analysis 1.0.8 Changelog\n\n- Internal configuration updated: changes made to `skills/smyx_common/scripts/config.yaml`.\n- Documentation update: removed `skill-card.md` file. No impact on skill behavior or features.\n\nv1.0.7 | 2026-08-14T01:29:44.123Z | auto\n\n- Version updated from 1.0.9 to 1.0.10.\n- Documentation (SKILL.md) revised and updated.\n- Obsolete skill-card.md file removed.\n\nv1.0.6 | 2026-08-08T13:47:41.374Z | auto\n\n- Updated SKILL.md with minor version/copyright adjustments.\n- Removed redundant file: skill-card.md.\n- No changes to core features or workflow.\n\nv1.0.5 | 2026-07-29T11:12:30.178Z | auto\n\n- Updated SKILL.md for version 1.0.7 with expanded descriptions and details.\n- Bumped skill version from 1.0.5 to 1.0.7.\n- Removed the file skill-card.md.\n- No code-level or functional changes; all updates are limited to documentation.\n\nv1.0.4 | 2026-07-13T15:28:31.954Z | auto\n\n- Updated version to 1.0.5.\n- Documentation improvements in SKILL.md with no feature or logic changes.\n- Removed redundant skill-card.md file and consolidated information into SKILL.md.\n- No changes to code or core functionality.\n\nv1.0.3 | 2026-07-10T19:33:30.957Z | auto\n\n- Version bumped to 1.0.4.\n- Internal updates to scripts in the skills/smyx_common/ directory.\n- Documentation update in SKILL.md, reflecting latest interface and workflow.\n- Removed deprecated file: skill-card.md.\n\nv1.0.2 | 2026-07-03T01:10:27.139Z | auto\n\n- Updated version to 1.0.3.\n- Removed the file: skill-card.md.\n- Edited SKILL.md with minor adjustments and version bump.\n- Internal script updates in dao.py and util.py (details not specified).\n\nv1.0.1 | 2026-06-27T20:25:25.230Z | auto\n\n- Simplified user workflow: identity handling for report queries is now fully automatic and internal; users are no longer prompted to provide or view open-id or personal identifiers.\n- Updated documentation for all scripts and parameters to reflect the new automatic identity process and improved usability.\n- Enhanced usage examples and instructional content for clarity, with strict separation between internal authentication logic and user-facing experience.\n- Revised constraints and guidance to ensure all cloud report queries use only API/cloud-sourced data and never local cache or memory.\n- Improved markdown formatting and organization in skill documentation for easier reference.\n- Removed obsolete or redundant script files to streamline the skill package.\n\nv1.0.0 | 2026-05-24T07:02:49.957Z | auto\n\nInitial release of smyx-lawn-health-assessment-analysis.\n\n- Provides AI-powered lawn health assessment using drone or fixed-camera images via semantic segmentation.\n- Distinguishes healthy turf, wilting/yellow grass, bare soil, and weeds; computes area ratios and a 0-100 health score.\n- Output includes health score, detailed ratio metrics, health status grading, and maintenance suggestions.\n- Strict open-id acquisition and verification process for security and historical report access.\n- Includes commands for running assessments, querying history, and outputting results in Markdown table format.\n\nArchive index:\n\nArchive v1.0.11: 31 files, 39021 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (687b), scripts/config.yaml (3b), scripts/skill.py (585b), scripts/smyx_lawn_health_assessment_analysis.py (3551b), skill-card.md (2170b), SKILL.md (11989b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (156b)\n\nFile v1.0.11:SKILL.md\n\n---\nname: \"smyx-lawn-health-assessment-analysis\"\ndescription: \"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\"\nversion: \"1.0.16\"\nlicense: \"MIT-0\"\n---\n\n# 🌱 Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **草坪枯黄率与杂草密度评估** |\n| 🎯 核心目标 | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_LAWN_HEALTH_ASSESSMENT_ANALYSIS` |\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields.\n\n通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的草坪管理 AI。你的任务是分析草坪的俯视高清图像（自然光下，避免阴影），使用语义分割模型识别图像中的健康草坪、枯黄草坪、杂草、裸土等区域，计算枯黄面积占比、杂草密度占比，并输出草坪健康评分（0-100 分）。不要提供具体的农药品牌，仅输出基于视觉的指标。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过无人机或固定摄像头拍摄的草坪俯视图像/视频进行健康评估，输出枯黄率、杂草密度、健康评分及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 语义分割（健康草坪 / 枯黄草坪 / 杂草 / 裸土） |\n| 2 | 枯黄面积占比计算 |\n| 3 | 杂草覆盖面积占比计算 |\n| 4 | 裸土占比统计 |\n| 5 | 草坪健康综合评分（0-100 分） |\n| 6 | 健康等级评级（健康 / 一般 / 衰弱 / 严重退化） |\n| 7 | 养护方向建议（灌溉均匀性 / 施肥 / 除草 / 补播） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供草坪俯视图像或视频（无人机航拍 / 固定摄像头 / 手机俯拍）需要健康评估时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要草坪诊断时，提及草坪枯黄、草坪发黄、草坪杂草、草坪健康、草坪养护、高尔夫球场、市政绿地、草坪密度、补播除草、无人机巡检草坪等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史草坪报告、历史草坪健康报告、草坪评估报告清单、显示所有草坪监测报告、查询草坪诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_lawn_health_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_lawn_health_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，绿地场景使用 other，默认 other | 按需填写 |\n| `--list` | 显示草坪健康历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_lawn_health_assessment_analysis.py`](scripts/smyx_lawn_health_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| 🔎 使用提醒 | 拍摄要求：俯视角度（建议 70°-90°），自然光下避免大片阴影；尽量保持镜头垂直地面，便于面积估算 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供养护决策参考，不推荐具体农药品牌；专业场地（如高尔夫果岭）的精细养护请联系草坪专业团队 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"草坪类别\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`草坪健康评估报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json\n```\n\nFile v1.0.11:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-lawn-health-assessment-analysis\",\n  \"version\": \"1.0.11\",\n  \"publishedAt\": 1790864907914\n}\n\nFile v1.0.11:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放宠物健康分析 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动健康分析任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析\n\nFile v1.0.11:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.11:scripts/config.yaml\n\n{}\n\nFile v1.0.11:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.11:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.11:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.11:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.11:skill-card.md\n\n## Description:\n\nAssesses top-down lawn images or videos for yellowing, weeds, bare soil and overall turf health, then provides a report and care suggestions.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nGroundskeepers, landscape managers and property owners use overhead lawn imagery to estimate yellowing and weed coverage, review a turf health score and plan maintenance. They can also request prior cloud reports.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Private lawn images or videos are uploaded to configured lifeemergence.com cloud services.\n\nMitigation: Confirm the service and permitted data before submitting private site imagery; restrict network endpoints if needed.\n\nRisk: A persistent workspace identity and service tokens are stored locally.\n\nMitigation: Review and restrict access to the workspace data directory, especially in shared environments.\n\nRisk: Report-history requests can automatically retrieve cloud records.\n\nMitigation: Review history-query triggers and confirm the intended account and access before retrieving reports.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/smyx-sunjinhui/skills/smyx-lawn-health-assessment-analysis)\n- [API documentation](references/api_doc.md)\n- [Skill demonstration](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Guidance]\n\n**Output Format:** [Structured lawn assessment and report links; JSON or Markdown report listings when requested]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include yellowing and weed coverage, a health score, care suggestions and links to current or historical reports.]\n\n## Skill Version(s):\n\n1.0.11 (source: server-resolved ClawHub release)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.11:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.11:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.10: 31 files, 39197 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (687b), scripts/config.yaml (3b), scripts/skill.py (585b), scripts/smyx_lawn_health_assessment_analysis.py (3551b), skill-card.md (2481b), SKILL.md (11989b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (472b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (156b)\n\nFile v1.0.10:SKILL.md\n\n---\nname: \"smyx-lawn-health-assessment-analysis\"\ndescription: \"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\"\nversion: \"1.0.13\"\nlicense: \"MIT-0\"\n---\n\n# 🌱 Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **草坪枯黄率与杂草密度评估** |\n| 🎯 核心目标 | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_LAWN_HEALTH_ASSESSMENT_ANALYSIS` |\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields.\n\n通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的草坪管理 AI。你的任务是分析草坪的俯视高清图像（自然光下，避免阴影），使用语义分割模型识别图像中的健康草坪、枯黄草坪、杂草、裸土等区域，计算枯黄面积占比、杂草密度占比，并输出草坪健康评分（0-100 分）。不要提供具体的农药品牌，仅输出基于视觉的指标。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过无人机或固定摄像头拍摄的草坪俯视图像/视频进行健康评估，输出枯黄率、杂草密度、健康评分及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 语义分割（健康草坪 / 枯黄草坪 / 杂草 / 裸土） |\n| 2 | 枯黄面积占比计算 |\n| 3 | 杂草覆盖面积占比计算 |\n| 4 | 裸土占比统计 |\n| 5 | 草坪健康综合评分（0-100 分） |\n| 6 | 健康等级评级（健康 / 一般 / 衰弱 / 严重退化） |\n| 7 | 养护方向建议（灌溉均匀性 / 施肥 / 除草 / 补播） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供草坪俯视图像或视频（无人机航拍 / 固定摄像头 / 手机俯拍）需要健康评估时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要草坪诊断时，提及草坪枯黄、草坪发黄、草坪杂草、草坪健康、草坪养护、高尔夫球场、市政绿地、草坪密度、补播除草、无人机巡检草坪等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史草坪报告、历史草坪健康报告、草坪评估报告清单、显示所有草坪监测报告、查询草坪诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_lawn_health_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_lawn_health_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，绿地场景使用 other，默认 other | 按需填写 |\n| `--list` | 显示草坪健康历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_lawn_health_assessment_analysis.py`](scripts/smyx_lawn_health_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| 🔎 使用提醒 | 拍摄要求：俯视角度（建议 70°-90°），自然光下避免大片阴影；尽量保持镜头垂直地面，便于面积估算 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供养护决策参考，不推荐具体农药品牌；专业场地（如高尔夫果岭）的精细养护请联系草坪专业团队 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"草坪类别\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`草坪健康评估报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json\n```\n\nFile v1.0.10:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-lawn-health-assessment-analysis\",\n  \"version\": \"1.0.10\",\n  \"publishedAt\": 1788761673266\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- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析\n\nFile v1.0.10:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.10:scripts/config.yaml\n\n{}\n\nFile v1.0.10:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.10:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.10:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.10:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: dev\n\nFile v1.0.10:skill-card.md\n\n## Description:\n\nAnalyzes top-down lawn images or videos to estimate yellowing, weed coverage, bare soil, and an overall lawn health score with maintenance 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 grounds managers, facilities teams, and turf maintenance operators use this skill to assess lawn quality from drone, fixed-camera, or other top-down imagery. It produces visual health metrics and care-direction guidance for home lawns, golf courses, municipal parks, and sports fields.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The security evidence flags cloud-backed analysis with silent account setup, persistent plaintext tokens, and default development HTTP configuration that may expose user media or credentials.\n\nMitigation: Review before installation; do not use private lawn imagery or sensitive environments until HTTPS production defaults, token persistence, and upload/history retention behavior are fixed and documented.\n\nRisk: History lookup and automatic identity association can reuse or create account context without user-visible identity handling.\n\nMitigation: Require deployment review of account association behavior and clearly document cloud upload, report history access, and retention expectations for operators.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-lawn-health-assessment-analysis)\n- [Skill Demo](https://lifeemergence.com/sample.html)\n- [API Interface Documentation](references/api_doc.md)\n- [Shared Analysis API Documentation](skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, guidance]\n\n**Output Format:** [Markdown text with structured JSON-like analysis results, report links, and optional saved output files.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Outputs may include lawn condition metrics, health score, maintenance guidance, and cloud report links.]\n\n## Skill Version(s):\n\n1.0.10 (source: server release metadata; artifact frontmatter: 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.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, 39292 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (687b), scripts/config.yaml (3b), scripts/skill.py (585b), scripts/smyx_lawn_health_assessment_analysis.py (3551b), skill-card.md (2840b), SKILL.md (11989b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (472b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (155b)\n\nFile v1.0.9:SKILL.md\n\n---\nname: \"smyx-lawn-health-assessment-analysis\"\ndescription: \"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\"\nversion: \"1.0.12\"\nlicense: \"MIT-0\"\n---\n\n# 🌱 Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **草坪枯黄率与杂草密度评估** |\n| 🎯 核心目标 | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_LAWN_HEALTH_ASSESSMENT_ANALYSIS` |\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields.\n\n通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的草坪管理 AI。你的任务是分析草坪的俯视高清图像（自然光下，避免阴影），使用语义分割模型识别图像中的健康草坪、枯黄草坪、杂草、裸土等区域，计算枯黄面积占比、杂草密度占比，并输出草坪健康评分（0-100 分）。不要提供具体的农药品牌，仅输出基于视觉的指标。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过无人机或固定摄像头拍摄的草坪俯视图像/视频进行健康评估，输出枯黄率、杂草密度、健康评分及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 语义分割（健康草坪 / 枯黄草坪 / 杂草 / 裸土） |\n| 2 | 枯黄面积占比计算 |\n| 3 | 杂草覆盖面积占比计算 |\n| 4 | 裸土占比统计 |\n| 5 | 草坪健康综合评分（0-100 分） |\n| 6 | 健康等级评级（健康 / 一般 / 衰弱 / 严重退化） |\n| 7 | 养护方向建议（灌溉均匀性 / 施肥 / 除草 / 补播） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供草坪俯视图像或视频（无人机航拍 / 固定摄像头 / 手机俯拍）需要健康评估时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要草坪诊断时，提及草坪枯黄、草坪发黄、草坪杂草、草坪健康、草坪养护、高尔夫球场、市政绿地、草坪密度、补播除草、无人机巡检草坪等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史草坪报告、历史草坪健康报告、草坪评估报告清单、显示所有草坪监测报告、查询草坪诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_lawn_health_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_lawn_health_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，绿地场景使用 other，默认 other | 按需填写 |\n| `--list` | 显示草坪健康历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_lawn_health_assessment_analysis.py`](scripts/smyx_lawn_health_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| 🔎 使用提醒 | 拍摄要求：俯视角度（建议 70°-90°），自然光下避免大片阴影；尽量保持镜头垂直地面，便于面积估算 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供养护决策参考，不推荐具体农药品牌；专业场地（如高尔夫果岭）的精细养护请联系草坪专业团队 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"草坪类别\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`草坪健康评估报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json\n```\n\nFile v1.0.9:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-lawn-health-assessment-analysis\",\n  \"version\": \"1.0.9\",\n  \"publishedAt\": 1788076528735\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- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析\n\nFile v1.0.9:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.9:scripts/config.yaml\n\n{}\n\nFile v1.0.9:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.9:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.9:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.9:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: dev\n\nFile v1.0.9:skill-card.md\n\n## Description:\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images that estimates wilting or yellow turf, weed coverage, bare soil, and a composite lawn health score.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users and turf managers use this skill to assess top-down lawn images or videos for wilting ratio, weed density, bare-soil coverage, health score, and practical maintenance direction. It is aimed at home yards, golf courses, municipal park lawns, greenways, and sports fields.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill sends lawn images, videos, or supplied URLs to a configured external service.\n\nMitigation: Use only non-sensitive imagery or obtain appropriate consent before analysis, and review the configured service endpoints before deployment.\n\nRisk: The skill can automatically create or reuse an internal account identity and store identity tokens in a local workspace database.\n\nMitigation: Review local workspace data handling, restrict filesystem access to the workspace data directory, and clear stored tokens when the skill is removed or reassigned.\n\nRisk: The bundled configuration includes development settings and under-scoped network behavior flagged by the authoritative scan.\n\nMitigation: Remove or replace development configuration before production use and allow only approved production endpoints.\n\nRisk: Cloud report-history queries may expose prior analysis records associated with the resolved account identity.\n\nMitigation: Limit use of report-history commands to authorized users and verify that the resolved account identity matches the intended user or workspace.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-lawn-health-assessment-analysis)\n- [API interface reference](references/api_doc.md)\n- [Shared analysis API reference](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, shell commands, code, configuration, guidance]\n\n**Output Format:** [Markdown and JSON-like structured analysis text, with optional saved output file]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include report links and cloud report-history listings when the configured service returns them.]\n\n## Skill Version(s):\n\n1.0.9 (source: 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.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, 39140 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (687b), scripts/config.yaml (3b), scripts/skill.py (585b), scripts/smyx_lawn_health_assessment_analysis.py (3551b), skill-card.md (2392b), SKILL.md (11989b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (472b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (155b)\n\nFile v1.0.8:SKILL.md\n\n---\nname: \"smyx-lawn-health-assessment-analysis\"\ndescription: \"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\"\nversion: \"1.0.10\"\nlicense: \"MIT-0\"\n---\n\n# 🌱 Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **草坪枯黄率与杂草密度评估** |\n| 🎯 核心目标 | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_LAWN_HEALTH_ASSESSMENT_ANALYSIS` |\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields.\n\n通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的草坪管理 AI。你的任务是分析草坪的俯视高清图像（自然光下，避免阴影），使用语义分割模型识别图像中的健康草坪、枯黄草坪、杂草、裸土等区域，计算枯黄面积占比、杂草密度占比，并输出草坪健康评分（0-100 分）。不要提供具体的农药品牌，仅输出基于视觉的指标。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过无人机或固定摄像头拍摄的草坪俯视图像/视频进行健康评估，输出枯黄率、杂草密度、健康评分及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 语义分割（健康草坪 / 枯黄草坪 / 杂草 / 裸土） |\n| 2 | 枯黄面积占比计算 |\n| 3 | 杂草覆盖面积占比计算 |\n| 4 | 裸土占比统计 |\n| 5 | 草坪健康综合评分（0-100 分） |\n| 6 | 健康等级评级（健康 / 一般 / 衰弱 / 严重退化） |\n| 7 | 养护方向建议（灌溉均匀性 / 施肥 / 除草 / 补播） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供草坪俯视图像或视频（无人机航拍 / 固定摄像头 / 手机俯拍）需要健康评估时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要草坪诊断时，提及草坪枯黄、草坪发黄、草坪杂草、草坪健康、草坪养护、高尔夫球场、市政绿地、草坪密度、补播除草、无人机巡检草坪等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史草坪报告、历史草坪健康报告、草坪评估报告清单、显示所有草坪监测报告、查询草坪诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_lawn_health_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_lawn_health_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，绿地场景使用 other，默认 other | 按需填写 |\n| `--list` | 显示草坪健康历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_lawn_health_assessment_analysis.py`](scripts/smyx_lawn_health_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| 🔎 使用提醒 | 拍摄要求：俯视角度（建议 70°-90°），自然光下避免大片阴影；尽量保持镜头垂直地面，便于面积估算 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供养护决策参考，不推荐具体农药品牌；专业场地（如高尔夫果岭）的精细养护请联系草坪专业团队 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"草坪类别\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`草坪健康评估报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json\n```\n\nFile v1.0.8:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-lawn-health-assessment-analysis\",\n  \"version\": \"1.0.8\",\n  \"publishedAt\": 1787421629825\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- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析\n\nFile v1.0.8:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.8:scripts/config.yaml\n\n{}\n\nFile v1.0.8:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.8:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.8:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.8:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: dev\n\nFile v1.0.8:skill-card.md\n\n## Description:\n\nAssesses top-down lawn images or videos to estimate yellowed turf, weed coverage, bare soil, and an overall lawn health score for maintenance planning.\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 groundskeepers, golf-course teams, municipal greenway managers, and property managers use this skill to assess lawn condition from top-down media and guide irrigation, fertilization, weeding, or reseeding decisions.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill sends lawn media or media URLs to lifeemergence.com services for analysis.\n\nMitigation: Use only with imagery approved for third-party cloud processing, and avoid sensitive property media unless the deployment has reviewed the service relationship.\n\nRisk: The skill creates or reuses a local backend identity and stores backend tokens in a workspace SQLite database.\n\nMitigation: Run it in a dedicated workspace on shared machines and remove local state according to the operator's data-retention process.\n\nRisk: Server security evidence notes mismatched pet/video analysis code and documentation.\n\nMitigation: Verify corrected publisher documentation and test expected lawn-analysis behavior before relying on production results.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-lawn-health-assessment-analysis)\n- [Publisher profile](https://clawhub.ai/user/smyx-sunjinhui)\n- [Skill demo](https://lifeemergence.com/sample.html)\n- [API reference](references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, json, shell commands, guidance]\n\n**Output Format:** [Markdown or JSON text from CLI/API-backed analysis reports]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include structured lawn-health metrics, maintenance guidance, historical report tables, and report links.]\n\n## Skill Version(s):\n\n1.0.8 (source: server release evidence; 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.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, 39175 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (687b), scripts/config.yaml (3b), scripts/skill.py (585b), scripts/smyx_lawn_health_assessment_analysis.py (3551b), skill-card.md (2498b), SKILL.md (11989b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (155b)\n\nFile v1.0.7:SKILL.md\n\n---\nname: \"smyx-lawn-health-assessment-analysis\"\ndescription: \"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\"\nversion: \"1.0.10\"\nlicense: \"MIT-0\"\n---\n\n# 🌱 Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **草坪枯黄率与杂草密度评估** |\n| 🎯 核心目标 | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_LAWN_HEALTH_ASSESSMENT_ANALYSIS` |\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields.\n\n通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的草坪管理 AI。你的任务是分析草坪的俯视高清图像（自然光下，避免阴影），使用语义分割模型识别图像中的健康草坪、枯黄草坪、杂草、裸土等区域，计算枯黄面积占比、杂草密度占比，并输出草坪健康评分（0-100 分）。不要提供具体的农药品牌，仅输出基于视觉的指标。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过无人机或固定摄像头拍摄的草坪俯视图像/视频进行健康评估，输出枯黄率、杂草密度、健康评分及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 语义分割（健康草坪 / 枯黄草坪 / 杂草 / 裸土） |\n| 2 | 枯黄面积占比计算 |\n| 3 | 杂草覆盖面积占比计算 |\n| 4 | 裸土占比统计 |\n| 5 | 草坪健康综合评分（0-100 分） |\n| 6 | 健康等级评级（健康 / 一般 / 衰弱 / 严重退化） |\n| 7 | 养护方向建议（灌溉均匀性 / 施肥 / 除草 / 补播） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供草坪俯视图像或视频（无人机航拍 / 固定摄像头 / 手机俯拍）需要健康评估时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要草坪诊断时，提及草坪枯黄、草坪发黄、草坪杂草、草坪健康、草坪养护、高尔夫球场、市政绿地、草坪密度、补播除草、无人机巡检草坪等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史草坪报告、历史草坪健康报告、草坪评估报告清单、显示所有草坪监测报告、查询草坪诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_lawn_health_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_lawn_health_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，绿地场景使用 other，默认 other | 按需填写 |\n| `--list` | 显示草坪健康历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_lawn_health_assessment_analysis.py`](scripts/smyx_lawn_health_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| 🔎 使用提醒 | 拍摄要求：俯视角度（建议 70°-90°），自然光下避免大片阴影；尽量保持镜头垂直地面，便于面积估算 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供养护决策参考，不推荐具体农药品牌；专业场地（如高尔夫果岭）的精细养护请联系草坪专业团队 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"草坪类别\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`草坪健康评估报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json\n```\n\nFile v1.0.7:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-lawn-health-assessment-analysis\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1786670984123\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- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析\n\nFile v1.0.7:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.7:scripts/config.yaml\n\n{}\n\nFile v1.0.7:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.7:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.7:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.7:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.7:skill-card.md\n\n## Description:\n\nAssesses top-down lawn images or videos to estimate yellowing, weed coverage, bare soil, a 0-100 health score, and care recommendations through a configured cloud analysis service.\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 grounds managers, municipal landscaping teams, sports-field staff, golf-course staff, and homeowners use this skill to evaluate lawn imagery for yellowing, weed density, bare soil, and maintenance direction.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Lawn images or videos, media URLs, and account-linked report history are sent to the configured cloud service.\n\nMitigation: Install only if the publisher is trusted, avoid sensitive property imagery, and use a separate workspace when possible.\n\nRisk: The skill stores local identity and token state for reuse.\n\nMitigation: Review or clear data/smyx-common-claw.db and data/smyx-api-key.txt if persistent identity or token reuse is not wanted.\n\nRisk: History-report queries retrieve cloud report history beyond a single image assessment.\n\nMitigation: Use history queries only when account-linked cloud report retrieval is expected.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-lawn-health-assessment-analysis)\n- [Publisher profile](https://clawhub.ai/user/smyx-sunjinhui)\n- [API interface reference](references/api_doc.md)\n- [Common analysis API reference](skills/smyx_analysis/references/api_doc.md)\n- [Skill demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, json, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown or JSON analysis report with metrics, recommendations, report links, and optional saved result file.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Accepts a local lawn image/video file path or public media URL; documented formats include jpg, png, mp4, avi, and mov with a 10 MB maximum file size.]\n\n## Skill Version(s):\n\n1.0.7 (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.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, 38996 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (687b), scripts/config.yaml (3b), scripts/skill.py (585b), scripts/smyx_lawn_health_assessment_analysis.py (3551b), skill-card.md (2014b), SKILL.md (11988b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (155b)\n\nFile v1.0.6:SKILL.md\n\n---\nname: \"smyx-lawn-health-assessment-analysis\"\ndescription: \"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\"\nversion: \"1.0.9\"\nlicense: \"MIT-0\"\n---\n\n# 🌱 Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **草坪枯黄率与杂草密度评估** |\n| 🎯 核心目标 | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_LAWN_HEALTH_ASSESSMENT_ANALYSIS` |\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields.\n\n通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的草坪管理 AI。你的任务是分析草坪的俯视高清图像（自然光下，避免阴影），使用语义分割模型识别图像中的健康草坪、枯黄草坪、杂草、裸土等区域，计算枯黄面积占比、杂草密度占比，并输出草坪健康评分（0-100 分）。不要提供具体的农药品牌，仅输出基于视觉的指标。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过无人机或固定摄像头拍摄的草坪俯视图像/视频进行健康评估，输出枯黄率、杂草密度、健康评分及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 语义分割（健康草坪 / 枯黄草坪 / 杂草 / 裸土） |\n| 2 | 枯黄面积占比计算 |\n| 3 | 杂草覆盖面积占比计算 |\n| 4 | 裸土占比统计 |\n| 5 | 草坪健康综合评分（0-100 分） |\n| 6 | 健康等级评级（健康 / 一般 / 衰弱 / 严重退化） |\n| 7 | 养护方向建议（灌溉均匀性 / 施肥 / 除草 / 补播） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供草坪俯视图像或视频（无人机航拍 / 固定摄像头 / 手机俯拍）需要健康评估时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要草坪诊断时，提及草坪枯黄、草坪发黄、草坪杂草、草坪健康、草坪养护、高尔夫球场、市政绿地、草坪密度、补播除草、无人机巡检草坪等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史草坪报告、历史草坪健康报告、草坪评估报告清单、显示所有草坪监测报告、查询草坪诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_lawn_health_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_lawn_health_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，绿地场景使用 other，默认 other | 按需填写 |\n| `--list` | 显示草坪健康历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_lawn_health_assessment_analysis.py`](scripts/smyx_lawn_health_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| 🔎 使用提醒 | 拍摄要求：俯视角度（建议 70°-90°），自然光下避免大片阴影；尽量保持镜头垂直地面，便于面积估算 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供养护决策参考，不推荐具体农药品牌；专业场地（如高尔夫果岭）的精细养护请联系草坪专业团队 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"草坪类别\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`草坪健康评估报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json\n```\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-lawn-health-assessment-analysis\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1786196861374\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- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析\n\nFile v1.0.6:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.6:scripts/config.yaml\n\n{}\n\nFile v1.0.6:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.6:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.6:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.6:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.6:skill-card.md\n\n## Description:\n\nAssesses top-down lawn images or videos to estimate yellowing, weed coverage, bare soil, and an overall lawn health score for maintenance decisions.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users and facility managers use this skill to analyze lawn imagery from courtyards, golf courses, parks, sports fields, or similar green spaces and receive health metrics, maintenance guidance, and report links.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill sends lawn images or videos, report metadata, and account-like identifiers to LifeEmergence services.\n\nMitigation: Use it only with non-sensitive property imagery unless the publisher documents data retention, deletion, and authorization boundaries.\n\nRisk: The skill creates or reuses an identity and stores reusable tokens locally in the workspace data directory.\n\nMitigation: Run it in a controlled workspace, restrict access to local data directories, and clear stored identity or token data between users or tenants.\n\n## Reference(s):\n\n- [API interface documentation](references/api_doc.md)\n- [Skill demo](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown reports and tables, with JSON detail mode and optional output files.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Processes image or video inputs and may return cloud-hosted report links.]\n\n## Skill Version(s):\n\n1.0.6 (source: server release metadata; artifact frontmatter lists 1.0.9)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.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, 39191 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (687b), scripts/config.yaml (3b), scripts/skill.py (585b), scripts/smyx_lawn_health_assessment_analysis.py (3551b), skill-card.md (2635b), SKILL.md (11988b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (155b)\n\nFile v1.0.5:SKILL.md\n\n---\nname: \"smyx-lawn-health-assessment-analysis\"\ndescription: \"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\"\nversion: \"1.0.7\"\nlicense: \"MIT-0\"\n---\n\n# 🌱 Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **草坪枯黄率与杂草密度评估** |\n| 🎯 核心目标 | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_LAWN_HEALTH_ASSESSMENT_ANALYSIS` |\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields.\n\n通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的草坪管理 AI。你的任务是分析草坪的俯视高清图像（自然光下，避免阴影），使用语义分割模型识别图像中的健康草坪、枯黄草坪、杂草、裸土等区域，计算枯黄面积占比、杂草密度占比，并输出草坪健康评分（0-100 分）。不要提供具体的农药品牌，仅输出基于视觉的指标。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过无人机或固定摄像头拍摄的草坪俯视图像/视频进行健康评估，输出枯黄率、杂草密度、健康评分及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 语义分割（健康草坪 / 枯黄草坪 / 杂草 / 裸土） |\n| 2 | 枯黄面积占比计算 |\n| 3 | 杂草覆盖面积占比计算 |\n| 4 | 裸土占比统计 |\n| 5 | 草坪健康综合评分（0-100 分） |\n| 6 | 健康等级评级（健康 / 一般 / 衰弱 / 严重退化） |\n| 7 | 养护方向建议（灌溉均匀性 / 施肥 / 除草 / 补播） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供草坪俯视图像或视频（无人机航拍 / 固定摄像头 / 手机俯拍）需要健康评估时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要草坪诊断时，提及草坪枯黄、草坪发黄、草坪杂草、草坪健康、草坪养护、高尔夫球场、市政绿地、草坪密度、补播除草、无人机巡检草坪等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史草坪报告、历史草坪健康报告、草坪评估报告清单、显示所有草坪监测报告、查询草坪诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_lawn_health_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_lawn_health_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，绿地场景使用 other，默认 other | 按需填写 |\n| `--list` | 显示草坪健康历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_lawn_health_assessment_analysis.py`](scripts/smyx_lawn_health_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| 🔎 使用提醒 | 拍摄要求：俯视角度（建议 70°-90°），自然光下避免大片阴影；尽量保持镜头垂直地面，便于面积估算 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供养护决策参考，不推荐具体农药品牌；专业场地（如高尔夫果岭）的精细养护请联系草坪专业团队 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"草坪类别\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`草坪健康评估报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json\n```\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-lawn-health-assessment-analysis\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1785323550178\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- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析\n\nFile v1.0.5:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.5:scripts/config.yaml\n\n{}\n\nFile v1.0.5:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.5:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.5:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.5:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.5:skill-card.md\n\n## Description: <br>\nAI-powered lawn health assessment from drone or fixed-camera top-down images that estimates yellowing or wilting area, weed coverage, bare-soil coverage, and an overall lawn health score. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nExternal users, site managers, and developers use this skill to analyze top-down lawn images or videos for turf condition monitoring, including wilting ratio, weed density, health scoring, and maintenance guidance for courtyards, golf courses, parks, and sports fields. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill sends lawn images, videos, or URLs to configured cloud services for analysis. <br>\nMitigation: Use it only with media and URLs that are approved for the configured external service, and avoid submitting sensitive or private imagery. <br>\nRisk: The skill may silently create or reuse an identity and retrieve historical report links from the cloud. <br>\nMitigation: Confirm the workspace identity and account scope before using history retrieval, especially in shared workspaces. <br>\nRisk: The security review notes local token storage and possible workspace identity-file access. <br>\nMitigation: Review the workspace for intended credential bindings before installation and avoid workspaces containing unintended smyx-api-key.txt values. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-lawn-health-assessment-analysis) <br>\n- [API Documentation](references/api_doc.md) <br>\n- [Shared Analysis API Documentation](skills/smyx_analysis/references/api_doc.md) <br>\n- [Skill Demo](https://lifeemergence.com/sample.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Analysis, Markdown, JSON, Shell commands, Guidance] <br>\n**Output Format:** [Markdown or JSON text with report links] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include structured lawn-health metrics, maintenance guidance, analysis status, and links to cloud-hosted historical reports.] <br>\n\n## Skill Version(s): <br>\n1.0.5 (source: server release metadata; artifact frontmatter declares 1.0.7) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.5:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.5:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.4: 31 files, 39245 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (687b), scripts/config.yaml (3b), scripts/skill.py (585b), scripts/smyx_lawn_health_assessment_analysis.py (3551b), skill-card.md (2897b), SKILL.md (11988b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (155b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: \"smyx-lawn-health-assessment-analysis\"\ndescription: \"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\"\nversion: \"1.0.5\"\nlicense: \"MIT-0\"\n---\n\n# 🌱 Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **草坪枯黄率与杂草密度评估** |\n| 🎯 核心目标 | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_LAWN_HEALTH_ASSESSMENT_ANALYSIS` |\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields.\n\n通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的草坪管理 AI。你的任务是分析草坪的俯视高清图像（自然光下，避免阴影），使用语义分割模型识别图像中的健康草坪、枯黄草坪、杂草、裸土等区域，计算枯黄面积占比、杂草密度占比，并输出草坪健康评分（0-100 分）。不要提供具体的农药品牌，仅输出基于视觉的指标。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过无人机或固定摄像头拍摄的草坪俯视图像/视频进行健康评估，输出枯黄率、杂草密度、健康评分及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 语义分割（健康草坪 / 枯黄草坪 / 杂草 / 裸土） |\n| 2 | 枯黄面积占比计算 |\n| 3 | 杂草覆盖面积占比计算 |\n| 4 | 裸土占比统计 |\n| 5 | 草坪健康综合评分（0-100 分） |\n| 6 | 健康等级评级（健康 / 一般 / 衰弱 / 严重退化） |\n| 7 | 养护方向建议（灌溉均匀性 / 施肥 / 除草 / 补播） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供草坪俯视图像或视频（无人机航拍 / 固定摄像头 / 手机俯拍）需要健康评估时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要草坪诊断时，提及草坪枯黄、草坪发黄、草坪杂草、草坪健康、草坪养护、高尔夫球场、市政绿地、草坪密度、补播除草、无人机巡检草坪等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史草坪报告、历史草坪健康报告、草坪评估报告清单、显示所有草坪监测报告、查询草坪诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_lawn_health_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_lawn_health_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，绿地场景使用 other，默认 other | 按需填写 |\n| `--list` | 显示草坪健康历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_lawn_health_assessment_analysis.py`](scripts/smyx_lawn_health_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| 🔎 使用提醒 | 拍摄要求：俯视角度（建议 70°-90°），自然光下避免大片阴影；尽量保持镜头垂直地面，便于面积估算 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供养护决策参考，不推荐具体农药品牌；专业场地（如高尔夫果岭）的精细养护请联系草坪专业团队 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"草坪类别\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`草坪健康评估报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json\n```\n\nFile v1.0.4:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-lawn-health-assessment-analysis\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1783956511954\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- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析\n\nFile v1.0.4:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.4:scripts/config.yaml\n\n{}\n\nFile v1.0.4:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.4:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.4:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.4:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.4:skill-card.md\n\n## Description: <br>\nAnalyzes top-down lawn images, videos, or URLs to estimate yellowing, weed coverage, bare soil, and an overall lawn health score with maintenance-oriented 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>\nSupport lawn managers, homeowners, golf course operators, park teams, and sports-field maintainers by turning supported lawn media into structured health assessment results, report links, and care direction. <br>\n\n### Deployment Geography for Use: <br>\nNo deployment geography restriction is stated in the evidence; use only where ClawHub, the publisher service, and local data-handling requirements permit this workflow. <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The security evidence says the skill uses a cloud workflow for lawn images or videos, submitted URLs, account identifiers, report history, and locally stored service tokens. <br>\nMitigation: Install only when that data can be handled by the publisher's external services, and review identity and data-retention behavior before use. <br>\nRisk: The security evidence says the skill silently creates or reuses an identity and exposes historical reports. <br>\nMitigation: Use a dedicated workspace for sensitive projects, avoid shared machines for report retrieval, and clear local identity or token state when access should not persist. <br>\nRisk: The server security verdict is suspicious. <br>\nMitigation: Review the ClawHub security summary before installation and run the skill in a constrained environment until the external-service and token-storage behavior is acceptable. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-lawn-health-assessment-analysis) <br>\n- [Publisher profile](https://clawhub.ai/user/smyx-sunjinhui) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, JSON, guidance] <br>\n**Output Format:** [Structured lawn assessment report with yellowing ratio, weed coverage, bare-soil signals, health score, care guidance, report links, and optional historical report listings.] <br>\n**Output Parameters:** [Accepts a local media path or network URL, optional detail level, optional output path, and a list mode for cloud report history.] <br>\n**Other Properties Related to Output:** [Uses a publisher cloud workflow for analysis and history retrieval; outputs may include report export links and service-returned structured data.] <br>\n\n## Skill Version(s): <br>\n1.0.4 <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.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, 39277 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (687b), scripts/config.yaml (3b), scripts/skill.py (585b), scripts/smyx_lawn_health_assessment_analysis.py (3551b), skill-card.md (2758b), SKILL.md (11988b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28776b), _meta.json (155b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: \"smyx-lawn-health-assessment-analysis\"\ndescription: \"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\"\nversion: \"1.0.4\"\nlicense: \"MIT-0\"\n---\n\n# 🌱 Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **草坪枯黄率与杂草密度评估** |\n| 🎯 核心目标 | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_LAWN_HEALTH_ASSESSMENT_ANALYSIS` |\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields.\n\n通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的草坪管理 AI。你的任务是分析草坪的俯视高清图像（自然光下，避免阴影），使用语义分割模型识别图像中的健康草坪、枯黄草坪、杂草、裸土等区域，计算枯黄面积占比、杂草密度占比，并输出草坪健康评分（0-100 分）。不要提供具体的农药品牌，仅输出基于视觉的指标。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过无人机或固定摄像头拍摄的草坪俯视图像/视频进行健康评估，输出枯黄率、杂草密度、健康评分及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 语义分割（健康草坪 / 枯黄草坪 / 杂草 / 裸土） |\n| 2 | 枯黄面积占比计算 |\n| 3 | 杂草覆盖面积占比计算 |\n| 4 | 裸土占比统计 |\n| 5 | 草坪健康综合评分（0-100 分） |\n| 6 | 健康等级评级（健康 / 一般 / 衰弱 / 严重退化） |\n| 7 | 养护方向建议（灌溉均匀性 / 施肥 / 除草 / 补播） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供草坪俯视图像或视频（无人机航拍 / 固定摄像头 / 手机俯拍）需要健康评估时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要草坪诊断时，提及草坪枯黄、草坪发黄、草坪杂草、草坪健康、草坪养护、高尔夫球场、市政绿地、草坪密度、补播除草、无人机巡检草坪等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史草坪报告、历史草坪健康报告、草坪评估报告清单、显示所有草坪监测报告、查询草坪诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_lawn_health_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_lawn_health_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，绿地场景使用 other，默认 other | 按需填写 |\n| `--list` | 显示草坪健康历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_lawn_health_assessment_analysis.py`](scripts/smyx_lawn_health_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| 🔎 使用提醒 | 拍摄要求：俯视角度（建议 70°-90°），自然光下避免大片阴影；尽量保持镜头垂直地面，便于面积估算 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供养护决策参考，不推荐具体农药品牌；专业场地（如高尔夫果岭）的精细养护请联系草坪专业团队 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"草坪类别\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`草坪健康评估报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json\n```\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-lawn-health-assessment-analysis\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1783712010957\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- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析\n\nFile v1.0.3:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.3:scripts/config.yaml\n\n{}\n\nFile v1.0.3:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.3:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.3:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.3:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.3:skill-card.md\n\n## Description: <br>\nAssesses top-down lawn images or videos to estimate yellowing, weed coverage, bare soil, and an overall lawn health score with maintenance-oriented reporting. <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>\nLandscape managers, golf course teams, municipal grounds staff, and property managers use this skill to evaluate lawn condition from drone, fixed-camera, mobile, local-file, or URL-based imagery. It returns structured health metrics and report links that can guide irrigation, fertilization, reseeding, and weeding decisions. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill sends lawn images, videos, or URLs to lifeemergence.com services for remote analysis. <br>\nMitigation: Use non-sensitive media where possible and confirm user or organizational approval before uploading files or URLs. <br>\nRisk: The skill creates or reuses a local identity and stores service tokens in a workspace SQLite database. <br>\nMitigation: Run it in an isolated workspace, restrict local data-directory access, and remove stored identity or token data when retention is not needed. <br>\nRisk: History queries fetch account-linked cloud report records and report links. <br>\nMitigation: Confirm the active account context before listing history and share report links only with intended recipients. <br>\nRisk: The evidence notes documentation inconsistencies around pet/video analysis behavior. <br>\nMitigation: Validate expected lawn-health behavior with low-risk test inputs before using the skill in operational workflows. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-lawn-health-assessment-analysis) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n- [API documentation](artifact/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown, JSON, Shell commands, Files] <br>\n**Output Format:** [Markdown or JSON report text, with optional saved output file and report links] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include cloud report-history records and links to exported report images.] <br>\n\n## Skill Version(s): <br>\n1.0.3 (source: server release metadata; artifact frontmatter reports 1.0.4) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.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, 38850 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (687b), scripts/config.yaml (3b), scripts/skill.py (585b), scripts/smyx_lawn_health_assessment_analysis.py (3551b), skill-card.md (2559b), SKILL.md (11988b), 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 (155b)\n\nFile v1.0.2:SKILL.md\n\n---\nname: \"smyx-lawn-health-assessment-analysis\"\ndescription: \"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\"\nversion: \"1.0.3\"\nlicense: \"MIT-0\"\n---\n\n# 🌱 Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **草坪枯黄率与杂草密度评估** |\n| 🎯 核心目标 | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_LAWN_HEALTH_ASSESSMENT_ANALYSIS` |\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields.\n\n通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的草坪管理 AI。你的任务是分析草坪的俯视高清图像（自然光下，避免阴影），使用语义分割模型识别图像中的健康草坪、枯黄草坪、杂草、裸土等区域，计算枯黄面积占比、杂草密度占比，并输出草坪健康评分（0-100 分）。不要提供具体的农药品牌，仅输出基于视觉的指标。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过无人机或固定摄像头拍摄的草坪俯视图像/视频进行健康评估，输出枯黄率、杂草密度、健康评分及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 语义分割（健康草坪 / 枯黄草坪 / 杂草 / 裸土） |\n| 2 | 枯黄面积占比计算 |\n| 3 | 杂草覆盖面积占比计算 |\n| 4 | 裸土占比统计 |\n| 5 | 草坪健康综合评分（0-100 分） |\n| 6 | 健康等级评级（健康 / 一般 / 衰弱 / 严重退化） |\n| 7 | 养护方向建议（灌溉均匀性 / 施肥 / 除草 / 补播） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供草坪俯视图像或视频（无人机航拍 / 固定摄像头 / 手机俯拍）需要健康评估时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要草坪诊断时，提及草坪枯黄、草坪发黄、草坪杂草、草坪健康、草坪养护、高尔夫球场、市政绿地、草坪密度、补播除草、无人机巡检草坪等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史草坪报告、历史草坪健康报告、草坪评估报告清单、显示所有草坪监测报告、查询草坪诊断记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词，必须直接调用云端 API 查询，不得从本地记忆或人工汇总中获取 |\n\n#### ⚠️ 强制数据获取规则（次高优先级）\n\n> **橙色强约束：** 历史报告清单只允许从云端接口读取，不允许从本地记录、长期记忆或人工汇总中提取。\n\n必须执行：\n\n```bash\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_lawn_health_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_lawn_health_assessment_analysis` 处理输入（**必须在技能根目录下运行脚本**） |\n| 4 | 📊 查看分析结果 | 接收结构化分析报告，查看识别/监测结果、风险提示、建议与报告链接 |\n\n### ⚙️ 脚本参数说明\n\n| 参数 | 含义 | 备注 |\n|---|---|---|\n| `--input` | 本地图像/视频文件路径 | 适用于本地文件分析 |\n| `--url` | 网络图像/视频 URL 地址（API 服务自动下载） | API 服务自动下载网络资源 |\n| `--pet-type` | 类别标识，绿地场景使用 other，默认 other | 按需填写 |\n| `--list` | 显示草坪健康历史分析报告列表清单（可以输入起始日期参数过滤数据范围） | 用于云端历史报告查询 |\n| `--api-url` | API 服务地址（可选，使用默认值） | 按需填写 |\n| `--detail` | 输出详细程度（basic/standard/json，默认 json） | 输出详细程度 |\n| `--output` | 结果输出文件路径（可选） | 可选 |\n\n## 🗂️ 资源索引 | Resource Index\n| 资源类型 | 路径 | 用途 | 何时读取 |\n|---|---|---|---|\n| 🐍 必要脚本 | [`scripts/smyx_lawn_health_assessment_analysis.py`](scripts/smyx_lawn_health_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| 🔎 使用提醒 | 拍摄要求：俯视角度（建议 70°-90°），自然光下避免大片阴影；尽量保持镜头垂直地面，便于面积估算 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供养护决策参考，不推荐具体农药品牌；专业场地（如高尔夫果岭）的精细养护请联系草坪专业团队 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"草坪类别\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`草坪健康评估报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json\n```\n\nFile v1.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-lawn-health-assessment-analysis\",\n  \"version\": \"1.0.2\",\n  \"publishedAt\": 1783041027139\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- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析\n\nFile v1.0.2:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.2:scripts/config.yaml\n\n{}\n\nFile v1.0.2:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.2:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.2:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.2:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.2:skill-card.md\n\n## Description: <br>\nAssesses top-down lawn images or videos to estimate wilting/yellowing, weed coverage, bare soil, and an overall lawn health score with maintenance 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 groundskeepers, turf managers, property owners, and municipal green-space teams use this skill to evaluate drone, fixed-camera, or uploaded top-down lawn imagery and receive visual condition metrics plus care recommendations. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Uploaded lawn images, videos, or remote URLs are processed by the publisher's cloud service. <br>\nMitigation: Use only imagery appropriate for that service and avoid sensitive property imagery unless the service's retention and account practices are acceptable. <br>\nRisk: The skill creates or reuses an internal identity and stores account tokens in a local workspace database. <br>\nMitigation: Review local data handling before installation and remove workspace data or tokens when they are no longer needed. <br>\nRisk: Cloud history queries can retrieve reports under the internally managed identity. <br>\nMitigation: Limit use to trusted workspaces and verify the displayed report history belongs to the intended user or environment. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-lawn-health-assessment-analysis) <br>\n- [API Interface Documentation](references/api_doc.md) <br>\n- [SMYX Analysis API Documentation](skills/smyx_analysis/references/api_doc.md) <br>\n- [Skill Usage Demo](https://lifeemergence.com/sample.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown, JSON, Guidance] <br>\n**Output Format:** [Markdown or JSON analysis report with metrics, recommendations, and report links] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include cloud report links and history tables when the user asks for prior lawn health reports.] <br>\n\n## Skill Version(s): <br>\n1.0.2 (source: server release metadata; artifact frontmatter says 1.0.3) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.2:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.2:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3","readmeExcerpt":"Skill: Lawn Health Assessment | 草坪枯黄率与杂草密度评估 Owner: smyx-sunjinhui Summary: AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps ma","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"python -m scripts.smyx_lawn_health_assessment_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json"},{"language":"bash","snippet":"python -m scripts.smyx_lawn_health_assessment_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地草坪俯视图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --input /path/to/lawn_top.jpg\n\n# 分析网络草坪图像/视频\npython -m scripts.smyx_lawn_health_assessment_analysis --url https://example.com/lawn.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史草坪报告（自动触发关键词：查看历史草坪报告、历史报告、草坪评估清单等）\npython -m scripts.smyx_lawn_health_assessment_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_lawn_health_assessment_analysis --input lawn.jpg --output result.json"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: \"smyx-lawn-health-assessment-analysis\"\ndescription: \"AI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields. | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\"\nversion: \"1.0.16\"\nlicense: \"MIT-0\"\n---\n\n# 🌱 Lawn Health Assessment | 草坪枯黄率与杂草密度评估\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **草坪枯黄率与杂草密度评估** |\n| 🎯 核心目标 | 通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_LAWN_HEALTH_ASSESSMENT_ANALYSIS` |\n\nAI-powered lawn health assessment from drone or fixed-camera top-down images. Uses semantic segmentation to distinguish healthy turf (green), wilting/yellow turf (yellow-brown), bare soil and weeds (off-species color/texture), then computes wilting area ratio and weed coverage ratio, and outputs a composite lawn health score (0-100). Helps managers of golf courses, courtyards or municipal greenways quantify turf quality and guide irrigation, fertilization and weeding operations. Scenarios: home courtyards, golf courses, municipal park lawns, sports fields.\n\n通过无人机或固定摄像头拍摄草坪的俯视图像，利用AI语义分割技术区分健康草坪（绿色）、枯黄草坪（黄/褐色）、裸土以及杂草（非目标草种，颜色和纹理不同），计算枯黄面积占比和杂草覆盖面积占比，综合评估草坪健康评分（0-100分）。该技能有助于高尔夫球场、庭院或市政绿地管理者量化草坪质量，指导灌溉、施肥及除草作业。应用场景：家庭庭院、高尔夫球场、市政公园草坪、运动场。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的草坪管理 AI。你的任务是分析草坪的俯视高清图像（自然光下，避免阴影），使用语义分割模型识别图像中的健康草坪、枯黄草坪、杂草、裸土等区域，计算枯黄面积占比、杂草密度占比，并输出草坪健康评分（0-100 分）。不要提供具体的农药品牌，仅输出基于视觉的指标。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过无人机或固定摄像头拍摄的草坪俯视图像/视频进行健康评估，输出枯黄率、杂草密度、健康评分及养护方向建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 语义分割（健康草坪 / 枯黄草坪 / 杂草 / 裸土） |\n| 2 | 枯黄面积占比计算 |\n| 3 | 杂草覆盖面积占比计算 |\n| 4 | 裸土占比统计 |\n| 5 | 草坪健康综合评分（0-100 分） |\n| 6 | 健康等级评级（健康 / 一般 / 衰弱 / 严重退化） |\n| 7 | 养护方向建议（灌溉均匀性 / 施肥 / 除草 / 补播） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供草坪俯视图像或视频（无人机航拍 / 固定摄像头 / 手机俯拍）需要健康评估时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要草坪诊断时，提及草坪枯黄、草坪发黄、草坪杂草、草坪健康、草坪养护、高尔夫球场、市政绿地、草坪密度、补播除草、无人机巡检草坪等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史草坪报告、历史草坪健康报告、草坪评估报告清单、显示所有草坪监测报告、查询草坪诊断记录 |\n"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-lawn-health-assessment-analysis\",\n  \"version\": \"1.0.11\",\n  \"publishedAt\": 1790864907914\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- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析"},{"path":"skills/smyx_analysis/references/api_doc.md","content":"# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |"},{"path":"scripts/config.yaml","content":"{}"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":962,"uniquenessScore":42,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T03:57:35.175Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-10T03:57:35.175Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T07:12:47.667Z","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"}]}}}