SuperAPI AI 工具集

create-lang-plugin

智能体与模型

查看项目

更新于 10-15 16:49

技能介绍

用途:创建 lang 插件,把任意 CLI 工具或语言运行时接入 gm-cc。插件为 <projectDir>/lang/<id>.js 下的单个 CommonJS 文件,自动发现,无需修改 hook。

主要能力:定义 id、exec(match 正则与 run(code, cwd),返回字符串或 Promise<string>)、可选 lsp.check(返回 Diagnostic[])、extensions 与 context 提示上下文。当写入 exec:mytool\n<code> 时调用 exec.run;每次提示提交时同步调用 lsp.check;context 注入每个提示,截断到 2000 字符。Diagnostic 结构为 { line, col, severity: 'error'|'warning', message }。

使用方式:先确认工具的 CLI 名或 npm 包、单表达式还是文件执行方式、lint/check 模式与输出格式、文件扩展名、是否需要常驻服务器。exec.run 常见模式包括对运行中服务器的 HTTP eval、基于临时文件的无头执行、单表达式判断。lsp.check 只允许同步,不能用 Promise。

验证:写入 .gm/exec-spool/in/nodejs/<N>.js 加载插件模块检查 id、exec.run、match;再写入 .gm/exec-spool/in/mytool/<N>.txt 测试分发。

限制:exec.run 异步可行,30 秒超时;lsp.check 仅同步;仅 CommonJS,不支持 ES 模块语法;不允许常驻进程;id 必须与文件名完全一致;匹配按首个命中生效,match 需保持具体。