Scrapegraph-ai
AGENTS.md32k starsChanged 22 months agoMITView on GitHub
Instructions for AI coding agents (Claude Code, Codex, Cursor, Copilot agents, …) working on ScrapeGraphAI. Human contributors should read CONTRIBUTING.md; everything here is in addition to it. main is never written to directly. All work is based on and merged into pre/beta. pre/beta is the prerelease branch: pushes to it publish a beta prerelease via semantic-release (see .releaserc.yml). main only receives releases when a maintainer promotes pre/beta. Checklist before you commit: If a task genuinely requires targeting main (e.g. a…
- Reads credentials
- Commits and pushes
We split this AGENTS.md into the rules it gives an agent
10 rules. About 0 are common, 6 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 38
If a task genuinely requires targeting main (e.g.
- Very specific: line 50
Never hand-edit uv.lock; regenerate it with uv lock / uv sync and commit the result only when you actually changed dependencies in …
- Very specific: line 62
Run at least make lint and the tests covering what you touched.
- Very specific: line 121
When adding a node or graph, register it in the corresponding __init__.py and add a test under tests/ next to the existing ones for that …
- Distinctive: line 128
Prefer small, reviewable diffs.
- Distinctive: line 129
Do not add dependencies unless the task requires it — say why in the PR.
- Distinctive: line 130
Write all commits, PR titles/bodies, issue comments, code comments and docstrings in English.
- Distinctive: line 132
Do not delete or rewrite existing tests to make a change pass.
- Very specific: line 133
If a test is already failing on pre/beta, mention it rather than silently fixing unrelated things in the same PR.
- Distinctive: line 135
Never commit other people's in-progress work: check git status and stage only the files belonging to your change.
≈ “Common” is an estimate: at least 1 in 5 of the 36,368 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
AGENTS.md
Instructions for AI coding agents (Claude Code, Codex, Cursor, Copilot agents, …) working on ScrapeGraphAI. Human contributors should read CONTRIBUTING.md; everything here is in addition to it.
1. Golden rule: everything goes to pre/beta
main is never written to directly. All work is based on and merged into pre/beta.
pre/beta is the prerelease branch: pushes to it publish a beta prerelease via
semantic-release (see .releaserc.yml). main only receives releases when a
maintainer promotes pre/beta.
# 1. always start from an up-to-date pre/beta
git fetch origin
git checkout -b feat/my-change origin/pre/beta
# 2. commit your work
git add <only the files you touched>
git commit -m "feat(nodes): add X"
# 3. push and open the PR against pre/beta
git push -u origin feat/my-change
gh pr create --base pre/beta --title "feat(nodes): add X" --body "..."Checklist before you commit:
- The branch is based on
origin/pre/beta(git merge-base --is-ancestor origin/pre/beta HEAD). - The PR base is
pre/beta, notmain. - No commits directly on
mainorpre/beta, no force-push to either. - One logical change per branch/PR.
If a task genuinely requires targeting main (e.g. a hotfix on a released
version), stop and ask a maintainer first.
2. Environment setup
Python >=3.12, dependencies managed with uv:
uv sync # create the venv and install deps
uv run pre-commit install # install the git hooksNever hand-edit uv.lock; regenerate it with uv lock / uv sync and commit
the result only when you actually changed dependencies in pyproject.toml.
3. Checks to run before pushing
make lint # ruff + black --check + isort --check-only
make type-check # mypy (strict)
make test # pytest with coverage
make pre-commit # run all hooks on all filesRun at least make lint and the tests covering what you touched. Report the
real result: if something fails or you skipped a step, say so in the PR
description instead of implying a clean run.
Style: PEP 8 + Google Python docstrings, black formatting, line length 88.
Match the conventions of the surrounding file rather than introducing new ones.
4. Commit messages
Commits are parsed by semantic-release (Conventional Commits, conventionalcommits
preset), so the message decides the next version number. Use:
feat: ✨ new feature -> minor bump
fix: 🐛 bug fix -> patch bump
docs: 📚 documentation
style: 💅 formatting only
refactor: ♻️ no behaviour change
perf: ⚡ performance
test: 🧪 tests
build: 📦 build system / deps
ci: 🤖 CI configuration
chore: 🧹 everything elseFormat: type(optional-scope): imperative summary, optional body, and
BREAKING CHANGE: in the footer for incompatible changes. Reference issues with
Fixes #123.
5. Files agents must not touch
CHANGELOG.mdand theversionfield inpyproject.toml— owned by semantic-release; editing them by hand breaks releases.- Git tags and release notes on GitHub.
.github/workflows/*— only when the task is explicitly about CI.- Anything under
htmlcov/,coverage.xml,.pytest_cache/,__pycache__/: build artifacts, never commit them.
Also: never commit secrets. API keys go in a local .env (git-ignored) and are
read via os.getenv; examples and tests must use placeholders such as
OPENAI_APIKEY from the environment.
6. Repository layout
scrapegraphai/
├── graphs/ # pipelines (SmartScraperGraph, SearchGraph, …)
├── nodes/ # single graph steps (FetchNode, ParseNode, GenerateAnswerNode, …)
├── models/ # LLM wrappers and token/model metadata
├── docloaders/ # loaders (ChromiumLoader, …)
├── prompts/ # prompt templates
├── helpers/ # shared constants and schemas
├── integrations/ # third-party / managed-API integrations
└── utils/ # utilities (html cleanup, tokenization, …)
examples/ # runnable usage examples, one folder per graph
tests/ # pytest suite, mirrors the package layout
docs/ # documentation sourcesWhen adding a node or graph, register it in the corresponding __init__.py and
add a test under tests/ next to the existing ones for that layer. New
user-facing features need an entry in examples/ and, when they change public
behaviour, a docs update.
7. Working style expected from agents
- Prefer small, reviewable diffs; do not reformat or "clean up" untouched files.
- Do not add dependencies unless the task requires it — say why in the PR.
- Write all commits, PR titles/bodies, issue comments, code comments and docstrings in English.
- Do not delete or rewrite existing tests to make a change pass.
- If a test is already failing on
pre/beta, mention it rather than silently fixing unrelated things in the same PR. - Never commit other people's in-progress work: check
git statusand stage only the files belonging to your change.
Trending
More talk lately.about the whole repository
Who's talking about ScrapeGraphAI/Scrapegraph-ai
- Migue Baena IA“Extrae información y datos de internet GRATIS”YouTube · Sep 18, 2026 · 36k views
- ScrapeGraphAI“Scrapegraphai Usecase”YouTube · May 2, 2024 · 18k views
- Артемий Миллер про Вайб-кодинг“Репозиторий: https://github.com/ScrapeGraphAI/Scrapegraph-ai/tree/main”YouTube · Aug 13, 2026 · 5.9k views
- Vantage Leaps“Scrape ANY Website & Docs with AI: ScrapeGraphAI + Ollama| FULLY LOCAL + FREE #ai #llm #webscraping”YouTube · Dec 30, 2024 · 5.7k views
- Made By Agents“Next-Level AI Web Scraping: ScrapeGraphAI Tutorial”YouTube · Mar 3, 2025 · 3.4k views
The biggest 5 of 52 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 52
Talked about on YouTube, GitHub, Bluesky, Hacker News, Stack Overflow and the web (52 times).
On YouTube · 25
- Sep 18, 2026Extrae información y datos de internet GRATIS — Migue Baena IA36k views · 19 comments
- May 2, 2024Scrapegraphai Usecase — ScrapeGraphAI18k views · 28 comments
- Aug 13, 2026Репозиторий: https://github.com/ScrapeGraphAI/Scrapegraph-ai/tree/main — Артемий Миллер про Вайб-кодинг5.9k views · 2 comments
- Dec 30, 2024Scrape ANY Website & Docs with AI: ScrapeGraphAI + Ollama| FULLY LOCAL + FREE #ai #llm #webscraping — Vantage Leaps5.7k views · 3 comments
- Mar 3, 2025Next-Level AI Web Scraping: ScrapeGraphAI Tutorial — Made By Agents3.4k views · 4 comments
20 more on YouTube
- Sep 25, 2026Stop Paying for Web Scraping — Use These 3 Claude Skills — Vadym | AI Agentic Hub1.9k views · 1 comment
- Oct 18, 2026AI Lead Generation That Runs Every Morning (Free Open-Source Scraper) #Shorts — HAMMAD YOUSUF1.4k views · 1 comment
- Sep 2, 2026İnternetteki Verileri Ücretsiz Toplayan Yapay Zekâ Aracı 🕷️ — Future with Serdar1.3k views
- Aug 17, 2026Exposing „Useful“ GitHub Repos | ScrapeGraph AI — Shawn | Operations Automation1.1k views · 1 comment
- May 3, 2026The Web Just Closed Against AI. These 5 Scrapers Are Harvesting What's Left (204k Stars). #Shorts — Willm829 views
- Sep 5, 2026Web Scraping is now a prompt #ai #learning #technology — Future, Figured Out790 views
- Aug 30, 2026The Claude Scraper Plugin Is Not The Open Source One — Renato Dinis | Build With AI766 views
- Sep 22, 2026Claude Code scrapt jetzt jede Website für dich — Vishal Punia | KI-Builder473 views · 1 comment
- Jun 26, 2026This open-source tool scrapes any website in plain English — Marvomatic | AI Automations383 views
- Oct 6, 2026ScrapeGraphAI: Efficient Web Scraping with AI — Dann Paker AI378 views
- Dec 28, 2024ScrapeGraphAI: Best Open Source LLM Scraping Pipeline Framework — DevsKingdom344 views · 8 comments
- Sep 27, 2026Is Claude Code The Best Way To Build Lead Lists? #ClaudeCode #AI #Tech — Devini 136 views · 5 comments
- Jul 19, 2026The most Overlooked $10k/M Product Niches Anyone Can Start Outside AI — Evgeny Shkuratov 133 views · 3 comments
- Oct 8, 2026Web scraping with AI? 🤯 Meet ScrapeGraphAI. — Vikas Patel110 views
- Sep 15, 2026Dieses kostenlose Werkzeug holt dir jede Seite im Netz als saubere Liste — Kris • AI2ROI98 views · 1 comment
- Jun 26, 2025Scrape Any Website with AI Agents – ScrapeGraphAI Demo #ai #chatgpt #aiagents #scrapers — Gopi N96 views · 2 comments
- Sep 1, 2026让大模型把网页抓成结构化 JSON(ScrapeGraphAI,开源) — 知几AI40 views
- Jan 31, 2025CodeBeaver 1 Minute Demo — CodeBeaver40 views
- Sep 30, 2026In ScrapeGraphAI: Web Scraping Just Changed Forever 🤖 — thisruptiv tech22 views · 1 comment
- Sep 22, 2026Tämä ilmainen tekoälytyökalu ScrapeGraphAI kaapii mitä tahansa netistä. — Michaela Minds6 views
On GitHub · 21
- Sep 2, 2024Package request: Scrapegraph-ai — NixOS/nixpkgs1 reaction · 1 comment
- Oct 26, 2026Evaluate Scrapling MCP, ScrapeGraphAI and Agent Reach under SAM — borvat/sam-greenfield0 reactions
- Oct 24, 2026build(deps): Bump the pip group with 6 updates — SanHsien/social-ai-scraper-analysis0 reactions · 2 comments
- Oct 3, 2026TOOL-REGISTER - Every tool that an agent or the interface could use is judged once, and the discarded ones keep their reason — gabriel-neutron/GAB0 reactions · 2 comments
- Sep 27, 2026Expand curated web crawler and scraper backend fabric — sphangcho203-afk/Web-Scrapping-CLI0 reactions · 2 comments
16 more on GitHub
- Sep 26, 2026Add scrapegraphai as a project dependency — nagadattasaikondoju-ship-it/multi-platform-content-and-publish-agent0 reactions · 1 comment
- Sep 11, 2026[Skill] ScrapeGraphAI/Scrapegraph-ai — rohitg00/skillkit0 reactions · 1 comment
- Aug 15, 2026fix(mcdonalds): run headed instead of headless — mcdonalds.com blocks headless Chromium — sefij/MacroProFood0 reactions · 1 comment
- Jun 22, 2026feat: ScrapeGraphAI-primary web/social scrape+search provider (Firecrawl fallback) — alphaomegaintegration/secfedclaw-watch-v20 reactions
- May 23, 2026feat: add scrapegraph-ai template — Phala-Network/phala-cloud0 reactions · 1 comment
- May 18, 2026Support self-hosted open-source alternative to Firecrawl — amantus-ai/llm-codes0 reactions · 2 comments
- May 15, 2026[RFC] Transition to LLM-Powered Extraction Layer via ScrapeGraphAI — purvanshjoshi/Price-Tracker0 reactions · 3 comments
- Feb 2, 2026[Integration]: ScrapeGraphAI - AI-Powered Web Scraping with Natural Language — aden-hive/hive0 reactions · 4 comments
- Jan 21, 2026add https://github.com/ScrapeGraphAI/Scrapegraph-ai — ScrapeRouter/awesome-scraping0 reactions · 1 comment
- Oct 23, 2025[deepseek提示词.txt](https://github.com/user-attachments/files/18794067/deepseek.txt) — dl666123/dl666123.github.io0 reactions
- Aug 24, 2025The symmetrical twisterscraper — kash831/symmetrical-sniffle0 reactions · 1 comment
- Apr 22, 2025[Bug] TypeError: cannot pickle '_thread.RLock' object (Memory v2 + Ollama) — agno-agi/agno0 reactions · 3 comments
- Feb 13, 2025Fixed error when chunks=['\n\n'] in chunk method — isaacus-dev/semchunk0 reactions · 1 comment
- Aug 23, 2024Exception: Connection closed while reading from the driver — microsoft/playwright-python0 reactions · 5 comments
- Jul 23, 2024Exploring AI/LLM Scrapers for New Sources — bitcoinsearch/scraper0 reactions · 2 comments
- Apr 2, 2024一些好用的软件工具 — liuyang-f/liuyang-f.github.io0 reactions · 1 comment
On Bluesky · 3
- May 16, 2025There are browser-use.com for automation browser with LLM and github.com/ScrapeGraphA... specifically for scrapping — @vitonsky.bsky.social2 likes and reposts
- Sep 10, 2026Web scraping with a prompt. 🕷️ ScrapeGraphAI extracts structured data from websites and local files. It's an open-source Python library… — @accessfreetools.bsky.social1 likes and repost
- Jun 18, 2025GitHub repo → github.com/ScrapeGraph... — @arindam-1729.bsky.social0 likes and reposts · 1 reply
On Hacker News · 1
- May 20, 2025ScrapeGraphAI: You Only Scrape Once2 points
On Stack Overflow · 1
- Aug 12, 2024Model not found Scrapegraph-ai0 votes · 2 answers
On the web · 1
- Sep 5, 2024How to Use ScrapeGraph AI for Web Scraping — capsolver.com
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 28,693 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

