#485 by GitHub stars
coldteadotai/pr-lens
Review code 100x faster. Lens draws every PR as animated architecture and data-flow walkthroughs, inside the pull request itself. Use it as a GitHub App, GitHub Action, CLI, or a Skill for your coding agent
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
packages/agent-skill/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
457987102b40 → 21a93a9acad1
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 457987102b40
No earlier version was observed for comparison.
skills/eli5/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
457987102b40 → 21a93a9acad1
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 457987102b40
No earlier version was observed for comparison.
skills/pr-lens/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Network or broad shell
457987102b40 → 21a93a9acad1
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 457987102b40
No earlier version was observed for comparison.
Verified commit 21a93a9acad1a3d8c7a6ef4575cf3f78114c71d7
git clone --filter=blob:none --no-checkout https://github.com/coldteadotai/pr-lens.git .hotskills/coldteadotai-pr-lens && git -C .hotskills/coldteadotai-pr-lens checkout --detach 21a93a9acad1a3d8c7a6ef4575cf3f78114c71d7
# Copy each selected skill directory from .hotskills/coldteadotai-pr-lens into .claude/skills/<skill-name>/git clone --filter=blob:none --no-checkout https://github.com/coldteadotai/pr-lens.git .hotskills/coldteadotai-pr-lens && git -C .hotskills/coldteadotai-pr-lens checkout --detach 21a93a9acad1a3d8c7a6ef4575cf3f78114c71d7
# Copy each selected skill directory from .hotskills/coldteadotai-pr-lens into .agents/skills/<skill-name>/Heat
7.6- Star growth, last 7 daysAhead of 93% of tracked repositories
- Star growth, last 24 hoursAhead of 94% of tracked repositories
- Rank movement, last 7 daysAhead of 64% of tracked repositories
- Commits, last 30 daysAhead of 92% of tracked repositories
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekAhead of 0% of tracked repositories
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
Individual skills in this repository
How it works
pr-lens
When your agent uses it
WHAT: Draws a code change or part of a codebase as an animated architecture, data-flow or data-model diagram, on its own or in a pull request. WHEN: asked to diagram, visualise or explain a change, a system or a schema change, or when a pull request should carry a diagram. KEYWORDS: PR Lens, diagram, architecture, data flow, data model, schema, ERD, visualise, visualize, pull request
What it loads into context
Frontmatter
102 tokensAlways available to the agent
SKILL.md
388 tokensWhen the skill is activated
Reference documents
14,326 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Start here
- Why PR Lens
Scripts executed separately
package.jsonscripts/mirror.tsscripts/sync.tstest/mirror.test.tstest/skill.test.tsvitest.config.ts
Files
LICENSEasset1,067 bytesREADME.mddoc2,075 bytesSKILL.mdcore1,657 bytesSKILL.mdcore1,657 bytesmanual.mddoc30,569 bytespackage.jsonruns1,153 bytesreferences/config.mddoc3,905 bytesreferences/example.graph.jsonasset17,984 bytesreferences/graph-document.mddoc21,469 bytesscripts/mirror.tsruns1,552 bytesscripts/sync.tsruns1,960 bytestest/mirror.test.tsruns1,164 bytestest/skill.test.tsruns5,040 bytestsconfig.jsonasset148 bytesvitest.config.tsruns132 bytes
Read SKILL.md
# PR Lens
Animated architecture, data-flow and data-model diagrams for code changes and codebases. The agent writes one JSON document, and PR Lens draws it.
Run: `npx @coldtea/pr-lens-cli@latest <command>`. Nothing to install first.
## Start here
This file is a discovery stub, not the usage guide. Before running any PR Lens command, load the actual workflow content from the CLI:
```bash
npx @coldtea/pr-lens-cli@latest skill # start here: write, validate, render, share
npx @coldtea/pr-lens-cli@latest skill references # the graph document field by field, the config format, a full example
```View the complete source on GitHubeli5
When your agent uses it
WHAT: Explains a codebase, a folder, a feature, a command or a pull request to someone who knows nothing about it, as a PR Lens canvas whose walkthrough builds the picture one part at a time. WHEN: /eli5 <thing>, or asked to explain code simply, for a beginner, a new hire, a non-engineer, or 'like I'm five'. KEYWORDS: eli5, explain like I'm five, explain simply, beginner, onboarding, walkthrough, diagram, PR Lens
What it loads into context
Frontmatter
111 tokensAlways available to the agent
SKILL.md
2,329 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- What you need
- Operating manual
- Words
- What this is not
Files
SKILL.mdcore9,301 bytesSKILL.mdcore9,301 bytesSKILL.mdcore9,301 bytes
Read SKILL.md
# eli5
Explain like I'm someone who knows nothing about this code: one sentence, then one part at a time, until the whole picture is on screen and the reader already knows every part of it.
A reader who knows nothing cannot take in a diagram. They can take in two boxes and an arrow. So the canvas starts with two boxes and grows. The whole picture is the last thing they see, not the first, and by then it holds nothing new.
You write one graph document. Its views are the growing pictures, its walkthrough plays them in order, and PR Lens draws them. The reader opens a link and presses play. There is no page, no list, no paragraph.
## What you need
The PR Lens manual and its reference pages. The PR Lens CLI prints both. Run `npx @coldtea/pr-lens-cli@latest skill`, then `npx @coldtea/pr-lens-cli@latest skill references`, and read both before your first document. The manual's rules hold here except where this page marks an **Override**.
## Operating manual
View the complete source on GitHubpr-lens
When your agent uses it
WHAT: Draws a code change or part of a codebase as an animated architecture, data-flow or data-model diagram, on its own or in a pull request. WHEN: asked to diagram, visualise or explain a change, a system or a schema change, or when a pull request should carry a diagram. KEYWORDS: PR Lens, diagram, architecture, data flow, data model, schema, ERD, visualise, visualize, pull request
What it loads into context
Frontmatter
102 tokensAlways available to the agent
SKILL.md
388 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Start here
- Why PR Lens
Files
LICENSEasset1,067 bytesSKILL.mdcore1,657 bytesSKILL.mdcore1,657 bytes
Read SKILL.md
# PR Lens
Animated architecture, data-flow and data-model diagrams for code changes and codebases. The agent writes one JSON document, and PR Lens draws it.
Run: `npx @coldtea/pr-lens-cli@latest <command>`. Nothing to install first.
## Start here
This file is a discovery stub, not the usage guide. Before running any PR Lens command, load the actual workflow content from the CLI:
```bash
npx @coldtea/pr-lens-cli@latest skill # start here: write, validate, render, share
npx @coldtea/pr-lens-cli@latest skill references # the graph document field by field, the config format, a full example
```View the complete source on GitHubSkills included
- pr-lens
- eli5
- pr-lens
Repository facts
- License
- MIT
- Created
- Aug 20, 2026
- Last pushed
- Nov 5, 2026
- Forks
- 98
- Open issues
- 4
- Project activity
- Active
Rank over the last 12 weeks
Now #485 · best #446 · down 15 in 30 days
- #483 on Oct 28
- #484 on Oct 29
- #483 from Oct 30 to Nov 2
- #484 on Nov 3
- #486 on Nov 4
- #485 since Nov 5
59 earlier periods
- #904 on Aug 16
- #924 on Aug 27
- #961 on Aug 28
- #879 on Aug 29
- #883 on Aug 30
- #966 on Sep 1
- #931 on Sep 2
- #921 on Sep 3
- #881 on Sep 4
- #857 on Sep 5
- #893 on Sep 6
- #811 on Sep 7
- #656 on Sep 8
- #621 on Sep 9
- #614 on Sep 10
- #592 on Sep 11
- #583 on Sep 12
- #574 on Sep 13
- #595 on Sep 14
- #568 on Sep 15
- #566 on Sep 16
- #563 on Sep 17
- #564 on Sep 18
- #549 on Sep 19
- #558 on Sep 20
- #560 on Sep 21
- #557 on Sep 22
- #533 on Sep 23
- #499 on Sep 24
- #484 on Sep 25
- #466 on Sep 26
- #481 on Sep 27
- #485 on Sep 28
- #490 on Sep 29
- #483 on Sep 30
- #475 on Oct 1
- #464 on Oct 2
- #451 on Oct 3
- #446 on Oct 4
- #459 on Oct 5
- #466 on Oct 6
- #470 on Oct 7
- #480 on Oct 8
- #474 on Oct 9
- #469 on Oct 10
- #468 on Oct 11
- #478 on Oct 12
- #473 on Oct 13
- #476 on Oct 14
- #468 on Oct 15
- #470 on Oct 16
- #457 on Oct 17
- #463 on Oct 18
- #469 from Oct 19 to Oct 20
- #471 on Oct 21
- #464 on Oct 22
- #460 on Oct 23
- #448 on Oct 24
- #481 on Oct 25
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 3, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 4 notes
packages/agent-skill/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/eli5/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/eli5/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/pr-lens/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- 24 network referencesin 7 files: agent-skill/manual.md:41 agent-skill/package.json:7 agent-skill/references/example.graph.json:26 and 4 more
- No hidden or obfuscated text
- No instruction overrides
- 6 executable scriptsin 6 files: agent-skill/package.json:1 agent-skill/scripts/mirror.ts:1 agent-skill/scripts/sync.ts:1 and 3 more
- 1 reference to secretsin 1 file: agent-skill/manual.md:76
- No requests to vote in Hot
Show all 31 signals by file
packages/agent-skill/README.md
- Network accessline 48
Part of [PR Lens](https://prlens.dev). Review what actually matters.
packages/agent-skill/manual.md
- Network accessline 41
It prints three links. Give the user the view link, `https://prlens.dev/c/{id}`: that is the diagram, full screen, every view on one page, and it opens without a login. The edit link, the one ending in `#w=…`, lets its holder push over the - Network accessline 76
[Credential-related source omitted] - Access to secretsline 76
[Credential-related source omitted] - Network accessline 78
"https://gitlab.com/api/v4/projects/<url-encoded-path>/uploads" - Network accessline 91
npx @coldtea/pr-lens-cli@latest comment --graph .pr-lens/<drawing>/drawn.graph.json --manifest .pr-lens/<drawing>/manifest.json --asset-base-url https://raw.githubusercontent.com/<owner>/<repo>/<branch>/<dir> - Network accessline 93
--manifest .pr-lens/<drawing>/manifest.json \ --asset-base-url https://raw.githubusercontent.com/<owner>/<repo>/<branch>/<dir> - Network accessline 94
--asset-base-url https://raw.githubusercontent.com/<owner>/<repo>/<branch>/<dir> - Network accessline 115
**When the user gives you a link to a canvas you did not push**, like `https://prlens.dev/c/<id>`, open it with the link. This works from any folder, as long as the canvas is not private: - Network accessline 118
npx @coldtea/pr-lens-cli@latest canvas open --canvas https://prlens.dev/c/<id> - Network accessline 404
The same document ships as `postmark-refactor.graph.json` in `@coldtea/pr-lens-schema`, and the JSON Schema the validator enforces is published at `https://unpkg.com/@coldtea/pr-lens-schema/json-schema/graph-doc.schema.json`. Neither is som
packages/agent-skill/package.json
- Executable scriptline 1
Executable file - Network accessline 7
"repository": { "type": "git", "url": "git+https://github.com/coldteadotai/pr-lens.git", - Network accessline 8
"type": "git", "url": "git+https://github.com/coldteadotai/pr-lens.git", "directory": "packages/agent-skill" - Network accessline 9
"url": "git+https://github.com/coldteadotai/pr-lens.git", - Network accessline 10
"directory": "packages/agent-skill" }, "homepage": "https://github.com/coldteadotai/pr-lens/tree/main/packages/agent-skill#readme", - Network accessline 11
}, "homepage": "https://github.com/coldteadotai/pr-lens/tree/main/packages/agent-skill#readme", "keywords": [ - Network accessline 12
"homepage": "https://github.com/coldteadotai/pr-lens/tree/main/packages/agent-skill#readme",
packages/agent-skill/references/config.md
- Network accessline 27
{ "$ref": "https://unpkg.com/@coldtea/pr-lens-schema/json-schema/config.schema.json" }
packages/agent-skill/references/example.graph.json
- Network accessline 26
"number": 128, "title": "Send broadcasts in batches of 500", "url": "https://github.com/ohansemmanuel/bestregards/pull/128" - Network accessline 27
"title": "Send broadcasts in batches of 500", "url": "https://github.com/ohansemmanuel/bestregards/pull/128" }, - Network accessline 28
"url": "https://github.com/ohansemmanuel/bestregards/pull/128"
packages/agent-skill/references/graph-document.md
- Network accessline 5
The validator enforces the same thing from a JSON Schema, published at `https://unpkg.com/@coldtea/pr-lens-schema/json-schema/graph-doc.schema.json` if you want it machine-readable.
packages/agent-skill/scripts/mirror.ts
- Executable scriptline 1
Executable file
packages/agent-skill/scripts/sync.ts
- Executable scriptline 1
Executable file
packages/agent-skill/test/mirror.test.ts
- Executable scriptline 1
Executable file
packages/agent-skill/test/skill.test.ts
- Executable scriptline 1
Executable file
packages/agent-skill/vitest.config.ts
- Executable scriptline 1
Executable file
skills/eli5/SKILL.md
- Network accessline 27
3. **Write `.pr-lens/graph.json`.** Follow `references/graph-document.md`, plus these rules: - **Override, provenance.** The schema requires it. Take the remote from `git remote get-url origin`. `https://github.com/acme/mail.git` and `gi - Network accessline 28
- **Override, provenance.** The schema requires it. Take the remote from `git remote get-url origin`. `https://github.com/acme/mail.git` and `git@github.com:acme/mail.git` both become `{ "owner": "acme", "name": "mail", "host": "github.com" - Network accessline 64
Fix every failure and validate again. Do not delete the element a failure names; fix the reference. `canvas push` prints the view link, `https://prlens.dev/c/{id}`, and an embed link. The view link is the deliverable.
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Signal confidence: 28 facts
- Network access in prose of documentationagent-skill/README.md:48Low confidence
- Network access in prose of documentationagent-skill/manual.md:41Low confidence
- Network access in code of documentationagent-skill/manual.md:76Low confidence
- Access to secrets in code of documentation: a variable, placeholder or call, not a stored valueagent-skill/manual.md:76Low confidence
- Network access in code of documentationagent-skill/manual.md:78Low confidence
- Network access in code of documentationagent-skill/manual.md:91Low confidence
- Network access in code of documentationagent-skill/manual.md:93Low confidence
- Network access in code of documentationagent-skill/manual.md:94Low confidence
- Network access in prose of documentationagent-skill/manual.md:115Low confidence
- Network access in code of documentationagent-skill/manual.md:118Low confidence
- Network access in prose of documentationagent-skill/manual.md:404Low confidence
- Executable script in code of a file that runsagent-skill/package.json:1High confidence
- Network access in code of a file that runsagent-skill/package.json:7High confidence
- Network access in code of a file that runsagent-skill/package.json:8High confidence
- Network access in code of a file that runsagent-skill/package.json:9High confidence
- Network access in code of a file that runsagent-skill/package.json:10High confidence
- Network access in code of a file that runsagent-skill/package.json:11High confidence
- Network access in code of a file that runsagent-skill/package.json:12High confidence
- Network access in code of documentationagent-skill/references/config.md:27Low confidence
- Network access in prose of documentationagent-skill/references/graph-document.md:5Low confidence
- Executable script in code of a file that runsagent-skill/scripts/mirror.ts:1High confidence
- Executable script in a comment of a file that runsagent-skill/scripts/sync.ts:1Low confidence
- Executable script in code of a testagent-skill/test/mirror.test.ts:1Low confidence
- Executable script in code of a testagent-skill/test/skill.test.ts:1Low confidence
- Executable script in code of a file that runsagent-skill/vitest.config.ts:1High confidence
- Network access in prose of the SKILL.mdeli5/SKILL.md:27Low confidence
- Network access in prose of the SKILL.mdeli5/SKILL.md:28Low confidence
- Network access in prose of the SKILL.mdeli5/SKILL.md:64Low confidence
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Path .claude/settings.json | .claude/skills/<skill-name>/ |
| Codex | Native | Manifest AGENTS.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md packages/agent-skill/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md packages/agent-skill/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md packages/agent-skill/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md packages/agent-skill/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.
Explore alternatives and comparisons
Add this badge to your README
It updates every night and links to this page.
[](https://hotskills.dev/skill/coldteadotai-pr-lens/)