Files
homeagent-sdk/docs/guide/getting-started.md
JianFeeeee d685789988 docs: 文档与站点链接随托管地迁移到 GitHub
go module 路径已迁到 `github.com/JianFeeeee/homeagentsdk`(见上一提交),
文档里的示例 import、Releases 下载地址、模块路径引用同步更新。

涉及:README.md、README_EN.md、docs/guide/{getting-started,first-plugin,
capability-boundary}.md、mkdocs.yml。

## 有意保留的 gitcode 提及

**不是漏改**,删了反而让文档说谎:

- README.md:「二进制的实际分发地址目前是 gitcode」——两个仓的 release
  附件不同步,只有二进制暂时还得去 gitcode 取
- mkdocs.yml:gitcode 镜像链接(国内直连更快,海外看 GitHub)
- docs/guide/getting-started.md:注明「gitcode 仅作国内镜像」

判据:**能照做的指引**优先于「链接好看」。读者照 README 下载 hmapdev
时,走 gitcode 是真能拿到东西的那条路。
2026-10-09 07:25:35 +08:00

2.3 KiB
Raw Blame History

环境与工具链

hmapdev 是 SDK 仓提供的统一插件开发工具链,Go 与 Lua 两种插件都用它, 最终产出 .hmap 插件包(工具名即取自这个包格式)。

!!! note "改名说明" 1.2.0 起工具链由 plugindev 更名为 hmapdev;SDK 存储目录同时由 ~/.homeagent/plugindev/sdk 迁到 ~/.homeagent/hmapdev/sdk (旧目录会自动继续沿用)。

安装

从源码构建:

git clone https://github.com/JianFeeeee/homeagentsdk
cd homeagentsdk/tools/hmapdev
go build -o hmapdev
# 把 hmapdev 放进 PATH,或直接用 ./hmapdev

也可以从 SDK 的 release 附件下载预编译二进制(hmapdev_linux_amd64 等, 共 5 个平台:linux/darwin/windows × amd64/arm64)。

仓已迁到 GitHub;gitcode 仅作国内镜像(源码同步,release 附件暂时仍在那里): https://github.com/JianFeeeee/homeagentsdk/releases。 Go 模块路径仍是 github.com/JianFeeeee/homeagentsdk —— 这是有意保留的, 改模块路径会让现有插件的 go.mod 全面失效。

SDK 版本管理

hmapdev 会维护一份本地 SDK 存储,init 时按 plg.json 里的 sdk 字段 选择版本。两者必须一致,否则编译出的插件与内核协议可能错配。

hmapdev sdk list            # 已安装的 SDK 版本
hmapdev sdk current         # 当前使用的版本
hmapdev sdk latest          # 最新可用版本
hmapdev sdk install v1.2.0  # 安装指定版本
hmapdev sdk use v1.2.0      # 切换版本
hmapdev sdk path            # 当前 SDK 路径

存储在 ~/.homeagent/hmapdev/sdk/<version>/。

!!! warning "版本未命中会明确报错" plg.json 声明的 sdk 版本若不在本地存储里,hmapdev 不会退回某个默认版本, 而是报错并让你先 hmapdev sdk install。这是有意的:静默降级会产出与内核 协议不匹配的插件,那种失败要到运行时才暴露。

源码调试

不编译直接跑插件源码,输出调用轨迹:

hmapdev debug [dir]   # dir 默认当前目录

写 Lua 插件时更简单——sdk.lua 是 SDK 模拟层,可以直接用解释器跑:

lua main.lua

下一步