Synthèse automatique
Effectue une recherche approfondie sur les exigences et la base de code avant la mise en œuvre, produisant un document de recherche avec un score de confiance.
Points forts
- Processus systématique pour recueillir les exigences depuis Jira et Confluence.
- Exploration parallèle de la base de code pour l'efficacité.
- Identifie les lacunes et les ambiguïtés, incitant à des clarifications.
- Produit un document de recherche structuré avec un score de confiance.
Limites
- Dépend de la disponibilité des API Jira et Confluence (outils MCP).
- Nécessite des réponses claires de l'utilisateur ; peut stagner sans réponses.
- Le score de confiance peut être subjectif sans métriques rigoureuses.
À utiliser lors du démarrage d'une nouvelle fonctionnalité ou histoire pour assurer une compréhension complète avant de coder.
À éviter lorsque les exigences sont déjà claires et bien documentées, ou pour un correctif simple sans ambiguïté.
Analyse de sécurité
SûrThe skill only instructs the agent to gather information from sources and produce a research document. No destructive commands, data exfiltration, or execution of arbitrary code is involved. It poses no security risk.
Aucun point d'attention détecté
Comment cette analyse est faiteExemples
Research Jira ticket FEAT-123: add user profile editing. Gather requirements from Jira and explore the codebase for affected components.I need to assess the feasibility of adding a dark mode to the app. Use the research skill to check existing UI patterns, dependencies, and complexity.Research the current authentication flow. Find all related files, state management, and API calls. Identify any known issues.name: research description: Use when needing to understand requirements before implementation. Gathers context from Jira, Confluence, codebase, and docs. Produces research document with confidence scoring.
Research Skill
Conducts thorough research on requirements and codebase before implementation.
When to Use
Use this skill when:
- Need to understand a Jira ticket before planning
- Exploring feasibility of a feature
- Gathering context about existing code patterns
- Assessing complexity of a task
Agent Compatibility
- AskUserQuestion: use the tool in Claude Code; in Codex CLI, ask the user directly and record the answer.
- Subagents/Task tool: use if available; otherwise run the searches yourself (parallel if possible).
- OUTPUT_DIR:
.claude/outputfor Claude Code,.codex/outputfor Codex CLI.
Instructions
Phase 1: Input Gathering
From Jira:
Use mcp__atlassian__getJiraIssue to extract:
- Summary (title)
- Description (requirements)
- Acceptance Criteria
- Linked Confluence pages
From Codebase (Using Parallel Exploration):
Use subagents (Task tool) if available; otherwise run the following searches yourself (parallel if possible):
Agent 1 (quick thoroughness):
"Search for similar features/patterns matching {feature keywords}"
Agent 2 (medium thoroughness):
"Find all files that might be affected by {feature}, including
dependencies and related components"
Agent 3 (thorough - optional for complex features):
"Understand the existing architecture for {related domain},
including data flow and state management patterns"
After agents complete:
1. Synthesize findings from all agents
2. Read AGENTS.md for project conventions
3. Identify existing components to reuse
Phase 2: Requirement Analysis
For each requirement, identify:
- Type: functional/non-functional/constraint
- Priority: must-have/should-have/nice-to-have
- Complexity: low/medium/high
- Affected layers: presentation/application/domain/data
- Dependencies
- Risks
Phase 3: Codebase Mapping
Map requirements to existing code:
- Similar features to reference
- Reusable components (widgets, services)
- API endpoints (existing vs new needed)
- State management patterns
Phase 4: Gap Analysis
Identify:
- New code needed (screens, controllers, models, services)
- API gaps
- Missing information / unclear requirements
- Technical unknowns
Phase 4.5: MANDATORY Clarification Gate
CRITICAL: This phase is BLOCKING. Do not proceed to Phase 5 until all questions are answered.
When ANY of these are identified in Phase 4:
- Missing information
- Unclear requirements
- Edge cases without explicit behavior
- Technical unknowns
- Multiple valid interpretations
R-Checkpoints (Research Questions)
R1: Requirement Ambiguity When a requirement has multiple interpretations:
AskUserQuestion(
questions: [
{
question: "Requirement '{X}' could mean '{A}' or '{B}'. Which interpretation is correct?",
header: "Requirement",
options: [
{ label: "Interpretation A", description: "{details of A}" },
{ label: "Interpretation B", description: "{details of B}" },
{ label: "Neither", description: "Let me explain..." }
],
multiSelect: false
}
]
)
R2: Missing Information When the PRD/Jira doesn't specify something needed:
AskUserQuestion(
questions: [
{
question: "The PRD doesn't specify '{X}'. What should the behavior be?",
header: "Missing Spec",
options: [
{ label: "Option A", description: "{behavior A}" },
{ label: "Option B", description: "{behavior B}" },
{ label: "Skip for now", description: "Mark as open question for stakeholder" }
],
multiSelect: false
}
]
)
R3: Technical Unknowns When technical feasibility or approach is uncertain:
AskUserQuestion(
questions: [
{
question: "Implementing '{X}' requires choosing between '{A}' and '{B}'. Which approach?",
header: "Technical",
options: [
{ label: "Approach A", description: "Pros: X, Cons: Y" },
{ label: "Approach B", description: "Pros: Y, Cons: Z" },
{ label: "Need more research", description: "Defer decision, gather more info" }
],
multiSelect: false
}
]
)
Rules:
- NEVER assume behavior - ASK
- NEVER write "Recommendation: X" without asking first
- NEVER mark "Open Questions" without immediately asking them
- Document user's answer in research output
- Each R-checkpoint MUST be resolved before Phase 5
Research Phase Complete Criteria:
□ All R1 checkpoints resolved (no ambiguous requirements)
□ All R2 checkpoints resolved (no missing info without explicit skip)
□ All R3 checkpoints resolved (technical approach decided)
Anti-Pattern:
## Open Questions
1. What should display when X?
- Recommendation: Show "–" ← WRONG! Should have asked user!
Correct Pattern:
## Clarified with User
1. What should display when X? [R2]
- User confirmed: Show "–" (via AskUserQuestion)
Phase 5: Confidence Scoring
Calculate confidence across dimensions:
| Dimension | Weight | Description | |-----------|--------|-------------| | Requirement Clarity | 25% | How clear are requirements? | | Codebase Understanding | 25% | Do I understand patterns? | | Technical Feasibility | 20% | Can this be implemented? | | Scope Definition | 15% | Are boundaries clear? | | Risk Identification | 15% | Are risks understood? |
Overall Confidence = Weighted Sum
Thresholds:
- ≥80%: High confidence, proceed
- 60-79%: Medium, clarify unknowns
- <60%: Low, request more info
Output
Create OUTPUT_DIR/research-{feature}.md with:
# Research: {Feature Name}
## Metadata
- Date: {date}
- Source: {Jira/Confluence/Prompt}
- Confidence Score: {X}%
## Requirements Summary
{Parsed requirements with IDs}
## Codebase Analysis
{Related code, patterns to follow, reusable components}
## Technical Analysis
{Architecture impact, new code required, API needs}
## Risk Assessment
{Risks with likelihood/impact/mitigation}
## Confidence Assessment
{Scores per dimension, blockers, questions}
## Recommendation
{PROCEED / CLARIFY / HALT}
Progress Tracking (MANDATORY when called from RPI)
If this skill is invoked as part of an RPI workflow, you MUST update progress:
On Research Start
~/.claude/skills/scripts/rpi-progress.sh --phase research --status in_progress --last "Starting research" --next "Complete research analysis"
On Research Complete (before audit)
~/.claude/skills/scripts/rpi-progress.sh --phase research --status complete --last "Research complete" --next "Research audit"
Progress Values
- Research started: 5%
- Research complete: 10%
- Research audit pass: 15%
Example
User: Research KB-1234 before we plan
Agent: [Fetches Jira, searches codebase, produces research doc]
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/requirement-research-mm78nntt/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/requirement-research-mm78nntt' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/requirement-research-mm78nntt/download' --output '.skill-downloads/requirement-research-mm78nntt/SKILL.md.part' && mv '.skill-downloads/requirement-research-mm78nntt/SKILL.md.part' '.skill-downloads/requirement-research-mm78nntt/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
Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.
Claude Code
test -f '.skill-downloads/requirement-research-mm78nntt/SKILL.md' && test -s '.skill-downloads/requirement-research-mm78nntt/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/research' && cp -R '.skill-downloads/requirement-research-mm78nntt' '.claude/skills/research'Codex
test -f '.skill-downloads/requirement-research-mm78nntt/SKILL.md' && test -s '.skill-downloads/requirement-research-mm78nntt/SKILL.md' && mkdir -p '.agents/skills' && test ! -e '.agents/skills/research' && cp -R '.skill-downloads/requirement-research-mm78nntt' '.agents/skills/research'OpenSkills
OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.
Installation officielle d’OpenSkillsopenskills install './.skill-downloads/requirement-research-mm78nntt'openskills read 'requirement-research-mm78nntt'La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.
Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.
openskills syncMode 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/requirement-research-mm78nntt/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.