A heavyweight AI tool with strong community presence, but setup and navigation have real friction for newcomers.
last scored 2026-06-15
Readiness lenses
The same repo, two ways: how ready it is for an AI coding agent, and for a human newcomer. Switch lenses to see each one's score and checks.
How ready the repo is for an AI coding agent to read, build, and operate it.
16 of 32 checks passed across 6 categories.
Machine Orientation
4 checks passed3 problems found
- mediumAgent instructions file
AGENTS.md / CLAUDE.md is the direct, machine-read channel for entry points and conventions.
Fix: Add an AGENTS.md naming the entry points, the build/test commands, and the house conventions.
- lowllms.txt present
An llms.txt is the emerging machine-orientation standard — a curated map for LLMs.
Fix: Add an llms.txt pointing at the key docs and entry points.
- lowArchitecture doc
An ARCHITECTURE doc hands an agent the module map instead of making it infer one.
Fix: Add an ARCHITECTURE.md describing the major components and how they fit.
- README present — An agent reconstructs what the repo is and how to work in it from the README first.
- Repository description set — The one-line description is the fastest orientation signal an agent reads.
- Topics set — GitHub topics situate the repo's domain and stack for an agent at a glance.
- Contribution conventions are written down — A contributor guide is where an agent learns the branch, commit, and review conventions it must follow.
Reproducible Setup
0 checks passed5 problems found
- highLockfile committed
Without a lockfile two clones can resolve different dependency trees — the build isn't reproducible.
Fix: Commit your lockfile (package-lock.json / pnpm-lock.yaml / Cargo.lock / …).
- mediumRuntime / toolchain pinned
An unpinned runtime makes an agent guess the version a clean environment needs.
Fix: Pin the runtime with .nvmrc / .tool-versions / an engines field / packageManager.
- mediumContainer or dev-container
A Dockerfile / compose / devcontainer removes 'works on my machine' from setup.
Fix: Add a Dockerfile, a compose file, or a .devcontainer so the environment is declared, not assumed.
- lowEnv template present
A .env.example tells an agent which configuration keys it must supply to run.
Fix: Ship a .env.example listing every required key with placeholder values.
- lowDev container
A .devcontainer gives an agent a one-command, fully-declared environment.
Fix: Add a .devcontainer so the toolchain is declared, not assumed.
Code Navigability
1 check passed0 problems found
- Conventional source layout — A recognised src/ · lib/ · app/ layout lets an agent localise code without spelunking.
Verification Surface
2 checks passed5 problems found
- mediumTest command defined
A `test` script is the documented, discoverable way to run the suite.
Fix: Add a `test` script (package.json / Makefile / Taskfile) that runs the suite.
- lowLint command defined
A linter an agent can run catches a class of mistakes before they ship.
Fix: Add a `lint` script and a linter config.
- lowTask runner present
A Makefile / Taskfile / justfile gives an agent a single index of the project's commands.
Fix: Add a Makefile / Taskfile / justfile collecting the common commands.
- lowTypecheck command
A typecheck script lets an agent catch type errors before they ship.
Fix: Add a `typecheck` script (e.g. `tsc --noEmit`).
- lowBuild command
A documented build command is the discoverable way for an agent to produce artifacts.
Fix: Add a `build` script that produces the distributable.
- Tests present — Runnable tests are the ground truth an agent checks its own edits against.
- CI configured — Readable CI is the feedback loop an agent reads to know what 'green' means here.
Agent Safety
6 checks passed2 problems found
- medium.gitignore covers env files
An ignore rule for .env is what keeps the next careless commit from leaking secrets.
Fix: Add `.env` (and `.env.*`) to .gitignore.
- lowAutomated dependency updates
Dependabot / Renovate keeps dependencies patched without a human in the loop.
Fix: Enable Dependabot or Renovate.
- No committed .env — A tracked real .env hands secrets to anything — including an agent — that reads the repo.
- No exposed secrets — Secret-shaped literals in tracked files are a live credential leak.
- CODEOWNERS present — CODEOWNERS marks the 'don't touch without review' zones an agent should respect.
- .gitignore present — A .gitignore is the first guard against an agent committing secrets or build junk.
- Security policy — A SECURITY.md is where an autonomous security agent reads this repo's rules before acting on it.
- License makes the code reusable — Without a license an agent cannot safely copy, redistribute, or vendor any of this code.
Context Economy
3 checks passed1 problem found
- lowNo oversized source file
A single file in the hundreds of KB blows past an agent's effective context window.
Fix: Split the largest files along their natural seams.
- Dependencies not vendored in — A committed node_modules / vendor tree drowns the real signal an agent needs.
- Build output not committed — Generated dist/ · build/ output is noise an agent has to read past.
- Generated / vendored files marked — A .gitattributes linguist marker tells tools (and agents) what to skip.
How ready the repo is for a human newcomer to understand, set up, and contribute.
72 / 10012 of 24 checks passed across 6 categories.
First Impression
82Clear purpose and scope, but lacks a direct quickstart in the README itself.
The README delivers a strong visual presence with a screenshot, concise one-liner ("The most powerful and modular AI engine for content creation"), and clear positioning for visual professionals. The feature list is extensive and well-organized. However, the main README redirects to desktop app, portable packages, or manual install without a fast, copy-pasteable entry point visible immediately—you must scroll and click links to get started.
Getting Running
55Installation paths exist but lack explicit, deterministic steps; dependencies are unpinned.
The README mentions "Manual Install" but the instructions are not shown in the snapshot (likely linked elsewhere). The requirements.txt has many unpinned dependencies (torch, torchvision, torchaudio, numpy>=1.25.0 but not fixed), making reproducible builds fragile. The pyproject.toml requires Python >=3.10 but no lockfile is visible. A newcomer cloning the repo has no clear 'run this command to start' path—they must hunt for install docs or scripts.
Finding Your Way
65Directory structure is sprawling; architecture and module boundaries are unclear from the snapshot.
The file tree shows a broad, mixed structure (comfy/, app/, blueprints/, api_server/, alembic_db/) with no architecture or layout overview in the main docs. There's a comfy/comfy_types/README.md and api_server/routes/internal/README.md, suggesting module-level docs exist, but the top-level codebase lacks a clear map. A newcomer would struggle to understand how the node system, API server, asset database, and frontend all fit together without external documentation.
Path to Contribute
58CONTRIBUTING.md exists but is lightweight; no dev setup guide, no beginner issues tagged, no PR template for core contributions.
CONTRIBUTING.md directs questions to Discord and provides issue-reporting guidance, but offers no step-by-step dev setup (install editable, run tests, run the app locally). It references an external wiki article on "creating pull requests" rather than embedding those details. There's a .github/PULL_REQUEST_TEMPLATE/api-node.md, indicating API node contributions have some structure, but core code contributions lack equivalent scaffolding. No evidence of 'good first issue' labels or beginner-friendly tracked issues.
Signs of Life
82Active maintenance, high stars, recent commits, and clear release cadence signal a healthy project.
Repository shows 117,098 stars, last push June 15, 2026, and a documented weekly release cycle with two-week major versions. The file tree includes release workflows, CI/CD pipelines (.github/workflows/), and a formal Release Process section in the README. The project has a Discord (green badge shows active member count), Matrix chat, and multiple connected repos (Desktop, Frontend), indicating sustained team effort and community.
Open Door
85GPL v3 license is clear; Discord and Matrix communities are welcoming; no code of conduct visible but community channels are active.
The LICENSE file is present and stated as GNU General Public License v3.0. The README prominently links Discord (with live member count), Matrix, Twitter, and the homepage, making it easy to ask for help or join the community. A SECURITY.md file exists (signaling responsible disclosure). However, there's no explicit code of conduct or governance document in the snapshot to set behavioral expectations, which is a minor gap for a large, diverse community.
First Impression
3 checks passed0 problems found
- README present — The README is the first screen — with none, a newcomer has nothing to land on.
- Repository description set — The one-line description sets expectations before a newcomer even opens the README.
- Topics set — Topics situate the project's domain at a glance and help a newcomer find it.
Getting Running
0 checks passed5 problems found
- highLockfile committed
Without a lockfile a newcomer's install resolves differently and hits errors the docs don't mention.
Fix: Commit your lockfile so a fresh clone installs the same dependency tree.
- mediumPrerequisite versions pinned
Unpinned prerequisites are the classic 'works on my machine' first-run failure.
Fix: Pin the required versions with .nvmrc / .tool-versions / an engines field.
- mediumOne-command environment
A Dockerfile / compose / devcontainer turns a fiddly setup into one command.
Fix: Add a Dockerfile, a compose file, or a .devcontainer for a one-command setup.
- lowEnv template present
A .env.example shows a newcomer exactly which settings they must fill in to run it.
Fix: Ship a .env.example listing every required key with placeholder values.
- lowOne-click dev container
A .devcontainer lets a newcomer start in a cloud IDE with zero local setup.
Fix: Add a .devcontainer for a one-click, batteries-included environment.
Finding Your Way
1 check passed2 problems found
- mediumArchitecture / overview doc
An overview hands a newcomer the map instead of making them reconstruct it.
Fix: Add an ARCHITECTURE.md (or a 'Project layout' README section) naming the key directories.
- lowNo oversized source file
A single thousand-line file is a wall a newcomer bounces off.
Fix: Split the largest files along their natural seams.
- Conventional source layout — A familiar src/ · lib/ · app/ layout lets a newcomer guess where things live.
Path to Contribute
3 checks passed3 problems found
- lowTest command defined
A documented test command lets a contributor check their change before opening a PR.
Fix: Add a `test` script that runs the suite.
- lowLint command
A linter lets a first-time contributor catch style issues before review.
Fix: Add a `lint` script and a linter config.
- lowTask runner
A Makefile / Taskfile gives a contributor a single index of the project's commands.
Fix: Add a Makefile / Taskfile collecting the common dev commands.
- CONTRIBUTING guide — A CONTRIBUTING guide is the difference between a guessed and a guided first PR.
- Issue templates — Issue templates show a newcomer how to file something useful — and that contributions are welcome.
- Pull-request template — A PR template tells a first-time contributor what a good change includes.
Signs of Life
2 checks passed1 problem found
- lowAutomated dependency updates
Dependabot / Renovate activity is a visible heartbeat of ongoing maintenance.
Fix: Enable Dependabot or Renovate.
- Tests present — A test suite signals a project that's cared for, not abandoned.
- CI configured — Green CI on every change tells a newcomer the project is actively kept working.
Open Door
3 checks passed1 problem found
- lowCode of conduct
A code of conduct states the social ground rules that make it safe to step in.
Fix: Add a CODE_OF_CONDUCT.md (the Contributor Covenant is the de-facto standard).
- License present — With no license the project isn't legally reusable — the door is shut however friendly the README.
- License is a standard one — A non-standard or custom license is a legal question mark a newcomer won't resolve.
- Security policy — A SECURITY.md tells a newcomer how to report a problem responsibly.
Where the grip slips
- highPath To Contribute+13 pts if fixed
CONTRIBUTING.md lacks practical dev setup guide
CONTRIBUTING.md directs questions to Discord, explains bug reporting, and links to an external wiki but does NOT include: how to install the project in editable/dev mode, how to run tests locally, how to start the app for development, what the project's code standards are (beyond linting config in pyproject.toml), or a step-by-step first-contribution walkthrough.
Fix: Expand CONTRIBUTING.md with a 'Development Setup' section: (1) clone and install with `pip install -e .`, (2) run unit tests with `pytest`, (3) launch the dev server with `python main.py`, (4) where to find code style guidelines (refer to ruff/pylint config already in place). Add a 'Making Your First Contribution' subsection with an example (e.g., fixing a typo, writing a small node, submitting a test).
- highGetting Running+12 pts if fixed
No embedded quickstart in README; installation path is indirect
The README links to external install methods (Desktop app, portable package, manual) without providing a direct 'git clone + one-line command' entry point. A newcomer must click links or navigate external docs to start, creating friction and reducing discoverability of the local development path.
Fix: Add a 'Quick Start' section in the README with copy-pasteable commands: e.g., 'git clone <url>, cd ComfyUI, python -m pip install -e . && python main.py' (or whatever the correct entry point is). Include system requirements (Python 3.10+, CUDA/GPU optional) and expected output.
- highFinding Your Way+11 pts if fixed
No architecture overview or module-level docs in the codebase
The README lists features but does not explain how the system is organized: where the core node engine lives, how the API server and frontend interact, what the asset database does, where custom node loading happens, or how the workflow system works. A newcomer cloning the repo sees comfy/, app/, api_server/, blueprints/, etc., but has no mental model of the system.
Fix: Create an ARCHITECTURE.md at the root with a 3–5 paragraph overview: (1) Core node execution engine (comfy/), (2) API server and routes, (3) Frontend integration, (4) Asset/workflow database, (5) Custom node loading and app plugins. Include a dependency graph diagram and pointers to key entry points (e.g., main.py, key classes).
- highGetting Running+10 pts if fixed
Unpinned dependencies in requirements.txt inhibit reproducible builds
Key dependencies like torch, torchvision, torchaudio, numpy, transformers, safetensors, aiohttp, and many others lack version pinning (or use only >= constraints), making it impossible to guarantee the same environment across machines or over time. This is especially critical for a GPU-heavy project where version mismatches can cause subtle failures.
Fix: Generate and commit a requirements-lock.txt (or poetry.lock / pip-compile output) with exact pinned versions of all dependencies and transitive dependencies. Update the Getting Started guide to recommend installing from the lock file. Include a script or CI step to keep it fresh.
- mediumPath To Contribute+8 pts if fixed
No issue/PR templates for core code contributions; API-node-only template
The .github/PULL_REQUEST_TEMPLATE/ contains api-node.md but no general template for core ComfyUI changes. This leaves contributors guessing about what to document, test, or explain in their PR description. The lack of beginner-friendly issue labels or 'good first issue' tracking makes it hard to find entry points.
Fix: Create .github/PULL_REQUEST_TEMPLATE.md with sections for: (1) what changed and why, (2) related issue number, (3) testing checklist (unit tests, manual test steps), (4) breaking changes or migration notes. In the issues list, add 'good-first-issue' and 'help-wanted' labels to tractable problems suitable for newcomers.
- mediumGetting Running+7 pts if fixed
Manual install section in README is truncated; full steps are not visible
The README text ends abruptly with 'R' under the keyboard shortcuts, suggesting the manual installation instructions are cut off or missing from the snapshot. Without access to the full guide, a newcomer following the README directly cannot complete setup without hunting for docs elsewhere.
Fix: Ensure the full Manual Install section is present and complete in the README. Include OS-specific commands for Windows, Linux, and macOS, plus GPU-specific guidance (NVIDIA, AMD, Intel, Apple Silicon). If the section is too long, move it to INSTALL.md and link from the README.
- lowOpen Door+4 pts if fixed
No code of conduct or behavioral guidelines for the community
While Discord and Matrix channels are active and linked, there is no CODE_OF_CONDUCT.md or GOVERNANCE.md in the repo to set expectations for respectful, inclusive participation. This is a light risk for a large open-source project and can lead to friction or unclear resolution when conflicts arise.
Fix: Add a CODE_OF_CONDUCT.md file (e.g., using the Contributor Covenant) and link it prominently in the README and CONTRIBUTING.md. Keep it concise and include a clear path to report violations (e.g., email or Discord moderation team).
Show your score
[](https://latch.fyi/comfyanonymous/comfyui)Share this analysis
https://latch.fyi/comfyanonymous/comfyuiFixed some issues? Re-analyze to measure your progress →
Copy the whole report
Grab the entire verdict in one go — a Markdown block for a README or an issue, plain text, or a prompt you can paste straight into an LLM.