diff --git a/src/app/.well-known/agent.json/route.ts b/src/app/.well-known/agent.json/route.ts index d0a9ba034c..e36ab63607 100644 --- a/src/app/.well-known/agent.json/route.ts +++ b/src/app/.well-known/agent.json/route.ts @@ -102,6 +102,15 @@ export async function GET() { "Summarize active rate limits and lockouts", ], }, + { + id: "list-capabilities", + name: "List Capabilities", + description: + "Returns the full catalog of 42 OmniRoute agent skills (22 API + 20 CLI) " + + "with raw URLs for the SKILL.md docs.", + tags: ["discovery", "capabilities"], + examples: ["What can you do?", "List your skills", "Show capabilities"], + }, ], authentication: { schemes: ["api-key"], diff --git a/src/lib/a2a/taskExecution.ts b/src/lib/a2a/taskExecution.ts index 39851955ac..421a36bb95 100644 --- a/src/lib/a2a/taskExecution.ts +++ b/src/lib/a2a/taskExecution.ts @@ -37,6 +37,10 @@ export const A2A_SKILL_HANDLERS: Record = { const skillModule = await import("./skills/healthReport"); return skillModule.executeHealthReport(task); }, + "list-capabilities": async (task) => { + const skillModule = await import("./skills/listCapabilities"); + return skillModule.executeListCapabilities(task); + }, }; export async function executeA2ATaskWithState(