软件与工程

依赖与许可证稽核代理

按你的分发方式,说明每份许可证真正让你承担什么

版本 2发布于 2026年9月2日
软件与工程ExtractFetch pageclaude-opus-5Read-only · auto7 hard rules5 handover rulesResult
7条硬性规则
它绝不能做的事,每次运行都强制执行
5条移交规则
它停下并把工作交给人的条件
9个输出字段
结构化的结果,而不是一段需要反复阅读的文字
≤6步每次运行
有界的工作:最多 5 次工具调用,由运行时强制执行

设计上即为只读。 该智能体没有任何发送、支出、发布或提交的途径。当这一限制本身就是产品时,取消它就等于取消了信任其输出的理由。

版本 2 的实时接线图。工具节点是这个智能体被登记可以调用的能力——除此之外什么都跑不起来。

概览

一棵依赖树上挂着数百个许可证,而一个把它们逐条列出来的扫描器,什么问题也没有回答。同一个许可证,在托管服务里毫不起眼,在交付出去的软件里却是严重问题——真正重要的只有义务,而义务取决于你以什么方式分发。

这个智能体把你的依赖清单与「软件实际是怎么到达用户手里的」放在一起读,并报告在这种情形下,每一类许可证要求你做什么:你还没有收集的署名、你将不得不提供的源代码、你没有随附的声明、与你自己许可证相冲突的条款。

它标出代价最高的两件事:在你审计过的版本与你实际交付的版本之间发生了变更的许可证,以及根本没有许可证的依赖——那比任何许可证都更严格,而不是更宽松。它不会告诉你是否构成侵权。那是一项关于你具体分发方式的法律结论,它转而指出律师需要看到什么。

价值

尽调时没有意外

在审计中被发现,是发现它最贵的地方。

答得上客户的法务问卷

企业买家会问,而一份扫描器输出不是答案。

与律师的沟通更短

义务已被收集,于是律师读的是事实,而不是一棵树。

功能说明

  • 义务,而不是许可证清单

    在这套软件以这种方式到达用户的前提下,你实际必须做什么。一份清单不是答案。

  • 分发方式改变一切

    同一个许可证,托管时毫不起眼,交付时就很严重。它先问这个。

  • 找出没有许可证的依赖

    没有许可证比任何许可证都更严格,而这正是人们最容易读反的一条发现。

  • 抓住版本之间的许可证变更

    一个依赖在你审计之后换了许可证。没有人会再查一遍。

  • 标出与你自己许可证的冲突

    某个依赖的条款无法与你为自己产品所选的许可方式共存。

  • 不提供法律意见

    它准备好律师所需要的东西。它不下结论。

这会改变什么

这会如何改变你的一周

它接手的工作
在你的交付方式之下,弄清依赖许可证要求你做什么。
目前由谁完成
没有人,直到尽调或客户的法务审查。
多久一次
每一次发版,以及每一次融资或出售之前。
通常的人工投入
把一棵许可证树对照一种分发模式读一遍,是好几天的法务工时。

为什么偏偏是软件与工程。在审计中被发现,是发现它最贵的地方,而扫描器给出的一串许可证名称,本身什么也没回答。

  • 无人值守运行

    由你或某个事件启动,然后自行完成。没有什么需要等人坐到工位前。

  • 每一次都是同一标准

    第两百件与第一件用同一把尺子衡量。一致性正是人做不到长期保持的部分。

  • 它无法自行采取行动

    依赖与许可证稽核代理 没有任何发送、支出或承诺的途径。正是这个限制,让依据它的输出行动是安全的。

运行方式

该智能体通过 PROMIVO 运行时在服务器端运行。每次运行都会逐步记录,每次工具调用在执行前都会进行权限检查。

  1. 1输入按智能体的输入结构进行校验
  2. 2模型claude-opus-5,并自动回退
  3. 3工具extract_structured_data, fetch_web_page
  4. 4权限自动执行 READ 级操作;更高的等待你批准
  5. 5输出符合输出结构的结构化结果
  6. 6日志记录 token、耗时和每一个步骤

演示

演示数据Illustrative sample output, abridged.

输入

{
  "dependencies": [],
  "distribution": "shipped-binary",
  "projectLicence": "proprietary"
}

输出

{
  "escalate": true,
  "disclaimer": "A review of licence obligations given the stated distribution. Not legal advice, and not a finding that this project is compliant or infringing.",
  "unlicensed": [
    "internal-utils@0.4.2 — no licence stated. No licence means no permission granted; this is more restrictive than any licence, not less."
  ],
  "obligations": [
    {
      "packages": [
        "…181 packages…"
      ],
      "obligation": "Ship the licence text and copyright notice for each permissively licensed dependency.",
      "currentlyMet": "no",
      "licenceFamilies": [
        "MIT",
        "BSD-3-Clause",
        "Apache-2.0"
      ],
      "whatWouldMeetIt": "A generated NOTICE file included in the distribution."
    }
  ],
  "forLegalReview": [
    "One dependency is copyleft and this is a shipped binary, which is where that obligation actually bites."
  ],
  "escalationReason": "An unlicensed dependency and a copyleft obligation triggered by shipping a binary.",
  "distributionAssumed": "Shipped binary, as stated. Obligations differ materially from a hosted service."
}

使用条件

集成

无需集成。

开始之前

  • 你的依赖清单,含版本与许可证
  • 该软件的分发方式
  • 需要 全量访问 套餐或更高

使用场景

发版之前

在二进制文件到客户手里之前检查义务。

被收购之前

先找出尽调会找到的东西。

客户的法务问卷

依据你真实的依赖状况来回答。

价格

全量访问

通过您的 PROMIVO 订阅按月计费,可随时取消。

运行会消耗您套餐中的智能体执行次数与 token 额度。参见 套餐限额

常见问题

它会告诉我我们是否侵权吗?

不会。那是一项关于你具体分发方式和你自身许可安排的法律结论,而它取决于依赖清单里没有的事实。它报告义务,并收集律师所需要的东西。

它为什么要问我们怎么分发?

因为正是这个问题决定答案。在托管服务里从不触发的著佐权义务,在你交付出一个二进制文件的那一刻就触发了。

它会扫描我们的代码吗?

它依据你提供的依赖清单工作。它不读你的源代码,也不检测被复制的代码——那是另一种工具,需要另一种访问权限。

评价

客户运行过该智能体后,评价功能将开放。

需要这个智能体换一种做法?

告诉我们要改什么,我们的团队会为您的业务规划一个定制版本。

定制此智能体