爱意满满的作品展示区。
samzong

[开源分享] lathe - 可以把 api/proto 一键转为 CLI and SKILL

  •  
  •   samzong ·
    samzong · 3h 14m ago · 124 views

    https://github.com/samzong/lathe

    越来越多的人在讨论通过 CLI 的方式让 Agent 来连接和使用应用。

    但是对于存量的业务系统,大家还都是提供 restapi/grpc 这样的接口;因为业务需要,我们也遇到了需要把最近 2-3 年的超过 30 多个子模块的业务的 API 结合大模型,提供类似 Copilot 的能力。面临的问题要兼容老版本,也不希望每个业务团队再去做开发支持, 而且大量业务 API 众多,最大一个都超过上千的 API 。

    在这个背景下,我做了一个 lathe ,他的特点是连接你已有的 swagger/openapi/protobuf ,通过 spec parser 聚合为统一的 IR , 然后生成 cobra 应用,并且会附带一份 API 指南的 SKILL ,就这么简单。你可以通过组合的方式,把旧世界存量的系统直接接入到 Agent 中。

    你需要做的,就是维护 cli.yaml - 生成 CLI 的名称、介绍等信息 sources.yaml - 定义各个模块及来源信息

    几个我觉得还挺不错功能点可以说下:

    1. override layer - 一定会被问到的屎山的 API 生成 CLI 也是屎山,一样难用,不是原生为 CLI 设计的,所以 你可以定义一个 override.yaml 来覆盖其中的一些 名称,参数等等
    2. auth - lathe 提供统一的 auth 的接入方式,和认证信息管理;你不需要自己维护 auth 这块的功能,目前支持了 token ,basic auth, oidc 这些,可以扩充
    3. command/search - 可以 agent 在执行时可以通过 search 快速找到合适的命令,配合 command 查看命令的参数信息

    No Comments Yet
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5595 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 09:06 · PVG 17:06 · LAX 02:06 · JFK 05:06
    ♥ Do have faith in what you're doing.