目录

Smart Home Vela Agent

面向 openvela AI Agent 的自然语言智能家居控制原型。项目包含自定义 Tool、Skill、多设备协作、MCP 扩展、多 LLM 后端、安全增强和上位机可视化。

GitLink 托管地址:https://www.gitlink.org.cn/Lijiabin1234/smart-home-vela-agent

作者团队

  • 队长:李佳斌
  • 队员:李佳禾、姚舒文

评审快速入口

建议评委优先核验官网附件包 dist/smart-home-vela-agent-submission.zip,包内只保留结果型、数据型和核心源码材料。

3 分钟路径

  1. 打开 dist/smart-home-vela-agent-submission.zip 中的 00_提交说明.md 和 manifest.json,核对团队、许可证、文件清单和哈希。
  2. 查看 reports/Smart_Home_Vela_Agent_初赛报告.pdf、presentation/Smart_Home_Vela_Agent_方案汇报.pptx 和 video/smart_home_vela_agent_demo.mp4。
  3. 按 reproduce/复现说明.md 解压 source/smart-home-vela-agent-source.zip 并运行复现命令。

完整路径

  1. dist/smart-home-vela-agent-submission.zip:官网提交附件,包含提交说明、manifest、MIT License、初赛报告 PDF、PPT、演示视频、源码快照、复现说明和证据日志。
  2. source/smart-home-vela-agent-source.zip:附件包内源码快照,保留核心实现、测试、Dashboard、MCP、Skill 和 openvela 接入片段。
  3. evidence/:附件包内覆盖矩阵、突变检查、协议检查、随机种子、环境记录和预检日志。
  4. python3 scripts/run_tests.py:在源码快照中一键验证 Python/API 测试、CMake、CTest 和 C CLI smoke。
  5. docs/EVIDENCE.md、docs/OPENVELA_INTEGRATION.md、docs/UPSTREAM_ALIGNMENT.md:在 GitLink 仓库中查看结构化证据和上游对齐边界。
  6. dist/smart-home-vela-agent-submission.zip.sha256:核对官网附件包哈希。

当前能力

评分点 本仓库对应内容
至少 2 个智能家居 Tool C 语言实现 5 个 Tool:home_device_control、home_env_read、home_device_status、home_scene_apply、home_energy_report
自然语言闭环 host/agent_runtime.py 和 src/host_agent_sim.c 支持中文命令到工具调用,再返回状态变化和 Trace
可复现 Makefile、CMakeLists.txt、scripts/run_tests.py、docs/REPRODUCIBILITY.md
Skill 文件 skills/*.md 定义早安、节能、离家安防、老人关怀等复杂场景
多设备协作 host/multi_device_sim.py 模拟 Node 工具发现和远程调用
MCP 扩展 mcp/smarthome_mcp_server.py 提供 JSON-RPC MCP HTTP 工具服务
多 LLM 后端 scripts/llm_compare.py 支持 DeepSeek、Kimi、Qwen 等通用 HTTP JSON 接口对比
安全增强 C 和 Python 两侧均校验房间/设备/动作、输入长度、温度和档位范围
UI 展示 dashboard/ 展示设备状态、环境数据、能耗和 Agent Trace,动态文本安全渲染
openvela 接入 openvela/ 给出 packages_ai_agent 的注册片段和构建片段

快速开始

推荐在 WSL2 Ubuntu 或 Linux 环境中运行。

git clone https://gitlink.org.cn/Lijiabin1234/smart-home-vela-agent.git
cd smart-home-vela-agent
python3 scripts/run_tests.py
python3 scripts/generate_evidence.py
python3 scripts/run_dashboard.py --host 127.0.0.1 --port 8765

浏览器打开 http://127.0.0.1:8765。

也可以只运行 C 语言主机仿真:

make build
./build/shva_agent "打开客厅的灯"
./build/shva_agent --tool home_scene_apply '{"scene":"movie"}'

openvela AI Agent 集成方式

本仓库没有直接 vendoring 完整 openvela 源码,避免提交体积过大。集成时将以下文件复制到官方 packages_ai_agent:

include/smarthome_state.h  -> packages_ai_agent/include/smarthome_state.h
include/smarthome_tools.h  -> packages_ai_agent/include/smarthome_tools.h
src/smarthome_state.c      -> packages_ai_agent/src/tools/smarthome_state.c
src/smarthome_tools.c      -> packages_ai_agent/src/tools/smarthome_tools.c

然后参考:

openvela/tool_registry_registration.c
openvela/CMakeLists.fragment
openvela/Makefile.fragment
openvela/Kconfig.fragment

官方 AI Agent README 给出的 QEMU 路线是启用 Application Configuration -> Packages -> Vela AI Agent 后构建 goldfish-arm64-v8a-ap,再用 emulator.sh 启动。详细步骤见 docs/OPENVELA_INTEGRATION.md。

演示命令

python3 -m host.agent_runtime "打开客厅的灯"
python3 -m host.agent_runtime "现在卧室温度多少度"
python3 -m host.agent_runtime "切换到观影模式"
python3 host/multi_device_sim.py
python3 mcp/smarthome_mcp_server.py --port 8787

MCP 工具发现示例:

curl -s http://127.0.0.1:8787/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

目录结构

src/                 C 语言 Tool 与主机 CLI 仿真
include/             C 头文件
host/                Python 主机 Agent runtime、HTTP API、多设备模拟
mcp/                 MCP HTTP 工具服务
dashboard/           上位机可视化 UI
skills/              openvela AI Agent Skill 文件
openvela/            官方 packages_ai_agent 集成片段
docs/                复现、架构、复赛增量、安全和演示文档
scripts/             测试、证据刷新、Dashboard 启动和 LLM 对比脚本
tests/               Python 单元测试

合规

本项目自有代码使用 MIT License。第三方上游 openvela AI Agent 未被复制进仓库,仅作为接口兼容目标;相关说明见 NOTICE。

关于

基于 openvela AI Agent / VelaClaw 的自然语言智能家居控制原型,覆盖自定义 Tool、Skill、MCP、多设备协作、多 LLM、安全增强和可视化展示。

110.3 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号