berkekcay/link-shortener-agent-ready

Utilisez lorsque vous implémentez une fonctionnalité à partir de docs/TASKS.md (alias personnalisé, compteur de clics, expiration) ou toute autre modification du comportement du raccourcisseur de liens. Parcourt d'abord les tests, le plus petit changement, pytest et un résumé.

Qu'est-ce que link-shortener-agent-ready ?

Cette compétence pour agent IA guide un développeur ou un agent (comme Claude Code, Cursor, etc.) à travers un processus structuré pour implémenter une tâche dans un raccourcisseur de liens. Elle commence par lire les fichiers de documentation clés (AGENTS.md, la tâche choisie dans docs/TASKS.md, et tests/AGENTS.md) pour comprendre le contexte et les contraintes. Ensuite, elle inspecte le code source principal (main.py et tests/test_main.py) pour noter les interactions existantes. Avant toute modification, elle demande un plan écrit spécifiant le comportement attendu, les fichiers à changer et les cas limites. La compétence impose d'abord d'écrire un test unitaire qui échoue, puis d'implémenter le plus petit changement dans main.py pour le faire passer. Enfin, elle exécute l'ensemble des tests avec pytest et exige un résumé structuré des résultats. Elle est utile car elle garantit une approche TDD (Test-Driven Development) fiable, évite les régressions et s'assure que chaque modification est bien testée et documentée.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/berkekcay/link-shortener-agent-ready/tree/HEAD/.claude/skills/implement-task

Installed? Explore more Productivité et collaboration skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Implémenter une tâche pour le raccourcisseur de liens

Suivez ces étapes dans l'ordre. Arrêtez-vous et demandez si la tâche est floue ou nécessite quelque chose listé sous "Demander à une personne avant" dans AGENTS.md.

  1. Lire. Ouvrez AGENTS.md, la tâche choisie dans docs/TASKS.md, et tests/AGENTS.md. Ne travaillez que sur cette seule tâche.

  2. Inspecter. Lisez main.py (la table, encode(), le modèle de requête et les deux routes) et tests/test_main.py. Notez tout ce avec quoi la tâche interagit, par exemple comment les codes sont générés ou comment la base de données est partagée entre les exécutions.

  3. Énoncer le plan. Avant de modifier, écrivez :

    • le comportement attendu, y compris les codes de statut et les corps de réponse pour le succès et chaque échec ;
    • les fichiers que vous allez modifier ;
    • les cas limites (entrée vide ou étrange, collisions avec des codes existants, valeurs qui se répètent).
  4. Écrire un test qui échoue. Ajoutez des tests comportementaux dans tests/test_main.py en suivant tests/AGENTS.md : au moins un cas de succès et un cas d'échec. Exécutez-les et confirmez qu'ils échouent pour la bonne raison (la fonctionnalité est manquante, pas une faute de frappe) :

    pytest tests/test_main.py -k <nom_du_nouveau_test>
    
  5. Implémenter le plus petit changement dans main.py qui fait passer les tests. Préservez le comportement existant et les formes de réponse. Si la table nécessite une nouvelle colonne, ajoutez-la de manière à ce qu'une links.db existante fonctionne toujours (ou expliquez pourquoi elle doit être recréée).

  6. Tout exécuter.

    pytest
    

    Tous les tests originaux et nouveaux doivent passer. Corrigez et relancez jusqu'à ce qu'ils passent.

  7. Résumer sous cette forme :

    Tâche :
    Comportement :
    Fichiers modifiés :
    Tests ajoutés :
    Résultat pytest :
    Risques restants :
    

Skills associés