Bader Alabddan
Add core implementation: API, registry, audit, Docker config, and quickstart guide
8036886
"""Capabilities API endpoints."""
from fastapi import APIRouter, HTTPException
from typing import Optional, List
from ..core.registry import CapabilityRegistry
from ..core.audit import AuditLogger
router = APIRouter()
registry = CapabilityRegistry()
audit_logger = AuditLogger()
@router.get("/capabilities")
async def list_capabilities(category: Optional[str] = None):
"""List all capabilities."""
capabilities = registry.list_capabilities(category=category)
return {
"count": len(capabilities),
"capabilities": capabilities
}
@router.get("/capabilities/{capability_id}")
async def get_capability(capability_id: str):
"""Get capability by ID."""
capability = registry.get_capability(capability_id)
if not capability:
raise HTTPException(status_code=404, detail="Capability not found")
return capability
@router.get("/capabilities/search/{query}")
async def search_capabilities(query: str):
"""Search capabilities."""
results = registry.search_capabilities(query)
return {
"query": query,
"count": len(results),
"results": results
}