Agent skill

common-skills

Best practices for the Common utilities package in LlamaFarm. Covers HuggingFace Hub integration, GGUF model management, and shared utilities.

Stars 831
Forks 48

Install this agent skill to your Project

npx add-skill https://github.com/llama-farm/llamafarm/tree/main/.claude/skills/common-skills

SKILL.md

Common Skills for LlamaFarm

Best practices and code review checklists for the common/ package - shared Python utilities used across all LlamaFarm services.

Component Overview

Attribute Value
Path common/
Package llamafarm-common
Python 3.10+
Key Dependencies huggingface_hub, hf-transfer

Purpose

The common/ package provides shared functionality that needs to be consistent across multiple Python services:

  • Model file utilities (GGUF selection, quantization parsing)
  • HuggingFace Hub integration (listing, downloading)
  • Process management (PID files)

Shared Python Skills

This skill inherits all patterns from the shared Python skills:

Topic File Relevance
Patterns ../python-skills/patterns.md Dataclasses, type hints, comprehensions
Typing ../python-skills/typing.md Type annotations, modern syntax
Testing ../python-skills/testing.md Pytest fixtures, mocking HuggingFace APIs
Errors ../python-skills/error-handling.md Custom exceptions, logging
Security ../python-skills/security.md Path validation, safe file handling

Framework-Specific Checklists

Topic File Key Points
HuggingFace huggingface.md Hub API, model download, caching, authentication

Module Structure

common/
├── pyproject.toml           # UV-managed dependencies
├── llamafarm_common/
│   ├── __init__.py          # Public API exports
│   ├── model_utils.py       # GGUF file utilities
│   └── pidfile.py           # PID file management
└── tests/
    └── test_model_utils.py  # Unit tests with mocking

Public API

Model Utilities

python
from llamafarm_common import (
    # Parse model:quantization syntax
    parse_model_with_quantization,
    # Extract quantization from filename
    parse_quantization_from_filename,
    # Select best GGUF file from list
    select_gguf_file,
    select_gguf_file_with_logging,
    # List GGUF files in HF repo
    list_gguf_files,
    # Download and get path to GGUF file
    get_gguf_file_path,
    # Default quantization preference order
    GGUF_QUANTIZATION_PREFERENCE_ORDER,
)

PID File Management

python
from llamafarm_common.pidfile import write_pid, get_pid_file

Review Checklist Summary

When reviewing code in common/:

  1. HuggingFace Integration (High priority)

    • Proper error handling for network failures
    • Authentication token passed correctly
    • High-speed transfer enabled appropriately
  2. Model Selection (Medium priority)

    • Quantization preference order maintained
    • Case-insensitive matching
    • Graceful fallback when preferred not available
  3. Testing (High priority)

    • HuggingFace API calls mocked
    • Network isolation in tests
    • Edge cases covered (empty lists, missing files)
  4. Security (Medium priority)

    • No token exposure in logs
    • Safe file path handling
    • Environment variable protection

See huggingface.md for detailed HuggingFace-specific checklists.

Expand your agent's capabilities with these related and highly-rated skills.

Didn't find tool you were looking for?

Be as detailed as possible for better results