cli-skills
CLI best practices for LlamaFarm. Covers Cobra, Bubbletea, Lipgloss patterns for Go CLI development.
Server-specific best practices for FastAPI, Celery, and Pydantic. Extends python-skills with framework-specific patterns.
$ npx -y skills add llama-farm/llamafarm --skill server-skills --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/server-skillsContext preview
The summary Claude sees to decide when to auto-load this skill.
Server-specific best practices for FastAPI, Celery, and Pydantic. Extends python-skills with framework-specific patterns.
name: server-skills description: Server-specific best practices for FastAPI, Celery, and Pydantic. Extends python-skills with framework-specific patterns. allowed-tools: Read, Grep, Glob, Bash user-invocable: false
Framework-specific patterns and code review checklists for the LlamaFarm Server component.
| Property | Value | |----------|-------| | Path | `server/` | | Python | 3.12+ | | Framework | FastAPI 0.116+ | | Task Queue | Celery 5.5+ | | Validation | Pydantic 2.x, pydantic-settings | | Logging | structlog with FastAPIStructLogger |
This skill extends the shared Python skills. See:
| Topic | File | Key Points | |-------|------|------------| | FastAPI | [fastapi.md](fastapi.md) | Routes, dependencies, middleware, exception handlers | | Celery | [celery.md](celery.md) | Task patterns, error handling, retries, signatures | | Pydantic | [pydantic.md](pydantic.md) | Pydantic v2 models, validation, serialization | | Performance | [performance.md](performance.md) | Async patterns, caching, connection pooling |
server/ ├── main.py # Uvicorn entry point, MCP mount ├── api/ │ ├── main.py # FastAPI app factory, middleware setup │ ├── errors.py # Custom exceptions + exception handlers │ ├── middleware/ # ASGI middleware (structlog, errors) │ └── routers/ # API route modules │ ├── projects/ # Project CRUD endpoints │ ├── datasets/ # Dataset management │ ├── rag/ # RAG query endpoints │ └── ... ├── core/ │ ├── settings.py # pydantic-settings configuration │ ├── logging.py # structlog setup, FastAPIStructLogger │ └── celery/ # Celery app configuration │ ├── celery.py # Celery app instance │ └── rag_client.py # RAG task signatures and helpers ├── services/ # Business logic layer │ ├── project_service.py # Project CRUD operations │ ├── dataset_service.py # Dataset management │ └── ... ├── agents/ # AI agent implementations └── tests/ # Pytest test suite
from pydantic_settings import BaseSettings
class Settings(BaseSettings, env_file=".env"):
HOST: str = "0.0.0.0"
PORT: int = 14345
LOG_LEVEL: str = "INFO"
settings = Settings() # Module-level singletonfrom core.logging import FastAPIStructLogger
logger = FastAPIStructLogger(__name__)
logger.info("Operation completed", extra={"count": 10, "duration_ms": 150})
logger.bind(namespace=namespace, project=project_id) # Add context# Define exception hierarchy
class NotFoundError(Exception): ...
class ProjectNotFoundError(NotFoundError):
def __init__(self, namespace: str, project_id: str):
self.namespace = namespace
self.project_id = project_id
super().__init__(f"Project {namespace}/{project_id} not found")
# Register handler in api/errors.py
async def _handle_project_not_found(request: Request, exc: Exception) -> Response:
payload = ErrorResponse(error="ProjectNotFound", message=str(exc))
return JSONResponse(status_code=404, content=payload.model_dump())
def register_exception_handlers(app: FastAPI) -> None:
app.add_exception_handler(ProjectNotFoundError, _handle_project_not_found)class ProjectService:
@classmethod
def get_project(cls, namespace: str, project_id: str) -> Project:
project_dir = cls.get_project_dir(namespace, project_id)
if not os.path.isdir(project_dir):
raise ProjectNotFoundError(namespace, project_id)
# ... load and validate1. **FastAPI Routes** (High priority)
2. **Celery Tasks** (High priority)
3. **Pydantic Models** (Medium priority)
4. **Performance** (Medium priority)
See individual topic files for detailed checklists with grep patterns.
Enterprise AI capabilities on your own hardware. No cloud required. LlamaFarm is an open-source AI platform that runs entirely on your hardware.
Repo: llama-farm/llamafarm
CLI best practices for LlamaFarm. Covers Cobra, Bubbletea, Lipgloss patterns for Go CLI development.
Comprehensive code review for diffs. Analyzes changed code for security vulnerabilities, anti-patterns, and quality issues. Auto-detects domain…
Commit changes, push to GitHub, and open a PR. Includes quality checks (security, patterns, simplification). Use --quick to skip checks.
Best practices for the Common utilities package in LlamaFarm. Covers HuggingFace Hub integration, GGUF model management, and shared utilities.
Configuration module patterns for LlamaFarm. Covers Pydantic v2 models, JSONSchema generation, YAML processing, and validation.
Designer subsystem patterns for LlamaFarm. Covers React 18, TanStack Query, TailwindCSS, and Radix UI.