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

varpet

v0.1.1

Published

Autonomous bug-fixing agent — reads Jira tickets, analyzes repos, applies minimal patches, creates PRs

Readme

varpet

Autonomous bug-fixing agent. Reads Jira tickets, analyzes repositories, applies minimal patches, and creates pull requests.

Installation

npm install -g varpet

Quick Start

# Fix a bug from a Jira ticket
varpet fix --jira PROJ-123 --repo .

# Fix with a specific base branch
varpet fix --jira PROJ-123 --repo . --base develop

# Dry run (simulate without making changes)
varpet fix --jira PROJ-123 --repo . --dry-run

# Resume a previous run
varpet resume --run-id <uuid>

# Check status of a run
varpet status --run-id <uuid>

Configuration

Varpet requires environment variables for connecting to external services. Create a .env file in your project root or export them in your shell:

Required

# Jira (Cloud: use email + API token, Server: use PAT)
JIRA_URL=https://your-org.atlassian.net
[email protected]
JIRA_API_TOKEN=your-jira-api-token

# GitHub
GITHUB_TOKEN=your-github-token

# At least one LLM provider key
ANTHROPIC_API_KEY=your-key
# or
OPENAI_API_KEY=your-key
# or
GEMINI_API_KEY=your-key

Optional

# Model configuration (defaults shown)
VARPET_REASONING_MODEL=anthropic/claude-sonnet-4-20250514
VARPET_PATCHING_MODEL=anthropic/claude-sonnet-4-20250514
VARPET_MAX_ITERATIONS=5
VARPET_CONFIDENCE_THRESHOLD=0.7
VARPET_LOG_LEVEL=INFO

Commands

varpet fix

Fix a bug described in a Jira ticket.

| Option | Short | Default | Description | |----------------------|-------|---------|------------------------------------------| | --jira | -j | required | Jira issue key (e.g., PROJ-123) | | --repo | -r | . | Path to repository (or URL to clone) | | --base | -b | main | Base branch to create fix branch from | | --dry-run | | false | Simulate without modifying files | | --max-iterations | -n | 5 | Max fix/validate iterations | | --model | -m | | Override reasoning model | | --verbose | | false | Enable debug logging |

varpet resume

Resume a previous run from its saved state.

| Option | Short | Default | Description | |-------------|-------|---------|------------------------| | --run-id | | required | Run ID to resume | | --repo | -r | . | Path to repository | | --verbose | | false | Enable debug logging |

varpet status

Show the status of a previous run.

| Option | Short | Default | Description | |------------|-------|---------|------------------------| | --run-id | | required | Run ID to check | | --repo | -r | . | Path to repository |

How It Works

  1. Fetch Jira - Reads the bug ticket and extracts signals (stack traces, error messages)
  2. Prepare Repo - Clones/verifies the repository and creates a work branch
  3. Build Index - Builds an AST + embedding index of the codebase
  4. Retrieve Context - Finds relevant code using ripgrep + semantic search
  5. Investigate - LLM analyzes root cause, generates hypotheses
  6. Plan Patch - LLM creates a minimal patch plan
  7. Apply Patch - Applies changes with fallback strategies
  8. Generate Tests - LLM writes a regression test
  9. Validate - Runs tests, computes confidence score
  10. Create PR - Commits, pushes, creates GitHub PR (or retries on failure)

Supported Platforms

| Platform | Architecture | |----------------------|-------------| | macOS | ARM64 (Apple Silicon) | | macOS | x64 (Intel) | | Linux | x64 | | Windows | x64 |

License

Apache-2.0