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

@provision-ai/cli

v0.6.1

Published

Turn workflows into reusable AI skills — by Provision AI. Record your screen or describe a task. Works with Claude Code, Cursor, Codex, and OpenClaw.

Readme

Provision CLI

npm version License: MIT

Turn your workflows into reusable AI skills. Record your screen or describe a task — the CLI generates structured skills that any AI tool can follow.

The Problem

Teams are increasingly using AI tools like Claude Code, Codex, and OpenClaw. A common pattern is emerging:

  • One person figures out a powerful workflow
  • Others struggle to replicate it
  • Knowledge gets shared via Slack messages, docs, or copied prompts
  • Nothing is standardized or reusable

Even when teams try to create "skills," it's hard — writing structured skill files manually, defining triggers and steps, sharing via GitHub or zip files, installing across different tools.

There is no simple way to capture how someone works and make it reusable across a team — or usable by AI agents.

What This CLI Does

The Provision CLI solves this. Two ways to create skills:

  1. Record your screen doing the task → the CLI analyzes the video and extracts every step, URL, click, and decision — including the tacit knowledge you'd never think to write down
  2. Describe the workflow in plain text → the CLI generates a structured skill definition

Skills install into Claude Code, Cursor, Codex, and OpenClaw agents. Create once, use everywhere.

What is Provision AI?

Provision AI is the platform behind this CLI. While the CLI works standalone with a free Gemini API key, Provision adds the team and agent layers:

Team Skill Library

  • Publish skills to a private team registry
  • Version control — track changes, iterate together
  • Anyone on the team can install any skill into their own tools
  • Web UI for non-developers to create skills without a terminal

Cloud Agents

  • Deploy AI agents that run your team's skills autonomously — 24/7
  • Agents live in Slack, Telegram, and Discord
  • Full browser access for web workflows
  • Managed infrastructure — no servers to configure

For companies going AI-native, Provision is where your AI workforce lives. Your team builds the skills. Your agents run them.

The CLI is free and open source. Team features and agents require a Provision account.

Quick Start

# No account needed — just a free Gemini API key
GEMINI_API_KEY=your-key npx @provision-ai/cli teach -v my-workflow.mp4
GEMINI_API_KEY=your-key npx @provision-ai/cli teach -d "Search LinkedIn for leads"

# With a Provision account (for team sharing)
npx @provision-ai/cli login
npx @provision-ai/cli teach -v my-workflow.mp4
npx @provision-ai/cli publish linkedin-leads

Installation

Option 1: Use directly with npx (recommended)

No installation required — just prefix commands with npx @provision-ai/cli:

npx @provision-ai/cli teach -d "Monitor Hacker News for AI mentions"

Option 2: Install globally

npm install -g @provision-ai/cli

Requires Node.js 18 or later.

Offline Mode (No Account Needed)

Use the CLI without a Provision account — just set your Gemini API key:

# Video-to-skill
GEMINI_API_KEY=your-key npx @provision-ai/cli teach -v demo.mp4

# Text-to-skill
GEMINI_API_KEY=your-key npx @provision-ai/cli teach -d "Describe your workflow"

Get a free Gemini API key at aistudio.google.com/apikey.

Skills created offline are saved locally. To share with your team, log in and publish:

npx @provision-ai/cli login
npx @provision-ai/cli publish my-skill

Authentication (For Team Features)

Browser Login (default)

provision login

Opens your browser to authorize the CLI with your Provision account. Once you click "Authorize," the CLI is logged in automatically.

Manual Token Entry

For CI/CD or environments without a browser:

provision login --token

Generate a token at provision.ai/settings/api.

Verify

provision whoami

Log Out

provision logout

Commands

All commands below use provision (globally installed). You can also use npx @provision-ai/cli instead.

provision teach

Create a new skill by describing what it should do.

# Interactive mode (opens your editor)
provision teach

# From a text description
provision teach -d "Search LinkedIn for dental offices in Austin, TX and extract their name, phone, and website"

# With a specific name
provision teach -d "Monitor Hacker News for AI mentions" -n hn-monitor

# From a screen recording
provision teach -v demo.mp4

Options:

| Flag | Description | |------|-------------| | -d, --describe <text> | Describe the workflow in plain text | | -v, --video <path> | Learn from a screen recording (MP4, WebM, MOV) | | -n, --name <name> | Set the skill name (lowercase, hyphens) |

When logged in, the CLI uses the Provision API. In offline mode (with your own API keys), everything runs locally.

After generation, you can choose to:

  • Publish to your team on Provision AI (requires login)
  • Install to Claude Code (~/.claude/skills/)
  • Install to OpenClaw (~/.openclaw/skills/)
  • Install to Cursor (.cursor/skills/)
  • Install to Codex (.codex/skills/)
  • Keep it local only (~/.provision/skills/)

Teaching from Video

Record your screen showing the workflow you want the agent to learn:

provision teach -v my-workflow.mp4

Supported formats: MP4, WebM, QuickTime (MOV). Max file size: 100MB.

The AI extracts every URL, click, filter, and form input — not just a summary. Add a voice over to capture your reasoning and preferences. For example:

I think your workflow is:

  1. Navigate to linkedin.com/sales/home. If not logged in, sign in.
  2. Click 'Lead filters' to open the search interface.
  3. Click 'Company Headcount' filter, select '11-50'.
  4. Click 'Current Job Title', type 'VP of Sales'.
  5. Click 'Geography' filter, select 'United States'.
  ...+27 more steps

Is this correct? [Confirm] [Edit] [Cancel]

Tips for good recordings:

  • Add a voice over explaining what you're doing and why
  • Show the full flow from start to finish
  • Don't worry about mistakes — the AI understands your intent
  • Longer videos produce more detailed skills

provision skills list

List all skills saved locally.

provision skills list

provision skills info <name>

Show details about a local skill — steps, tools, required env vars.

provision skills info linkedin-leads

provision skills edit <name>

Edit an existing skill. Three modes:

# Modify with natural language (AI applies the change)
provision skills edit linkedin-leads -d "Also extract the company's tech stack from their careers page"

# Re-teach from a new video
provision skills edit linkedin-leads -v updated-workflow.mp4

# Open SKILL.md in your editor ($EDITOR or nano)
provision skills edit linkedin-leads -e

Options:

| Flag | Description | |------|-------------| | -d, --describe <prompt> | Modify the skill with natural language instructions | | -v, --video <path> | Re-teach from a new screen recording | | -e, --editor | Open SKILL.md in your text editor |

Each edit automatically bumps the patch version (e.g., 1.0.0 → 1.0.1).


provision publish <name>

Publish a local skill to your team's library on Provision.

provision publish linkedin-leads

If the skill already exists on the server, the version is automatically bumped:

Updating linkedin-leads v1.0.0 → v1.0.1
✓ Published linkedin-leads to Provision
  View at: https://provision.ai/skills/linkedin-leads

Options:

| Flag | Description | |------|-------------| | -c, --changelog <message> | Add a changelog message for this version |

Every publish creates a version history record on the server for auditing.


provision install <name>

Install a skill from the Provision marketplace to your local tools. Shows a multi-select menu to choose where to install.

provision install linkedin-leads
? Where would you like to install this skill?
  ◻ Claude Code (~/.claude/skills/)
  ◻ OpenClaw local (~/.openclaw/skills/)
  ◻ Cursor (.cursor/skills/)
  ◻ Codex (.codex/skills/)

Each target gets a proper skill folder with SKILL.md and README.md.


provision pull <name>

Download a skill to ~/.provision/skills/ without installing to any tool.

provision pull linkedin-leads

Saves to ~/.provision/skills/<name>/.


provision deploy <skill>

Deploy a skill to a running Provision agent. The skill is pushed to the agent's server and available immediately.

# Interactive agent selection
provision deploy linkedin-leads

# Specify agent directly
provision deploy linkedin-leads -a agent_id_here

Options:

| Flag | Description | |------|-------------| | -a, --agent <id> | Agent ID to deploy to (skips selection prompt) |


provision agents

List your Provision agents and their status.

provision agents

Example Workflow

# 1. Log in
provision login

# 2. Create a skill
provision teach -d "Search LinkedIn Sales Navigator for dental offices in Austin. Extract practice name, phone, website, and a note on why they need our product."

# 3. Review the generated steps, confirm, and name it
# → Skill saved to ~/.provision/skills/dental-leads/

# 4. Publish to your team
provision publish dental-leads

# 5. Install to Claude Code
provision install dental-leads

# 6. Or deploy to a running Provision agent
provision deploy dental-leads

# 7. Later, iterate on the skill
provision skills edit dental-leads -d "Also check if they have a website form for demo requests"

# 8. Re-publish the updated version
provision publish dental-leads -c "Added website form check"

Skill Structure

Skills are saved to ~/.provision/skills/<name>/ with:

| File | Purpose | |------|---------| | SKILL.md | Instructions the agent reads and follows (OpenClaw skill standard) | | skill.json | Metadata: name, version, steps, required env vars, tools | | README.md | Human-readable documentation |

Configuration

The CLI stores config in ~/.provision/:

| File | Purpose | |------|---------| | config.json | API token and settings | | skills/ | Local skill files |

To point to a different API (self-hosted or development):

# Edit ~/.provision/config.json and set "apiUrl"

Development

git clone https://github.com/provision-org/provision-cli.git
cd provision-cli
npm install
node bin/provision.js --help

Links

License

MIT — see LICENSE for details.