Esta página se muestra en inglés. Una traducción al español está en curso.
ScriptsMay 12, 2026·3 min de lectura

Oclif — Open CLI Framework for Building TypeScript Command-Line Tools

A framework by Salesforce for building extensible CLI applications in TypeScript with plugins, auto-generated help, and argument parsing.

Listo para agents

Staging seguro para este activo

Este activo primero queda en staging. El prompt copiado pide inspeccionar los archivos staged antes de activar scripts, config MCP o config global.

Stage only · 17/100Política: staging
Superficie agent
Cualquier agent MCP/CLI
Tipo
CLI Tool
Instalación
Stage only
Confianza
Confianza: Established
Entrada
Oclif
Comando de staging seguro
npx -y tokrepo@latest install 4b049ef8-4dfd-11f1-9bc6-00163e2b0d79 --target codex

Primero deja archivos en staging; la activación requiere revisar el README y el plan staged.

Introduction

Oclif (Open CLI Framework) is a TypeScript-first framework for building command-line tools. Created by Salesforce and used to power the Heroku CLI and Salesforce CLI, it provides a structured way to define commands, flags, arguments, and plugins for CLIs of any size.

What Oclif Does

  • Scaffolds new CLI projects with a single command using the generator
  • Provides a class-based command structure with typed flags and arguments
  • Auto-generates help text, man pages, and README documentation from command metadata
  • Supports a plugin system that lets users extend your CLI with third-party packages
  • Handles command discovery, lifecycle hooks, and error reporting out of the box

Architecture Overview

Oclif organizes a CLI as a collection of command classes, each defining its flags, arguments, and run method. At startup, the framework discovers commands from the file system or installed plugin packages and builds a command tree. Flag and argument parsing uses a strict, typed approach that validates input before the command runs. Plugins are npm packages that expose additional commands and hooks, loaded dynamically at runtime.

Self-Hosting & Configuration

  • Generate a new project: npx oclif generate my-cli
  • Define commands as TypeScript classes in the src/commands/ directory
  • Configure the CLI name, version, and plugins in package.json under the oclif key
  • Distribute via npm or build standalone installers for macOS, Windows, and Linux
  • Add plugins by listing them in the oclif.plugins array or let users install them dynamically

Key Features

  • TypeScript-first with full type inference for flags, arguments, and configuration
  • Plugin architecture powering large-scale CLIs like Heroku CLI and Salesforce CLI
  • Auto-generated help output formatted for terminal with color and layout
  • Built-in testing utilities for unit and integration testing commands
  • Standalone packaging to create single-binary installers without requiring Node.js

Comparison with Similar Tools

  • Commander.js — lightweight flag parser; Oclif adds plugins, scaffolding, and auto-generated docs
  • Yargs — flexible argument parsing; Oclif provides more structure with classes and lifecycle hooks
  • Cobra (Go) — similar command framework for Go; Oclif is the TypeScript equivalent
  • Clipanion — Yarn's CLI engine; Oclif has a larger ecosystem and standalone packaging

FAQ

Q: Can I use Oclif with plain JavaScript? A: Yes, though TypeScript is recommended. The generator scaffolds TypeScript by default.

Q: How do plugins work? A: Plugins are npm packages that export Oclif commands. Users install them with my-cli plugins install plugin-name.

Q: Can I build standalone executables? A: Yes. Oclif includes a pack command that creates tarballs and platform-specific installers.

Q: What CLIs are built with Oclif? A: Heroku CLI, Salesforce CLI (sf), Shopify CLI, and Twilio CLI are all built on Oclif.

Sources

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados