核心用法
Salesforce CLI(sf)是 Salesforce 官方推出的命令行工具,提供对 Salesforce 平台的完整编程接口。核心能力覆盖:
- 数据查询:SOQL 标准查询、SOSL 跨对象全文搜索、Bulk API 2.0 批量导出/导入(支持百万级记录)
- 记录操作:单条记录的创建、更新、删除(需用户确认),以及基于外部 ID 的批量 upsert
- 开发运维:Apex 代码执行与测试、元数据部署/检索、原始 REST/GraphQL API 调用
- 组织管理:多 org 认证与切换、JWT/浏览器/Web 等多种登录方式
显著优点
1. 官方背书:由 Salesforce 团队直接维护,API 同步更新,功能覆盖全面
2. 企业级批量能力:Bulk API 2.0 支持异步处理超大数据集,内置作业恢复机制
3. 开发工作流整合:与 Salesforce DX 项目结构、CI/CD 流水线深度集成
4. 灵活认证:支持交互式浏览器登录、JWT 无人值守、SFDX URL 共享等多种场景
5. 结构化输出:--json 标志确保所有命令返回可解析的标准化数据
潜在缺点与局限
- 学习曲线陡峭:需掌握 SOQL/SOSL 语法、Salesforce 对象模型及元数据概念
- Bulk API 功能裁剪:Bulk 2.0 不支持聚合函数(COUNT/SUM/AVG),需回退到标准查询
- 权限敏感:
--verbose模式可能暴露 refresh token,需严格管控 - 网络依赖:所有操作需实时连接 Salesforce 云端,离线不可用
- 数据操作风险:删除/更新命令直接生效,虽有 guardrails 但仍需人工二次确认
适合人群
- Salesforce 管理员与开发者(Apex/LWC 开发)
- 数据工程师(CRM 数据迁移、ETL 集成)
- DevOps 工程师(元数据版本控制、自动化部署)
- 需批量处理客户数据的企业 IT 团队
常规风险
- 数据误删:
sf data delete与sf data delete bulk不可逆,操作前必须确认记录范围 - 认证泄露:JWT 私钥、SFDX auth URL 含长期有效令牌,需加密存储
- API 限流:Bulk API 与标准 API 均有每日调用上限,超量会触发平台限制
- 生产环境误操作:默认 org 配置错误可能导致开发脚本作用于生产数据