
智慧农业生态 Agri-Eco
io.github.lm203688v1.1.0更新於 Oct 8, 2026
面向分布式农业的 Agent-native 知识基座:Env Recipe 环境配方 + 气候校准 + 物候播期 + 病虫害诊断。零依赖可离线,14 个 MCP 工具。
概覽
一個可離線執行的農業知識庫 MCP 伺服器,讓助理完成氣候分區比對、作物推薦、播期物候、病蟲害診斷與環境配方產生。
- 功能
- 透過 stdio JSON-RPC 提供 14 個農業工具,包含分區比對、作物適配推薦、種植計畫、病蟲害診斷、養分管理、Env Recipe 環境配方、物候播期、土壤剖面、多來源氣候調和、地理編碼轉配方、資料血緣查詢、預設城市與生態對接清單。內部以多 Agent 流程(氣候、作物、生長、生態、病蟲害、養分、季節、預測、控制)運作,每筆輸出都附帶證據、信心度與適用條件。專案自述為零依賴、可離線使用。
- 適用情境
- 適合需要結合地點與氣候分區給出結構化農業建議的情境,例如為地塊選擇作物、擬定播種或生長計畫、為受控種植產生可執行的環境參數。也適用於可接受以規則為基礎、並標示信心度的病蟲害與養分問題。
- 執行需求
- 以本機程序方式透過 stdio 在使用者電腦上執行,以 .mcpb 套件散布。清單未宣告任何驗證、環境變數或標頭。README 提到可選的視覺後端變數(AGRI_VISION_URL、AGRI_VISION_KEY、AGRI_VISION_MODEL)用於啟用多模態診斷,未設定時回退為規則。僅支援桌面端。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 智慧农业生态 Agri-Eco,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
智慧农业生态 · 全球分区农业 AI 助手
以数据平台分析为基座,孵化多层级农业 AI 关键节点生态
🎯 项目目标口径(单一权威):见
docs/CORE_OBJECTIVE.md—— 分布式农业的 Agent-native 知识基座。 一句话:把「在哪里种什么、怎么种得好」做成可被任何 AI Agent 直接调用的可执行配置(Env Recipe),以可审计的数据血缘作为可信度资产。 一级目标:让 MCP server 被外部 agent 真实调用(≥500 次 / ≥20 独立调用方)。 阶段门禁数字见docs/north_star_and_phase_gates.md;全面扫描与提升报告见docs/full_liftup_assessment_2026-10-08.md。
🚀 已上架官方 MCP Registry:io.github.lm203688/agri-eco v1.1.0(2026-10-08)
CI:22 步 × Python 3.10/3.11/3.12 全绿 · 单测 533 OK · Demo 端点 14/14 · MCPB 构建确定性可复现。
项目定位
一句话:做分布式农业的 AI 操作系统与数据网络——回答「在哪里种什么、怎么种得好、怎么送到消费者」。
核心架构(对标 SwarmLabs 科研 Agent Infra 的工程路径):
覆盖边界(已闭环):分区库现建模 8 个气候带(含 v1.1 新增的热漠 hot_arid 与高原 highland)。 迪拜(波斯湾热漠)→
hot_arid、拉萨(青藏高原)→highland现由 ClimateAgent 正确路由(rubric 0.95、给出真实作物推荐), 不再静默归入「亚热带湿润」给出错误方案;v1.1 之前的「显式拒答」降级路径已随分区补齐而关闭。 两新分区的 Env Recipe 与 P3 校准作物已于 2026-10-06 回填,详见outputs/zone_coverage_decision_2026-09-23.md(历史背景)。两个诚实性约定(2026-09-23 起生效,均有测试锁死):
monthly_precip_mm虽是月度序列,但每个元素是月内日均降水(mm/day),不是月累计量。 NASA POWER 与 Open-Meteo 两条路径口径一致,agent/climate_data.py统一以PRECIP_UNITS声明并透传monthly_precip_mm_units。生态位校准的降水通道依赖「同口径区间命中」,不得对该字段乘天数换算。- 预设城市清单的唯一数据源是
data/preset_cities.json,前端与 MCP Server 均经agent/preset_cities.py读取;拉萨/迪拜随 v1.1 已建模(modeled: true),12 城全部有对应分区。
七层生态架构(来自项目战略指引)
⚠️ 口径已修订(2026-10-08):七层是分析框架,不是交付清单。当前阶段只交付 L0-L3;L4/L5/L6 已正式暂缓(判定依据与重新打开条件见
docs/CORE_OBJECTIVE.md§三 N6/N7、§六)。 下表"本项目状态"列已按实测校正,此前"已落地/进行中"的表述存在与代码不符之处,此处一并修正。
核心模块
工程路径(对标 SwarmLabs)
快速验证
工程化入口见
docs/DEVELOPMENT.md;常用命令可用make(如make gate= 单测+端到端+数据质量三件套)。
v2.1 提升项落地(Agent-native 分发 + 配置协议 + 评测)
依据
docs/planning/项目方案评审-商业模式与AI专业分析.md:商业主线重排为「免费资产 → 免费入口换数据 → 产业端收钱」; 模块⑤生成箱降级为「配方大脑授权硬件厂/存量设备」;Env Recipe 协议与 MCP 分发为近期最高优先。
决策门(评审 §3.5):P0-F/G 若 3 个月内零外部调用 / 零社区响应 → 降级为个人知识库项目,停止对外投入。
v2.2 提升项落地(分发协议适配,2026-10-08)
依据
docs/full_liftup_assessment_2026-10-08.md§8 P0 路线图;判定铁律——凡是能产生第一次真实外部调用的动作,优先级高于一切新增功能。 权威目标口径见docs/CORE_OBJECTIVE.md(本项目唯一战略来源)。
P0 出口指标:出现第 1 次非本人外部调用。
数据卫生(重要)
engine/flywheel.py 的 record_feedback() 真的会写盘——这是为了让反馈闭环真实生效。
代价是:demo 与单测如果不隔离,就会把合成样本混进真实数据。本项目已踩过的两类事故及防护:
规则:
data/feedback_log.json只允许真实用户反馈。demo 记录带[demo]前缀,门禁会拦截未标注的合成数据。python -m engine.flywheel跑过之后,提交前必须执行:- 隔离运行(不碰仓库数据):
⚠️ Windows 注意:Git Bash 的
/tmp映射到%LOCALAPPDATA%\Temp,Python 按C:\tmp解析, 必须用 Windows 风格绝对路径,否则AGRI_CROP_DB找不到文件会直接报错(故意 fail fast,避免静默输出全 None)。 - CI 中的 flywheel 步骤已改为写入
$RUNNER_TEMP隔离目录,并加了数据完整性门禁。
快速启动
1. 交互式 Demo 站点(零依赖,仅标准库)
2. 端到端验证
3. Docker 部署
3b. 公网部署(一条命令)
3b-2. 视觉诊断后端(可选,接 ATEX 多模态网关)
PestAgent 的视觉诊断走可插拔后端:配置以下环境变量(读 agent/vision.py)即启用,未配置则规则降级。
密钥放仓库外的 .env(已被 .gitignore 忽略,部署时由 deploy_local.sh 同步到 ECS,不进 GitHub):
deploy/docker-compose.prod.yml 已默认读取这三个变量;若 ATEX 仅监听 127.0.0.1,可把 AGRI_VISION_URL 改为宿主内网 IP。
3c. CI(push 自动验证)
push 到 main 后自动跑:单测 → verify_all → trust_layer → flywheel(隔离到 $RUNNER_TEMP)→ 数据完整性门禁(禁假校准标记、禁合成反馈样本)→ Skill 注册表合法性 → 数据自检(每带 ≥18 种作物),Python 3.10/3.11/3.12 矩阵。
状态:GitHub Actions 已验证可用(fine-grained PAT 含 Workflows:write,push 后 CI 自动跑通,最近一次 run 结论 success)。
3d. 本地 → GitHub 同步(无 git push 环境)
本机 github.com:443 不可达,且本地目录不是 git clone,不能用 git push / git status。
统一走这两个脚本:
- 需要 fine-grained PAT(Contents: read/write),建议含
Workflows:write以便改 CI - token 放临时文件、用完即删,不要留在命令行历史里
- 推送后 CI 会自动跑;确认 success 再关掉本地改动
4. 单元测试(零依赖)
4b. MCP / 协议 / 评测(v2.1 提升项)
注册到 Claude Desktop(stdio):见 mcp/README.md。Env Recipe 协议说明与 AeroGarden 孤儿设备接入路径:见 docs/env_recipe_protocol_v1.md。
5. Skill 自动生成(闭环触发)
6. 提交种植反馈(内测回流 → flywheel 校准)
自动化定时闭环(每日单口巡检)
本仓的每日治理巡检由专属 Automation 承担:「智慧农业生态 每日治理校验」(id c8668b59-2488-4e21-9962-ab3fa7d69d26,每日 05:00,ACTIVE)。
注:列表里另有一个同名风格、名为「AOCI 每日治理校验」(
1db296e6)的自动化,实际是aoci-code工具对swarmlabs/算力共享平台两个其他仓库的校验(每日 03:00),并非本仓任务——其命名易混淆但职责不属本项目,此处仅说明、不做改动。
执行内容(全部只读,禁改代码 / 禁 git / 禁推送):
- 回归十三项(513 项单测 + MCP 自测):
test_engine_v4.py(137 项)、test_engine_v3.py(43 项)、test_engine_v2.py(59 项)、test_agents.py(66 项)、test_engine_v5.py(94 项,BP 初筛引擎)、test_climate_data.py(19 项)、test_climate_reconcile.py(14 项)、test_data_lineage.py(25 项)、test_geo_recipe.py(7 项)、test_audit_analyzer.py(16 项)、test_jev_gate.py(15 项)、test_jev_decision.py(10 项)、test_jev_attribution.py(8 项)、test_mcp_server.py(14 工具)、verify_all.py(5 城 PLACEHOLDER=0)、diff_daily_loop.py --selftest - 数据源存活探测:GAEZ / WorldClim / SoilGrids(
rest.isric.org) / PlantVillage / EPPO / GitHub 等 7 个外部源 —— 防止引用死数据源(Ecocrop / OpenFarm / @pondlog 三次教训) - 回流通路健康检查:跑
check_feedback_loop.py,区分「通路故障(≠0 报警)」与「数据量缺口(=0 条、不报警)」(JSON 字段snapshot.feedback_path= ok/broken) - 状态快照 + 跨日 diff:feedback 条数 / recipes 数 / wofost 作物数;与昨日报告对比,零漂移即静默,漂移即暴露
已知长期缺口:data/feedback_log.json 持续 0 条 = 通路可用但无真实用户回流数据(属产品/增长问题,非代码缺陷——不得以合成数据充数)。
开源协议
待确定。核心数据标准与协议倾向开源(抢生态话语权),应用层与决策引擎闭源(保利润)。
來源:README.md,提交 afdcaa4
工具
0版本歷史
1- v1.1.0最新Oct 8, 2026


