---
title: "issue-graph"
description: "Find related issues, competing changes, and unresolved follow-ups before you start work. A CLI for maintainers and coding agents."
canonical_url: "https://issue-graph.dev/"
lastUpdated: 2026-09-27
---

# issue-graph

Find related work before you start

Map related issues and pull requests. Prioritize your backlog, then open the exact view in your browser.

Install with npm install -g issue-graph@latest, or try npx issue-graph@latest --help. Requires Node.js 20+. Live GitHub queries use GitHub CLI authentication; saved queries and config work offline.

## For humans

```sh
npm install -g issue-graph@latest
```

## For agents

```sh
npx skills@latest add vercel-labs/issue-graph
```

Capture a backlog, filter saved work, and open the exact dashboard view before making changes. GitHub access is read-only. Captures and query history write local files. Query requires a saved capture.

## Command examples

Selected JSON fields from a public CLI capture, not live results. The website tabs only switch the displayed example; they do not run commands or call GitHub. Run Capture before the query examples.

### Capture

80 open items captured within an explicit budget

```sh
issue-graph open vercel-labs/portless --budget 80 --format json --no-open
```

```text
{
  "repo": "vercel-labs/portless",
  "saved": true,
  "open": 80,
  "linked": 0,
  "notCrawled": 40,
  "next": "issue-graph cluster vercel-labs/portless"
}
```

Captured with issue-graph 0.4.0: 2026-09-27T19:21:37.165Z. Budget: 80 items. The capture contains 80 open items and omits 40 referenced items. It is not a complete repository inventory. Heat ranks discussion signals, not severity. Queries read this saved capture without fetching GitHub.

### Prioritize

10 issues in the top 25% by Heat · first two shown

```sh
issue-graph query github:vercel-labs/portless --state open --kind Issue --heat-top 25 --view rank --json --no-open
```

```text
{
  "counts": {
    "captured": 80,
    "matched": 10,
    "visible": 10,
    "ranked": 10
  },
  "heat": {
    "threshold": 8.3,
    "baselineCount": 40
  },
  "items": [
    {
      "key": "vercel-labs/portless#313",
      "title": "Cloudflare tunnel support",
      "score": 33.2
    },
    {
      "key": "vercel-labs/portless#326",
      "title": "Add --no-worktree support when running apps with explicit names",
      "score": 26.6
    }
  ]
}
```

Captured with issue-graph 0.4.0: 2026-09-27T19:21:37.165Z. Budget: 80 items. The capture contains 80 open items and omits 40 referenced items. It is not a complete repository inventory. Heat ranks discussion signals, not severity. Queries read this saved capture without fetching GitHub.

### Dashboard

Open the same ranking, filters, and weights in your browser

```sh
issue-graph query github:vercel-labs/portless --state open --kind Issue --heat-top 25 --view rank --json --open
```

```text
{
  "opened": true
}
```

![Captured portless Rank dashboard with three active filters, adjustable weights, and issue #313 first at 33.2 Heat.](https://issue-graph.dev/dashboard-rank.png)

Captured with issue-graph 0.4.0: 2026-09-27T19:21:37.165Z. Budget: 80 items. The capture contains 80 open items and omits 40 referenced items. It is not a complete repository inventory. Heat ranks discussion signals, not severity. Queries read this saved capture without fetching GitHub.

## Map your backlog

Capture open issues, PRs, and their references. Explore linked work or ask your agent to group it by root cause.

```sh
issue-graph open vercel-labs/portless --budget 80 --no-open
```

[Capture a backlog](https://issue-graph.dev/docs/dashboard#capture-a-repository)

## Choose what to inspect next

Filter by kind, state, cluster, or Heat. Rank open work with weights you control. Heat measures discussion, not severity.

```sh
issue-graph query github:vercel-labs/portless --kind Issue --heat-top 25 --view rank --json --no-open
```

[Filter and rank](https://issue-graph.dev/docs/dashboard#prioritize-with-filters)

## Open the exact view

Keep the CLI and dashboard on the same filters and weights. Explore in the browser or replay a saved query.

```sh
issue-graph query github:vercel-labs/portless --kind Issue --heat-top 25 --view rank --open
```

[Use the dashboard](https://issue-graph.dev/docs/dashboard#open-the-exact-result)

## Resources

- [Documentation](https://issue-graph.dev/docs)
- [Getting started](https://issue-graph.dev/docs/get-started)
- [For agents](https://issue-graph.dev/docs/agents)
- [Release-compatible agent setup](https://issue-graph.dev/docs/agents.md)
- [Documentation index](https://issue-graph.dev/llms.txt)
