@aiaiai-pt/frankctl

中文文档
0.43.1发布于 2026/11/04MITES Module近 30 天下载 2929

Frank 低码管道平台的终端第一客户端

中文使用文档
文档目录7 节
  1. 安装
  2. 快速启动
  3. 从源头开发
  4. 范围
  5. 信使:托管和订阅(ADL-047)
  6. 宣布适用( pipelines apply -f (中文(简体) )
  7. 环境

直肠

终端第一个 CLI Frank 低码管道 平台——可脚写访问源、流、变换、管道、支持数据集和AI援助.

安装

npm install -g @aiaiai-pt/frankctl
frankctl --help

需要节点.js QQ 18. 二进制是 frankctl。 。 。 .

快速启动

frankctl auth login            # authenticate against your Frank instance
frankctl --api-url https://frank.example.com sources list
frankctl pipelines apply -f pipeline.yaml

# Or render a curated vertical through the same apply path
frankctl templates render cira -o cira.yaml
frankctl pipelines apply -f cira.yaml --dry-run-server --live-ontology

完整命令参考: 弗兰克·道克 财务报告和审定财务报表 frankctl <command> --help。 。 。 .

从源头开发

npm install
npm run build
npm link
frankctl --help

范围

  • frankctl status
  • frankctl auth login|logout|status|token
  • frankctl config set|get|list
  • frankctl templates list|show|render
  • frankctl pipelines list|get|validate|apply|export
  • frankctl sources list|get|create|update|delete|discover|sync|logs|history
  • frankctl sources credentials set|rotate (仅限故障模式)
  • frankctl backing-datasets list|get|create|update|delete|sync|entities (别名: frankctl bd· ; sync --force 重放不变的数据/规格)
  • frankctl sources streams list|set|refresh-schema
  • frankctl transforms list|get|runs|logs|trigger
  • frankctl runs get|wait|cancel
  • frankctl patterns list|get|validate-params|register
  • frankctl schedules list|get|set|delete|pause|resume|trigger (来源范围; pause|resume --note "why" 将源头状态及其时间表组合在一起)
  • frankctl sinks list|get|create|update|delete|sync|pause|resume|health|test-connection|update-credential|update-connection
  • frankctl datasets list|preview|snapshots
  • frankctl ai compose-pipeline|generate-transform|review-sql|fix-ci-failure|suggest|publish-transform

配置文件 sources create|update, (中文(简体) ), backing-datasets create|update, (中文(简体) ), sinks create|update,以及 sources streams set 接受 YAML 或 JSON( 使用 - 读取 stdin).

信使:托管和订阅(ADL-047)

水槽摄入器件数据以两种模式之一进入卡夫卡和青铜.

  • 主办 (默认)——设备发送到一个端点弗兰克运行,与 弗兰克的问题. --protocol mqtt (向我们的经纪人发信; 从配置文件创建, 因为它的主题规则需要一个: frankctl sinks create -f sink.yaml)或(或) --protocol https (临 时 议 程 摄入 URL; 由旗帜创建, 因为它没有主题规则 .
  • 已订阅 - 弗兰克连接 关闭 提供给提供者和订阅者: --protocol mqtt, (中文(简体) ), amqp_0_9, (中文(简体) ), amqp_1, (中文(简体) ), grpc 或者说 coap从 旗帜或文件.
# Subscribed sink from flags. The password never appears as an argument.
export FRANKCTL_SINK_PASSWORD='…'          # or use --password-stdin
frankctl sinks create --mode subscribed --name "Provider Feed" \
  --broker-url wss://broker.example.com/mqtt \
  --topic 'fleet/+/position' --topic 'fleet/+/status' \
  --auth password --username frank --qos 1

# Try the settings before saving them (<=10s probe)
frankctl sinks test-connection --broker-url wss://broker.example.com/mqtt \
  --topic 'fleet/+/position' --auth password --username frank

# ...and afterwards, against what is stored
frankctl sinks test-connection <id>
frankctl sinks health <id>

--kafka-topic 对订阅的汇是可选的:服务器默认为 <tenant>.subscribed.<slug>。 。 。 .

秘密从不上命令线. 没有 --password 旗帜, 因为一场争吵发生在空壳史上, ps 输出和CI日志。 通过 供应商密码通过 --password-stdin 或者说 FRANKCTL_SINK_PASSWORD,以及 通过 mTLS 键 --client-key-file 或者说 FRANKCTL_SINK_CLIENT_KEY在 a 中输入 配置文件, 命名一个环境变量而不是写入值 :

name: Provider Feed
mode: subscribed
connection:
  broker_url: wss://broker.example.com/mqtt
  topics: ['fleet/+/position']
  auth_mode: password
  tls:
    skip_verify: false     # verification is on by default
credential:
  username: frank
  password_env: PROVIDER_MQTT_PASSWORD   # the NAME, not the password

一个字形 password: 在档案中拒绝,但有解释 而不是默默无闻的被忽略.

--tls-skip-verify 关闭证书校验并打印出警告 : 连接会保持加密, 但是没有检查经纪人的身份 . 偏爱 --ca-file 和一个私人CA的经纪人.

旋转证书或更换经纪人:

frankctl sinks update-credential <id> --username frank --password-stdin < pw.txt
frankctl sinks update-connection <id> --broker-url wss://new.example.com/mqtt \
  --topic 'fleet/+/position' --auth password --username frank
frankctl sinks sync <id>     # both take effect on the next sync

退出代码. sinks health <id> 财务报告和审定财务报表 sinks test-connection 退出 0 只有在水槽实际起作用时 state: connected,用于 测试连接 ok: true。任何其他国家出口 4 (API),包括: unknown,一个暂停或永远不动的槽报告: CI 健康门 静静的喂食应该失败 而不是通过。 用法错误退出 2。 。 。 .

frankctl sources sync <id> 等待准确 workflow_id 返回时间 其同步请求, 绝不是源代码的最新状态 。 它的JSON结果现在 运行细节( e)workflow_id, (中文(简体) ), source_id, (中文(简体) ), sync_run_id, (中文(简体) ), status,备查 工作流程标识符、行/流计数和出错细节),替换旧的 资料来源摘要/对照。 只有坚持 completed 运行成功; 失败, 已取消, 部分并跳过 5 出口 。 超时 4 个出口 timed_out: true 和最后准确的观察。 缺少或不匹配的身份无法关闭 . 一个暂时缺失的运行(HTTP 404)在同一个工作流程URL中再次被调查. --no-wait 仅返回 workflow_id; 草稿仍然准备就绪 在同步开始前.

frankctl backing-datasets sync <id> 民意测验准确的证据 当API 广告同步合同v2。 对于一个比较老的API的普通同步,它 回到BackingDataset状态投票,明确报告重播 证据不足. --force 更严格:国家综合倡议核查 变异请求前的能力终点并发送零同步 POST 当强制重放是不支持或未发布广告时.

宣布适用(pipelines apply -f(中文(简体) )

frankctl pipelines apply -f vertical.yaml 可提供完整的源 + 管道 + 备份 Dataset 三重从单一多文件 YAML 中生成 跟踪源没有证书值. 医生使用克贝特尔式的信封(apiVersion: frank.platform/v1, (中文(简体) ), kind:, (中文(简体) ), metadata.name:, (中文(简体) ), spec:) (中文(简体) ). 按种类分类的CLI类型(资料来源) 管道 – BackingDataset),解决了对UUIDs的交叉道克名称引用, 每个医生都使用 ?if-not-exists=true。 。 。 . frankctl pipelines export <id> -o yaml 将已有的管道绕道返回多功能YAML 备查文件.

证书处理遵循服务器的清晰 SOURCE_CREDENTIAL_MODE。 。 。 . 目前可变/碱基 legacy_inline: 接受源创建/更新 只写 credential_values 并使他们永居其中 Source.source_config· ; 读出/导出时保持编辑,并添加证明参考文献 sources credentials 没有命令. 永久释放用途 vault: 数值与 sources credentials set|rotate --values-file -来源 承租人拥有的不透明 credential_ref。导出从不返回值 条列内置证书字段,并仅保留 Vault-mode 引用 一个存在。 见 ../docs/guides/cli.md 详细参考.

具有关系的备份 数据集在 metadata.dependsOn 或可用其中之一 spec.schedule_type (单位:千美元)on_materialization 或者说 manual) (中文(简体) ). 图表命令引用。 服务器 自动同步的先决条件来自持续的关系 绘制地图,等待同一弗兰克和本体学租户登记的目标 以当前快照和绘图同步。 之后的上游变化 选择仍然可以匹配同步;未解决的关系使用被绑定的重试. --wait 返回 按地形顺序排列的数据集和 需要外部目标已经 synced; 缺少依赖性,周期, 和自我优惠关系 在执行前失败.

Source.spec.streams 在创建和重新应用时需要状态:已声明的流 由名称创建/标注,而不重置光标、块、计数器或运行 状态。 漏出溪流得到保存,并报告为无管理;明确设置 is_enabled: false 以禁用一个。 客户端干燥显示声明, 服务器干运行显示每个流的动作,并导出只配置的流 没有运行状态的宣告。 与 --wait,明确声明 只同步其启用的流名, 因此未保存的流不运行 . 对于迁移,明确宣布已知的已过时的已启用流 is_enabled: false 如此有计划/直接的源代码同步安全地汇合.

使用 --dry-run-server --live-ontology 仅检查 以服务器配置的本体学进行后置数据集映射. 使用 --wait --json 以精确的源码、 变形和备份数据集执行 运行关联并释放出一个证据对象. --wait 不替换 a 单独的肿瘤实体回读; 报告为肿瘤运行 skipped 表示快照已经汇合,没有重放行. REST 批量数据 运行中包括耐用的工作ID和提交/完成的精确计数 肿瘤同步运行; 证书和行有效载荷从未包含.

环境

  • FRANKCTL_API_URL — Frank API 基础( 默认) http://localhost:8000(中文(简体) )
  • FRANKCTL_KEYCLOAK_URL — keycloak 碱基( 默认) http://localhost:8180(中文(简体) )
  • FRANKCTL_KEYCLOAK_REALM —域(默认) frank(中文(简体) )
  • FRANKCTL_CLIENT_ID ——推翻OAuth客户端ID. 浏览器 PKCE 默认为专用公众 frank-cli 客户端; 保留无头密码登录 frank-low-code;服务账户登录需要自己的客户端id.
  • FRANKCTL_CLIENT_SECRET - 客户秘密(仅服务账户)
  • FRANKCTL_PROFILE ——活动配置配置
  • FRANKCTL_TOKEN —— 绕行符号存储
  • FRANKCTL_TENANT_ID=<organization-slug> - 明确租户范围申请的租户范围 --tenant <organization-slug> 对于一个命令 覆盖或持续 profiles.<name>.tenantId
  • FRANKCTL_SINK_PASSWORD ——订阅汇的提供者密码(sinks create|update-credential|update-connection|test-connection; 备选案文 --password-stdin
  • FRANKCTL_SINK_CLIENT_KEY —— 使用 mTLS 订阅的汇的 PEM 客户端密钥; 替代 --client-key-file
  • PATTERN_WEBHOOK_SECRET - HMAC-SHA256 签名密钥 frankctl patterns register (仅CI;未设置时命令出出6)

浏览器登录将 OAuth 客户端 ID 存储在符号旁边, 并重复使用同样的 客户端用于刷新 。 概况、环境、 --client-id 因此超过 仍然有效,无需刷新静默切换回内置默认值.

版本与发布记录

@aiaiai-pt/frankctl 共发布 36 个版本,首次发布于 2026/07/17;过去 12 个月发布了 36 个版本。

版本发布日期距今
0.43.1latest2026/11/043 天前
0.42.02026/11/025 天前
0.39.12026/10/299 天前
0.37.22026/10/2811 天前
0.37.12026/10/2712 天前
0.35.02026/10/2612 天前

关于 @aiaiai-pt/frankctl 的常见问题

@aiaiai-pt/frankctl 是什么?

Frank 低码管道平台的终端第一客户端

如何安装 @aiaiai-pt/frankctl?

在项目目录运行 npm install @aiaiai-pt/frankctl,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 frankctl,可以用 npx frankctl 直接运行。

@aiaiai-pt/frankctl 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/aiaiai-pt__frankctl 是否存在。

@aiaiai-pt/frankctl 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@aiaiai-pt/frankctl 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=18.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@aiaiai-pt/frankctl 可以商用吗?

@aiaiai-pt/frankctl 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@aiaiai-pt/frankctl 的下载量有多少?

根据 npm 官方下载统计,@aiaiai-pt/frankctl 在 2026/10/05 – 2026/11/03 这 30 天内被下载 2,929 次,日均约 98 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@aiaiai-pt/frankctl 还在维护吗?

最新版本 0.43.1 发布于 2026/11/04(3 天前);至今共发布 36 个版本,其中过去 12 个月发布了 36 个;首次发布于 2026/07/17。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。