npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@inforge/migrations-tools-cli

v1.7.1

Published

Inforge's interactive CLI for side-effect-free Salesforce data operations by managing automation

Readme

Inforge Migrations CLI (imigrate)

Inforge's interactive CLI tool that enables side-effect-free Salesforce data operations by managing validation rules, flows, and triggers.

Features

  • Feature-grouped menu - Organized by Automations, Backups, and Logs
  • Object search/filter - Instantly find objects by typing instead of scrolling
  • Individual automation control - Toggle specific automations with granular preview
  • Deactivate automation (validation rules, flows, triggers) for clean data operations
  • Smart restore with automatic state detection
  • Atomic operations with automatic rollback on failure
  • Local backups organized by org/object/type with operation type labels
  • Managed package awareness - skip managed components gracefully
  • Full audit logging for compliance
  • Beautiful interactive UI powered by @clack/prompts

Installation

# Install globally
npm install -g @inforge/migrations-tools-cli

# Or use npx (no installation required)
npx @inforge/migrations-tools-cli

Prerequisites

  • Node.js 18+
  • Salesforce CLI (sf or sfdx) with at least one authenticated org
  • Authenticated org: sf org login web -a my-org

Note: You'll select your org once when starting the CLI, and it will be used for all operations until you exit.

Usage

Run the CLI:

imigrate

Or with npx:

npx @inforge/migrations-tools-cli

Deactivate Automation

  1. Select "Automations" > "Deactivate all"
  2. Choose org, object (with search/filter), and automation type
  3. Preview what will be affected
  4. Confirm and execute
  5. Backup saved automatically

Manage Automations Individually

  1. Select "Automations" > "Manage individually"
  2. Choose org and object (with search/filter)
  3. Choose automation type
  4. Select specific items to toggle with checkboxes
  5. Preview changes (activations and deactivations)
  6. Confirm and execute
  7. Backup saved automatically as "individual" operation

Restore from Backup

  1. Select "Automations" > "Restore"
  2. Choose org, object (with search/filter), and automation type
  3. Select backup from list (labels show "Bulk deactivate" or "Individual changes")
  4. Preview smart detection (only restore what's needed)
  5. Confirm and execute

Manage Backups

Select "Backups" to view all backups organized by org/object/type.

View Logs

Select "Logs" to see recent operations with status, timestamps, and details.

Architecture

Backup Structure

.backups/
├── my-org/
│   ├── Account/
│   │   ├── validation-rules/
│   │   │   ├── 2026-02-15_14-30-00-123.json
│   │   │   └── 2026-02-15_16-45-30-456.json
│   │   ├── flows/
│   │   │   └── 2026-02-15_15-00-00-789.json
│   │   └── triggers/
│   │       └── 2026-02-15_15-30-00-012.json
│   └── Contact/
│       └── validation-rules/
│           └── 2026-02-15_14-35-00-345.json

Operation Logs

All operations are logged to .logs/operations.log (JSON format, one per line).

Debugging

Debug Logs

When errors occur, detailed error information including stack traces and API request/response data is automatically logged to .logs/debug.log. The error message will show you the exact path to the debug log file.

Example error message:

Failed to apply changes: The requested resource does not exist

Error details logged to: /path/to/your/project/.logs/debug.log

Enable Verbose Debug Logging

For more detailed troubleshooting, enable debug mode to see all API calls and internal operations:

DEBUG=true imigrate

This will log detailed information about:

  • API queries and their results
  • Request/response payloads
  • Internal state changes
  • Detailed error contexts

Debug logs are written in JSON format with timestamps and structured context for easy analysis.

Safety Features

Atomic Operations

All deactivation and restore operations are all-or-nothing:

  • If any error occurs, changes are automatically rolled back
  • You'll never be left in a partial state

Smart Restore

Before restoring, the tool checks the current org state:

  • Only restores items that actually need it
  • Skips items that are already in the desired state
  • Shows a preview of exactly what will change

Managed Package Awareness

The tool identifies managed package components:

  • Shows managed items in preview with counts
  • Skips them during deactivation (can't be modified)
  • Clearly explains why they're skipped

Preview Before Action

Every operation shows a detailed preview:

  • What will be affected
  • What will be skipped (managed packages)
  • Exact counts

You must confirm before any changes are made.

Development

Setup

git clone <repo>
cd migrations-cli
npm install

Run in dev mode

npm run dev

Build

npm run build

Test

npm test

Supported Automation Types

V1 (Current)

  • Validation Rules
  • Flows
  • Triggers

Future

  • Process Builder
  • Workflow Rules
  • Duplicate Rules
  • Matching Rules

Contributing

Contributions welcome! Please open an issue or PR.

License

MIT