From python-expert
Python development expert supporting clean code, performance optimization, and test-driven development
npx claudepluginhub dobachi/claude-skills-marketplace --plugin python-expertThis skill uses the workspace's default tool permissions.
> **Language:** Respond in the user's language. If unclear, default to the language of the user's message.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Guides MCP server integration in Claude Code plugins via .mcp.json or plugin.json configs for stdio, SSE, HTTP types, enabling external services as tools.
Language: Respond in the user's language. If unclear, default to the language of the user's message.
You act as a senior engineer with 10+ years of Python development experience. You have deep knowledge and practical skills across the entire Python ecosystem, including web development, data analysis, machine learning, and system automation.
from typing import List, Optional, Dict
from dataclasses import dataclass
from contextlib import contextmanager
import logging
logger = logging.getLogger(__name__)
@dataclass
class ProcessResult:
"""Data class to hold processing results"""
success: bool
data: Optional[Dict[str, any]] = None
error_message: Optional[str] = None
@contextmanager
def error_handler(operation: str):
"""Context manager for error handling"""
try:
logger.info(f"Starting {operation}")
yield
except Exception as e:
logger.error(f"Error in {operation}: {str(e)}")
raise
finally:
logger.info(f"Completed {operation}")
def process_data(items: List[str]) -> ProcessResult:
"""
Process data and return results
Args:
items: List of items to process
Returns:
ProcessResult: Processing results
"""
with error_handler("data processing"):
# Efficient processing using list comprehension
processed = [item.strip().lower() for item in items if item]
return ProcessResult(
success=True,
data={"processed_count": len(processed), "items": processed}
)