{"id":"56cd5061-2012-4ba0-be79-251f876dc66f","entityType":"agent","slug":"clawhub-smyx-sunjinhui-smyx-fruit-ripeness-grading-analysis","name":"Fruit Ripeness Grading | 番茄/草莓果实成熟度分级","canonicalUrl":"https://www.xpersona.co/agent/clawhub-smyx-sunjinhui-smyx-fruit-ripeness-grading-analysis","canonicalPath":"/agent/clawhub-smyx-sunjinhui-smyx-fruit-ripeness-grading-analysis","generatedAt":"2026-10-10T07:56:35.970Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T03:41:09.868Z","emptyReason":null},"description":"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。","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-fruit-ripeness-grading-analysis","sourceUrl":"https://clawhub.ai/smyx-sunjinhui/smyx-fruit-ripeness-grading-analysis","homepage":"https://clawhub.ai/smyx-sunjinhui/skills/smyx-fruit-ripeness-grading-analysis","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/smyx-sunjinhui/smyx-fruit-ripeness-grading-analysis","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/smyx-sunjinhui/skills/smyx-fruit-ripeness-grading-analysis","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":65,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Fruit Ripeness Grading | 番茄/草莓果实成熟度分级 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:41:09.868Z","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:41:09.868Z","emptyReason":null},"stars":null,"forks":null,"downloads":1723,"packageName":null,"latestVersion":"1.0.10","tractionLabel":"1.7K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T03:41:09.868Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T03:41:09.868Z","lastCrawledAt":"2026-10-10T03:41:09.868Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T03:41:09.868Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.10","createdAt":"2026-09-28T11:59:26.033Z","changelog":"- Updated SKILL.md version and metadata information. - Minor documentation updates and version bump. - Removed outdated skill-card.md file.","fileCount":31,"zipByteSize":38868},{"version":"1.0.9","createdAt":"2026-09-09T00:25:30.486Z","changelog":"- Updated SKILL.md with a new version number and description. - Removed the skill-card.md file from the project. - No changes to skill functionality or features.","fileCount":31,"zipByteSize":39183},{"version":"1.0.8","createdAt":"2026-08-29T03:24:31.089Z","changelog":"- Updated skill version to 1.0.11 in SKILL.md. - Removed the redundant file: skill-card.md. - No changes to workflow, usage, features, or capability descriptions. - Changelog reflects only maintenance and metadata improvements.","fileCount":31,"zipByteSize":39121},{"version":"1.0.7","createdAt":"2026-08-18T22:49:30.005Z","changelog":"- Updated skill version to 1.0.9. - Removed the redundant file \"skill-card.md\". - Made minor adjustments in configuration and documentation files. - No changes to core functionality; documentation and packaging cleanup only.","fileCount":31,"zipByteSize":39304},{"version":"1.0.6","createdAt":"2026-08-11T00:59:38.946Z","changelog":"- Updated the version number to 1.0.8 and removed the outdated skill-card.md file. - No feature changes; documentation (SKILL.md) updated for versioning. - All core usage, workflow, and requirements remain unchanged.","fileCount":31,"zipByteSize":39085},{"version":"1.0.5","createdAt":"2026-08-06T14:28:32.289Z","changelog":"- Removed the file skill-card.md. - No other changes to functionality or features. - All usage instructions and technical documentation remain unchanged.","fileCount":31,"zipByteSize":39094},{"version":"1.0.4","createdAt":"2026-08-01T11:32:34.753Z","changelog":"- Version increased to 1.0.7. - Updated SKILL.md with the new version and minor edits. - Removed the skill-card.md file. - No functional or interface changes documented.","fileCount":31,"zipByteSize":39152},{"version":"1.0.3","createdAt":"2026-07-18T17:03:28.850Z","changelog":"- Version update from 1.0.3 to 1.0.5. - Documentation updates in SKILL.md (no user-facing feature changes described). - Removal of redundant file: skill-card.md. - Minor script/utility modifications in skills/smyx_common/scripts/util.py.","fileCount":31,"zipByteSize":39236}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-fruit-ripeness-grading-analysis","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17cfv2h26b7hq5w47tgfy23xx83z9x6:smyx-fruit-ripeness-grading-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-fruit-ripeness-grading-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-fruit-ripeness-grading-analysis/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-fruit-ripeness-grading-analysis/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-fruit-ripeness-grading-analysis/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-fruit-ripeness-grading-analysis/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-fruit-ripeness-grading-analysis/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-fruit-ripeness-grading-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:56:35.967Z"}},"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-fruit-ripeness-grading-analysis/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-fruit-ripeness-grading-analysis/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-fruit-ripeness-grading-analysis/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-smyx-sunjinhui-smyx-fruit-ripeness-grading-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:41:09.868Z","emptyReason":null},"readme":"Skill: Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n\nOwner: smyx-sunjinhui\n\nSummary: AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\nTags: latest:1.0.10\n\nVersion history:\n\nv1.0.10 | 2026-09-28T11:59:26.033Z | auto\n\n- Updated SKILL.md version and metadata information.\n- Minor documentation updates and version bump.\n- Removed outdated skill-card.md file.\n\nv1.0.9 | 2026-09-09T00:25:30.486Z | auto\n\n- Updated SKILL.md with a new version number and description.\n- Removed the skill-card.md file from the project.\n- No changes to skill functionality or features.\n\nv1.0.8 | 2026-08-29T03:24:31.089Z | auto\n\n- Updated skill version to 1.0.11 in SKILL.md.\n- Removed the redundant file: skill-card.md.\n- No changes to workflow, usage, features, or capability descriptions.  \n- Changelog reflects only maintenance and metadata improvements.\n\nv1.0.7 | 2026-08-18T22:49:30.005Z | auto\n\n- Updated skill version to 1.0.9.\n- Removed the redundant file \"skill-card.md\".\n- Made minor adjustments in configuration and documentation files.\n- No changes to core functionality; documentation and packaging cleanup only.\n\nv1.0.6 | 2026-08-11T00:59:38.946Z | auto\n\n- Updated the version number to 1.0.8 and removed the outdated skill-card.md file.\n- No feature changes; documentation (SKILL.md) updated for versioning.\n- All core usage, workflow, and requirements remain unchanged.\n\nv1.0.5 | 2026-08-06T14:28:32.289Z | auto\n\n- Removed the file skill-card.md.\n- No other changes to functionality or features.\n- All usage instructions and technical documentation remain unchanged.\n\nv1.0.4 | 2026-08-01T11:32:34.753Z | auto\n\n- Version increased to 1.0.7.\n- Updated SKILL.md with the new version and minor edits.\n- Removed the skill-card.md file.\n- No functional or interface changes documented.\n\nv1.0.3 | 2026-07-18T17:03:28.850Z | auto\n\n- Version update from 1.0.3 to 1.0.5.\n- Documentation updates in SKILL.md (no user-facing feature changes described).\n- Removal of redundant file: skill-card.md.\n- Minor script/utility modifications in skills/smyx_common/scripts/util.py.\n\nv1.0.2 | 2026-07-10T02:57:49.927Z | auto\n\n- Removed the file: skill-card.md\n- No changes to functionality or documentation content\n- Version update is administrative (removal of documentation file only)\n\nv1.0.1 | 2026-07-05T00:30:25.939Z | auto\n\n- User identity handling is now fully automated and internal; users are no longer asked to provide any ID or open-id—identity parameters are never shown or prompted.\n- Documentation and all workflow content updated to align with new privacy/security flow: only system handles user association to reports and analyses.\n- Changelog, usage notes, and examples revised to remove any mention of user-supplied authentication or identity details.\n- Cloud/report fetching workflow and report output requirements remain unchanged; table formatting for report listing is preserved.\n- Numerous documentation and structure improvements for enhanced clarity and easier onboarding.\n\nv1.0.0 | 2026-05-24T09:15:41.424Z | auto\n\n- Initial release with AI-driven fruit ripeness grading for tomatoes and strawberries using color, gloss, size, and area ratio analysis from images or videos.\n- Provides ripeness levels (Mature-Green, Turning, Ripe, Over-Ripe) based on preset standards, with overall harvest guidance.\n- Strict open-id verification and retrieval process enforced for user data and history queries.\n- Supports both local files and image/video URLs for analysis; automatic cloud-based report querying with formatted table output.\n- Bilingual documentation (English/Chinese) and clear scenario examples for use in grow-boxes, greenhouses, and more.\n\nArchive index:\n\nArchive v1.0.10: 31 files, 38868 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_fruit_ripeness_grading_analysis.py (3525b), skill-card.md (1920b), SKILL.md (11700b), 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.10:SKILL.md\n\n---\nname: \"smyx-fruit-ripeness-grading-analysis\"\ndescription: \"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\"\nversion: \"1.0.15\"\nlicense: \"MIT-0\"\n---\n\n# 🍓 Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **番茄/草莓果实成熟度分级** |\n| 🎯 核心目标 | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_FRUIT_RIPENESS_GRADING_ANALYSIS` |\n\nAI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives.\n\n通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的园艺作物采收 AI。你的任务是分析番茄或草莓果实的图像，检测果实颜色、着色面积、光泽度及大小，根据预设的分级规则输出成熟度等级（青熟期 / 转色期 / 成熟期 / 过熟期）。不要提供具体的采收后处理建议（贮藏温度、保鲜剂等），仅输出基于视觉的成熟度分级。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过番茄 / 草莓果实图像或视频进行成熟度分级，输出每颗果实的成熟度等级及整体采收建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 果实定位与计数 |\n| 2 | 主色调识别（绿 / 浅绿 / 橙 / 红 / 暗红） |\n| 3 | 着色面积比例计算 |\n| 4 | 光泽度评估 |\n| 5 | 果实相对大小估算 |\n| 6 | 按预设规则的成熟度分级（青熟期 / 转色期 / 成熟期 / 过熟期） |\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_fruit_ripeness_grading_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_fruit_ripeness_grading_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_fruit_ripeness_grading_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_fruit_ripeness_grading_analysis.py`](scripts/smyx_fruit_ripeness_grading_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 文件要求：支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | 拍摄要求：自然光下、避免强反光与高对比阴影；尽量正面拍摄果实，多角度补拍可提升精度 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供采收决策参考，不提供采后贮藏 / 保鲜方案；商品化分级请配合企业标准复核 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"作物品种\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`果实成熟度分级报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json\n```\n\nFile v1.0.10:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-fruit-ripeness-grading-analysis\",\n  \"version\": \"1.0.10\",\n  \"publishedAt\": 1790596766033\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: prod\n\nFile v1.0.10:skill-card.md\n\n## Description:\n\nAnalyzes tomato and strawberry images or videos through a cloud service to provide ripeness grades, harvest guidance, and report links.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nGrowers, greenhouse operators, and home gardeners use this skill to assess tomato or strawberry ripeness from photos or videos and review past analysis reports to inform harvest decisions.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Media and user-linked report requests are sent to LifeEmergence cloud services.\n\nMitigation: Use only when cloud transmission of the selected media and report requests is acceptable.\n\nRisk: Automatic account selection and persistent local identity or token records may expose another user's reports in a shared workspace.\n\nMitigation: Avoid shared or multi-user environments until identity selection is server-verified and history access requires explicit confirmation.\n\n## Reference(s):\n\n- [ClawHub skill listing](https://clawhub.ai/smyx-sunjinhui/skills/smyx-fruit-ripeness-grading-analysis)\n- [Skill demonstration](https://lifeemergence.com/sample.html)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Guidance]\n\n**Output Format:** [Structured analysis report or Markdown table of historical reports]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include ripeness grades, harvest suggestions, and links to cloud-hosted reports.]\n\n## Skill Version(s):\n\n1.0.10 (source: server-resolved ClawHub release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.10:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.10:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.9: 31 files, 39183 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_fruit_ripeness_grading_analysis.py (3525b), skill-card.md (2570b), SKILL.md (11700b), 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-fruit-ripeness-grading-analysis\"\ndescription: \"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\"\nversion: \"1.0.13\"\nlicense: \"MIT-0\"\n---\n\n# 🍓 Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **番茄/草莓果实成熟度分级** |\n| 🎯 核心目标 | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_FRUIT_RIPENESS_GRADING_ANALYSIS` |\n\nAI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives.\n\n通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的园艺作物采收 AI。你的任务是分析番茄或草莓果实的图像，检测果实颜色、着色面积、光泽度及大小，根据预设的分级规则输出成熟度等级（青熟期 / 转色期 / 成熟期 / 过熟期）。不要提供具体的采收后处理建议（贮藏温度、保鲜剂等），仅输出基于视觉的成熟度分级。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过番茄 / 草莓果实图像或视频进行成熟度分级，输出每颗果实的成熟度等级及整体采收建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 果实定位与计数 |\n| 2 | 主色调识别（绿 / 浅绿 / 橙 / 红 / 暗红） |\n| 3 | 着色面积比例计算 |\n| 4 | 光泽度评估 |\n| 5 | 果实相对大小估算 |\n| 6 | 按预设规则的成熟度分级（青熟期 / 转色期 / 成熟期 / 过熟期） |\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_fruit_ripeness_grading_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_fruit_ripeness_grading_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_fruit_ripeness_grading_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_fruit_ripeness_grading_analysis.py`](scripts/smyx_fruit_ripeness_grading_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 文件要求：支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | 拍摄要求：自然光下、避免强反光与高对比阴影；尽量正面拍摄果实，多角度补拍可提升精度 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供采收决策参考，不提供采后贮藏 / 保鲜方案；商品化分级请配合企业标准复核 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"作物品种\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`果实成熟度分级报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json\n```\n\nFile v1.0.9:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-fruit-ripeness-grading-analysis\",\n  \"version\": \"1.0.9\",\n  \"publishedAt\": 1788913530486\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 fruit ripeness grading for tomatoes and strawberries that analyzes images or video for fruit color, colored-area ratio, gloss, and relative size, then returns maturity grades and harvest 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 growers, greenhouse operators, home gardeners, and agricultural cooperatives use this skill to grade tomato or strawberry ripeness from fruit images or videos. It helps identify harvest timing by returning structured maturity classifications, visual analysis results, recommendations, and report links.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The release evidence reports cloud identity use, local token storage, history lookup, and plaintext development HTTP endpoints.\n\nMitigation: Review carefully before installing and avoid private media or account-sensitive workflows unless the publisher provides production HTTPS-only configuration, documents cloud uploads and report-history behavior, and provides controls to delete stored local tokens and identity data.\n\nRisk: Ripeness analysis is decision support and may not satisfy commercial grading standards on its own.\n\nMitigation: Use results as harvest guidance and verify commodity-grade decisions against applicable enterprise or market standards.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-fruit-ripeness-grading-analysis)\n- [Skill Demo](https://lifeemergence.com/sample.html)\n- [API Interface Documentation](artifact/references/api_doc.md)\n- [Analysis API Documentation](artifact/skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown and JSON-style structured analysis reports, with optional report-link tables for historical results.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Supports local file input, URL input, optional output file writing, and history-list retrieval through cloud API calls.]\n\n## Skill Version(s):\n\n1.0.9 (source: server release metadata; artifact frontmatter reports 1.0.13)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.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, 39121 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_fruit_ripeness_grading_analysis.py (3525b), skill-card.md (2416b), SKILL.md (11700b), 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-fruit-ripeness-grading-analysis\"\ndescription: \"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\"\nversion: \"1.0.11\"\nlicense: \"MIT-0\"\n---\n\n# 🍓 Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **番茄/草莓果实成熟度分级** |\n| 🎯 核心目标 | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_FRUIT_RIPENESS_GRADING_ANALYSIS` |\n\nAI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives.\n\n通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的园艺作物采收 AI。你的任务是分析番茄或草莓果实的图像，检测果实颜色、着色面积、光泽度及大小，根据预设的分级规则输出成熟度等级（青熟期 / 转色期 / 成熟期 / 过熟期）。不要提供具体的采收后处理建议（贮藏温度、保鲜剂等），仅输出基于视觉的成熟度分级。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过番茄 / 草莓果实图像或视频进行成熟度分级，输出每颗果实的成熟度等级及整体采收建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 果实定位与计数 |\n| 2 | 主色调识别（绿 / 浅绿 / 橙 / 红 / 暗红） |\n| 3 | 着色面积比例计算 |\n| 4 | 光泽度评估 |\n| 5 | 果实相对大小估算 |\n| 6 | 按预设规则的成熟度分级（青熟期 / 转色期 / 成熟期 / 过熟期） |\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_fruit_ripeness_grading_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_fruit_ripeness_grading_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_fruit_ripeness_grading_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_fruit_ripeness_grading_analysis.py`](scripts/smyx_fruit_ripeness_grading_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 文件要求：支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | 拍摄要求：自然光下、避免强反光与高对比阴影；尽量正面拍摄果实，多角度补拍可提升精度 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供采收决策参考，不提供采后贮藏 / 保鲜方案；商品化分级请配合企业标准复核 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"作物品种\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`果实成熟度分级报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json\n```\n\nFile v1.0.8:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-fruit-ripeness-grading-analysis\",\n  \"version\": \"1.0.8\",\n  \"publishedAt\": 1787973871089\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\nGrades tomato and strawberry fruit ripeness from images or videos by analyzing visual cues such as color, colored-area ratio, gloss, and relative size, then returning a structured maturity grade and harvest-window 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\nGrowers, greenhouse operators, cooperatives, and agents supporting agricultural workflows use this skill to assess tomatoes or strawberries from uploaded media and produce ripeness grades, structured results, report links, and cloud-backed history lookups.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Media files or private media URLs may be sent to the Life Emergence cloud service for analysis.\n\nMitigation: Avoid sensitive images and private internal URLs unless the publisher clarifies retention, processing, and deletion behavior.\n\nRisk: The skill can query cloud report history and silently create or reuse a user identity.\n\nMitigation: Review account creation and report-history access behavior before deployment, and restrict use to the intended workspace or account.\n\nRisk: A local workspace database may retain generated or reused identity tokens.\n\nMitigation: Inspect and manage local token storage according to organizational policy before sharing or archiving the workspace.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-fruit-ripeness-grading-analysis)\n- [Skill Demo](https://lifeemergence.com/sample.html)\n- [API Interface Documentation](artifact/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown and JSON-formatted structured analysis text, with optional saved output file]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Can include report links and cloud-backed history lists; default detail level is json.]\n\n## Skill Version(s):\n\n1.0.8 (source: server release metadata; SKILL.md frontmatter reports 1.0.11)\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, 39304 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_fruit_ripeness_grading_analysis.py (3525b), skill-card.md (2960b), SKILL.md (11699b), 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.7:SKILL.md\n\n---\nname: \"smyx-fruit-ripeness-grading-analysis\"\ndescription: \"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\"\nversion: \"1.0.9\"\nlicense: \"MIT-0\"\n---\n\n# 🍓 Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **番茄/草莓果实成熟度分级** |\n| 🎯 核心目标 | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_FRUIT_RIPENESS_GRADING_ANALYSIS` |\n\nAI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives.\n\n通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的园艺作物采收 AI。你的任务是分析番茄或草莓果实的图像，检测果实颜色、着色面积、光泽度及大小，根据预设的分级规则输出成熟度等级（青熟期 / 转色期 / 成熟期 / 过熟期）。不要提供具体的采收后处理建议（贮藏温度、保鲜剂等），仅输出基于视觉的成熟度分级。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过番茄 / 草莓果实图像或视频进行成熟度分级，输出每颗果实的成熟度等级及整体采收建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 果实定位与计数 |\n| 2 | 主色调识别（绿 / 浅绿 / 橙 / 红 / 暗红） |\n| 3 | 着色面积比例计算 |\n| 4 | 光泽度评估 |\n| 5 | 果实相对大小估算 |\n| 6 | 按预设规则的成熟度分级（青熟期 / 转色期 / 成熟期 / 过熟期） |\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_fruit_ripeness_grading_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_fruit_ripeness_grading_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_fruit_ripeness_grading_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_fruit_ripeness_grading_analysis.py`](scripts/smyx_fruit_ripeness_grading_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 文件要求：支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | 拍摄要求：自然光下、避免强反光与高对比阴影；尽量正面拍摄果实，多角度补拍可提升精度 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供采收决策参考，不提供采后贮藏 / 保鲜方案；商品化分级请配合企业标准复核 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"作物品种\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`果实成熟度分级报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json\n```\n\nFile v1.0.7:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-fruit-ripeness-grading-analysis\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1787093370005\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: dev\n\nFile v1.0.7:skill-card.md\n\n## Description:\n\nGrades tomato and strawberry ripeness from fruit images, videos, or URLs by using AI vision to assess color, colored-area ratio, gloss, and relative size, then returns structured grading results and harvest 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 growers, greenhouse operators, garden users, and agricultural cooperatives use this skill to grade tomato or strawberry ripeness from images or videos and review report history. Developers and agents can invoke the bundled script to submit media or URLs to the service and return structured analysis, report links, or historical report lists.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Fruit images, videos, URLs, and report-history requests are sent to the LifeEmergence/SMYX cloud service.\n\nMitigation: Use the skill only with media and URLs that are appropriate for that cloud service, and review the configured endpoints before installation or execution.\n\nRisk: The skill creates or reuses a local identity and stores account tokens in a workspace SQLite database.\n\nMitigation: Treat the workspace data directory as credential-bearing storage, restrict access to it, and clear local identity or token records when they are no longer needed.\n\nRisk: Development or LAN endpoint configuration is present in the artifact.\n\nMitigation: Confirm the active configuration uses the intended production endpoint before running the skill in a shared or commercial environment.\n\nRisk: Ripeness grades and harvest advice are visual decision-support outputs rather than a substitute for enterprise grading standards.\n\nMitigation: Review results against local crop quality requirements before using them for commercial grading or harvest decisions.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-fruit-ripeness-grading-analysis)\n- [Publisher Profile](https://clawhub.ai/user/smyx-sunjinhui)\n- [Skill Demo](https://lifeemergence.com/sample.html)\n- [API Documentation](references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance]\n\n**Output Format:** [Markdown prose and tables with JSON-style structured analysis results, report links, and optional saved text output.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [The script supports basic, standard, and JSON detail modes and can write results to a user-specified output file.]\n\n## Skill Version(s):\n\n1.0.7 (source: server release metadata; artifact frontmatter reports 1.0.9)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.7:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.7:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.6: 31 files, 39085 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_fruit_ripeness_grading_analysis.py (3525b), skill-card.md (2436b), SKILL.md (11699b), 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-fruit-ripeness-grading-analysis\"\ndescription: \"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\"\nversion: \"1.0.8\"\nlicense: \"MIT-0\"\n---\n\n# 🍓 Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **番茄/草莓果实成熟度分级** |\n| 🎯 核心目标 | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_FRUIT_RIPENESS_GRADING_ANALYSIS` |\n\nAI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives.\n\n通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的园艺作物采收 AI。你的任务是分析番茄或草莓果实的图像，检测果实颜色、着色面积、光泽度及大小，根据预设的分级规则输出成熟度等级（青熟期 / 转色期 / 成熟期 / 过熟期）。不要提供具体的采收后处理建议（贮藏温度、保鲜剂等），仅输出基于视觉的成熟度分级。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过番茄 / 草莓果实图像或视频进行成熟度分级，输出每颗果实的成熟度等级及整体采收建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 果实定位与计数 |\n| 2 | 主色调识别（绿 / 浅绿 / 橙 / 红 / 暗红） |\n| 3 | 着色面积比例计算 |\n| 4 | 光泽度评估 |\n| 5 | 果实相对大小估算 |\n| 6 | 按预设规则的成熟度分级（青熟期 / 转色期 / 成熟期 / 过熟期） |\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_fruit_ripeness_grading_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_fruit_ripeness_grading_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_fruit_ripeness_grading_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_fruit_ripeness_grading_analysis.py`](scripts/smyx_fruit_ripeness_grading_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 文件要求：支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | 拍摄要求：自然光下、避免强反光与高对比阴影；尽量正面拍摄果实，多角度补拍可提升精度 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供采收决策参考，不提供采后贮藏 / 保鲜方案；商品化分级请配合企业标准复核 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"作物品种\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`果实成熟度分级报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json\n```\n\nFile v1.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-fruit-ripeness-grading-analysis\",\n  \"version\": \"1.0.6\",\n  \"publishedAt\": 1786409978946\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\nAI-powered fruit ripeness grading for tomatoes and strawberries from images or videos, returning visual maturity grades, structured analysis results, harvest guidance, and report links.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal growers, greenhouse operators, smart grow-box users, home gardeners, cooperatives, and agents supporting them use this skill to analyze tomato or strawberry media for ripeness grading, harvest timing, and account-linked report history.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Fruit images, videos, or media URLs are sent to the LifeEmergence cloud service for analysis.\n\nMitigation: Use the skill only with media approved for that service and review retention, privacy, and account controls before submitting private or sensitive media.\n\nRisk: The skill can create or reuse a local account identity and store service tokens in the workspace data database.\n\nMitigation: Run it in an appropriate workspace, protect or clear stored local identity data according to policy, and review account controls before installation.\n\nRisk: History queries fetch account-linked report records automatically.\n\nMitigation: Confirm the active account context before listing historical reports and avoid using shared workspaces for private report histories.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-fruit-ripeness-grading-analysis)\n- [Skill Demo](https://lifeemergence.com/sample.html)\n- [API Interface Documentation](references/api_doc.md)\n- [SMYX Analysis API Interface Documentation](skills/smyx_analysis/references/api_doc.md)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Shell commands, Guidance]\n\n**Output Format:** [Markdown or JSON-like structured text with report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Can save report output to a file when requested.]\n\n## Skill Version(s):\n\n1.0.6 (source: server release metadata; artifact frontmatter says 1.0.8)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.6:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.6:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.5: 31 files, 39094 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_fruit_ripeness_grading_analysis.py (3525b), skill-card.md (2384b), SKILL.md (11699b), 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-fruit-ripeness-grading-analysis\"\ndescription: \"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\"\nversion: \"1.0.7\"\nlicense: \"MIT-0\"\n---\n\n# 🍓 Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **番茄/草莓果实成熟度分级** |\n| 🎯 核心目标 | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_FRUIT_RIPENESS_GRADING_ANALYSIS` |\n\nAI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives.\n\n通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的园艺作物采收 AI。你的任务是分析番茄或草莓果实的图像，检测果实颜色、着色面积、光泽度及大小，根据预设的分级规则输出成熟度等级（青熟期 / 转色期 / 成熟期 / 过熟期）。不要提供具体的采收后处理建议（贮藏温度、保鲜剂等），仅输出基于视觉的成熟度分级。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过番茄 / 草莓果实图像或视频进行成熟度分级，输出每颗果实的成熟度等级及整体采收建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 果实定位与计数 |\n| 2 | 主色调识别（绿 / 浅绿 / 橙 / 红 / 暗红） |\n| 3 | 着色面积比例计算 |\n| 4 | 光泽度评估 |\n| 5 | 果实相对大小估算 |\n| 6 | 按预设规则的成熟度分级（青熟期 / 转色期 / 成熟期 / 过熟期） |\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_fruit_ripeness_grading_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_fruit_ripeness_grading_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_fruit_ripeness_grading_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_fruit_ripeness_grading_analysis.py`](scripts/smyx_fruit_ripeness_grading_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 文件要求：支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | 拍摄要求：自然光下、避免强反光与高对比阴影；尽量正面拍摄果实，多角度补拍可提升精度 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供采收决策参考，不提供采后贮藏 / 保鲜方案；商品化分级请配合企业标准复核 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"作物品种\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`果实成熟度分级报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json\n```\n\nFile v1.0.5:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-fruit-ripeness-grading-analysis\",\n  \"version\": \"1.0.5\",\n  \"publishedAt\": 1786026512289\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:\n\nAI-powered fruit ripeness grading for tomatoes and strawberries from images or video, returning visual maturity grades, structured analysis, harvest-timing guidance, and report links.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal growers, greenhouse operators, home gardeners, and produce cooperatives use this skill to grade tomato or strawberry ripeness from submitted images, videos, or URLs. The skill helps assess color, colored-area ratio, gloss, relative size, and harvest timing while returning structured reports and historical report links.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Cloud-backed analysis sends local media or submitted URLs to a remote service.\n\nMitigation: Use only non-sensitive fruit images, videos, or public URLs that are acceptable to upload to the service.\n\nRisk: The skill creates or reuses a service identity and stores account tokens locally.\n\nMitigation: Run it only in workspaces where local token persistence is acceptable, and review or clear workspace data before sharing the environment.\n\nRisk: Historical report queries retrieve remote report history linked to the resolved service identity.\n\nMitigation: Avoid using the history feature when report metadata or prior analysis records should not be exposed in the current workspace.\n\n## Reference(s):\n\n- [API 接口文档](references/api_doc.md)\n- [API接口文档](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, configuration, guidance]\n\n**Output Format:** [Markdown and JSON-like structured analysis text with report links]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May save analysis output to a user-specified file and may return cloud-hosted report export links.]\n\n## Skill Version(s):\n\n1.0.5 (source: server release metadata; artifact SKILL.md frontmatter says 1.0.7)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.5:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.5:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.4: 31 files, 39152 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_fruit_ripeness_grading_analysis.py (3525b), skill-card.md (2582b), SKILL.md (11699b), 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-fruit-ripeness-grading-analysis\"\ndescription: \"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\"\nversion: \"1.0.7\"\nlicense: \"MIT-0\"\n---\n\n# 🍓 Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **番茄/草莓果实成熟度分级** |\n| 🎯 核心目标 | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_FRUIT_RIPENESS_GRADING_ANALYSIS` |\n\nAI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives.\n\n通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的园艺作物采收 AI。你的任务是分析番茄或草莓果实的图像，检测果实颜色、着色面积、光泽度及大小，根据预设的分级规则输出成熟度等级（青熟期 / 转色期 / 成熟期 / 过熟期）。不要提供具体的采收后处理建议（贮藏温度、保鲜剂等），仅输出基于视觉的成熟度分级。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过番茄 / 草莓果实图像或视频进行成熟度分级，输出每颗果实的成熟度等级及整体采收建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 果实定位与计数 |\n| 2 | 主色调识别（绿 / 浅绿 / 橙 / 红 / 暗红） |\n| 3 | 着色面积比例计算 |\n| 4 | 光泽度评估 |\n| 5 | 果实相对大小估算 |\n| 6 | 按预设规则的成熟度分级（青熟期 / 转色期 / 成熟期 / 过熟期） |\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_fruit_ripeness_grading_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_fruit_ripeness_grading_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_fruit_ripeness_grading_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_fruit_ripeness_grading_analysis.py`](scripts/smyx_fruit_ripeness_grading_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 文件要求：支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | 拍摄要求：自然光下、避免强反光与高对比阴影；尽量正面拍摄果实，多角度补拍可提升精度 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供采收决策参考，不提供采后贮藏 / 保鲜方案；商品化分级请配合企业标准复核 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"作物品种\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`果实成熟度分级报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json\n```\n\nFile v1.0.4:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-fruit-ripeness-grading-analysis\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1785583954753\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>\nGrades tomato and strawberry ripeness from images or videos by analyzing visual cues such as color, colored-area ratio, gloss, and relative size, then produces a structured maturity report and harvest 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>\nGrowers, greenhouse operators, home gardeners, fruit and vegetable cooperatives, and agents assisting them use this skill to evaluate tomato or strawberry images and videos, classify maturity stages, and retrieve prior grading reports. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Submitted fruit images, videos, or URLs are processed by the Life Emergence cloud service. <br>\nMitigation: Install only when this cloud processing is acceptable for the data being analyzed. <br>\nRisk: The skill silently creates or reuses a local/default identity and can store authentication tokens locally. <br>\nMitigation: Review workspace data files before and after use, especially data/smyx-api-key.txt and the local SQLite database, and prefer releases with explicit account, retention, and deletion controls. <br>\nRisk: Fruit maturity output is decision support and may be unsuitable as the sole basis for commercial grading. <br>\nMitigation: Use the result as harvest guidance and pair commercial grading decisions with human or enterprise-standard review. <br>\n\n\n## Reference(s): <br>\n- [API documentation](references/api_doc.md) <br>\n- [Skill demo](https://lifeemergence.com/sample.html) <br>\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-fruit-ripeness-grading-analysis) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, JSON, guidance] <br>\n**Output Format:** [Structured text or Markdown, with JSON available through the detailed output mode and optional file output.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Can include maturity classifications, visual observations, harvest guidance, history tables, and report links.] <br>\n\n## Skill Version(s): <br>\n1.0.4 (source: server release metadata; artifact frontmatter reports 1.0.7) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.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, 39236 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_fruit_ripeness_grading_analysis.py (3525b), skill-card.md (2837b), SKILL.md (11699b), 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-fruit-ripeness-grading-analysis\"\ndescription: \"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\"\nversion: \"1.0.5\"\nlicense: \"MIT-0\"\n---\n\n# 🍓 Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **番茄/草莓果实成熟度分级** |\n| 🎯 核心目标 | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_FRUIT_RIPENESS_GRADING_ANALYSIS` |\n\nAI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives.\n\n通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的园艺作物采收 AI。你的任务是分析番茄或草莓果实的图像，检测果实颜色、着色面积、光泽度及大小，根据预设的分级规则输出成熟度等级（青熟期 / 转色期 / 成熟期 / 过熟期）。不要提供具体的采收后处理建议（贮藏温度、保鲜剂等），仅输出基于视觉的成熟度分级。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过番茄 / 草莓果实图像或视频进行成熟度分级，输出每颗果实的成熟度等级及整体采收建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 果实定位与计数 |\n| 2 | 主色调识别（绿 / 浅绿 / 橙 / 红 / 暗红） |\n| 3 | 着色面积比例计算 |\n| 4 | 光泽度评估 |\n| 5 | 果实相对大小估算 |\n| 6 | 按预设规则的成熟度分级（青熟期 / 转色期 / 成熟期 / 过熟期） |\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_fruit_ripeness_grading_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_fruit_ripeness_grading_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_fruit_ripeness_grading_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_fruit_ripeness_grading_analysis.py`](scripts/smyx_fruit_ripeness_grading_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 文件要求：支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | 拍摄要求：自然光下、避免强反光与高对比阴影；尽量正面拍摄果实，多角度补拍可提升精度 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供采收决策参考，不提供采后贮藏 / 保鲜方案；商品化分级请配合企业标准复核 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"作物品种\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`果实成熟度分级报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json\n```\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-fruit-ripeness-grading-analysis\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1784394208850\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>\nGrades tomato and strawberry ripeness from fruit images or videos by detecting color, colored-area ratio, gloss, and relative size, then returns maturity grades and harvest-window 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>\nGrowers, greenhouse operators, home gardeners, and produce cooperatives use this skill to assess tomato or strawberry ripeness from submitted media and receive structured grading plus harvest-timing guidance. Agents can invoke it for image or video analysis, report generation, and cloud report-history lookup. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Submitted fruit images, videos, or URLs may be processed by configured LifeEmergence cloud services. <br>\nMitigation: Use only media appropriate for external processing, and avoid sensitive content until the publisher documents retention, deletion, and account controls. <br>\nRisk: The skill can silently create or reuse a local workspace identity and link cloud report history to that identity. <br>\nMitigation: Review identity and report-state behavior before installation, and run in a dedicated workspace when separation from other activity matters. <br>\nRisk: Evidence.security marks this release as suspicious because account creation, token storage, report retention, and leftover pet/video-analysis references need review. <br>\nMitigation: Install only after reviewing the publisher documentation and configured service endpoints, and reassess after those behaviors are clarified or cleaned up. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-fruit-ripeness-grading-analysis) <br>\n- [Skill usage demo](https://lifeemergence.com/sample.html) <br>\n- [API interface documentation](artifact/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, guidance] <br>\n**Output Format:** [Markdown and JSON-oriented structured analysis reports, with optional Markdown tables for report history] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Can return ripeness grades, harvest recommendations, report links, and saved report output when an output path is supplied.] <br>\n\n## Skill Version(s): <br>\n1.0.3 (source: server release metadata and target metadata; artifact frontmatter states 1.0.5) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.3:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.3:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.2: 31 files, 38998 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_fruit_ripeness_grading_analysis.py (3525b), skill-card.md (2461b), SKILL.md (11699b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28605b), _meta.json (155b)\n\nFile v1.0.2:SKILL.md\n\n---\nname: \"smyx-fruit-ripeness-grading-analysis\"\ndescription: \"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\"\nversion: \"1.0.3\"\nlicense: \"MIT-0\"\n---\n\n# 🍓 Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **番茄/草莓果实成熟度分级** |\n| 🎯 核心目标 | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_FRUIT_RIPENESS_GRADING_ANALYSIS` |\n\nAI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives.\n\n通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的园艺作物采收 AI。你的任务是分析番茄或草莓果实的图像，检测果实颜色、着色面积、光泽度及大小，根据预设的分级规则输出成熟度等级（青熟期 / 转色期 / 成熟期 / 过熟期）。不要提供具体的采收后处理建议（贮藏温度、保鲜剂等），仅输出基于视觉的成熟度分级。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过番茄 / 草莓果实图像或视频进行成熟度分级，输出每颗果实的成熟度等级及整体采收建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 果实定位与计数 |\n| 2 | 主色调识别（绿 / 浅绿 / 橙 / 红 / 暗红） |\n| 3 | 着色面积比例计算 |\n| 4 | 光泽度评估 |\n| 5 | 果实相对大小估算 |\n| 6 | 按预设规则的成熟度分级（青熟期 / 转色期 / 成熟期 / 过熟期） |\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_fruit_ripeness_grading_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_fruit_ripeness_grading_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_fruit_ripeness_grading_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_fruit_ripeness_grading_analysis.py`](scripts/smyx_fruit_ripeness_grading_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 文件要求：支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | 拍摄要求：自然光下、避免强反光与高对比阴影；尽量正面拍摄果实，多角度补拍可提升精度 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供采收决策参考，不提供采后贮藏 / 保鲜方案；商品化分级请配合企业标准复核 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"作物品种\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`果实成熟度分级报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json\n```\n\nFile v1.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-fruit-ripeness-grading-analysis\",\n  \"version\": \"1.0.2\",\n  \"publishedAt\": 1783652269927\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>\nAnalyzes tomato or strawberry images and videos to detect visual ripeness indicators, assign maturity grades, and return structured harvest-decision 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>\nGrowers, greenhouse operators, home gardeners, and produce cooperatives use this skill to grade tomato or strawberry ripeness from images, videos, local files, or URLs and to review structured analysis reports and report links. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Fruit images, videos, or supplied URLs are sent to the LifeEmergence/SMYX cloud service. <br>\nMitigation: Use only nonsensitive media and public URLs unless retention, deletion, and account-scoping behavior are acceptable for the deployment. <br>\nRisk: The skill can create or reuse a persistent identity and store service tokens locally. <br>\nMitigation: Review local identity and token storage before installation; run in an isolated workspace and clear stored credentials when they are no longer needed. <br>\nRisk: Cloud history and report links can be retrieved after analysis. <br>\nMitigation: Use account-scoped deployments and confirm that report links may be shown to the current user before enabling history lookup workflows. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-fruit-ripeness-grading-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, guidance] <br>\n**Output Format:** [Markdown or JSON analysis output with report links; shell commands for direct script invocation.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May save analysis output to a file when an output path is provided.] <br>\n\n## Skill Version(s): <br>\n1.0.2 (source: ClawHub release evidence; artifact frontmatter lists 1.0.3) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.2:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.2:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3\n\nArchive v1.0.1: 31 files, 39174 bytes\n\nFiles: references/api_doc.md (630b), scripts/__init__.py (50b), scripts/config.py (685b), scripts/config.yaml (3b), scripts/skill.py (583b), scripts/smyx_fruit_ripeness_grading_analysis.py (3525b), skill-card.md (3032b), SKILL.md (11699b), skills/smyx_analysis/__init__.py (0b), skills/smyx_analysis/references/api_doc.md (427b), skills/smyx_analysis/requirements.txt (45b), skills/smyx_analysis/scripts/__init__.py (0b), skills/smyx_analysis/scripts/api_service.py (1509b), skills/smyx_analysis/scripts/config.py (1003b), skills/smyx_analysis/scripts/config.yaml (3b), skills/smyx_analysis/scripts/skill.py (6529b), skills/smyx_analysis/scripts/smyx_analysis.py (3833b), skills/smyx_common/__init__.py (0b), skills/smyx_common/requirements.txt (47b), skills/smyx_common/scripts/__init__.py (177b), skills/smyx_common/scripts/api_service.py (2645b), skills/smyx_common/scripts/base.py (469b), skills/smyx_common/scripts/config-dev.yaml (214b), skills/smyx_common/scripts/config-prod.yaml (0b), skills/smyx_common/scripts/config-test.yaml (256b), skills/smyx_common/scripts/config.py (24363b), skills/smyx_common/scripts/config.yaml (473b), skills/smyx_common/scripts/dao.py (18266b), skills/smyx_common/scripts/skill.py (2473b), skills/smyx_common/scripts/util.py (28605b), _meta.json (155b)\n\nFile v1.0.1:SKILL.md\n\n---\nname: \"smyx-fruit-ripeness-grading-analysis\"\ndescription: \"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\"\nversion: \"1.0.3\"\nlicense: \"MIT-0\"\n---\n\n# 🍓 Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **番茄/草莓果实成熟度分级** |\n| 🎯 核心目标 | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_FRUIT_RIPENESS_GRADING_ANALYSIS` |\n\nAI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives.\n\n通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的园艺作物采收 AI。你的任务是分析番茄或草莓果实的图像，检测果实颜色、着色面积、光泽度及大小，根据预设的分级规则输出成熟度等级（青熟期 / 转色期 / 成熟期 / 过熟期）。不要提供具体的采收后处理建议（贮藏温度、保鲜剂等），仅输出基于视觉的成熟度分级。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过番茄 / 草莓果实图像或视频进行成熟度分级，输出每颗果实的成熟度等级及整体采收建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 果实定位与计数 |\n| 2 | 主色调识别（绿 / 浅绿 / 橙 / 红 / 暗红） |\n| 3 | 着色面积比例计算 |\n| 4 | 光泽度评估 |\n| 5 | 果实相对大小估算 |\n| 6 | 按预设规则的成熟度分级（青熟期 / 转色期 / 成熟期 / 过熟期） |\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_fruit_ripeness_grading_analysis --list\n```\n\n| 类型 | 要求 |\n|---|---|\n| ✅ 必须 | 使用 `python -m scripts.smyx_fruit_ripeness_grading_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_fruit_ripeness_grading_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_fruit_ripeness_grading_analysis.py`](scripts/smyx_fruit_ripeness_grading_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 |\n| 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 |\n\n## ⚠️ 注意事项 | Notes\n| 分类 | 注意事项 |\n|---|---|\n| 📚 文档读取 | 仅在需要时读取参考文档，保持上下文简洁 |\n| 📁 格式支持 | 文件要求：支持 jpg/png/mp4/avi/mov 格式，最大 10MB |\n| 🔎 使用提醒 | 拍摄要求：自然光下、避免强反光与高对比阴影；尽量正面拍摄果实，多角度补拍可提升精度 |\n| 🧑‍⚖️ 结果性质 | 分析结果仅供采收决策参考，不提供采后贮藏 / 保鲜方案；商品化分级请配合企业标准复核 |\n| 🚫 脚本限制 | 禁止临时生成脚本，只能用技能本身的脚本 |\n| 🌐 网络地址 | 传入的网路地址参数，不需要下载本地，默认地址都是公网地址，api 服务会自动下载 |\n| 📁 格式支持 | 当显示历史分析报告清单的时候，从接口返回 json 数据中提取字段  作为超链接地址，且自动转化为如下 Markdown 表格格式输出，包含\"报告名称\"、\"作物品种\"、\"分析时间\"、\"点击查看\"四列，其中\"报告名称\"列使用`果实成熟度分级报告-{记录id}`形式拼接, \"点击查看\"列使用`[🔗 查看报告]()`格式的超链接，用户点击即可直接跳转到对应的完整报告页面。 |\n| 📜 报告输出 | 表格输出示例 |\n\n## 🧰 使用示例 | Examples\n```bash\n# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json\n```\n\nFile v1.0.1:_meta.json\n\n{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-fruit-ripeness-grading-analysis\",\n  \"version\": \"1.0.1\",\n  \"publishedAt\": 1783211425939\n}\n\nFile v1.0.1:references/api_doc.md\n\n# API 接口文档\n\n此处用于存放宠物健康分析 API 的接口文档，待后续补充。\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 响应格式：JSON\n\n## 主要接口\n\n1. `/web/health-analysis/v2/start-health-analysis` - 启动健康分析任务\n2. `/web/health-analysis/v2/get-health-analysis-result` - 获取分析结果\n3. `/web/health-analysis/page-health-analysis-result` - 分页查询历史报告\n4. `/health/order/api/getReportDetailExport?id={id}` - 导出完整报告\n\n## 场景代码\n\n- `OPEN_PET_HEALTH_ANALYSIS` - 开放平台宠物健康分析\n\nFile v1.0.1:skills/smyx_analysis/references/api_doc.md\n\n# API接口文档\n\n## 接口规范\n\n- 基础地址：由 smyx_common 配置统一管理\n- 认证方式：API Key 鉴权\n- 请求格式：支持文件上传\n- 响应格式：JSON\n\n## 错误码说明\n\n| 错误码 | 说明       |\n|-----|----------|\n| 400 | 请求参数错误   |\n| 401 | API密钥无效  |\n| 403 | 权限不足     |\n| 413 | 文件过大     |\n| 415 | 不支持的文件格式 |\n| 500 | 服务器内部错误  |\n\nFile v1.0.1:scripts/config.yaml\n\n{}\n\nFile v1.0.1:skills/smyx_analysis/scripts/config.yaml\n\n{}\n\nFile v1.0.1:skills/smyx_common/scripts/config-dev.yaml\n\nApiEnum:\n  base-url-open-api: \"http://192.168.1.234:9601/smyx-open-api\"\n  base-url-open-h5: \"http://192.168.1.234:4100\"\n  base-url-health: \"http://192.168.1.234:7070/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.1:skills/smyx_common/scripts/config-test.yaml\n\nApiEnum:\n  base-url-open-api: \"https://livemonitortest.lifeemergence.com/smyx-open-api\"\n  base-url-open-h5: \"http://livemonitortest.lifeemergence.com\"\n  base-url-health: \"https://healthtest.lifeemergence.com/jeecg-boot-xzgz\"\n\nConstantEnum:\n  is-debug: true\n\nFile v1.0.1:skills/smyx_common/scripts/config.yaml\n\nApiEnum:\n  api-key: null\n  api-secret-key: null\n  base-url-health: https://lifeemergence.com/jeecg-boot-xzgz\n  base-url-open-api: https://open.lifeemergence.com/smyx-open-api\n  base-url-open-h5: http://livemonitor.lifeemergence.com\n  database-url: null\nConstantEnum:\n  app--id: x1a3s4nwy1s2r4se\n  current--tentant-code: XIAN_ZHAO_GAN_ZHI\n  default--skill-platform-name: ARK_CLAW\n  feishu-app--id: cli_a93d769369badcb1\n  feishu-app--secret: null\n  is-debug: false\nenv: prod\n\nFile v1.0.1:skill-card.md\n\n## Description: <br>\nGrades tomato and strawberry fruit ripeness from images or videos by sending media or media URLs to Lifeemergence cloud services and returning structured visual analysis, ripeness grades, harvest guidance, and report links. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[smyx-sunjinhui](https://clawhub.ai/user/smyx-sunjinhui) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nGrowers, greenhouse operators, home gardeners, cooperatives, and developers use this skill to assess tomato or strawberry maturity from images or videos. It supports harvest timing decisions by reporting visual maturity signals, ripeness grades, suggested harvest posture, and cloud report links. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Media files or media URLs are sent to Lifeemergence cloud services for analysis. <br>\nMitigation: Use only media and URLs approved for that cloud workflow, and avoid sensitive or regulated content unless the workspace has approved that processing. <br>\nRisk: The skill silently creates or reuses account identity and may store reusable tokens or profile data locally. <br>\nMitigation: Install only where account-linked local persistence is acceptable, and review or clear local persisted user data according to workspace policy. <br>\nRisk: The skill can fetch cloud report history associated with the resolved internal identity. <br>\nMitigation: Run history listing only when account-linked report access is intended, and review generated report links before sharing output. <br>\nRisk: Server security evidence marks the release as suspicious because fruit-analysis behavior is mixed with unrelated pet or health-report infrastructure. <br>\nMitigation: Review the skill, dependencies, and configured endpoints before installation or deployment. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/smyx-sunjinhui/skills/smyx-fruit-ripeness-grading-analysis) <br>\n- [Skill Demo](https://lifeemergence.com/sample.html) <br>\n- [API Interface Documentation](references/api_doc.md) <br>\n- [Shared Analysis API Documentation](skills/smyx_analysis/references/api_doc.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, JSON, shell commands, guidance] <br>\n**Output Format:** [Markdown or JSON structured analysis reports with report links; shell commands for script execution when needed.] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Can write an output file when --output is used; fetches cloud report history with --list.] <br>\n\n## Skill Version(s): <br>\n1.0.1 (source: server release metadata; artifact frontmatter reports 1.0.3) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nFile v1.0.1:skills/smyx_analysis/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nyaml==6.0.3\n\nFile v1.0.1:skills/smyx_common/requirements.txt\n\npydash==8.0.6\nSQLAlchemy==2.0.46\nPyYAML==6.0.3","readmeExcerpt":"Skill: Fruit Ripeness Grading | 番茄/草莓果实成熟度分级 Owner: smyx-sunjinhui Summary: AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-R","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"python -m scripts.smyx_fruit_ripeness_grading_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json"},{"language":"bash","snippet":"python -m scripts.smyx_fruit_ripeness_grading_analysis --list"},{"language":"text","snippet":"requests>=2.28.0"},{"language":"bash","snippet":"# 分析本地番茄/草莓果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input /path/to/tomato.jpg\n\n# 分析网络果实图像/视频\npython -m scripts.smyx_fruit_ripeness_grading_analysis --url https://example.com/strawberry.jpg\n\n# 显示历史分析报告/显示分析报告清单列表/显示历史成熟度报告（自动触发关键词：查看历史成熟度报告、历史报告、果实分级清单等）\npython -m scripts.smyx_fruit_ripeness_grading_analysis --list\n\n# 输出精简报告\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --detail basic\n\n# 保存结果到文件\npython -m scripts.smyx_fruit_ripeness_grading_analysis --input fruit.jpg --output result.json"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: \"smyx-fruit-ripeness-grading-analysis\"\ndescription: \"AI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives. | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\"\nversion: \"1.0.15\"\nlicense: \"MIT-0\"\n---\n\n# 🍓 Fruit Ripeness Grading | 番茄/草莓果实成熟度分级\n> **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询\n\n---\n\n## 🧭 技能概览 | Overview\n\n| 模块 | 内容 |\n|---|---|\n| 🏷️ 技能名称 | **番茄/草莓果实成熟度分级** |\n| 🎯 核心目标 | 通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。 |\n| 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL |\n| 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 |\n| 🧩 场景码 | `SMYX_FRUIT_RIPENESS_GRADING_ANALYSIS` |\n\nAI-powered fruit ripeness grading for tomatoes / strawberries. From smart grow-boxes or mobile phone images, uses AI vision to detect fruit color (green / light green / orange / red / dark red), colored-area ratio, gloss, and relative fruit size (against a reference object), and outputs a ripeness grade (Mature-Green / Turning / Ripe / Over-Ripe) based on preset standards. Helps growers identify the optimal harvest window and ensures flavor and shelf quality. Scenarios: smart grow-boxes, greenhouses, home vegetable gardens, fruit & vegetable cooperatives.\n\n通过智能种植箱或手机拍摄的果实图像，利用AI视觉分析技术检测果实的颜色（绿/浅绿/橙/红/暗红）、着色面积比例、光泽度以及果实大小（相对于参照物），根据预设的成熟度分级标准输出等级（青熟期/转色期/成熟期/过熟期）。该技能帮助种植者确定最佳采收时机，保证果实口感和商品性。应用场景：智能种植箱、温室大棚、家庭菜园、果蔬合作社。\n\n## 🤖 AI 角色 | AI Role\n| 角色要点 | 说明 |\n|---|---|\n| 说明 1 | **假设你是一个专业的园艺作物采收 AI。你的任务是分析番茄或草莓果实的图像，检测果实颜色、着色面积、光泽度及大小，根据预设的分级规则输出成熟度等级（青熟期 / 转色期 / 成熟期 / 过熟期）。不要提供具体的采收后处理建议（贮藏温度、保鲜剂等），仅输出基于视觉的成熟度分级。** |\n\n## 🎬 技能演示 | Skill Demo\n\n[▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html)\n\n---\n\n## 🎯 任务目标 | Goals\n### 1. 🧩 技能用途\n\n通过番茄 / 草莓果实图像或视频进行成熟度分级，输出每颗果实的成熟度等级及整体采收建议\n\n### 2. 🛠️ 能力范围\n\n| 序号 | 具体能力 |\n|---:|---|\n| 1 | 果实定位与计数 |\n| 2 | 主色调识别（绿 / 浅绿 / 橙 / 红 / 暗红） |\n| 3 | 着色面积比例计算 |\n| 4 | 光泽度评估 |\n| 5 | 果实相对大小估算 |\n| 6 | 按预设规则的成熟度分级（青熟期 / 转色期 / 成熟期 / 过熟期） |\n| 7 | 整体采收建议（继续养果 / 准备采收 / 立即采收 / 已过最佳采收期） |\n\n### 3. ⚡ 触发条件\n\n| 触发类型 | 触发规则 |\n|---|---|\n| ✅ 默认触发 | **默认触发**：当用户提供番茄、草莓等果实的图像或视频需要成熟度分级时，默认触发本技能 |\n| 🔎 明确分析意图 | 当用户明确需要成熟度判断时，提及番茄成熟度、草莓成熟度、果实采收、转色期、青熟、红熟、采收时机、果实分级、果蔬分拣等关键词，并且上传了图像或视频文件 |\n| 📚 历史报告查询 | 当用户提及以下关键词时，**自动触发历史报告查询功能**：查看历史成熟度报告、历史果实分级报告、采收报告清单、显示所有成熟度分级报告、查询果实采收记录 |\n\n### 4. 🤖 自动行为\n\n| 自动行为 | 执行要求 |\n|---|---|\n| 📎 附件处理 | 如果用户上传了附件或者视频/图片文件，则自动保存为本地文件 |\n| ☁️"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7cyxkr2ymf7zwsrybpedg8xx83ywrj\",\n  \"slug\": \"smyx-fruit-ripeness-grading-analysis\",\n  \"version\": \"1.0.10\",\n  \"publishedAt\": 1790596766033\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":928,"uniquenessScore":43,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T03:41:09.868Z","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:41:09.868Z","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:56:35.970Z","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"}]}}}