← Back to Blog

How Agents Discover and Install Packs via CLI

· 6 min read · 1,279 words
aicliagent-toolsmarketplaceagent-pack-installation

Your agent is halfway through a task and realizes it needs a capability it doesn't have. A sales automation workflow. A data enrichment pipeline. A Slack integration.

What happens next?

Today: the agent stops. A human searches Google, reads README files, evaluates options, copy-pastes configuration, debugs broken dependencies, and finally — maybe — gets the thing working. The agent has been waiting for 45 minutes.

Tomorrow: packdrop search "sales automation" --compatible claude-code --json. Three seconds. Results in structured JSON. The agent picks the best match, checks the manifest, installs it, and gets back to work. No human needed.

This is the discovery-to-installation flow we built into PackDrop's CLI. Here's how every step works.

Discovery: Finding What You Need

Everything starts with packdrop search. It's the front door for agents — full-text search powered by PostgreSQL's tsvector with weighted fields (pack name ranks higher than description).

bash
packdrop search "sales automation" --category automation --json
json
[
  {
    "id": 7,
    "name": "Pipeline Automator",
    "slug": "pipeline-automator",
    "type": "workflow",
    "category": "automation",
    "tagline": "Build and execute multi-step data pipelines with automatic error recovery",
    "price": 19.99,
    "avg_rating": 4.6,
    "install_count": 142,
    "version": "3.0.1"
  },
  {
    "id": 12,
    "name": "Sales CRM Connector",
    "slug": "sales-crm-connector",
    "type": "tool",
    "category": "automation",
    "tagline": "Sync leads, deals, and contacts across CRM platforms",
    "price": 14.99,
    "avg_rating": 4.3,
    "install_count": 89,
    "version": "1.2.0"
  }
]

Notice the --json flag. This is on every CLI command. Humans get colored terminal output with tables and formatting. Agents get machine-readable JSON they can parse and act on. Same command, two audiences.

Filtering options let agents narrow results fast:

An agent with a spend limit can search for --maxPrice 1000 and only see packs it can actually afford. Budget-aware discovery — no wasted API calls evaluating packs it can't buy.

Evaluation: Checking Before You Commit

Search gives you the catalog. packdrop view gives you the full picture:

bash
packdrop view pipeline-automator --json
json
{
  "name": "Pipeline Automator",
  "slug": "pipeline-automator",
  "version": "3.0.1",
  "type": "workflow",
  "category": "automation",
  "description": "Build and execute multi-step data pipelines with automatic error recovery",
  "price": 19.99,
  "avg_rating": 4.6,
  "review_count": 23,
  "install_count": 142,
  "manifest": {
    "entry": "pipeline.js",
    "capabilities": [
      "pipeline.create",
      "pipeline.execute",
      "pipeline.checkpoint",
      "pipeline.retry"
    ],
    "requirements": [],
    "compatibility": ["claude-code", "cli-agents", "api-agents"],
    "permissions": ["network", "filesystem.read", "filesystem.write"],
    "assets": [
      { "path": "pipeline.js", "type": "tool" },
      { "path": "connectors/", "type": "config" },
      { "path": "prompts/orchestration.md", "type": "prompt" }
    ],
    "install": {
      "method": "copy",
      "target": ".packdrop/packs/pipeline-automator"
    }
  },
  "seller": {
    "username": "datapipeco",
    "display_name": "DataPipe Co"
  }
}

The manifest is the key. An agent processing this JSON can answer every question it needs:

Compare this to "reading a GitHub README and hoping the install instructions are accurate." The manifest is a machine-readable contract. Every field is structured. Every decision is automatable.

Building with AI agents? Get weekly insights on agentic tooling.
You're in ✓

Installation: One Command, Done

Once an agent decides on a pack, installation is one command:

bash
packdrop install pipeline-automator

What happens behind the scenes:

  1. Entitlement check — Does this user own the pack (purchased or free)? If not, the CLI returns a clear error with a link to buy it
  2. Asset download — Pack files are fetched and written to the install target directory (.packdrop/packs//)
  3. Install confirmation — The CLI outputs what was installed, where it went, and what capabilities are now available

For paid packs, the agent needs to purchase first:

bash
packdrop buy pipeline-automator

This creates a Stripe checkout session and returns a payment URL. After payment completes, the pack is automatically added to the buyer's library and available for installation.

Free packs skip the purchase step entirely — packdrop install handles everything.

The Full Loop

Here's a realistic end-to-end CLI session. An agent needs a data pipeline capability. Watch the entire flow — search, evaluate, buy, install, verify:

bash
# Set authentication (agent uses a scoped API key)
export PACKDROP_TOKEN="pk_live_a1b2c3d4..."

# 1. Search for what we need
packdrop search "data pipeline" --category automation --json
# → Returns array of matching packs

# 2. View the top result
packdrop view pipeline-automator --json
# → Returns full manifest, reviews, pricing

# 3. Purchase it (paid pack)
packdrop buy pipeline-automator
# → Returns: { "checkout_url": "https://checkout.stripe.com/...", "message": "Complete payment to install" }

# 4. After payment — install from library
packdrop install pipeline-automator
# → Downloads assets to .packdrop/packs/pipeline-automator/

# 5. Verify it's in the library
packdrop library --json
json
[
  {
    "slug": "pipeline-automator",
    "name": "Pipeline Automator",
    "version": "3.0.1",
    "type": "workflow",
    "installed_at": "2026-04-08T14:30:00.000Z",
    "capabilities": [
      "pipeline.create",
      "pipeline.execute",
      "pipeline.checkpoint",
      "pipeline.retry"
    ]
  }
]

Five commands. Structured JSON at every step. The agent made the decision, evaluated the option, completed the purchase, and installed the capability. No human in the loop.

For free packs, it's even simpler — steps 3 and 4 collapse into a single packdrop install.

Why CLI-First Matters

Most marketplaces start with a website. We started with a terminal. Here's why.

Agents don't have browsers. An AI agent running inside Claude Code, a CI pipeline, or a headless server can't navigate a web catalog. It can't click "Add to Cart." It can't fill out checkout forms. The CLI is the native interface for programmatic consumers.

JSON output is an API. Every --json response is a stable, parseable contract. An agent can pipe packdrop search output into jq, filter by price, sort by rating, and select the best match in a single shell pipeline:

bash
packdrop search "email" --json \
  | jq '[.[] | select(.price < 15)] | sort_by(.avg_rating) | reverse | .[0].slug' -r \
  | xargs packdrop view --json

That's agent-native software discovery. One line. No browser. No human.

Authentication is environment-native. PACKDROP_TOKEN as an env var means zero config files, zero interactive prompts. It works in CI, works in Docker, works in agent sandboxes. The agent's runtime sets the variable and every command just works.

Error handling is structured. When something fails, the agent gets machine-readable error responses — not a vague "something went wrong" web page:

json
{
  "error": "Pack not in library",
  "slug": "pipeline-automator",
  "suggestion": "Run 'packdrop buy pipeline-automator' first"
}

The agent can parse the error, understand the issue, and take corrective action autonomously. That's the difference between "broken" and "self-healing."

The Bet

Software discovery is about to become an agent problem, not a human problem.

As AI agents get more autonomous — choosing their own tools, evaluating options, making purchase decisions — they need infrastructure built for how they work. Not web catalogs designed for humans who click buttons. CLI commands that return JSON. Structured manifests that declare capabilities. Scoped API keys with spend limits.

The agent that can discover, evaluate, and install a new capability in three seconds will outperform the one waiting for a human to browse a marketplace.

That's what we built. packdrop search. packdrop view. packdrop install. The rest is up to the agents.


PackDrop is the agent-first marketplace for AI capability packs. Try the CLI: npm install -g packdrop. Browse the catalog at packdrop.polsia.app.

Get notified when new packs drop

New AI agent skill packs, build logs, and insights. No spam, unsubscribe anytime.

Ready to try it? Create a free account →