Detect if code is running in an AI agent or automated development environment
laravel/agent-detector is a Laravel package for detect if code is running in an ai agent or automated development environment.
It currently has 89 GitHub stars and 19.625.100 downloads on Packagist (latest version v2.0.4).
Install it with composer require laravel/agent-detector.
Discover more Laravel packages by laravel
or browse all Laravel packages to compare alternatives.
Last updated
Agent Detector is a lightweight PHP utility to detect if your code is running inside an AI agent or automated development environment.
Requires PHP 8.2+
To get started, install Agent Detector via the Composer package manager:
composer require laravel/agent-detector
use Laravel\AgentDetector\AgentDetector;
use Laravel\AgentDetector\KnownAgent;
$result = AgentDetector::detect();
if ($result->isAgent) {
echo "Running inside: {$result->name}";
}
// Check for a specific known agent
if ($result->knownAgent() === KnownAgent::Claude) {
echo "Hello from Claude!";
}
Or use the standalone function:
use function Laravel\AgentDetector\detectAgent;
$result = detectAgent();
| Agent | Detection Method |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| Custom | AI_AGENT env var |
| Cursor | CURSOR_AGENT env var |
| Gemini | GEMINI_CLI env var |
| Codex | CODEX_SANDBOX, CODEX_CI, CODEX_THREAD_ID, or CODEX_SANDBOX_NETWORK_DISABLED env var |
| Augment CLI | AUGMENT_AGENT env var |
| AMP | AMP_CURRENT_THREAD_ID env var |
| Opencode | OPENCODE_CLIENT or OPENCODE env var |
| Claude | CLAUDECODE or CLAUDE_CODE env var |
| Cowork | CLAUDE_CODE_IS_COWORK with CLAUDECODE or CLAUDE_CODE env var |
| Copilot | AI_AGENT=github-copilot, AI_AGENT=github-copilot-cli, COPILOT_MODEL, COPILOT_ALLOW_ALL, COPILOT_GITHUB_TOKEN, or COPILOT_CLI env var |
| Replit | REPL_ID env var |
| Devin | /opt/.devin file exists |
| Antigravity | ANTIGRAVITY_AGENT or ANTIGRAVITY_CLI_ALIAS env var |
| Pi | PI_CODING_AGENT env var |
| Junie | JUNIE_DATA, JUNIE_SHIM_PATH, or MATTERHORN_SESSION_ID env var |
| Kiro CLI | KIRO_AGENT_PATH env var |
| v0 | AI_AGENT=v0 env var |
| Kimi | KIMI_PLUGIN_ROOT env var |
| Grok | GROK_PLUGIN_ROOT or GROK_PLUGIN_DATA env var |
| Cline | CLINE_ACTIVE env var |
| Goose | GOOSE_TERMINAL env var |
| OpenClaw | OPENCLAW_SHELL env var |
Set the AI_AGENT environment variable to any value to identify your custom agent:
AI_AGENT=my-custom-agent php your-script.php
composer test
Thank you for considering contributing to Agent Detector! You can read the contribution guide here.
In order to ensure that the Agent Detector community is welcoming to all, please review and abide by the Code of Conduct.
Please review our security policy on how to report security vulnerabilities.
Agent Detector is open-sourced software licensed under the MIT license.