@frontera-sdk/cli

中文文档
1.53.53发布于 2026/11/15Apache-2.0TypeScriptES Module近 30 天下载 1.6万

前卫CLI——脚手架,拉出,保存并部署前卫App和自动化.

中文使用文档
文档目录12 节
  1. 一台机器,许多顾客
  2. 代理吊带
  3. 命令
  4. 退出代码是合同
  5. 项目配置
  6. 什麽 app init 已经
  7. 组件来自阴影
  8. 新 App 包含什么
  9. 蓝图类型
  10. 构建和释放
  11. 它运行在邦,不是节点
  12. 许可证

@frondera-sdk/cli (英语)

frontera ——脚手架,拉出,节省并部署Frontera应用和自动化.

bunx @frontera-sdk/cli --help
frontera auth add acme-prod --api-url https://api.frontera.example --from -
frontera auth use acme-prod
frontera app init shipments-console
cd shipments-console && bun install
frontera app dev

新 Apps 是 Next.js 默认的静态输出 . frontera app dev 下一个 关于回回转和一个单独认证的会话经纪人。 存储的工作空间 密钥从不输入浏览器 JavaScript 或 .env.local; 浏览器只接收 一个寿命很短的 App-scoped sord. 现有 Vite Apps 仍然支持 --framework react 及其遗产 dev-host.html 流动.

一台机器,许多顾客

证书是 配置文件,工作目录选择哪个配置 正在玩游戏。 同一部署的两个键在不同名称下共存,以及 在客户目录中运行的命令使用没有旗帜的客户密钥.

frontera auth add acme-prod --api-url https://api.frontera.example --from -
frontera auth add globex-dev   --api-url https://api.frontera.example --from -

cd ~/Customers/acme && frontera auth use acme-prod
cd ~/Customers/globex  && frontera auth use globex-dev

frontera auth current --json    # which profile, which origin, which scope

auth use 写出已忽略 .frontera/context.json 持有配置文件 名称 从来不是象征 也从来不是来源 决议从上而上 工作目录和最近的绑定赢家, 所以一个嵌入客户项目 安全地覆盖它的母体.

优先性明显高于推断: --profile 击出 FRONTERA_PROFILE, (中文(简体) ), 它胜过目录. --api-url 必须同意选定的配置文件 源代码 – 一个 profile 的密钥从不会发送到另一个部署 . FRONTERA_TOKEN 仍然为CI和计算机工作,并需要明确来源与 也是因为这个原因.

密钥位于通过剖面处理的OS证书存储; config.json 持有 元数据和一个短的指纹,从不按键字节. 1 版本配置 第一次使用时迁移, 在旧的平正文字之前验证每个复制后的秘密 被删除. frontera login 仍为管理 default 简介.

frontera auth add <profile>校验密钥并保存( 仅刻录或无刻录提示)
frontera auth use <profile>绑定此目录树——不需要初始化
frontera auth current解析的概况、来源、范围和来源
frontera auth list 编号 : verify 编号 : remove存在, 是否仍然有效, 删除

代理吊带

frontera setup            # every coding host installed here
frontera setup codex
frontera setup claude

Codex和Claude代码都从市场安装插件,并且都接受一个 本地目录为一。 CLI带有Frontera技能 被固定在建设上 时间,所以 setup 实现市场 ~/.local/share/frontera/harness 并点点它的宿主--没有出版, 没有主机 没有网络 升级 CLI 升级插件 .

没什么需要写进仓库的 对于想要 使用代码版本的指令——或用于 Windows 校验、档案和 云沙箱- (中文(简体) ) frontera kit vendor 写入两个主机预测 (单位:千美元).agents/skills 财务报告和审定财务报表 .claude/skills),在 AGENTS.md, (中文(简体) ), (单位:千美元) CLAUDE.md 导入 @AGENTS.md,以及一个承诺表 frontera.kit.lock.json。 。 。 . kit status, (中文(简体) ), kit sync 财务报告和审定财务报表 kit doctor 报告 漂移、 在不丢弃本地编辑的情况下更新生成的文件并诊断 a 技术可同时从两个来源获得.

命令

frontera <noun> <verb>。注意: frontera init (筹备现有 (项目)和 frontera app init (affold a new app) 是不同的命令.

frontera app init <name>脚手架 A Next.js 静态 App
frontera app init <name> --framework react脚手架 遗留的 Vite App
frontera app dev以经认证的蓝图访问方式在本地运行
frontera app pull <slug>获取已有的应用源
frontera app save将工作树包成存储
frontera app deploy构建输出 — 一个不可改变的版本
frontera app list 编号 : versions存在,存在
frontera chat-app list 编号 : get聊天Apps, 和一个人的活版, 名册,观众和终点
frontera chat-app draft 编号 : publish阶段配置文件,然后发布为 live
frontera chat-app access 编号 : endpoint谁能打开它,而它能达到的地方
frontera blueprint list 编号 : get应用程序能够读取的数据
frontera blueprint generate-types从数据合同中生成承诺的 App-local 类型
frontera marking list 编号 : grants 编号 : create 编号 : grant 编号 : revoke安全标记——需要一个人的会话,永远不要一个API密钥;或平台,在"蓝图"中 访问 标记
frontera media create 编号 : grant 编号 : upload从本地文件填写媒体集( 仅会话)
frontera media process 编号 : status --watch 编号 : search开关处理,等待,抽查通道

frontera help --json 返回整个表格作为数据.

退出代码是合同

0 成功 · 1 瞬间 2 用途 · 3 · 冲突 4 授权。 分会 而不是在短信上. 管理下的动作冲突(过时的记录版本或批准,记录 已对行动提出公开请求, 移动了批准步骤) 退出 3, (中文(简体) ), 或拒绝 reason; 重用到另一个的偶位键 请求退出 2 (单位:千美元)exit.ts) (中文(简体) ).

项目配置

package.json 保留标准软件包元数据:软件包身份、脚本、, 依赖性、发展依赖性和软件包管理元数据. Frontera的文物合同住在 frontera.config.json数字 :

{
  "displayName": "shipments-console",
  "outputDirectory": "out",
  "routing": "filesystem",
  "connectDomains": [],
  "resourceDomains": []
}

runtime 总是静止的; routing 描述文物而不是 (b) 产生这一框架的框架。 特定环境的 App 绑定为 带子 .frontera/state.json已使用的现有项目 package.json#frontera 仍可读取,但新的脚手架不会添加.

下一个 Apps 消耗已发布的 @frontera-sdk/core 财务报告和审定财务报表 @frontera-sdk/blueprint 软件包。 现有Vite Apps 保留销售商 SDK 来源; frontera app sdk sync 只刷新产生树的树. 本地运行时间从平台检出( 来源模式) 开始, frontera app sdk use-local 收拾退票单 @frontera-sdk/* 软件包 进入App的 vendor/frontera-sdk/ 和点 package.json 攻击他们 那个文件夹,和 --npm 开关 这是一个地方发展指挥部 不属于客户的CLI参考.

什麽 app init 已经

在写之前就拒绝

  1. 拒绝名称 package.json 将拒绝——用这个名字 工作——并拒绝为已经开展工作的目录提供脚手架.
  2. 写项目,它的 AGENTS.md及其模式技能.
  3. 运行 bun install。没有网络的机器得到一个报告跳出和一个 bun install 中,从不失败命令.
  4. 添加基线阴影组件 - button, (中文(简体) ), input, (中文(简体) ), table, (中文(简体) ), skeleton, (中文(简体) ), card, (中文(简体) ), alert ——该参考文献为进口.
  5. 创建仓库和初始承诺, 除非它已经存在于其中 . 无法承诺的存储器被删除而不是被留下一半 已经做了.

--no-install, (中文(简体) ), --no-components 财务报告和审定财务报表 --no-git 选择退出最后三个. 进展是缓慢的,所以 --json 仍然只返回结果 文档.

组件来自阴影

Apps不包含此寄存器维护的组件库 . components.json 为工程配置为脚手架 — Tailwind v4, src/app/globals.css, (中文(简体) ), 页:1 @/ 别名, cn 从 @/lib/utils - 所以任何上游发布 下降 未修改中:

bunx --bun shadcn@latest add dialog dropdown-menu tabs

有两个细节可以证明这一点,脚手架测试也证实了这一点。 里面的每件东西 阴影登记册宣布 无 npm 依赖性,所以脚手架宣布 他们进口的.. class-variance-authority, (中文(简体) ), radix-ui, (中文(简体) ), lucide-react, (中文(简体) ), tw-animate-css。平台样式表已经定义了每个符号 上游参考文献,所以 add 让它不动; shadcn init 将取代 它与香草调色板, 这就是为什么没有什么运行它.

frontera app add 保留给Frontiera特定成员—— app-page, (中文(简体) ), page-header, (中文(简体) ), stat-tile, (中文(简体) ), filter-bar, (中文(简体) ), data-table 上游没有 等值单位.

新 App 包含什么

frontera app init 写入一个已经显示其模式的工程 技能描述,因为代理复制最近的文件而不是 最近的段落 :

src/app/                    route adapters: layout, providers, one thin page
src/ui/app-shell/           the frame, aware of embedded vs standalone
src/ui/object-explorer/     reference feature — entry, components/, hooks/, utils, types
src/lib/blueprint/          the data layer, with tests over its pure helpers
src/lib/copy.ts             user-visible strings
src/components/ui/          shadcn primitives, fetched at init
components.json             shadcn CLI configuration for this project
AGENTS.md / CLAUDE.md       the entry point that routes an agent to the skills
.agents/skills/             thirteen pattern skills, dispatcher first

引用特性按名称读取任意对象类型,所以在数据之前有效 模式已知:搜索解析为服务器侧过滤器,页面已读取,共计 从一个单独的集合 在同一对象集, 内容形状的骨架, 淡出背景回放, 并显示明显的空和错误 .

bun run check ——打字检查,然后 bun test,则 next build 门是 有脚手架的项目船, 和它的技巧告诉一个代理人运行 在要求改变之前.

蓝图类型

从一个认证的 App 项目中生成活动工作空间 蓝图合同:

bun run blueprint:types
git add src/generated/frontera-blueprint.ts

生成的文件是决定性的, 包含 API 名称和 TypeScript 类型,从不包含服务器的ID、证书、来源或时间戳。 承诺吧 普通安装和建造仍为离线和可再生产。 认证 CI 工作可以在不写的情况下检查新鲜度 :

bun run blueprint:types:check

世代有意不是安装、建造、当地开发的一部分,或 部署。 使用 --output <relative.ts> 换个地方.

构建和释放

利用FDE笔记本电脑或客户CI,然后上传不可改变的结果:

bun run typecheck
bun run build
frontera app deploy --no-promote
frontera app versions
frontera app promote 0.1.0

CLI 套装已配置的输出目录和记录套装 来源。 该服务独立计算权威文物 文摘、文件数、字节数和上传器.

它运行在邦,不是节点

bin 点数 src/main.ts 和包件船 TypeScript 源, 因此:

bunx --bun @frontera-sdk/cli app init      # works
npm i -g @frontera-sdk/cli && frontera     # does NOT — Node cannot run the .ts entry

engines.bun 在清单中是这样说的。 出版来源而不是捆绑 刻意地——每个消费者都是Bun或捆绑者,一个建设步骤将释放出 立即输出消费者的再传输——但它确实意味着全球 npm i -g 不支持安装.

许可证

阿帕奇2.0 (英语). 见 自由主义。 。 。 .

版本与发布记录

@frontera-sdk/cli 共发布 232 个版本,首次发布于 2026/07/30;过去 12 个月发布了 232 个版本。

版本发布日期距今
1.53.53latest2026/11/151 天前
1.53.522026/11/141 天前
1.53.512026/11/141 天前
1.53.502026/11/141 天前
1.53.492026/11/141 天前
1.53.482026/11/132 天前

关于 @frontera-sdk/cli 的常见问题

@frontera-sdk/cli 是什么?

前卫CLI——脚手架,拉出,保存并部署前卫App和自动化.

如何安装 @frontera-sdk/cli?

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

@frontera-sdk/cli 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@frontera-sdk/cli 支持 ESM 还是 CommonJS?

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

@frontera-sdk/cli 可以商用吗?

@frontera-sdk/cli 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@frontera-sdk/cli 的下载量有多少?

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

@frontera-sdk/cli 还在维护吗?

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