127 lines
3.9 KiB
PHP
127 lines
3.9 KiB
PHP
<?php
|
|
header("Content-Type: application/json");
|
|
header("Access-Control-Allow-Origin: *");
|
|
$agents = array (
|
|
0 =>
|
|
array (
|
|
'name' => 'analyst',
|
|
'desc' => 'Pre-planning consultant for requirements analysis (Opus)',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
1 =>
|
|
array (
|
|
'name' => 'architect',
|
|
'desc' => 'Strategic Architecture & Debugging Advisor (Opus, READ-ONLY)',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
2 =>
|
|
array (
|
|
'name' => 'code-reviewer',
|
|
'desc' => 'Expert code review specialist with severity-rated feedback, logic defect detection, SOLID principle checks, style, performance, and quality strategy',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
3 =>
|
|
array (
|
|
'name' => 'code-simplifier',
|
|
'desc' => 'Simplifies and refines code for clarity, consistency, and maintainability while preserving all functionality. Focuses on recently modified code unless instructed otherwise.',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
4 =>
|
|
array (
|
|
'name' => 'critic',
|
|
'desc' => 'Work plan and code review expert — thorough, structured, multi-perspective (Opus)',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
5 =>
|
|
array (
|
|
'name' => 'debugger',
|
|
'desc' => 'Root-cause analysis, regression isolation, stack trace analysis, build/compilation error resolution',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
6 =>
|
|
array (
|
|
'name' => 'designer',
|
|
'desc' => 'UI/UX Designer-Developer for stunning interfaces (Sonnet)',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
7 =>
|
|
array (
|
|
'name' => 'document-specialist',
|
|
'desc' => 'External Documentation & Reference Specialist',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
8 =>
|
|
array (
|
|
'name' => 'executor',
|
|
'desc' => 'Focused task executor for implementation work (Sonnet)',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
9 =>
|
|
array (
|
|
'name' => 'explore',
|
|
'desc' => 'Codebase search specialist for finding files and code patterns',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
10 =>
|
|
array (
|
|
'name' => 'git-master',
|
|
'desc' => 'Git expert for atomic commits, rebasing, and history management with style detection',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
11 =>
|
|
array (
|
|
'name' => 'planner',
|
|
'desc' => 'Strategic planning consultant with interview workflow (Opus)',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
12 =>
|
|
array (
|
|
'name' => 'qa-tester',
|
|
'desc' => 'Interactive CLI testing specialist using tmux for session management',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
13 =>
|
|
array (
|
|
'name' => 'scientist',
|
|
'desc' => 'Data analysis and research execution specialist',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
14 =>
|
|
array (
|
|
'name' => 'security-reviewer',
|
|
'desc' => 'Security vulnerability detection specialist (OWASP Top 10, secrets, unsafe patterns)',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
15 =>
|
|
array (
|
|
'name' => 'test-engineer',
|
|
'desc' => 'Test strategy, integration/e2e coverage, flaky test hardening, TDD workflows',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
16 =>
|
|
array (
|
|
'name' => 'tracer',
|
|
'desc' => 'Evidence-driven causal tracing with competing hypotheses, evidence for/against, uncertainty tracking, and next-probe recommendations',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
17 =>
|
|
array (
|
|
'name' => 'verifier',
|
|
'desc' => 'Verification strategy, evidence-based completion checks, test adequacy',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
18 =>
|
|
array (
|
|
'name' => 'writer',
|
|
'desc' => 'Technical documentation writer for README, API docs, and comments (Haiku)',
|
|
'source' => 'oh-my-claudecode',
|
|
),
|
|
);
|
|
$q = $_GET["q"] ?? "";
|
|
if ($q) {
|
|
$filtered = array_filter($agents, fn($a) => stripos($a["name"], $q) !== false || stripos($a["desc"], $q) !== false);
|
|
echo json_encode(["ok" => true, "agents" => array_values($filtered)]);
|
|
} else {
|
|
echo json_encode(["ok" => true, "agents" => $agents, "count" => count($agents)]);
|
|
}
|