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

@bouncesecurity/aghast

v0.2.0

Published

AI Guided Hybrid Application Static Testing

Readme

AI Guided Hybrid Application Static Testing (AGHAST) - ALPHA VERSION

Status: Alpha CI License: AGPL v3 By Bounce Security

Warning AGHAST is in early alpha. APIs, CLI flags, configuration formats, and output schemas may change between releases without notice. Use in production CI/CD pipelines at your own risk.

An open source tool that combines static scanning rules with AI prompts to find code-specific and company-specific security issues.

Define static rules, security checks as markdown instructions, point AGHAST at a repo, and get structured results (JSON or SARIF).

What AGHAST Does

You can read the full background to this tool in our blogpost here but, to cut to the chase, AGHAST uses three core mechanisms:

  • Repository-wide AI analysis — let the LLM analyze the whole repo against your security check instructions
  • Targeted checks — a pluggable discovery method (Semgrep rules, OpenAnt code units, or external SARIF findings) identifies specific code locations, then AI analyzes each independently. This is the sweet spot for most use cases
  • Static checks — a discovery method (e.g., Semgrep) finds issues mapped directly to results with no AI involvement, for when a traditional static rule is all you need

The beauty of the approach is what you don't need:

  • You don't need to modify the code
  • You don't need to build something into the codebase
  • You don't need to write code in the language of the codebase

All you need is:

  • Access to the codebase
  • An understanding of the problem you are trying to discover
  • The ability to write some simple rules

There are almost certainly other ways of achieving this, but to our mind, this approach is both straightforward and deterministic.

Prerequisites

  • Node.js 20+
  • Semgrep Community Edition (LGPL-2.1, optional) — only needed for checks that use Semgrep discovery
  • OpenAnt (Apache-2.0, optional) + Python 3.11+ — only needed for checks that use OpenAnt discovery
  • Anthropic API key — for AI-based checks (not needed for static checks)

Installation

See the Getting Started Guide for full installation and setup instructions.

Quick Start

Set your API key, create a check, and run a scan:

export ANTHROPIC_API_KEY=your-api-key
aghast new-check --config-dir ./my-checks
aghast scan /path/to/target-repo --config-dir ./my-checks

See the Getting Started Guide for a full walkthrough.

Example Output

Results are structured JSON (or SARIF) with per-check status and detailed issues:

{
  "checks": [
    { "checkId": "aghast-api-authz", "checkName": "API Authorization Check", "status": "FAIL", "issuesFound": 1 },
    { "checkId": "aghast-sql-injection", "checkName": "SQL Injection Prevention", "status": "PASS", "issuesFound": 0 }
  ],
  "issues": [
    {
      "checkId": "aghast-api-authz",
      "checkName": "API Authorization Check",
      "file": "src/api/users.ts",
      "startLine": 45,
      "endLine": 52,
      "description": "Missing authorization check on DELETE endpoint.",
      "codeSnippet": "router.delete('/users/:id', async (req, res) => {"
    }
  ],
  "summary": {
    "totalChecks": 2,
    "passedChecks": 1,
    "failedChecks": 1,
    "flaggedChecks": 0,
    "errorChecks": 0,
    "totalIssues": 1
  }
}

Documentation

Contributing

We welcome bug reports and feature requests via GitHub Issues. We are not currently accepting pull requests.

License

This project is licensed under the GNU Affero General Public License v3.0 or later.

Copyright (C) 2026 Bounce Consulting Ltd.