跳转至

CLI 概览

asactl 是配合 ASAHub 与 OpenASA agreement 使用的 CLI。

定位

  • asactl 是 ASA 协议体系配套的 CLI 客户端
  • 支持内置模块命令与顶层协议 call
  • 支持本地工作区与远程服务混合使用

与两套文档的关系

项目 主要关注点
OpenASA 文档 标准、运行时、API 合同
ASAHub 文档 Hub 产品使用与资源工作流
asactl 本地工作区操作与远程 Hub 调用

核心概念

  • ASA:Agent Service Agreement
  • asactl:用于查询协议、发现服务、执行协议动作的命令行运行时

架构分层

  1. route:CLI 入口与参数解析
  2. driver:调用组装与传输执行
  3. invoke:统一调用模型
  4. payload (NDJSON):外部封装格式
  5. transport adapter:CLI / HTTP / HTTPS / WS
  6. modules:account / service / agreement / flow / plugin / build / store / oss
  7. call:顶层协议调用命令

入口

asactl [module] [subcommand] [flags]
asactl call <agreement> -a <action> [flags]

模块与别名

  • accountacc
  • servicesvc
  • flow
  • agreementpt
  • pluginplg
  • build
  • store
  • oss

环境变量

变量 说明 默认值
ASACTL_SERVER_HOST 远程服务地址 https://api.asahub.ai
ASACTL_USER_DIR 本地用户数据目录 <HOME>/.asactl/user
ASACTL_WORKSPACE_DIR 本地工作区目录 <HOME>/.asactl
ASACTL_REMOTE_TIMEOUT_MS 远程请求超时(毫秒) 10000
ASACTL_DEV 开发模式 disabled
ASACTL_INSECURE_TLS 跳过 TLS 证书校验 disabled

关于 ASACTL_SERVER_HOST

  • https://api.asahub.ai 是 CTL 默认远程入口
  • 本地开发时请显式覆盖为本地地址,例如 http://127.0.0.1:3000

命令写法

  • 下面统一采用 ctl 主命令名。
  • 如果存在别名,优先使用长写法。
  • Agreement 版本统一写成带 v 前缀的精确值,例如 v1.0.0