reachability

Trace dependency sinks from app entry points to determine reachability.

Updated May 20, 2026
One-click install
npx skills add https://github.com/lukehinds/scrutineer-attest-test --skill reachability
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: reachability
Source: https://github.com/lukehinds/scrutineer-attest-test/tree/main/skills/reachability
Command: npx skills add https://github.com/lukehinds/scrutineer-attest-test --skill reachability

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill helps teams verify whether known library sinks from a project's dependencies are reachable from the application's trust boundaries, enabling safer exposure of dependencies.

Core Features & Use Cases

  • Trace each library sink from the app's entry points to the corresponding library call and determine reachability.
  • Generate an organized findings report that highlights reachable sinks and their risk levels, with a structured inventory and ruled-out items.
  • Use cases include applications with Gemfile.lock or package-lock.json to validate that potentially dangerous sinks are properly isolated from external inputs.

Quick Start

Run reachability to trace each library sink from the app entry points and report which are reachable.

Frequently Asked Questions about reachability

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What is dependency reachability analysis in application security?

Dependency reachability analysis traces known library sinks from an application's trust boundaries to determine if external inputs can reach vulnerable dependency calls. It generates a structured report highlighting reachable sinks, risk levels, and ruled-out items.

How do I check if vulnerable dependency sinks are reachable from my app's entry points?

You can trace vulnerable dependency sinks by running a reachability analysis on applications with a dependency graph and entry points, such as projects with Gemfile.lock or package-lock.json, to map each sink from the app to the library call.

Does reachability analysis work with package-lock.json and Gemfile.lock projects?

Yes, reachability analysis is designed for applications with Gemfile.lock or package-lock.json files. It consumes dependency graphs and entry points from these manifests to trace library sinks to the application's trust boundaries.

What format do Scrutineer findings need to be in for tracing library sinks?

Scrutineer findings must include candidate sinks with fields like package, ecosystem, requirement, manifest_path, dependency_type, severity, cwe, title, location, sinks, trace, and boundary to perform the reachability trace.

How does static analysis determine if a library sink is reachable from external inputs?

Static analysis determines library sink reachability by tracing each sink from the application's entry points through the dependency graph to the corresponding library call, verifying whether potentially dangerous sinks are properly isolated from external inputs.

What is included in a reachability findings report for application dependencies?

A reachability findings report includes an organized inventory highlighting reachable sinks and their risk levels, along with structured ruled-out items, conforming to a given schema to help teams validate dependency isolation.