{"data":{"slug":"test-zeus-ai-testzeus-hercules","name":"testzeus-hercules","tagline":"World's first open-source testing agent for UI, API, Security, Accessibility and Visual validations","github_url":"https://github.com/test-zeus-ai/testzeus-hercules","owner":"test-zeus-ai","repo":"testzeus-hercules","owner_avatar_url":"https://avatars.githubusercontent.com/u/178647201?v=4","primary_language":"Python","stars":1165,"forks":191,"topics":["agent","agentic-ai","agents","ai","autogen","automation","browser","end-to-end-testing","hercules","large-action-model","playwright","qa-automation","rpa","software-testing","test-automation","testing","testing-tools","testzeus"],"archived":false,"github_pushed_at":"2026-08-04T09:37:17+00:00","maintenance_label":"Steady","stars_delta_30d":60,"url":"https://www.graphcanon.com/tools/test-zeus-ai-testzeus-hercules","markdown_url":"https://www.graphcanon.com/tools/test-zeus-ai-testzeus-hercules.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/test-zeus-ai-testzeus-hercules","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=test-zeus-ai-testzeus-hercules","description":"Hercules is the world’s first open-source testing agent, enabling UI, API, Security, Accessibility, and Visual validations – all without code or maintenance. Automate testing effortlessly and let Hercules handle the heavy lifting! ⚡","homepage_url":"https://testzeus.com/hercules","license":"AGPL-3.0","open_issues":44,"watchers":15,"ai_summary":"Hercules provides automation for various forms of software testing through an AI-driven approach without code maintenance.","readme_excerpt":"## ⚙️ Installation and Usage\n\nHercules offers multiple ways to get started, catering to different user preferences and requirements.\nIf you are new to the Python ecosystem and don't know where to begin, dont worry and read the footnotes on understanding the basics.\n\n\nFor a quick taste of the solution, you can try the notebook here: \n\n- **Note**: Colab might ask you to restart the session after installing TestZeus Hercules dependencies. Please restart the session if required and continue the execution. Also, we recommend one of the approaches below for getting the full flavor of the solution.\n\n---\n\n### Approach 2: Using Docker\n\nFor all the scale lovers, Hercules is also available as a Docker image.\n\n#### Pull the Docker Image\n\n```bash\ndocker pull testzeus/hercules:latest\n```\n\n#### Running Hercules in Docker\n\nRun the container using:\n\n```bash\ndocker run --env-file=.env \\\n  -v ./agents_llm_config.json:/testzeus-hercules/agents_llm_config.json \\\n  -v ./opt:/testzeus-hercules/opt \\\n  --rm -it testzeus/hercules:latest\n```\n\n- **Environment Variables**: All the required environment variables can be set by passing an `.env` file to the `docker run` command.\n- **LLM Configuration**: Either pass direct `LLM_MODEL_*` values in `.env` or\n  mount `agents_llm_config.json` and set `AGENTS_LLM_CONFIG_FILE=agents_llm_config.json`\n  plus `AGENTS_LLM_CONFIG_FILE_REF_KEY=<provider-key>`. LiteLLM is one useful\n  provider profile when you run through an OpenAI-compatible proxy.\n- **Mounting Directories**: Mount the `opt` folder to the Docker container so that all the inputs can be passed to Hercules running inside the container, and the output can be pulled out for further processing. The repository has a sample `opt` folder that can be mounted easily.\n- **Simplified Parameters**: In the Docker case, there is no need for using `--input-file`, `--output-path`, `--test-data-path`, or `--project-base` as they are already handled by mounting the `opt` folder in the `docker run` command.\n\n#### Browser Access in Docker\n\n- While running in Docker mode, understand that Hercules has access only to a headless web browser.\n- If you want Hercules to connect to a visible web browser, try the CDP URL option in the environment file. This option can help you connect Hercules running in your infrastructure to a remote browser like BrowserBase or your self-hosted grid.\n- Use `CDP_ENDPOINT_URL` to set the CDP URL of the Chrome instance that has to be connected to the agent.\n\n---\n\n### Docker and Remote Browser Support\n\nWhen running Hercules in Docker, you can connect to remote browser instances using various platforms:\n\n1. **BrowserStack Integration**:\n```bash\nexport BROWSERSTACK_USERNAME=your_username\nexport BROWSERSTACK_ACCESS_KEY=your_access_key\nexport CDP_ENDPOINT_URL=$(python helper_scripts/browser_stack_generate_cdp_url.py)\n```\n\n2. **LambdaTest Integration**:\n```bash\nexport LAMBDATEST_USERNAME=your_username\nexport LAMBDATEST_ACCESS_KEY=your_access_key\nexport CDP_ENDPOINT_URL=$(python helper_scripts/lambda_test_generate_cdp_url.py)\n```\n\n3. **BrowserBase Integration**:\n```bash\nexport CDP_ENDPOINT_URL=wss://connect.browserbase.com?apiKey=your_api_key\n```\n\n4. **AnchorBrowser Integration**:\n```bash\nexport CDP_ENDPOINT_URL=wss://connect.anchorbrowser.io?apiKey=your_api_key\n```\n\nNote: Video recording is only supported on platforms that use connect_over_cdp (BrowserBase, AnchorBrowser). Platforms using the connect API (BrowserStack, LambdaTest) do not support video recording.\n\n#### Output and Logs\n\nAfter the command completion:\n\n- The container terminates, and output is written in the mounted `opt` folder, in the same way as described in the directory structure.\n- You will find the JUnit XML result file, HTML reports, proofs of execution, and logs in the respective folders.\n\n---","github_created_at":"2024-11-14T21:19:10+00:00","created_at":"2026-07-15T10:55:44.970789+00:00","updated_at":"2026-09-20T04:53:04.529+00:00","categories":[{"slug":"ai-agents","name":"AI Agents","url":"https://www.graphcanon.com/categories/ai-agents","markdown_url":"https://www.graphcanon.com/categories/ai-agents.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/ai-agents"}],"tags":[{"slug":"agent","name":"agent"},{"slug":"agentic-ai","name":"agentic-ai"},{"slug":"agents","name":"agents"},{"slug":"automation","name":"automation"},{"slug":"browser","name":"browser"},{"slug":"end-to-end-testing","name":"end-to-end-testing"},{"slug":"large-action-model","name":"large-action-model"},{"slug":"playwright","name":"playwright"}],"trust":{"provenance":{"is_fork":false,"github_id":888701643,"owner_type":"Organization","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-09-20T04:53:01.595Z","maintenance":{"label":"Steady","score":60,"methodology":"github_public_v1","releases_90d":3,"days_since_push":46,"last_release_at":"2026-08-03T16:58:56Z","stars_delta_30d":60,"open_issues_delta_30d":11},"security_summary":{"status":"no_lockfile","scanner":null,"low_count":0,"high_count":0,"last_scan_at":"2026-07-15T10:55:46.212Z","medium_count":0,"scan_profile":"none","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-09-20T04:53:02.625Z"},"deploy":{"source":"dockerfile:Dockerfile","self_host":true,"observed_at":"2026-09-20T04:53:02.625Z","managed_saas":false},"has_cli":{"value":true,"source":"pyproject.toml:[project.scripts]","observed_at":"2026-09-20T04:53:02.625Z"},"languages":{"value":["python"],"source":"github.language+pyproject.toml","observed_at":"2026-09-20T04:53:02.625Z"},"has_docker":{"value":true,"source":"dockerfile:Dockerfile","observed_at":"2026-09-20T04:53:02.625Z"},"license_spdx":{"value":"AGPL-3.0","source":"github.license","observed_at":"2026-09-20T04:53:02.625Z"}},"decision_facts":{"hosting":null,"pricing":null,"requirements":null,"constraints":null,"when_to_use":["When you require comprehensive testing capabilities including UI, API, Security, Accessibility, and Visual validation without code maintenance","For projects that can benefit from end-to-end testing but lack the resources or desire to manage extensive manual testing processes"],"when_not_to_use":["If your project specifically requires proprietary tools or solutions that cannot be integrated with open-source software under AGPL-3.0 license terms","In scenarios where deep customization of testing agents is needed as Hercules may offer limited flexibility for altering its core functionalities due to its comprehensive approach"],"source":"enrich:decision_facts","observed_at":"2026-07-17T13:38:47.305Z"},"constraint_facets":null,"decision_summary":[{"label":"Adopt for","value":"Hercules is an open-source testing agent designed for UI, API, Security, Accessibility and Visual validations through automated AI-driven testing."}]}}