Synthèse automatique
Fournit des fonctions standardisées pour formater, journaliser et retourner des messages d'erreur conviviaux dans une application.
Points forts
- Mécanisme centralisé et cohérent de gestion d'erreurs
- Messages d'erreur clairs et formatés avec code optionnel
- Journalisation avec horodatage et contexte pour le débogage
Limites
- Les messages ne sont pas internationalisés
- Ne gère pas les exceptions asynchrones ou multithread
- Personnalisation limitée du format de journalisation
Lors de la mise en place d'une gestion d'erreurs uniforme dans une application Python, notamment pour les APIs ou scripts en ligne de commande.
Pour des environnements nécessitant une localisation avancée ou des stratégies de reprise complexes comme des retries automatiques.
Analyse de sécurité
SûrThis skill only defines error handling utility functions (formatting, logging) without any system or network access. It does not execute commands, send data externally, or include obfuscated code. No dangerous operations are performed.
Aucun point d'attention détecté
Comment cette analyse est faiteExemples
Create a script that reads a file and uses the error handling skill to catch exceptions and display user-friendly messages.Add the format_error_message function to my project to ensure all errors follow '✗ Error: [message]' format.Use the log_error function to log an exception with context information like 'database_connection'.name: error-handling-skill description: Standardized error handling functions for formatting, logging, and returning user-friendly error messages across the application. functions:
-
name: handle_error description: Format an error message, log it with context, and return a user-friendly message parameters: type: object properties: error: type: Exception description: The exception or error to handle context: type: str description: Context information about where/why the error occurred required: - error - context returns: type: str description: A user-friendly error message
-
name: format_error_message description: Format an error message with consistent styling and optional error code parameters: type: object properties: message: type: str description: The error message to format error_code: type: str description: Optional error code to include default: "" required: - message returns: type: str description: Formatted error message in "✗ Error: [message]" format
-
name: log_error description: Log an error to stderr or file with timestamp and context parameters: type: object properties: error: type: Exception description: The exception to log context: type: str description: Context information about where the error occurred required: - error - context returns: type: None description: None
Error Handling Skill
Purpose
Provides standardized error handling across the application with consistent formatting, logging, and user-friendly messages.
Functions
1. handle_error(error: Exception, context: str) -> str
Handles an exception by formatting the error message, logging it with context, and returning a user-friendly message.
Parameters:
error(Exception): The exception or error object to handlecontext(str): Context information about where/why the error occurred
Returns:
- A user-friendly error message string
Behavior:
- Format the error message using
format_error_message() - Log the error using
log_error() - Return a user-friendly message for display
2. format_error_message(message: str, error_code: str = "") -> str
Formats an error message with consistent styling and optional error code.
Parameters:
message(str): The error message to formaterror_code(str, optional): Error code to include. Defaults to "".
Returns:
- Formatted error message in the format: "✗ Error: [message]"
- If error_code is provided: "✗ Error: [message] [error_code]"
Examples:
format_error_message("File not found") # "✗ Error: File not found"
format_error_message("Connection failed", "ERR_001") # "✗ Error: Connection failed [ERR_001]"
3. log_error(error: Exception, context: str) -> None
Logs an error to stderr or file with timestamp and context information.
Parameters:
error(Exception): The exception or error object to logcontext(str): Context information about where the error occurred
Returns:
- None
Log Format:
[TIMESTAMP] ERROR | Context: [context] | Message: [error_message] | Type: [error_type]
Error Message Format
All error messages follow the format:
✗ Error: [message]
Logging Setup
The skill uses Python's standard logging module with the following configuration:
- Format:
[%(asctime)s] %(levelname)s | %(message)s - Timestamp: ISO 8601 format
- Output: stderr by default
- Can be configured to log to file by setting up a file handler
Usage Example
from error_handling_skill import handle_error, format_error_message, log_error
try:
risky_operation()
except Exception as e:
user_message = handle_error(e, "user_authentication")
print(user_message)
# Output: "✗ Error: Authentication failed - Invalid credentials"
Implementation Notes
- All functions include proper type hints
- All functions have docstrings documenting parameters, returns, and behavior
- Logging is configurable for different output destinations
- Error codes are optional but recommended for traceability
Du fichier au premier essai
Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.
Consulter la source et ses fichiers annexesCe téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.
1. Télécharger le fichier
Télécharger SKILL.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/standardized-error-handling-mm5t89or/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.
Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.
mkdir -p '.skill-downloads/standardized-error-handling-mm5t89or' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/standardized-error-handling-mm5t89or/download' --output '.skill-downloads/standardized-error-handling-mm5t89or/SKILL.md.part' && mv '.skill-downloads/standardized-error-handling-mm5t89or/SKILL.md.part' '.skill-downloads/standardized-error-handling-mm5t89or/SKILL.md'2. Vérifier les prérequis
Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.
Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.
Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.
3. Charger la skill
Le fichier ne fournit pas un en-tête name/description exploitable pour cette procédure native. Le téléchargement reste disponible pour lecture ; utilisez le mode manuel ci-dessous.
Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.
4. Faire un premier essai
Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :
Lis .skill-downloads/standardized-error-handling-mm5t89or/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.
Bonnes pratiques React Hook Form
Developpement
Maîtrisez React Hook Form : évitez les anti-patterns, gérez les abonnements, et traitez correctement reset, dirty state et entrées contrôlées.
Migration Emotion vers Mantine
Developpement
Migrer les styled-components Emotion vers des composants Mantine avec style props et modules CSS. Pour convertir .styled.tsx ou supprimer les imports @emotion.
Détecteur de dérive de périmètre
Developpement
Analyse les diffs git par rapport à une intention pour détecter la dérive de périmètre, fichiers non liés et PR trop larges, puis suggère de garder, diviser ou justifier.