aios-plugin-forma:把本地仓库里的 Python/JS/Go 能力带进 DSH 会话

前言

在 DSH 里做智能体工作流时,常见做法是自己写插件、或手工把某个本地工具仓库接进 Profile。前者重复劳动多,后者又容易在扫描源码、许可证和完整性校验上踩坑。DeepSeek Harness 社区把插件当一等公民维护,目录站点与 DeepSeek / 幻方无官方从属关系;若你希望从已有本地源码里挑出可复用能力、生成候选插件并走校验流程,而不是让 Host 直接 import 项目代码,可以看一下 BioAIEvolu 维护的工作流类插件 aios-plugin-forma(GitHub:BioAIEvolu/aios-plugin-forma,当前包版本 0.2.1,简介标明 DSH 0.1.3+ 兼容)。

这是什么

aios-plugin-forma 是 AIOS 体系下的 Forma 自构建 DSH 插件(Bundle):给定本地源码工程,通过版本化的 forma_* DTO 工具扫描来源、识别可复用能力、在人工审核选择后生成候选插件,并导出候选插件仓库。源码检视与候选生成由 Supervisor 持有的子 Worker 完成;Host 不会 import 或执行源码工程里的代码。

仓库在 core/ 内嵌 Forma Core,不依赖 workspace 的 core-root 环境变量、完整 AIOS 或开发态 forma/ 树。经 DSH Profile 进入的只有 workRoot 与调用方选定的 source root:Worker 只读配置的 source root,只写受管的 work root。

核心功能

下面介绍 README 中已写明、且与合约文件(specs/tools.json、specs/dto.json 等)一致的能力边界。

扫描与候选生成

  1. 对配置的本地 source root 做能力识别与候选插件生成(默认路径为 proposal-only:生成 tarball 与报告,不会把生成的插件自动装进当前运行中的 Profile)。
  2. 直接基于未审核源码的候选生成需要显式的 reviewed-source-root 记录;捆绑 CLI 不会写入此类批准,因此普通用户选中的源码可被扫描,但会被挡在 direct-source 生成之外。

校验、许可证与篡改防护

  • 内置校验与完整性相关流程;云安装会在执行任何 DSH 命令前校验 Release 资产的 SHA-256。
  • 许可证扫描是工程启发式信号,不是法律意见:GPL/LGPL/AGPL、未知或冲突的许可证证据会保持「需审核」或阻断,不能自动通过构建门,除非独立构造 LicenseReviewRecord。
  • 安装记录与 CLI 输出会对签名 URL、token 等敏感查询参数做脱敏。

进程边界与安全模型

  • Worker 是进程边界,不是 OS 级恶意代码沙箱;Node permission 与子进程边界属于纵深防御。不要把 Forma 指向你不愿自己运行的源码。
  • 可选本地运行时设置 FORMA_NODE_PERMISSION=1 以启用 Node 24 permission flags;两种模式下子进程边界与路径检查仍为强制项。

当前明确不支持的能力

本版本 README 列出的非目标包括:自动创建/发布 GitHub 仓库、真实的人机 GPL/AGPL 审批工作流、已安装 bundle 的自动更新、生产部署(仅 disposable local Profiles)。

安装与启用

插件通过包内二进制 aios-plugin-forma 安装到指定 DSH Profile,不是隐式使用 %USERPROFILE%\.dsh:--dsh-home、--profile、--work-root、--source-root 在 CLI 中始终显式且必填。npm install 只获取包,npx 运行该二进制;DSH 在常规 Profile 重启后激活 bundle,无 lifecycle 脚本改写 Profile。DSH 插件管理依赖 pnpm;CLI 会在每次 install/uninstall 前在 caller 指定的 DSH_HOME 内解析 pnpm(PATH 上已有则直接用,否则经 corepack 在 <dsh-home>/.forma/shims 放置 shim,pinned pnpm 12.3.4),两者都不可用则退出码 10(PNPM_REQUIRED)。

本地 tarball 安装(示例)

README 给出的 PowerShell 示例(将路径替换为你的 disposable 目录与 fixture):

npx --yes --package .\aios-plugin-forma-0.2.1.tgz aios-plugin-forma install `
  --dsh-home <disposable-dsh-home> `
  --profile forma-test `
  --work-root <disposable-work-root> `
  --source-root <fixture-root>\m1\repo-tool-mit

install 完成的是包安装与 Profile 配置(写入的 runtimeDigest 与当前 CLI 一致),不会连接正在运行的 DSH Host;工具是否激活需在启动或重启 DSH 后通过 health check 确认(JSON 输出中 runtime_health: not_checked)。重复安装幂等,already-installed 表示版本与配置未变且不再调用 DSH。

云安装(固定 Release 资产)

仅接受 pinned 的 GitHub Release 资产 URL(https://github.com/<owner>/<repo>/releases/download/<tag>/<asset>.tgz),不接受 main、latest 或分支归档:

npx --yes --package .\aios-plugin-forma-0.2.1.tgz aios-plugin-forma install `
  --dsh-home <absolute-disposable-dsh-home> --profile forma-test `
  --work-root <absolute-disposable-work-root> --source-root <absolute-source-root> `
  --package-url https://github.com/BioAIEvolu/aios-plugin-forma/releases/download/v0.2.1/aios-plugin-forma-0.2.1.tgz `
  --sha256 <64-hex-sha256-of-the-release-asset> --max-download-bytes 52428800

具体 tag 与 SHA-256 以 GitHub Release notes 为准;摘要不匹配或响应过大时,在任何 DSH 命令运行前即失败。

检查与卸载

npx --yes --package .\aios-plugin-forma-0.2.1.tgz aios-plugin-forma inspect `
  --dsh-home <disposable-dsh-home> --profile forma-test

npx --yes --package .\aios-plugin-forma-0.2.1.tgz aios-plugin-forma uninstall `
  --dsh-home <disposable-dsh-home> --profile forma-test

CLI 默认输出为简短中文状态行([OK]/[INFO]/[WARN]/[ERROR],无颜色、无 emoji);需要自动化时可加 --json(stdout 单文档 schema_version: 1),诊断细节用 --verbose(stderr)。

典型用法

经过上面的安装步骤,在 disposable Profile 中配置 work-root 与 source-root 后,通过 DSH 会话调用插件暴露的 forma_* DTO 工具完成:扫描本地仓库、在审核后的选择集上生成候选插件、导出候选仓库并附带校验与许可证相关报告。默认不会把候选物直接装进当前 Profile;若要从本地 Python/JS/Go 工具仓库把能力「带进」会话,应把整条链路理解为:扫描 → 人工选择/许可证审查 → 生成 tarball/报告 → 再按你的发布流程接入,而不是一键信任任意源码。

本地 CLI 的 inspect 用于在不改 Profile 的前提下查看当前安装与配置状态;正式验收流程见仓库内 FORMAL-ACCEPTANCE.md 与 provenance/README.md。

适用场景与注意

适合谁: 需要在隔离的 disposable DSH Profile 里,从自有或可控的本地源码仓库提炼 DSH 候选插件、并依赖内置校验与许可证启发式审查的开发者;分类上属于社区目录中的「工作流」类插件(目录页:https://www.skillhub.cn/plugins/BioAIEvolu/aios-plugin-forma)。

务必注意:

  1. 插件与子 Worker 以当前 DSH/Node 进程权限运行;安装前自行审查源码与许可证,勿指向不可信仓库。
  2. source root 是读边界,不等于源码已批准;direct-source 生成额外需要 reviewed-source-root 记录。
  3. 许可证扫描不能替代法务判断;GPL 系与未知许可证默认不能自动过门。
  4. 本版本面向本地 disposable Profile,非生产部署;Release 通过 GitHub Release 固定资产分发,不用 npm publish 作为主通道。

结尾

aios-plugin-forma 把 Forma 自构建能力打成自包含 Bundle:Host 不碰源码执行,Worker 在配置的读写边界内完成扫描、候选生成与校验,CLI 则把安装、完整性校验和 pnpm 解析接到明确的 DSH Profile 上。若要核对工具合约与版本,请直接查看 GitHub 仓库 README(含 简体中文)与 Release 说明。

  • 社区目录:https://www.skillhub.cn/plugins/BioAIEvolu/aios-plugin-forma
  • 源码与文档:https://github.com/BioAIEvolu/aios-plugin-forma
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜