browser-use/browser-usePublic

๐ŸŒ Make websites accessible for AI agents. Automate tasks online with ease.

AI summary: Browser Use is an open-source library that enables AI agents to interact with and automate web browsers seamlessly.

Stars
108.2K
+104 today
Forks
11.9K
Watchers
449
Open issues
90
Open PRs
256
Contributors
~351
Commits
10K
Branches
557

PythonMITCreated Oct 31, 2024Last push todayLatest release 0.13.7+754 stars this week+1K this month

Star history

since Dec 22, 2024
050K100KDec 2024Jul 2025Jan 2026Aug 2026
108.2K stars as of Aug 7, 2026, tracked back to Dec 22, 2024. Historical curve reconstructed from public GitHub event archives, calibrated to the current total.

Contribution activity

commits per day, last 52 weeks
AugSepOctNovDecJanFebMarAprMayJunJulAugMonWedFri2025-08-10: 28 commits2025-08-11: 29 commits2025-08-12: 62 commits2025-08-13: 10 commits2025-08-14: 49 commits2025-08-15: 7 commits2025-08-16: 14 commits2025-08-17: 9 commits2025-08-18: 47 commits2025-08-19: 48 commits2025-08-20: 32 commits2025-08-21: 36 commits2025-08-22: 24 commits2025-08-23: 3 commits2025-08-24: 34 commits2025-08-25: 40 commits2025-08-26: 97 commits2025-08-27: 42 commits2025-08-28: 18 commits2025-08-29: 73 commits2025-08-30: 32 commits2025-08-31: 78 commits2025-09-01: 28 commits2025-09-02: 56 commits2025-09-03: 48 commits2025-09-04: 26 commits2025-09-05: 16 commits2025-09-06: 100 commits2025-09-07: 59 commits2025-09-08: 61 commits2025-09-09: 20 commits2025-09-10: 5 commits2025-09-11: 23 commits2025-09-12: 19 commits2025-09-13: 7 commits2025-09-14: 13 commits2025-09-15: 21 commits2025-09-16: 35 commits2025-09-17: 39 commits2025-09-18: 60 commits2025-09-19: 39 commits2025-09-20: 10 commits2025-09-21: 4 commits2025-09-22: 27 commits2025-09-23: 24 commits2025-09-24: 5 commits2025-09-25: 3 commits2025-09-26: 20 commits2025-09-27: 0 commits2025-09-28: 0 commits2025-09-29: 12 commits2025-09-30: 4 commits2025-10-01: 18 commits2025-10-02: 7 commits2025-10-03: 13 commits2025-10-04: 13 commits2025-10-05: 42 commits2025-10-06: 1 commit2025-10-07: 2 commits2025-10-08: 26 commits2025-10-09: 33 commits2025-10-10: 2 commits2025-10-11: 36 commits2025-10-12: 44 commits2025-10-13: 40 commits2025-10-14: 22 commits2025-10-15: 8 commits2025-10-16: 11 commits2025-10-17: 10 commits2025-10-18: 0 commits2025-10-19: 10 commits2025-10-20: 13 commits2025-10-21: 42 commits2025-10-22: 26 commits2025-10-23: 34 commits2025-10-24: 94 commits2025-10-25: 41 commits2025-10-26: 62 commits2025-10-27: 33 commits2025-10-28: 20 commits2025-10-29: 62 commits2025-10-30: 53 commits2025-10-31: 26 commits2025-11-01: 30 commits2025-11-02: 9 commits2025-11-03: 16 commits2025-11-04: 3 commits2025-11-05: 9 commits2025-11-06: 31 commits2025-11-07: 19 commits2025-11-08: 11 commits2025-11-09: 1 commit2025-11-10: 9 commits2025-11-11: 28 commits2025-11-12: 58 commits2025-11-13: 16 commits2025-11-14: 11 commits2025-11-15: 10 commits2025-11-16: 5 commits2025-11-17: 8 commits2025-11-18: 31 commits2025-11-19: 5 commits2025-11-20: 22 commits2025-11-21: 14 commits2025-11-22: 22 commits2025-11-23: 5 commits2025-11-24: 14 commits2025-11-25: 6 commits2025-11-26: 37 commits2025-11-27: 6 commits2025-11-28: 9 commits2025-11-29: 21 commits2025-11-30: 2 commits2025-12-01: 2 commits2025-12-02: 4 commits2025-12-03: 11 commits2025-12-04: 2 commits2025-12-05: 2 commits2025-12-06: 1 commit2025-12-07: 2 commits2025-12-08: 4 commits2025-12-09: 16 commits2025-12-10: 9 commits2025-12-11: 2 commits2025-12-12: 9 commits2025-12-13: 1 commit2025-12-14: 9 commits2025-12-15: 7 commits2025-12-16: 12 commits2025-12-17: 11 commits2025-12-18: 8 commits2025-12-19: 5 commits2025-12-20: 0 commits2025-12-21: 4 commits2025-12-22: 5 commits2025-12-23: 13 commits2025-12-24: 0 commits2025-12-25: 4 commits2025-12-26: 1 commit2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 2 commits2026-01-04: 0 commits2026-01-05: 4 commits2026-01-06: 2 commits2026-01-07: 2 commits2026-01-08: 3 commits2026-01-09: 0 commits2026-01-10: 9 commits2026-01-11: 2 commits2026-01-12: 1 commit2026-01-13: 0 commits2026-01-14: 1 commit2026-01-15: 10 commits2026-01-16: 7 commits2026-01-17: 0 commits2026-01-18: 2 commits2026-01-19: 5 commits2026-01-20: 0 commits2026-01-21: 8 commits2026-01-22: 2 commits2026-01-23: 22 commits2026-01-24: 6 commits2026-01-25: 18 commits2026-01-26: 12 commits2026-01-27: 16 commits2026-01-28: 6 commits2026-01-29: 15 commits2026-01-30: 29 commits2026-01-31: 48 commits2026-02-01: 6 commits2026-02-02: 39 commits2026-02-03: 17 commits2026-02-04: 11 commits2026-02-05: 14 commits2026-02-06: 1 commit2026-02-07: 0 commits2026-02-08: 16 commits2026-02-09: 33 commits2026-02-10: 57 commits2026-02-11: 32 commits2026-02-12: 29 commits2026-02-13: 0 commits2026-02-14: 1 commit2026-02-15: 3 commits2026-02-16: 6 commits2026-02-17: 14 commits2026-02-18: 10 commits2026-02-19: 13 commits2026-02-20: 8 commits2026-02-21: 10 commits2026-02-22: 6 commits2026-02-23: 14 commits2026-02-24: 13 commits2026-02-25: 7 commits2026-02-26: 5 commits2026-02-27: 2 commits2026-02-28: 3 commits2026-03-01: 37 commits2026-03-02: 12 commits2026-03-03: 4 commits2026-03-04: 1 commit2026-03-05: 0 commits2026-03-06: 3 commits2026-03-07: 3 commits2026-03-08: 5 commits2026-03-09: 1 commit2026-03-10: 19 commits2026-03-11: 14 commits2026-03-12: 19 commits2026-03-13: 0 commits2026-03-14: 0 commits2026-03-15: 6 commits2026-03-16: 8 commits2026-03-17: 7 commits2026-03-18: 16 commits2026-03-19: 35 commits2026-03-20: 7 commits2026-03-21: 26 commits2026-03-22: 16 commits2026-03-23: 12 commits2026-03-24: 21 commits2026-03-25: 39 commits2026-03-26: 8 commits2026-03-27: 1 commit2026-03-28: 3 commits2026-03-29: 1 commit2026-03-30: 8 commits2026-03-31: 10 commits2026-04-01: 60 commits2026-04-02: 24 commits2026-04-03: 1 commit2026-04-04: 0 commits2026-04-05: 2 commits2026-04-06: 0 commits2026-04-07: 2 commits2026-04-08: 11 commits2026-04-09: 0 commits2026-04-10: 2 commits2026-04-11: 11 commits2026-04-12: 8 commits2026-04-13: 1 commit2026-04-14: 3 commits2026-04-15: 8 commits2026-04-16: 0 commits2026-04-17: 0 commits2026-04-18: 0 commits2026-04-19: 1 commit2026-04-20: 23 commits2026-04-21: 2 commits2026-04-22: 1 commit2026-04-23: 3 commits2026-04-24: 1 commit2026-04-25: 0 commits2026-04-26: 2 commits2026-04-27: 0 commits2026-04-28: 0 commits2026-04-29: 0 commits2026-04-30: 2 commits2026-05-01: 5 commits2026-05-02: 3 commits2026-05-03: 0 commits2026-05-04: 2 commits2026-05-05: 2 commits2026-05-06: 4 commits2026-05-07: 0 commits2026-05-08: 2 commits2026-05-09: 3 commits2026-05-10: 0 commits2026-05-11: 2 commits2026-05-12: 0 commits2026-05-13: 1 commit2026-05-14: 0 commits2026-05-15: 0 commits2026-05-16: 0 commits2026-05-17: 1 commit2026-05-18: 30 commits2026-05-19: 5 commits2026-05-20: 3 commits2026-05-21: 0 commits2026-05-22: 19 commits2026-05-23: 12 commits2026-05-24: 0 commits2026-05-25: 6 commits2026-05-26: 0 commits2026-05-27: 0 commits2026-05-28: 0 commits2026-05-29: 0 commits2026-05-30: 0 commits2026-05-31: 0 commits2026-06-01: 7 commits2026-06-02: 53 commits2026-06-03: 196 commits2026-06-04: 61 commits2026-06-05: 55 commits2026-06-06: 8 commits2026-06-07: 0 commits2026-06-08: 28 commits2026-06-09: 13 commits2026-06-10: 1 commit2026-06-11: 6 commits2026-06-12: 5 commits2026-06-13: 2 commits2026-06-14: 0 commits2026-06-15: 2 commits2026-06-16: 0 commits2026-06-17: 0 commits2026-06-18: 0 commits2026-06-19: 0 commits2026-06-20: 7 commits2026-06-21: 0 commits2026-06-22: 0 commits2026-06-23: 0 commits2026-06-24: 0 commits2026-06-25: 0 commits2026-06-26: 8 commits2026-06-27: 3 commits2026-06-28: 1 commit2026-06-29: 15 commits2026-06-30: 0 commits2026-07-01: 27 commits2026-07-02: 2 commits2026-07-03: 2 commits2026-07-04: 1 commit2026-07-05: 0 commits2026-07-06: 18 commits2026-07-07: 32 commits2026-07-08: 6 commits2026-07-09: 10 commits2026-07-10: 2 commits2026-07-11: 5 commits2026-07-12: 3 commits2026-07-13: 1 commit2026-07-14: 2 commits2026-07-15: 7 commits2026-07-16: 11 commits2026-07-17: 0 commits2026-07-18: 1 commit2026-07-19: 0 commits2026-07-20: 3 commits2026-07-21: 2 commits2026-07-22: 25 commits2026-07-23: 12 commits2026-07-24: 17 commits2026-07-25: 1 commit2026-07-26: 0 commits2026-07-27: 3 commits2026-07-28: 4 commits2026-07-29: 1 commit2026-07-30: 4 commits2026-07-31: 1 commit2026-08-01: 0 commits2026-08-02: 59 commits2026-08-03: 4 commits2026-08-04: 9 commits2026-08-05: 0 commits2026-08-06: 0 commits2026-08-07: 0 commits2026-08-08: 0 commits
5,010 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Landmark project

    108,175 stars

  • Very active

    5,010 commits in 52 weeks

  • Community-driven

    ~351 contributors

  • Permissive license

    MIT

  • Continuous integration

    Automated checks passing

  • Repeat trending

    3 trending appearances

  • Top 10% tracked

    Rank 57 of 1058

What browser-use does

Browser Use is a Python library that bridges the gap between Large Language Models (LLMs) and web browsers. It provides a framework that allows AI agents to navigate websites, click elements, fill forms, and extract information just like a human user. By translating natural language instructions into Playwright automation scripts, it enables agents to perform complex, multi-step web tasks autonomously. It handles the complexities of dynamic web elements, making websites accessible for AI automation.

This library is for Python developers and AI researchers looking to build agents capable of web interaction. It's ideal for those who need to automate complex web tasks using natural language reasoning.

  • Feature: Translates natural language instructions into actionable browser interactions using LLMs.
  • Feature: Built on top of Playwright for robust, cross-browser automation and scraping.
  • Feature: Handles dynamic content and complex web UI elements automatically.
  • Feature: Provides a simple Python API for integrating browser capabilities into custom AI agents.
  • Feature: Supports various LLMs to power the reasoning behind the browser actions.

Where teams use it

Automated Web Scraping

Developers building tools to extract data from complex, JavaScript-heavy websites using natural language prompts.

QA Testing Automation

QA engineers creating automated end-to-end browser tests by simply describing the user journey.

Personal AI Assistants

Users creating autonomous agents capable of performing web-based tasks like booking flights or managing accounts.

Workflow Automation

Teams automating repetitive web interactions across different SaaS platforms without writing complex scripts.

Getting started: pip install browser-use

README

main branch
Shows a black Browser Use Logo in light color mode and a white one in dark color mode.
The AI browser agent.
Browser-Use Package Download Statistics

Demos Docs Blog Merch Github Stars Twitter Discord Browser-Use Cloud

What can Browser Use do?

Browser Use lets an AI agent use a web browser the same way you do โ€” it opens pages, clicks buttons, types, and fills in forms. You describe the task, and it completes it. For example, you can have it:

๐Ÿ“‹ Fill Forms

Task: "Fill in this job application with my resume and information."

Job Application Demo

Example code โ†—

๐ŸŽ Extract data

Task: "Extract structured data about my followers and export it as a CSV."

extract-followers.mp4

Browser Use Cloud Docs โ†—

๐Ÿ’ป QA Automation

Task: "QA test my local website and report any bugs, usability issues, and visual inconsistencies."

qa-demo-small

Browser Use CLI โ†—


Quickstart

If you want to use Browser Use in your agent (Claude Code, Codex, Cursor, Hermes, OpenClaw, etc.), paste this prompt, and it sets everything up itself:

Install or upgrade browser-use to the latest stable version with uv using Python 3.12, run `browser-use skill install` to register the skill, and connect it to my browser. If setup or connection fails, follow https://github.com/browser-use/browser-harness/blob/main/install.md.

Then tell your agent what you want done.


Python library: the easiest way to automate the web

Want to automate the web at scale, from your own code, and with any LLM? Use the Python library:

1. Install Browser Use (Python >= 3.11):

uv add browser-use
# or: pip install browser-use

2. Add your LLM API key to .env. Get one from Browser Use Cloud, or bring your own provider key:

# .env
BROWSER_USE_API_KEY=your-key
# GOOGLE_API_KEY=your-key
# ANTHROPIC_API_KEY=your-key

3. Run your first agent:

import asyncio

from browser_use import Agent, ChatBrowserUse

async def main():
    agent = Agent(
        task="Find the number of stars of the browser-use repo",
        llm=ChatBrowserUse(model='openai/gpt-5.5'),
        # llm=ChatBrowserUse(model='bu-2-0'),  # Browser Use's optimized model
        # llm=ChatOpenAI(model='gpt-5.5'),
        # llm=ChatAnthropic(model='claude-opus-4-8'),  # Sonnet also works well
    )
    history = await agent.run()

if __name__ == "__main__":
    asyncio.run(main())

Check out the library docs and the cloud docs for more!


Open Source vs Cloud

BU Bench V1 - LLM Success Rates

We benchmark Browser Use across 100 real-world browser tasks. Full benchmark is open source: browser-use/benchmark.

Browser Use is also #1 on the Odysseys leaderboard with an 87.4% average, ahead of computer-use agents from OpenAI, Anthropic, Google, and Microsoft. Odysseys measures the agent's performance on 200 long-horizon web tasks.

Use the Open-Source Agent

  • Free, and runs on your own machine
  • Deep code-level integration and control: pick your LLM, customize the agent's behavior
  • We recommend pairing it with our cloud browsers for leading stealth, proxy rotation, and scaling

Use the Fully-Hosted Cloud Agent (recommended)

  • Much more powerful agent for complex tasks (see plot above)
  • Easiest way to start and scale
  • Best stealth with proxy rotation and captcha solving
  • 1000+ integrations (Gmail, Slack, Notion, and more)
  • Persistent filesystem and memory
curl -X POST https://api.browser-use.com/api/v4/runs \
  -H "X-Browser-Use-API-Key: $BROWSER_USE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"task": "Your task"}'

Integrations, hosting, custom tools, MCP, and more on our Docs โ†—


FAQ

Should I use the CLI vs. the Python library?

Use the CLI if you already have an agent (Claude Code, Codex, Cursor, Hermes, OpenClaw, etc.) that you want to complete browser tasks for you. The agent installs the skill once (see Quickstart) and can then control the browser. Examples:

  • "Upload this video to YouTube"
  • "Compare these three laptops and give me a table with prices"
  • "Fill in this job application with my resume"

Use the Python library when you are building software that automates the web. Examples:

  • Run many tasks on a schedule or in parallel (scraping, monitoring, QA)
  • Embed a browser agent into your own product
  • Custom tools, custom system prompts, structured output, fine-grained browser control

Rule of thumb: one-off tasks through an agent โ†’ CLI. Repeatable automation in code โ†’ Python library.

What's the best model to use?

We optimized ChatBrowserUse() specifically for browser automation tasks. On avg it completes tasks 3-5x faster than other models with SOTA accuracy.

For pricing and other LLM providers, see our supported models documentation.

Can I use Claude / GPT / Gemini through ChatBrowserUse?

Yes. ChatBrowserUse accepts provider-prefixed model ids, so a single BROWSER_USE_API_KEY reaches all of them โ€” no separate OpenAI/Anthropic/Google keys required:

from browser_use import Agent, ChatBrowserUse

llm = ChatBrowserUse(model='anthropic/claude-sonnet-4-6')  # or 'openai/gpt-5.5', 'google/gemini-3-pro'
agent = Agent(task='...', llm=llm)

For the best speed and cost we still recommend the default bu-* models.

Should I use the Browser Use system prompt with the open-source preview model?

Yes. If you use ChatBrowserUse(model='browser-use/bu-30b-a3b-preview') with a normal Agent(...), Browser Use still sends its default agent system prompt for you.

You do not need to add a separate custom "Browser Use system message" just because you switched to the open-source preview model. Only use extend_system_message or override_system_message when you intentionally want to customize the default behavior for your task.

If you want the best default speed/accuracy, we still recommend the newer hosted bu-* models. If you want the open-source preview model, the setup stays the same apart from the model= value.

Can I use custom tools with the agent?

Yes! You can add custom tools to extend the agent's capabilities:

from browser_use import Tools

tools = Tools()

@tools.action(description='Description of what this tool does.')
def custom_tool(param: str) -> str:
    return f"Result: {param}"

agent = Agent(
    task="Your task",
    llm=llm,
    browser=browser,
    tools=tools,
)
Can I use this for free?

Yes! Browser-Use is open source and free to use. You only need to choose an LLM provider (like OpenAI, Google, ChatBrowserUse, or run local models with Ollama).

Terms of Service

This open-source library is licensed under the MIT License. For Browser Use services & data policy, see our Terms of Service and Privacy Policy.

How do I handle authentication?

Check out our authentication examples:

These examples show how to maintain sessions and handle authentication seamlessly.

How do I solve CAPTCHAs?

For CAPTCHA handling, you need better browser fingerprinting and proxies. Use Browser Use Cloud which provides stealth browsers designed to avoid detection and CAPTCHA challenges.

How do I go into production?

Chrome can consume a lot of memory, and running many agents in parallel can be tricky to manage.

For production use cases, use our Browser Use Cloud API which handles:

  • Scalable browser infrastructure
  • Memory management
  • Proxy rotation
  • Stealth browser fingerprinting
  • High-performance parallel execution

Citation

If you use Browser Use in your research or project, please cite:

@software{browser_use2024,
  author = {Mรผller, Magnus and ลฝuniฤ, Gregor},
  title = {Browser Use: Enable AI to control your browser},
  year = {2024},
  publisher = {GitHub},
  url = {https://github.com/browser-use/browser-use}
}

Tell your computer what to do, and it gets it done.

Twitter Follow โ€ƒโ€ƒโ€ƒ Twitter Follow

Made with โค๏ธ in Zurich and San Francisco
View on GitHub

Recent activity

commits and pull requests

Releases and announcements

134 total
  1. 0.13.70.13.7Jul 27, 2026

    Ships the latest version of the CLI, which includes bug fixes and better browser management. ## What's Changed * fix: dont send default params in gemini genconfig by @markmcd in https://github.com/browser-use/browser-use/pull/5173 * Fix tool name in flash prompts: replace_file_str -> replace_file by @MagMueller in https://github.com/browser-use/browser-use/pull/5272 * fix: handle file:// urls in _extract_start_url by @laithrw in https://github.com/browser-use/browser-use/pull/5276 * extract: stop auto-inheriting output_model_schema into per-page extraction by @MagMueller in https://github.com/browser-use/browser-use/pull/5278 * Fix clear-to-empty on React controlled inputs (native value setter) by @MagMueller in https://github.com/browser-use/browser-use/pull/5274 * Gate the skeleton-screen 'still loading?' hint on in-flight network requests by @MagMueller in https://github.com/browser-use/browser-use/pull/5273 * Fix nested cross-origin iframe extraction filtering by @MagMueller in https://github.com/browser-use/browser-use/pull/5290 * Keep selector indices unique across CDP sessions by @MagMueller in https://github.com/browser-use/browser-use/pull/5291 * fix(browser):

  2. 0.13.60.13.6Jul 17, 2026

    ## What's Changed * Release 0.13.6 with Browser Harness 0.1.6 by @gregpr07 in https://github.com/browser-use/browser-use/pull/5245 **Full Changelog**: https://github.com/browser-use/browser-use/compare/0.13.5...0.13.6

  3. 0.13.50.13.5Jul 17, 2026

    ## What's Changed * Update README.md by @ShawnPana in https://github.com/browser-use/browser-use/pull/5197 * feat: accept bu-qa-1 model alias in ChatBrowserUse by @Alezander9 in https://github.com/browser-use/browser-use/pull/5226 * support MCP registry by @laithrw in https://github.com/browser-use/browser-use/pull/5242 * Bump browser-use version to 0.13.5 + sync BH by @laithrw in https://github.com/browser-use/browser-use/pull/5243 **Full Changelog**: https://github.com/browser-use/browser-use/compare/0.13.4...0.13.5

  4. 0.13.40.13.4Jul 11, 2026

    ## What's Changed - MCP server for CLI 3.0: shared MCP runner, `max_dim` guard. - Fix navigation readiness detection: per-target lifecycle event storage, and handle same-document navigations without burning the readiness timeout. - Fix markdown extraction destroying URLs and dropping long link lines. - Detect LLM output truncation instead of failing with misleading parse errors, and let truncation errors switch to the fallback LLM. - Keep plain BrowserErrors recoverable and preserve structured error memory through execute_action. - Fix visibility check mutating shared snapshot bounds. - Pin Browser Harness to `0.1.5` (Windows reliability fixes, cloud-browser suggestion). - CLI polish: shim for legacy CLI commands, hints for unknown commands, faster startup. - Restructure README quickstart around the CLI and Python library paths. **Full Changelog**: https://github.com/browser-use/browser-use/compare/0.13.3...0.13.4

  5. 0.13.30.13.3Jul 1, 2026

    ## What's Changed - Launch Browser Use CLI 3.0 powered by Browser Harness. - Add `browser-use skill` so coding agents can install the Browser Use skill directly. - Pin Browser Harness to `0.1.4` and ship the Browser Use skill with the package. - Improve skill install behavior across Claude Code, Codex, Cursor, Gemini, OpenCode, and related agent skill directories. **Full Changelog**: https://github.com/browser-use/browser-use/compare/0.13.2...0.13.3

Code frequency

additions and deletions
+28.3K-28.3KWeek of 2025-08-03: +22,212 linesWeek of 2025-08-03: -20,574 linesWeek of 2025-08-10: +14,638 linesWeek of 2025-08-10: -10,050 linesWeek of 2025-08-17: +17,002 linesWeek of 2025-08-17: -19,599 linesWeek of 2025-08-24: +16,300 linesWeek of 2025-08-24: -28,275 linesWeek of 2025-08-31: +6,130 linesWeek of 2025-08-31: -6,820 linesWeek of 2025-09-07: +5,472 linesWeek of 2025-09-07: -2,193 linesWeek of 2025-09-14: +9,927 linesWeek of 2025-09-14: -3,598 linesWeek of 2025-09-21: +794 linesWeek of 2025-09-21: -561 linesWeek of 2025-09-28: +1,283 linesWeek of 2025-09-28: -239 linesWeek of 2025-10-05: +2,308 linesWeek of 2025-10-05: -1,780 linesWeek of 2025-10-12: +6,558 linesWeek of 2025-10-12: -4,850 linesWeek of 2025-10-19: +18,572 linesWeek of 2025-10-19: -18,180 linesWeek of 2025-10-26: +9,149 linesWeek of 2025-10-26: -3,776 linesWeek of 2025-11-02: +8,757 linesWeek of 2025-11-02: -2,640 linesWeek of 2025-11-09: +2,137 linesWeek of 2025-11-09: -1,476 linesWeek of 2025-11-16: +4,575 linesWeek of 2025-11-16: -1,392 linesWeek of 2025-11-23: +2,761 linesWeek of 2025-11-23: -3,119 linesWeek of 2025-11-30: +1,828 linesWeek of 2025-11-30: -124 linesWeek of 2025-12-07: +2,117 linesWeek of 2025-12-07: -808 linesWeek of 2025-12-14: +1,259 linesWeek of 2025-12-14: -261 linesWeek of 2025-12-21: +2,081 linesWeek of 2025-12-21: -193 linesWeek of 2025-12-28: +0 linesWeek of 2025-12-28: -146 linesWeek of 2026-01-04: +526 linesWeek of 2026-01-04: -66 linesWeek of 2026-01-11: +480 linesWeek of 2026-01-11: -10 linesWeek of 2026-01-18: +5,259 linesWeek of 2026-01-18: -2,032 linesWeek of 2026-01-25: +7,133 linesWeek of 2026-01-25: -1,367 linesWeek of 2026-02-01: +4,112 linesWeek of 2026-02-01: -1,508 linesWeek of 2026-02-08: +11,497 linesWeek of 2026-02-08: -4,723 linesWeek of 2026-02-15: +2,725 linesWeek of 2026-02-15: -1,461 linesWeek of 2026-02-22: +1,698 linesWeek of 2026-02-22: -338 linesWeek of 2026-03-01: +1,887 linesWeek of 2026-03-01: -6,087 linesWeek of 2026-03-08: +1,177 linesWeek of 2026-03-08: -7,061 linesWeek of 2026-03-15: +13,868 linesWeek of 2026-03-15: -12,111 linesWeek of 2026-03-22: +3,146 linesWeek of 2026-03-22: -803 linesWeek of 2026-03-29: +9,481 linesWeek of 2026-03-29: -8,905 linesWeek of 2026-04-05: +302 linesWeek of 2026-04-05: -177 linesWeek of 2026-04-12: +57 linesWeek of 2026-04-12: -135 linesWeek of 2026-04-19: +953 linesWeek of 2026-04-19: -117 linesWeek of 2026-04-26: +33 linesWeek of 2026-04-26: -25 linesWeek of 2026-05-03: +456 linesWeek of 2026-05-03: -66 linesWeek of 2026-05-10: +42 linesWeek of 2026-05-10: -8 linesWeek of 2026-05-17: +1,871 linesWeek of 2026-05-17: -544 linesWeek of 2026-05-24: +9 linesWeek of 2026-05-24: -11 linesWeek of 2026-05-31: +21,604 linesWeek of 2026-05-31: -6,656 linesWeek of 2026-06-07: +16,189 linesWeek of 2026-06-07: -14,970 linesWeek of 2026-06-14: +498 linesWeek of 2026-06-14: -11 linesWeek of 2026-06-21: +474 linesWeek of 2026-06-21: -466 linesWeek of 2026-06-28: +1,708 linesWeek of 2026-06-28: -12,531 linesWeek of 2026-07-05: +1,353 linesWeek of 2026-07-05: -549 linesWeek of 2026-07-12: +103 linesWeek of 2026-07-12: -9 linesWeek of 2026-07-19: +1,339 linesWeek of 2026-07-19: -365 linesWeek of 2026-07-26: +0 linesWeek of 2026-07-26: -0 linesAug 3, 2025Jul 26, 2026
+265.8K lines added, -213.8K removed over the last year.

Commits per week

last 52 weeks
3800Week of 2025-08-10: 199 commitsWeek of 2025-08-17: 199 commitsWeek of 2025-08-24: 336 commitsWeek of 2025-08-31: 352 commitsWeek of 2025-09-07: 194 commitsWeek of 2025-09-14: 217 commitsWeek of 2025-09-21: 83 commitsWeek of 2025-09-28: 67 commitsWeek of 2025-10-05: 142 commitsWeek of 2025-10-12: 135 commitsWeek of 2025-10-19: 260 commitsWeek of 2025-10-26: 286 commitsWeek of 2025-11-02: 98 commitsWeek of 2025-11-09: 133 commitsWeek of 2025-11-16: 107 commitsWeek of 2025-11-23: 98 commitsWeek of 2025-11-30: 24 commitsWeek of 2025-12-07: 43 commitsWeek of 2025-12-14: 52 commitsWeek of 2025-12-21: 27 commitsWeek of 2025-12-28: 2 commitsWeek of 2026-01-04: 20 commitsWeek of 2026-01-11: 21 commitsWeek of 2026-01-18: 45 commitsWeek of 2026-01-25: 144 commitsWeek of 2026-02-01: 88 commitsWeek of 2026-02-08: 168 commitsWeek of 2026-02-15: 64 commitsWeek of 2026-02-22: 50 commitsWeek of 2026-03-01: 60 commitsWeek of 2026-03-08: 58 commitsWeek of 2026-03-15: 105 commitsWeek of 2026-03-22: 100 commitsWeek of 2026-03-29: 104 commitsWeek of 2026-04-05: 28 commitsWeek of 2026-04-12: 20 commitsWeek of 2026-04-19: 31 commitsWeek of 2026-04-26: 12 commitsWeek of 2026-05-03: 13 commitsWeek of 2026-05-10: 3 commitsWeek of 2026-05-17: 70 commitsWeek of 2026-05-24: 6 commitsWeek of 2026-05-31: 380 commitsWeek of 2026-06-07: 55 commitsWeek of 2026-06-14: 9 commitsWeek of 2026-06-21: 11 commitsWeek of 2026-06-28: 48 commitsWeek of 2026-07-05: 73 commitsWeek of 2026-07-12: 25 commitsWeek of 2026-07-19: 60 commitsWeek of 2026-07-26: 13 commitsWeek of 2026-08-02: 72 commitsAug 10, 2025Aug 2, 2026
5K commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 โ€” 21 commitsSun 1:00 โ€” 13 commitsSun 2:00 โ€” 13 commitsSun 3:00 โ€” 8 commitsSun 4:00 โ€” 3 commitsSun 5:00 โ€” 6 commitsSun 6:00 โ€” 10 commitsSun 7:00 โ€” 12 commitsSun 8:00 โ€” 22 commitsSun 9:00 โ€” 18 commitsSun 10:00 โ€” 28 commitsSun 11:00 โ€” 44 commitsSun 12:00 โ€” 61 commitsSun 13:00 โ€” 34 commitsSun 14:00 โ€” 45 commitsSun 15:00 โ€” 51 commitsSun 16:00 โ€” 57 commitsSun 17:00 โ€” 73 commitsSun 18:00 โ€” 42 commitsSun 19:00 โ€” 40 commitsSun 20:00 โ€” 44 commitsSun 21:00 โ€” 46 commitsSun 22:00 โ€” 41 commitsSun 23:00 โ€” 40 commitsMon 0:00 โ€” 18 commitsMon 1:00 โ€” 15 commitsMon 2:00 โ€” 9 commitsMon 3:00 โ€” 6 commitsMon 4:00 โ€” 6 commitsMon 5:00 โ€” 7 commitsMon 6:00 โ€” 9 commitsMon 7:00 โ€” 15 commitsMon 8:00 โ€” 24 commitsMon 9:00 โ€” 27 commitsMon 10:00 โ€” 60 commitsMon 11:00 โ€” 52 commitsMon 12:00 โ€” 30 commitsMon 13:00 โ€” 58 commitsMon 14:00 โ€” 62 commitsMon 15:00 โ€” 71 commitsMon 16:00 โ€” 81 commitsMon 17:00 โ€” 89 commitsMon 18:00 โ€” 89 commitsMon 19:00 โ€” 41 commitsMon 20:00 โ€” 57 commitsMon 21:00 โ€” 61 commitsMon 22:00 โ€” 58 commitsMon 23:00 โ€” 47 commitsTue 0:00 โ€” 39 commitsTue 1:00 โ€” 25 commitsTue 2:00 โ€” 38 commitsTue 3:00 โ€” 34 commitsTue 4:00 โ€” 11 commitsTue 5:00 โ€” 24 commitsTue 6:00 โ€” 24 commitsTue 7:00 โ€” 29 commitsTue 8:00 โ€” 31 commitsTue 9:00 โ€” 23 commitsTue 10:00 โ€” 45 commitsTue 11:00 โ€” 56 commitsTue 12:00 โ€” 80 commitsTue 13:00 โ€” 63 commitsTue 14:00 โ€” 74 commitsTue 15:00 โ€” 63 commitsTue 16:00 โ€” 75 commitsTue 17:00 โ€” 84 commitsTue 18:00 โ€” 90 commitsTue 19:00 โ€” 53 commitsTue 20:00 โ€” 40 commitsTue 21:00 โ€” 69 commitsTue 22:00 โ€” 71 commitsTue 23:00 โ€” 77 commitsWed 0:00 โ€” 38 commitsWed 1:00 โ€” 36 commitsWed 2:00 โ€” 33 commitsWed 3:00 โ€” 10 commitsWed 4:00 โ€” 3 commitsWed 5:00 โ€” 4 commitsWed 6:00 โ€” 15 commitsWed 7:00 โ€” 19 commitsWed 8:00 โ€” 28 commitsWed 9:00 โ€” 46 commitsWed 10:00 โ€” 61 commitsWed 11:00 โ€” 71 commitsWed 12:00 โ€” 58 commitsWed 13:00 โ€” 46 commitsWed 14:00 โ€” 60 commitsWed 15:00 โ€” 58 commitsWed 16:00 โ€” 76 commitsWed 17:00 โ€” 77 commitsWed 18:00 โ€” 46 commitsWed 19:00 โ€” 62 commitsWed 20:00 โ€” 41 commitsWed 21:00 โ€” 54 commitsWed 22:00 โ€” 80 commitsWed 23:00 โ€” 71 commitsThu 0:00 โ€” 56 commitsThu 1:00 โ€” 22 commitsThu 2:00 โ€” 28 commitsThu 3:00 โ€” 8 commitsThu 4:00 โ€” 14 commitsThu 5:00 โ€” 20 commitsThu 6:00 โ€” 12 commitsThu 7:00 โ€” 20 commitsThu 8:00 โ€” 20 commitsThu 9:00 โ€” 29 commitsThu 10:00 โ€” 59 commitsThu 11:00 โ€” 69 commitsThu 12:00 โ€” 48 commitsThu 13:00 โ€” 31 commitsThu 14:00 โ€” 62 commitsThu 15:00 โ€” 39 commitsThu 16:00 โ€” 61 commitsThu 17:00 โ€” 58 commitsThu 18:00 โ€” 79 commitsThu 19:00 โ€” 68 commitsThu 20:00 โ€” 43 commitsThu 21:00 โ€” 42 commitsThu 22:00 โ€” 53 commitsThu 23:00 โ€” 60 commitsFri 0:00 โ€” 52 commitsFri 1:00 โ€” 53 commitsFri 2:00 โ€” 40 commitsFri 3:00 โ€” 32 commitsFri 4:00 โ€” 15 commitsFri 5:00 โ€” 24 commitsFri 6:00 โ€” 9 commitsFri 7:00 โ€” 11 commitsFri 8:00 โ€” 20 commitsFri 9:00 โ€” 19 commitsFri 10:00 โ€” 31 commitsFri 11:00 โ€” 36 commitsFri 12:00 โ€” 34 commitsFri 13:00 โ€” 43 commitsFri 14:00 โ€” 51 commitsFri 15:00 โ€” 46 commitsFri 16:00 โ€” 51 commitsFri 17:00 โ€” 65 commitsFri 18:00 โ€” 84 commitsFri 19:00 โ€” 68 commitsFri 20:00 โ€” 28 commitsFri 21:00 โ€” 39 commitsFri 22:00 โ€” 39 commitsFri 23:00 โ€” 58 commitsSat 0:00 โ€” 39 commitsSat 1:00 โ€” 33 commitsSat 2:00 โ€” 15 commitsSat 3:00 โ€” 30 commitsSat 4:00 โ€” 19 commitsSat 5:00 โ€” 15 commitsSat 6:00 โ€” 12 commitsSat 7:00 โ€” 11 commitsSat 8:00 โ€” 24 commitsSat 9:00 โ€” 41 commitsSat 10:00 โ€” 47 commitsSat 11:00 โ€” 52 commitsSat 12:00 โ€” 54 commitsSat 13:00 โ€” 31 commitsSat 14:00 โ€” 26 commitsSat 15:00 โ€” 41 commitsSat 16:00 โ€” 31 commitsSat 17:00 โ€” 51 commitsSat 18:00 โ€” 65 commitsSat 19:00 โ€” 36 commitsSat 20:00 โ€” 38 commitsSat 21:00 โ€” 43 commitsSat 22:00 โ€” 34 commitsSat 23:00 โ€” 46 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.
DateListRankStars gained
Mar 24, 2026daily#19+130
Mar 23, 2026daily#15+143
Jan 24, 2026daily#18+162
  • public-apis/public-apis

    A collective list of free APIs

    454.9K stars ยท Python

  • donnemartin/system-design-primer

    Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.

    362.2K stars ยท Python

  • practical-tutorials/project-based-learning

    Curated list of project-based tutorials

    277.1K stars ยท Python

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    238.5K stars ยท JavaScript

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    234.7K stars ยท JavaScript

  • NousResearch/hermes-agent

    The agent that grows with you

    227K stars ยท Python