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

artbot

v0.4.0

Published

CLI for running ArtBot market research locally.

Readme

artbot

Local-first CLI for ArtBot art-market research, source discovery, evidence capture, and valuation support.

Install

npm install -g artbot
artbot --help

For a one-off check:

npx artbot@latest --help

The npm package includes the CLI plus bundled local API and worker runtime. No hosted ArtBot service is required. Local state is stored under ~/.artbot by default.

Requirements

  • Node.js 22+
  • An OpenAI-compatible model endpoint for model-backed extraction/setup paths
  • Playwright Chromium for auth capture and browser verification flows

Fast Start

artbot backend start
artbot backend status
artbot research artist --artist "Burhan Dogancay" --preview-only
artbot research artist --artist "Burhan Dogancay" --wait

Optional guided onboarding:

artbot setup

artbot setup can configure local LM Studio, NVIDIA, or another OpenAI-compatible endpoint. Plan generation can take 45-60 seconds on a cold start.

Commands

Bare artbot opens the interactive TUI in an interactive terminal. Use explicit subcommands for automation.

# Backend and health
artbot doctor
artbot backend start
artbot backend status
artbot backend stop

# Research
artbot research artist --artist "Fikret Mualla" --preview-only
artbot research artist --artist "Fikret Mualla" --wait
artbot research work --artist "Bedri Rahmi Eyuboglu" --title "Mosaic" --wait

# Runs and reports
artbot runs list --limit 20
artbot runs show --run-id <id>
artbot runs watch --run-id <id> --interval 2
artbot runs deep-research --run-id <id>
artbot runs deep-research --run-id <id> --web

# Storage
artbot runs pin --run-id <id>
artbot runs unpin --run-id <id>
artbot storage
artbot cleanup --dry-run

# Debug/review
artbot replay attempt --run-id <id>
artbot review queue --run-id <id>
artbot graph explain --run-id <id> --cluster-id <cluster-id>
artbot canaries run

Global machine-output options:

artbot --json runs list
artbot --output-format stream-json runs watch --run-id <id>

Set ARTBOT_NO_TUI=1 or pass --no-tui when an automation wrapper must not open interactive prompts.

Custom Source Websites

Add operator-controlled websites to artbot.sources.json:

artbot sources list --json
artbot sources validate
artbot sources add \
  --name "Example Auction Archive" \
  --url "https://example.com" \
  --search-template "https://example.com/search?q={query}" \
  --access public \
  --source-class auction_house
artbot sources remove --id example-auction-archive

Config path resolution:

  1. ARTBOT_SOURCES_PATH
  2. ARTBOT_HOME/artbot.sources.json
  3. INIT_CWD/artbot.sources.json
  4. ./artbot.sources.json

Supported access modes:

  • public: anonymous public access first.
  • auth: source remains visible as auth_required until a matching session exists.
  • licensed: requires --allow-licensed and matching --licensed-integrations.

Example:

{
  "version": 1,
  "sources": [
    {
      "id": "member-price-db",
      "name": "Member Price DB",
      "url": "https://member.example",
      "searchTemplate": "https://member.example/search?q={query}",
      "access": "auth",
      "sourceClass": "database",
      "authProfileId": "member-db"
    }
  ]
}

Do not store passwords or API secrets in artbot.sources.json.

Auth Capture

Configure auth profiles with AUTH_PROFILES_JSON, then capture browser storage state:

artbot trust allow
artbot auth list
artbot auth status
artbot auth capture member-db --url https://member.example/login

Research flags:

artbot research artist \
  --artist "Burhan Dogancay" \
  --auth-profile member-db \
  --allow-licensed \
  --licensed-integrations "Sanatfiyat" \
  --wait

Interactive setup, TUI launch, auth capture, and backend start/stop require workspace trust:

artbot trust status
artbot trust allow
artbot trust deny

Local State

By default, ArtBot stores runtime state under:

~/.artbot

Expected contents include:

  • .env
  • data/artbot.db
  • runs/
  • logs/
  • playwright/.auth/
  • artbot.sources.json when custom sources are configured under ARTBOT_HOME

Models

Core setup supports local LM Studio, NVIDIA, and custom OpenAI-compatible endpoints through:

  • LLM_BASE_URL
  • LLM_API_KEY
  • LLM_MODEL
  • STRUCTURED_LLM_PROVIDER
  • STAGEHAND_MODE

Experimental Gemini Deep Research is opt-in from the TUI. It runs after normal research, writes deep-research.json, and can be inspected with:

artbot runs deep-research --run-id <id>
artbot runs deep-research --run-id <id> --web

This feature is cloud-based and can be expensive. Set a Google AI Studio spend cap before heavy use.

Responsible Use

Use only public, credentialed, or licensed access that you are authorized to use. Do not use ArtBot for credential stuffing, CAPTCHA evasion, paywall bypass, or other access-control circumvention.

Links

  • Repository: https://github.com/KhazP/artbot
  • npm: https://www.npmjs.com/package/artbot
  • License: Apache-2.0