买币
行情
现货
合约BTC
理财
活动中心
福利中心
更多
0 费狂欢节
Flow CLI(Dapper Labs): 什么是 Flow CLI?Flow CLI 是用于开发应用并与 Flow 区块链交互的官方命令行界面。CLI 是 command-line interface(命令行界面)的缩写,指开发者通过在终端输入文本命令来控制工具,而非在图形应用中点击按钮。Flow CLI 可初始化区块链项目、运行本地 Flow 网络、测试 Cadence 代码、部署智能合约、发送交易、执行脚本、管理账户、生成密钥、安装合Flow CLI(Dapper Labs): 什么是 Flow CLI?Flow CLI 是用于开发应用并与 Flow 区块链交互的官方命令行界面。CLI 是 command-line interface(命令行界面)的缩写,指开发者通过在终端输入文本命令来控制工具,而非在图形应用中点击按钮。Flow CLI 可初始化区块链项目、运行本地 Flow 网络、测试 Cadence 代码、部署智能合约、发送交易、执行脚本、管理账户、生成密钥、安装合

Flow CLI(Dapper Labs)

2026/10/13 15:35
#Advanced
FLOW
FLOW$0.033-5.92%
Humanity
H$0.05437-10.50%
SynFutures
F$0.003112-4.68%
BREW
BREW$0.006804-26.16%
INIT
INIT$0.12115+3.77%

什么是 Flow CLI?

Flow CLI 是用于开发应用并与 Flow 区块链交互的官方命令行界面。CLI 是 command-line interface(命令行界面)的缩写,指开发者通过在终端输入文本命令来控制工具,而非在图形应用中点击按钮。Flow CLI 可初始化区块链项目、运行本地 Flow 网络、测试 Cadence 代码、部署智能合约、发送交易、执行脚本、管理账户、生成密钥、安装合约依赖项以及获取区块链数据。它为本地 Flow Emulator、Flow Testnet 和 Flow Mainnet 提供统一的开发工作流程。该工具主要面向智能合约开发者、去中心化应用团队、基础设施工程师、测试人员,以及其他在 Flow 上构建产品的技术用户。Flow CLI 不是加密货币、加密钱包、区块链节点、消费者应用或交易产品。它是与 Flow Access Nodes 和本地开发服务通信的开发者软件。

Flow CLI 官方文档将其描述为一个统一界面,可用于管理项目、账户、合约、交易、依赖项和区块链查询。

Flow CLI 与 Dapper Labs 有什么关系?

Flow 最初由 Dapper Labs 设计和开发,因此有时有人会搜索“Flow CLI Dapper Labs”。Dapper Labs 创建 Flow,旨在支持服务大量消费者的区块链应用,避免所有应用都争用相同且有限的处理资源。

Flow 和 Cadence 的官方历史介绍指出,Dapper Labs 是该区块链的原始设计者和开发者。

Flow CLI 目前通过 Onflow 组织以开源软件形式发布,是更广泛 Flow 开发者生态的一部分。

该工具的官方源代码仓库采用 Apache 2.0 许可证公开提供。

因此,Flow CLI 应被理解为 Flow 网络的官方工具,而不是仅由 Dapper Labs 内部运营的私有消费者应用。

Flow CLI 最新版本是什么?

截至 2026 年 7 月 14 日,最新发布的 Flow CLI 版本为 2.17.4。2.17.4 版本于 2026 年 6 月 4 日发布,并将工具更新至 Cadence 1.10.3 版本。此版本还将捆绑的 Flow 核心合约组件更新至兼容 Cadence 1.10.3 的版本。

开发者可通过Flow CLI 官方版本发布页面确认当前版本。

版本信息可能经常变化,因为 CLI 需要与新的 Cadence 版本、模拟器更新、核心合约、网络功能和安全修复保持兼容。

开发者可在终端运行

flow version
,查看本地安装的版本。

生产团队应在自动化构建系统中使用经过测试并固定版本的 CLI,而非每次部署时自动更换版本。

Flow CLI 为何重要?

区块链开发不只是编写智能合约文件。开发者还必须创建账户、管理密钥、解析合约地址、提交签名交易、检查结果、测试失败情形,并将代码部署到正确网络。Flow CLI 将这些任务整合到一个工具中。对于常规开发操作,它减少了手动向 Flow Access Nodes 构造原始请求的需求。CLI 还让命令可以重复执行,这对测试、部署脚本、持续集成和团队协作都很有价值。保存到部署脚本中的命令可以审查,并在多个开发环境中一致执行。这比完全依赖通过图形界面执行且未记录的手动步骤更安全。

如何安装 Flow CLI?

Flow CLI 可安装在 macOS、Windows 和大多数 Linux 系统上。

由于可用二进制文件和支持的操作系统版本可能变化,开发者应遵循Flow CLI 官方安装说明。

在 macOS 上,常见的安装命令是

brew install flow-cli
。

通过 Homebrew 安装后,通常可使用

brew upgrade flow-cli
更新。

官方也为受支持的 Linux、macOS 和 Windows 环境提供安装脚本。使用提升的系统权限运行安装脚本前,开发者应先审查脚本内容。直接从未经验证的网站或转发的社交媒体消息安装软件,可能会使计算机、私钥和项目文件遭到恶意代码攻击。

安装后,开发者应运行

flow version
和
flow help
,确认可执行文件正常工作且已加入系统路径。

如何创建 Flow 项目?

创建 Flow 项目的主要命令是

flow init
。

该命令会创建项目结构,并生成名为

flow.json
的主配置文件。

当前版本的 Flow CLI 可提供多种应用项目模板,包括基础 Cadence 项目和更专业的区块链工作流程。项目模板可能包含智能合约、交易、脚本、测试和项目配置目录。

官方项目初始化指南说明了

flow init
如何创建新开发环境所需文件。

开发者应检查生成的项目,不要假定所有默认设置都适用于生产环境。提交主网交易前,应检查网络地址、账户别名、依赖项、签名者设置和部署目标。

什么是 flow.json?

flow.json
是 Flow CLI 使用的主配置文件。

它描述 CLI 应使用的网络、账户、合约、依赖项、部署目标和项目路径。

flow.json 官方配置参考介绍了可用的配置部分和格式。

networks
部分定义与 Emulator、Testnet 和 Mainnet 等环境的连接。

accounts
部分将易读账户名称映射到 Flow 地址和签名密钥配置。

contracts
部分将 Cadence 合约名称映射到源文件和特定网络地址。

deployments
部分指定各网络上应将哪些合约部署至哪些账户。

维护良好的配置文件可以让同一 Cadence 导入在 Emulator、Testnet 和 Mainnet 上解析到不同地址。这样可以避免开发者在每个源文件中硬编码某一网络的合约地址。

团队应通过版本控制审查

flow.json
的修改,因为部署目标或账户别名变更可能导致交易发送到错误环境。

flow.json 会存储私钥吗?

Flow CLI 支持包含私钥信息的配置,但将未加密的生产密钥直接写入共享的

flow.json
文件很危险。

根据密钥权重和账户配置,私钥持有者可以授权关联 Flow 账户的区块链交易。如果配置文件上传到公开仓库,攻击者可能控制合约、代币和管理权限。当前 Flow CLI 配置选项包括直接填写十六进制密钥、外部密钥文件、基于助记词的派生,以及 Google Cloud KMS 集成。使用外部密钥管理系统可以减少原始签名材料暴露在本地项目文件中的情况。密钥文件、特定环境配置和其他机密信息应排除在公开版本控制之外。开发者还应分开使用 Emulator、Testnet 和 Mainnet 密钥。默认 Emulator 服务密钥是公开已知的,仅因 Emulator 是不含真实资产的本地开发网络,才适用于该环境。

Flow CLI 可使用哪些网络?

Flow CLI 可与本地 Flow Emulator、Flow Testnet、Flow Mainnet 及自定义 Flow Access Node 端点交互。Emulator 用于私有本地开发。Testnet 是公共测试环境,可用于测试应用,而无需使用生产环境中的 Flow 资产。Mainnet 是生产区块链,交易可能影响真实账户、已部署合约和加密资产。

许多命令都接受用于指定目标环境的

--network
选项。

例如,开发者可以使用

--network emulator
、
--network testnet
或
--network mainnet
。

未指定或未核实网络,可能导致部署或交易被发送到非预期环境。生产脚本应明确指定网络,并在使用 Mainnet 签名者之前要求额外检查。

什么是 Flow Emulator?

Flow Emulator 是轻量级本地网络,可在开发和测试中复现 Flow 区块链的重要行为。

它随 Flow CLI 一同提供,可通过

flow emulator
启动。

Flow Emulator 官方文档将其描述为本地环境,可在使用公共网络前执行交易、部署合约和测试应用。

由于 Emulator 在本地运行,开发者可以重置其状态、查看详细日志并测试失败情形,而无需花费真实加密货币。Emulator 含有一个服务账户,可在本地环境中创建账户、签署交易和部署合约。其私钥不适用于 Mainnet,因为该密钥是有意公开且可预测的。Emulator 基本实现了 Flow Access API 的功能,但开发者不应假定一台电脑能够完美复现所有生产环境条件。公共网络延迟、验证者行为、网络拥堵、外部服务和生产账户配置都可能导致不同结果。

本地开发流程如何运作?

常见的 Flow CLI 工作流程从使用

flow init
创建项目开始。

随后,开发者使用

flow emulator
启动本地区块链。

将 Cadence 合约添加到项目,并在

flow.json
中配置映射。

开发者将合约部署到 Emulator 账户,并执行测试交易或脚本。

可使用

flow test
运行自动化测试。

本地测试通过后,可将项目部署到 Testnet,在共享公共网络上进行测试。只有在代码、账户配置、签名者权限、依赖项和部署计划均经过审查后,才应部署到 Mainnet。

Flow CLI 如何部署智能合约?

Flow CLI 可将 Cadence 智能合约部署到项目配置中定义的账户。

项目级部署命令为

flow project deploy
。

官方部署文档说明,该命令会从

flow.json
读取合约和部署目标。

开发者可以指定部署目标网络。

例如,

flow project deploy --network emulator
会将已配置的项目合约部署到本地环境。

将网络更改为 Testnet 或 Mainnet 后,CLI 会使用对应的账户、别名和 Access Node 配置。智能合约部署属于区块链交易,因此需要拥有适当密钥权限的账户授权。Cadence 代码无效、导入无法解析、账户权限不足、签名密钥错误或网络连接问题,都可能导致部署失败。Mainnet 部署可能产生不可逆后果,因此开发者签名前应核实合约源代码和账户地址。

Flow CLI 能更新现有合约吗?

Flow CLI 可为已存储在 Flow 账户中的合约提交更新交易。更新必须由拥有该账户足够权重的密钥授权。Cadence 合约更新受语言和网络规则约束,这些规则用于保护已存储资源和现有应用状态。即使交易在技术上有效,更新仍可能引入漏洞、破坏依赖应用或改变预期行为。更新生产合约前,开发者应执行迁移测试并确认与现有账户数据兼容。

Flow 合约部署官方指南介绍了账户设置、部署和合约更新注意事项。

什么是 Cadence?

Cadence 是专为 Flow 区块链设计的智能合约编程语言。它使用面向资源的编程概念来表示加密资产及其他不应被意外复制或丢失的值。Flow CLI 包含执行、测试、代码检查、部署和交互 Cadence 代码所需的工具。CLI 和 Cadence 版本必须保持兼容,因为语言变化可能影响解析、类型检查、执行和合约行为。截至 Flow CLI 2.17.4 版本,捆绑的 Cadence 版本为 1.10.3。

开发者可通过Cadence 官方文档了解当前语言行为。

Cadence 脚本和交易有什么区别?

Cadence 脚本读取区块链状态,但不会永久更改状态。脚本可以获取账户余额、读取公开合约字段、计算结果或检查已存储的公开权限。脚本无需交易授权,因为它无法修改区块链状态。Cadence 交易则可以更改区块链状态。交易可以转移加密资产、创建资源、调用合约函数、修改账户存储或执行其他授权操作。交易必须由承担 payer、proposer 或 authorizer 角色的账户签名。Flow CLI 分别提供用于执行脚本和发送交易的命令组。这一区别很重要,因为提交交易会带来授权、费用和状态变更风险,而只读脚本不会以同样方式产生这些风险。

Flow CLI 如何发送交易?

Flow CLI 可构建、签名、提交并查询 Flow 交易。交易命令会指定 Cadence 交易文件、参数、签名者配置和目标网络。

CLI 使用

flow.json
中的账户信息或命令行选项生成所需签名。

提交后,Flow 交易会经历多个状态,最终达到封存状态。提交后的交易仍可能因 Cadence 执行出错而失败。开发者应检查交易结果、发出的事件和错误信息,而不应将“已提交”视为成功证明。

具体命令语法和可用标志列于Flow CLI 官方命令概览。

Flow CLI 如何管理账户?

Flow 账户可以包含加密资产、智能合约、存储资源、公开权限和一个或多个公钥。Flow CLI 可以创建账户、获取账户详情、检查密钥、添加或撤销密钥,并将合约部署到已授权账户。账户模型将 Flow 地址与单个公钥分开。一个账户可以包含多个密钥,这些密钥拥有不同的权重、签名算法、哈希算法和序列号。这种设计支持密钥轮换、多设备、共同控制及其他授权模式。

Flow 账户官方文档说明了 Flow 账户与一个密钥永久决定一个地址的账户模型有何不同。

只有在其他有效密钥仍提供足够授权权重时,撤销被泄露密钥才能保护账户。依赖密钥管理流程保护高价值生产账户前,开发者应先进行测试。

Flow CLI 如何处理加密密钥?

Flow CLI 包含生成和解码 Flow 兼容密钥的命令。它还提供创建和验证数字签名的命令。密钥生成必须使用安全随机数;如果私钥可预测,攻击者就可能将其还原。切勿将私钥粘贴到公开问题、共享终端录屏、聊天消息或源代码仓库中。如果直接将私钥作为命令参数提供,命令行历史也可能泄露机密信息。生产系统应优先使用权限受限的专用密钥文件、硬件支持的存储或受支持的密钥管理服务。密钥备份也必须妥善保护,因为丢失全部有效密钥可能导致账户控制权永久丧失。

什么是 Flow CLI 依赖管理器?

Flow CLI 依赖管理器用于安装和追踪项目所使用的外部 Cadence 合约。智能合约经常依赖部署在 Flow 网络其他位置的标准、接口和实现。依赖管理器可以获取合约源代码并更新项目配置,使导入内容能够正确解析。

命令

flow dependencies list
可显示项目中当前记录的依赖项。

命令

flow dependencies install
可从受支持的网络位置安装依赖项。

依赖管理官方文档介绍了如何安装、检查和管理合约依赖项。

开发者应审查依赖项代码和地址,而不是假定所有链上合约都安全。恶意依赖项或识别错误的依赖项可能在去中心化应用中引入未授权行为。团队还应考虑应用部署后,其他账户是否能够更新导入的合约。

Flow CLI 如何测试 Cadence 智能合约?

Flow CLI 内含 Cadence 测试框架,并使用

flow test
命令运行测试文件。

测试可以验证智能合约、脚本、交易、发出的事件、账户变化和预期失败情形。测试系统在底层使用 Flow Emulator。因此,测试可以创建账户、部署合约、提交交易并检查状态,而不会影响公共区块链。

Cadence 官方测试指南介绍了单元测试和集成测试流程。

集成测试尤其有价值,因为它能发现账户设置、交易授权、导入、权限和资源转移等问题。代码覆盖率高并不能证明合约安全,因为测试可能没有检查最危险的假设。在适当情况下,安全关键合约还应接受人工审查、对抗性测试和独立审计。

Flow CLI 中的分叉测试是什么?

分叉测试会创建本地开发环境,从 Flow Mainnet 或 Testnet 读取状态,并在本地执行变更。开发者可以根据真实部署的合约、地址和区块链状态测试代码,而不会修改原公共网络。

开发者可以使用类似

flow emulator --fork mainnet
的命令启动基于 Mainnet 的分叉环境。

Flow 官方分叉测试指南介绍了本地 Emulator 如何镜像其他 Flow 网络的状态。

如果应用依赖难以手动复现的合约或账户数据,分叉测试就很有用。它还可以帮助在生产合约更新前发现兼容性问题。分叉环境并不等同于创建 Flow 区块链的永久分叉。它是私有测试副本,本地交易不会更改 Mainnet 或 Testnet。开发者仍应核实所选区块高度和网络,因为生产状态之后发生变化时,测试结果可能不同。

Flow CLI 的代码检查是什么?

代码检查会在不部署合约的情况下,检查源代码中可能存在的错误、不安全模式、格式问题和其他问题。

Flow CLI 为 Cadence 项目提供

flow lint
命令。

代码检查可以在开发早期发现部分问题,也可以纳入自动化检查流程。当前版本支持指定基础目录,以便检查存放在默认位置以外的 Cadence 文件。检查通过并不能证明业务逻辑、访问控制、经济激励或资源管理行为正确。代码检查应与测试、代码审查和生产监控结合使用。

Flow CLI 如何查询区块链数据?

Flow CLI 可获取 Flow Access API 提供的账户、区块、集合、事件、交易、执行结果和其他信息。

命令

flow blocks get
可按标识符、高度或最新可用区块获取区块。

命令

flow accounts get
可获取 Flow 账户信息。

事件命令可查询选定区块范围内发出的事件。交易命令可检查已提交交易的状态和结果。这些功能适用于开发、调试、监控和简单的区块链调查。CLI 并非完整的历史数据索引器,因为 Access Nodes 和专业索引服务提供的查询能力可能不同。大型分析应用通常还需要数据库、事件处理服务或其他专用基础设施,不能仅依赖 CLI 命令。

什么是 Flow 交互模板?

Flow 交互模板提供 Cadence 交易和脚本的标准化描述。它们有时称为 FLIX 模板。模板可以描述钱包或应用理解某项操作所需的交互代码、参数、依赖项和元数据。Flow CLI 包含可执行、生成和打包受支持交互的 FLIX 命令。模板有助于提升应用开发者、钱包和智能合约之间的一致性。用户签名前仍须核实交易代码和参数,因为模板无法消除智能合约或钱包风险。

什么是定时交易命令?

当前版本的 Flow CLI 包含与 Flow 定时交易交互的命令。定时交易允许智能合约根据网络调度规则安排未来自动执行。加密货币领域的潜在用途包括定期转账、延迟执行合约操作、自动化金融逻辑和基于时间的应用行为。

flow schedule setup
命令可以创建管理账户定时交易所需的管理资源。

其他命令可以列出、检查和取消受支持的定时交易。

定时交易官方文档介绍了设置要求、优先级和命令行为。

安排交易并不能保证经济结果有利,因为资产价格、账户余额、合约状态和网络状况都可能在执行前发生变化。

什么是 Flowser?

Flowser 是可与本地 Flow Emulator 环境配合使用的可视化浏览器。在具备所需组件时,Flow CLI 可使用相应命令启动 Flowser。开发者可以通过界面查看本地账户、合约、区块、交易和事件,无需逐项手动查询。Flowser 可作为命令行的补充,但不能替代自动化测试或源代码审查。本地浏览器显示的结果适用于当前 Emulator 状态,不应与 Mainnet 活动混淆。

什么是 Flow Dev Wallet?

Flow Dev Wallet 是用于测试钱包授权和应用交互的开发工具。在受支持的本地工作流程中,Flow CLI 可启动开发钱包环境。开发者可以使用它模拟登录、账户授权、交易批准和其他钱包行为,以开发去中心化应用。Dev Wallet 并非用于保护有价值的生产资产。生产应用必须集成适当的用户钱包,并遵循安全的身份验证和交易审核实践。

Flow CLI 支持 Flow EVM 吗?

Flow 同时支持 Cadence 智能合约和 Ethereum Virtual Machine 环境,但 Flow CLI 主要是 Flow Cadence 与 Access API 开发模式的官方命令行工具。在 Flow EVM 上运行的 Solidity 应用通常使用兼容 EVM 的 JSON-RPC 工具和 EVM Gateway。

Flow EVM Gateway 官方文档说明,EVM 客户端通过实现 Ethereum JSON-RPC 规范的 Gateway 连接。

Cadence 应用也可以通过 Cadence Owned Accounts 和网络合约与 Flow EVM 交互。开发者应根据应用使用 Cadence、Solidity 还是结合两种执行环境来选择工具。使用 Flow CLI 并不意味着所有 EVM 专用操作都通过同一组命令完成。

Flow CLI 与 Flow SDK 的区别

Flow CLI 是可交互且可编写脚本的终端工具。Flow 软件开发工具包(SDK)是导入应用代码中的编程库。CLI 适用于本地开发、项目配置、手动网络交互、测试和部署自动化。SDK 更适合需要持续与 Flow 通信的后端服务、应用服务器、机器人、钱包、索引器和其他软件。开发团队可以使用 Flow CLI 部署合约,再使用 JavaScript、Go 或移动端 SDK 在应用中与合约交互。这两类工具相辅相成,并非直接替代关系。

Flow CLI 与图形化开发环境的区别

图形化开发环境提供菜单、编辑器、可视化账户工具和其他点击式功能。Flow CLI 提供更易自动化、保存为脚本并在持续集成中复现的命令。图形化工具对新手可能更友好,而 CLI 能为可重复工作流程提供更强控制力和透明度。许多开发者会同时使用两种方式:在集成开发环境中编辑 Cadence,并在内嵌终端中运行 Flow CLI 命令。官方 Cadence 扩展可提供语法支持和开发辅助,而 Flow CLI 负责执行和部署。

Flow CLI 可用于持续集成吗?

Flow CLI 命令可以纳入持续集成和持续部署工作流程。流水线可以安装固定版本的 CLI、检查 Cadence 文件、运行测试、初始化 Emulator、部署测试合约并验证预期交易。自动化 Mainnet 部署所需的控制措施,必须远比自动化测试严格。私钥应保存在安全的机密管理系统中,而不是直接写入流水线文件。生产部署可能需要人工批准、签名发布制品、受保护分支和多名审核者。如果测试、代码检查、部署验证或交易结果检查未达到预期,流水线应停止。团队还应记录每次发布所使用的 Flow CLI 和 Cadence 版本。

Flow CLI 会收集使用数据吗?

Flow CLI 当前默认通过 Mixpanel 收集汇总的命令使用次数。官方文档说明,该使用次数统计系统不会收集命令参数值和标志值。

用户可以运行

flow settings metrics disable
关闭指标收集。

可运行

flow settings metrics enable
重新启用指标收集。

Flow CLI 官方数据收集页面介绍了收集内容及如何更改设置。

对隐私、合规或隔离构建有要求的组织,应在受控环境安装 CLI 前审查遥测行为。

Flow CLI 安全最佳实践

开发者应仅通过官方文档或经验证的版本文件安装 Flow CLI。签署或部署任何交易前,应确认选定的网络。Mainnet 私钥不应以明文形式存放在公开项目文件中。本地开发、测试、合约管理、资金库控制和常规应用操作应使用不同账户和密钥。生产账户应设置适当的密钥权重,避免依赖一台未受保护的开发者笔记本电脑。应核实各网络上的合约导入项和依赖项地址。提交交易前,应检查签名者角色、参数、Gas 限额和目标合约。开发者应检查封存后的交易结果,而不应假定交易提交后就一定成功。将 CLI 版本升级引入生产工作流程前,应先进行测试。存在安全替代授权路径时,应撤销旧的或不再使用的账户密钥。切勿在声称必须输入助记词或私钥才能激活 Flow CLI 的网站中输入这些信息。

Flow CLI 常见错误

连接错误可能表示 Emulator 未运行、Access Node 地址不正确、所选端口不可用,或无法连接网络服务。授权错误可能由私钥、密钥索引、序列号、签名算法、哈希算法或账户地址错误导致。Cadence 合约别名缺失或指向错误网络地址时,可能发生导入错误。Cadence 代码无效、语言版本不兼容、缺少依赖项或账户授权不足,都可能导致部署错误。参数的 Cadence 类型错误,或账户缺少所需资源或权限时,交易可能失败。多个交易几乎同时尝试使用同一 proposer 密钥时,可能发生序列号错误。

开发者应阅读完整错误输出,确认当前网络,并先使用命令的

--help
选项,再修改无关项目设置。

Flow CLI 的常见用途

Flow CLI 可用于创建和配置新的 Cadence 项目。它可以运行用于智能合约开发的本地区块链。它可以创建账户并管理账户密钥。它可以部署和更新 Cadence 合约。它可以执行只读脚本和签名交易。它可以安装合约依赖项并管理网络别名。它可以运行单元测试、集成测试、代码检查和基于 Mainnet 状态的分叉测试。它可以获取区块、交易、账户、集合和事件。它可以支持自动化构建和部署流水线。在调查应用错误时,它还可帮助开发者复现区块链操作。

Flow CLI 的局限性

Flow CLI 不会自动确保智能合约安全。它无法阻止开发者签署有害交易或将代码部署到错误账户。它不能取代专业审计、威胁建模、访问控制设计或运营监控。本地 Emulator 无法完美复现所有公共网络状况。CLI 也不是面向普通消费者的完整钱包界面。它不会提供涵盖所有 Flow 交易的完整历史分析数据库。开发者仍须了解 Cadence、Flow 账户、交易角色、权限、资源存储、依赖项和网络安全。

常见问题

Flow CLI 是什么意思?

Flow CLI 是 Flow Command-Line Interface(Flow 命令行界面)的简称,是用于 Flow 区块链的官方终端开发工具。

Flow CLI 是 Dapper Labs 开发的吗?

Flow 最初由 Dapper Labs 设计和开发;Flow CLI 目前则通过 Onflow 组织作为 Flow 生态的官方开源软件维护。

Flow CLI 是加密货币钱包吗?

不是。Flow CLI 是开发者工具,但可以使用已配置的私钥签署交易并管理 Flow 账户。

Flow CLI 最新版本是什么?

截至 2026 年 7 月 14 日,最新官方版本为 Flow CLI 2.17.4。

Flow CLI 2.17.4 包含哪个 Cadence 版本?

Flow CLI 2.17.4 包含 Cadence 1.10.3。

如何在 macOS 上安装 Flow CLI?

常见方式是通过 Homebrew 运行

brew install flow-cli
。

如何查看 Flow CLI 版本?

在终端运行

flow version
。

如何创建新的 Flow 项目?

运行

flow init
并选择合适的项目模板。

什么是 flow.json?

flow.json
是项目主配置文件,用于定义网络、账户、合约、依赖项和部署目标。

如何启动 Flow Emulator?

在终端运行

flow emulator
。

Flow Emulator 使用真实 FLOW 吗?

不使用。本地 Emulator 使用的开发状态和资产没有 Mainnet 价值。

Flow CLI 可以将合约部署到 Mainnet 吗?

可以。提供正确的网络、账户、密钥和部署配置后,Flow CLI 可将合约部署到 Flow Mainnet。

部署 Flow 项目使用什么命令?

标准项目部署命令是

flow project deploy
,通常还应明确指定网络选项。

Flow CLI 可以更新智能合约吗?

可以,但必须提交经过授权且符合 Cadence 和 Flow 网络规则的合约更新交易。

如何运行 Cadence 测试?

在已配置的 Flow 项目中运行

flow test
。

什么是 Flow 分叉测试?

分叉测试会基于复制的 Mainnet 或 Testnet 状态运行本地环境,而不会更改公共区块链。

Flow CLI 支持创建账户吗?

支持。Flow CLI 可以创建和获取 Flow 账户,并管理其密钥。

Flow CLI 可以读取区块链数据吗?

可以。它能获取 Flow Access Nodes 提供的区块、账户、交易、事件、集合和其他数据。

Flow 脚本和交易有什么区别?

脚本读取状态而不更改区块链;交易则需要签名,并且可以修改区块链状态。

Flow CLI 可以管理合约依赖项吗?

可以。依赖管理器可安装、列出并追踪项目使用的外部 Cadence 合约。

Flow CLI 会收集遥测数据吗?

Flow CLI 当前默认收集汇总的命令使用次数,用户可以运行

flow settings metrics disable
关闭该功能。

私钥应该存储在 flow.json 中吗?

生产私钥不应以未加密的明文存放在共享或公开的

flow.json
文件中。

Flow CLI 可以用于自动化部署吗?

可以,但生产部署应使用固定版本、受保护的机密信息、审核控制并明确核实网络。

Flow CLI 支持 Flow Testnet 吗?

支持。Testnet 是 Flow CLI 网络配置支持的标准环境之一。

Flow CLI 用于 Solidity 开发吗?

Flow CLI 主要支持 Cadence 和 Flow Access API 工作流程;Flow EVM 上的 Solidity 应用通常使用兼容 EVM 的 JSON-RPC 工具。

Flow CLI 是开源的吗?

是。Flow CLI 源代码依据 Apache 2.0 许可证公开提供。

使用 Flow CLI 会导致加密货币损失吗?

会。密钥、网络、地址、合约代码或交易参数错误,都可能造成 Mainnet 上不可逆的损失。

结语

Flow CLI 是用于在 Flow 区块链上构建应用并与其交互的官方命令行开发工具。Flow CLI 与 Dapper Labs 的联系源于 Dapper Labs 最初设计和开发 Flow;如今,CLI 已作为 Flow 生态的开源软件运行。该工具整合了项目初始化、模拟器访问、Cadence 测试、账户管理、密钥操作、合约部署、依赖管理、交易提交和区块链查询。

其

flow.json
配置系统可帮助开发者在 Emulator、Testnet、Mainnet 和本地分叉网络之间管理一致的环境。

Flow CLI 可以让区块链开发更易重复执行,但无法消除密钥不安全、合约缺陷、部署目标错误、恶意依赖项或不可逆交易带来的风险。开发者应使用官方版本、保护签名凭证、在多个环境中测试、检查交易结果,并在部署到 Flow Mainnet 前采用严格的审核控制。

您可能也喜欢

反恐融资(CTF)

反恐怖主义融资(CTF)是指旨在发现、预防和打击恐怖主义活动资金支持的法律、法规和活动。这包括监控和监管资金流动、在金融机构内部实施合规计划,以及执行旨在遏制恐怖主义融资的国际制裁和法规。 反恐融资在各领域的重要性 反恐融资在包括银行业、科技和国际贸易在内的各个领域都至关重要。在金融领域,强而有力的反恐融资措施可确保银行和其他金融机构不会被恐怖组织利用为其活动提供资金。这不仅有助于维护金融体系的完
2025/12/23 18:42

框架

在专业情境中,「框架」指的是一套结构化的指南、工具或实践,旨在支援专案、应用程式或系统的开发和实施。它提供了一种标准化的方法来解决复杂问题或实现特定目标,通常包含可根据具体需求进行调整和扩展的预先建置元件。 框架的关键特征 框架在软体开发、专案管理和数位行销等各个领域都至关重要。例如,在软体开发中,Angular、React 和 Django 等框架提供了开发人员用来高效建立高品质应用程式的程式库
2025/12/23 18:42

波动性爆发

「波动性爆发」是指金融市场、资产或指数的波动性突然显著增加,通常由不可预见的事件或市场情绪变化所驱动。这种突如其来的增加会导致价格大幅波动和交易量激增,从而影响投资者和交易者的风险和机会。 了解波动性爆发 波动性是衡量特定证券或市场指数收益分散程度的统计指标,显示资产价格在特定期间内的波动幅度。当这种波动超出正常水平时,就会发生波动性爆发,这通常是对意外新闻或经济事件的反应。这些事件可能包括地缘政
2025/12/23 18:42
回调还是机会?
回调还是机会?回调还是机会?
一边爆仓,一边扫货——24亿ETF资金在赌什么?