自托管 · v0.6

把 Agent 装进
你的治理边界

自托管团队 Agent 工作台——Agents 干活,团队掌握控制权。引擎可插拔(faux / pydantic-ai / ACP 驱动 Claude Code、Gemini CLI),SSO、审计、成本归因全部内置社区版。

$ make init && cd deploy$ docker compose -f compose.demo.yml up -d --build --wait# 打开 http://localhost:3000/register —— 首启向导引导演示模式

WHY INAGENT

治理内核是社区版的地基,不是付费墙后的插件

能力InAgent(社区版)品类常见做法
SSO(OIDC + PKCE)内置,org 级配置 + JIT 开通 + 强制 SSO 域常见于企业版付费墙
审计日志append-only 落表 + 管理页 + CSV 导出常为企业版或付费插件
用量 / 成本归因四级归因(org / 工作区 / 用户 / 会话)+ 聚合页成本报表常为付费功能
Trace 可观测OTel + Trace waterfall UITrace 查看器常为付费功能
HITL 人工介入原生:命令审批卡 / 结构化提问 / 权限请求转审批多为后装工具包或外挂层
编码 agent 引擎ACP 驱动 Claude Code / Gemini CLI,治理沙箱内运行绑定自研运行时,或不支持外部编码 agent
秘密治理AES-GCM vault 加密入库、key 永不回显、egress 占位符替换环境变量明文或基础加密

CAPABILITIES

从对话到受治理的团队工作

工作台

  • 多模型对话,会话级切换引擎
  • 流式 SSE,断线回放不丢消息
  • 运行中 steering 插话
  • 自动上下文压缩 + /compact
  • 会话搜索 / 置顶 / 分享、附件上传

引擎可换

  • faux 脚本演示引擎(无 key)
  • pydantic-ai:四档 tier + fallback 降级链
  • ACP 驱动 Claude Code / Gemini CLI
  • 编码 agent 跑在治理沙箱内

治理

  • 组织 / 工作区两级角色与邀请
  • OIDC SSO(PKCE + JIT + 强制 SSO 域)
  • append-only 审计日志 + CSV 导出
  • AES-GCM 秘密 vault,key 永不回显
  • 命令三动作策略 deny / confirm / allow

沙箱

  • 每 (用户, 工作区) 一个持久容器
  • 非 root、内存 / CPU / PID 限额
  • 数据跨会话保留
  • 文件树 + Web 终端

生态

  • 技能:SKILL.md 兼容 + 注册表同步
  • MCP:stdio / HTTP + OAuth + 用量审计
  • 工件:5 类版本化 + 全格式预览
  • 匿名分享链接

自动化

  • cron 定时 / webhook 触发(HMAC、重放去重)
  • GitHub / Stripe 原生签名兼容
  • 独立 runner 服务,api 重启不断 run
  • 结果投递飞书;自动化 = 触发器 + 专家

渠道与观测

  • 飞书 / 钉钉 bot,以绑定用户身份运行
  • IM 内 HITL 按钮审批与提问
  • OTel tracing + Trace waterfall
  • 用量四级归因(org / ws / user / session)

首启

  • 首启向导引导配置或演示模式
  • 无 key 演示模式(faux 引擎)
  • 15 分钟评估路径产品化
  • demo → 完整形态数据原地保留

DEPLOY

docker compose 起,数据自己留

$ make init$ cd deploy$ docker compose -f compose.demo.yml up -d --build --wait
$ cp ../.env.example .env$ docker compose up -d --build --wait# demo → 完整:数据原地保留

国内镜像源 overlay / 离线 air-gapped / OTel 可观测——部署形态矩阵详见部署包内运维手册。

FAQ

常见问题

什么是 SSO tax?InAgent 为什么没有?

不少团队采购时才发现 SSO、审计日志、用量报表被划进高价企业档,社区讨论把这种现象称为 SSO tax。InAgent 的承诺:SSO、审计、成本归因、Trace 查看全部在社区版;不设企业版,不设功能开关位——你部署的形态就是完整的形态。

沙箱的安全边界是什么?

每个 (用户, 工作区) 一个持久容器:非 root(uid 1000)、内存 / CPU / PID 限额、seccomp 默认 profile,秘密永不进沙箱。生产建议以 docker socket 代理替代直挂;需要出网管控时启用 egress MITM 代理 profile,秘密以占位符注入、在网络边界换真值并审计。

可以不用 Claude Code,或者换掉引擎吗?

可以。引擎走 RuntimeAdapter SPI 可插拔:faux 演示引擎不需要任何 API key;pydantic-ai 面向多 provider(四档 tier + fallback 降级链);ACP 适配层驱动 Claude Code / Gemini CLI 等真实编码 agent。会话级切换,不绑定任何自研运行时。

支持离线(air-gapped)部署吗?

支持。用 deploy/scripts/airgap-export.sh 在联网机导出部署包,目标机 docker load 后离线起栈;国内环境另有镜像源 overlay(覆盖基础镜像与 pnpm 源 registry),无需代理即可构建。

内部 IM 集成做到什么程度?

飞书 / 钉钉 bot 以绑定用户身份运行,支持流式卡片、HITL 按钮审批与提问卡、工件投递;自动化结果也可投递到飞书。钉钉走 Stream 长连接,无需公网回调入口。