StackVitals

io.github.stackvitalsPublished by GitHub account stackvitalsv0.2.0Updated Nov 1, 2026

Known flaky tests, failing and slow CI, review flow, delivery and dependency risk from kept history.

Overview

AI-generated overview

StackVitals gives an assistant evidence from a GitHub repo's history: flaky CI, review flow, delivery metrics and dependency risk, before you open a PR or add…

What you can do
  • Check a change before opening a PR: what merged PRs touching those files usually include and what maintainers ask for
  • Brief on an unfamiliar repo: per-folder merge norms, reviewers and speed, CODEOWNERS, flaky CI jobs
  • Assess dependencies: how upgrades of an npm or PyPI package fared across public repos, advisories, malware records and a verdict
  • Scan a lockfile and rank pinned packages that need a look first
  • Suggest reviewers for an open PR and show the PR queue with who must act next
  • Report CI health, explain a failed run, check whether a test or job is a known flake, and rank findings by cost
When to use it
Useful when contributing to or maintaining GitHub repositories: preparing a pull request, triaging a red CI run, choosing reviewers, or deciding whether to add or upgrade a dependency.
Requirements
Runs locally as a Python package via uvx over stdio; no authentication or environment variables are declared. It reads lockfiles from paths on the local machine and works from a daily snapshot of GitHub repository history, so network access is implied.
Before you install
It reads local lockfiles by path, so point it only at files you are willing to expose to the assistant. Results come from a daily snapshot and may lag current repo state; the server itself asks that evidence be quoted and that thin evidence be reported as such. No credentials are declared, but the snapshot's coverage of private repos is not described.

Installation

In SourceWeft

  1. Open StackVitals in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Tools

11

preflight

Before opening a pull request: what merged PRs touching these files usually include (tests, changelog, docs, size), what this change is missing, and what maintainers most often ask for in review there. repo: owner/name; paths: files the change touches; lines: lines added plus removed.

Parametersreporequiredlinespathsrequired

repo_brief

Before working in an unfamiliar repo: how changes get merged there, measured from its history (things its files don't say). Per folder: what merged PRs include, who reviews there and how fast, CODEOWNERS; CI jobs and tests known to be flaky (re-run before chasing a failure); how outside PRs fare against similar repos. Every number comes with its count. repo: owner/name.

Parametersreporequired

check_package

Before adding or upgrading a dependency: how upgrades of this npm or PyPI package went across thousands of public repos, whether its maintainers still merge outside fixes, its source repo, advisories and malware records, and a verdict (use / monitor / investigate, or none when evidence is thin) with the counts behind it. name: "requests" or "pypi:requests"; ecosystem: "npm" or "pypi" (optional).

Parametersnamerequiredecosystem

scan_lockfile

Every package a lockfile pins, the ones that need a look first, each with its verdict and main reason. Reads package-lock.json, npm-shrinkwrap.json, requirements*.txt, uv.lock, poetry.lock and Pipfile.lock. path: the lockfile on this machine.

Parameterspathrequired

who_should_review

Up to 3 people who should review an open pull request: who wrote and reviewed the same areas, code owners, how many reviews each already has open and how fast they usually answer. repo: owner/name; pr: its number.

Parametersprrequiredreporequired

pr_queue

Open pull requests and who has to act next on each (reviewers, the author or maintainers), since when, and whether that is longer than usual for this repo. repo: owner/name.

Parametersreporequired

ci_health

A repo's CI health: flaky jobs and tests (failed, then passed with no code change), jobs that keep failing, jobs that got slower, line coverage with each pull request's patch coverage when CI uploads a coverage report, pushes green on the first try with their likely ranges, and this week against the four before (only changes beyond noise are flagged; steady ones say how big a change they could have shown). repo: owner/name.

Parametersdaysreporequired

is_known_flake

Before fixing a failing test or job, check whether it is a known flake in this repo. name: part of the test or job name (e.g. "test_upload" or "e2e").

Parametersnamerequiredreporequired

ci_failure

Explain a failed CI run: each failure is called known flaky (it flaked before and its log shows a flake's sign: check the error, then re-run it), maybe yours (it flaked before, but its error names a file the pull request changed), flaked before (it has flaked, but rarely, in another step or with no flake's sign: check the change first), already failing on the default branch (the same error), outside failure (a registry, network or runner), maybe flaky (it failed the way flaky checks do: re-run once to tell), PR details (a check on the PR's title, description or labels: fix the PR, not the code), or new (likely from the change). run: the run's URL.

Parametersrunrequired

insights

What to fix first, across modules, and the findings that join CI and pull requests. findings: each a sentence with its number, n, evidence links and the action, ranked by hours of waiting or outage at stake (flaky jobs and tests by the PR-hours they cost, reviews asked for and not started, incidents after deployments, dependency updates with failing checks, the outside-contributor review gap). red_ci: how long merged PRs sat ready for review with a failing check on their newest commit, each wait traced to the run that started it and what ended it, with counts and ranges. repo: owner/name; days: history to read (max 90).

Parametersdaysreporequired

delivery_health

A repo's delivery: DORA's keys with DevLake's counting and tiers (deployment frequency, lead time for changes, change failure rate, recovery) plus deployment rework rate, where deployments came from, cycle time P50/P75, sizes, stuck PRs, coding agents' PRs and people's AI-marked PRs each compared like with like (the same author's other PRs, or people's PRs of the same month and size) on reverts, CI failures, failed deploys and merges, with ranges, matched shares and the gap each could detect, merge-queue health, where the work went by month (feature, fix, maintenance, security, docs, with how each PR was sorted), and with Jira or Linear connected, issue lead and cycle time by type and the last sprints. Each DORA key carries its likely range and, when the range crosses a tier line, both tiers; `this_week` checks the latest week against the four before and flags only changes beyond noise.

Parametersreporequired

Version history

4
  1. v0.2.0LatestNov 1, 2026
  2. v0.1.4Oct 31, 2026
  3. v0.1.3Oct 31, 2026
  4. v0.1.1Oct 31, 2026

Score

65% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • License10 pts

    Declare a license in the repository or the registry entry.