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-detectoruse 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, or CODEX_THREAD_ID 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 env var |
| Pi | PI_CODING_AGENT env var |
| Kiro CLI | KIRO_AGENT_PATH env var |
| v0 | AI_AGENT=v0 env var |
Set the AI_AGENT environment variable to any value to identify your custom agent:
AI_AGENT=my-custom-agent php your-script.phpcomposer testThank 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.