Synthèse automatique
Recherche la documentation des paquets Elixir/Hex (Sobelow, Phoenix, Ecto, Credo, Ash, etc.) en privilégiant les sources locales du projet et en récupérant les docs manquantes au besoin.
Points forts
- Ordre de recherche explicite : source dans deps/, caches locaux, API HexDocs, puis recherche web en dernier recours
- Résout la version depuis mix.lock ou hex.pm pour que la documentation corresponde à celle du projet
- Interroge l'API Typesense de search.hexdocs.pm avec filtres par paquet, via curl et jq
- Cite les références file:line et des exemples d'usage réels tirés du code du projet
Limites
- Limité à l'écosystème Elixir/Hex
- Nécessite un accès réseau ainsi que curl et jq pour l'API et le téléchargement des paquets
- Demande une confirmation avant chaque récupération externe, ce qui ajoute des allers-retours
À utiliser quand il faut la documentation exacte d'une dépendance Elixir à la version verrouillée par le projet.
À éviter pour des paquets hors Elixir ou pour des questions de conception qui ne relèvent pas d'une bibliothèque existante.
Analyse de sécurité
PrudenceThe skill is a legitimate documentation-research helper. Its Bash usage is limited to standard Mix/Hex fetch commands and read-only HTTPS queries against HexDocs/hex.pm, with no eval, no pipe-to-shell of remote content, and no access to credentials or sensitive paths beyond normal project files. The only real risk surface is that it pulls and unpacks untrusted package source into the workspace and encourages network use, so it warrants 'caution' rather than 'safe' — but nothing here is malicious or destructive.
- •Uses Bash to run network-fetching commands (`mix hex.docs fetch`, `mix hex.package fetch --unpack`, `curl` to search.hexdocs.pm and hex.pm) and writes third-party package source/docs into the working directory (`.hex-docs/`, `.hex-packages/`)
- •Downloads and unpacks arbitrary third-party package tarballs into the project without mentioning checksum/signature verification or pinned-version review
- •Overrides HEX_HOME to a project-local path, which is reasonable but could shadow a user's configured Hex environment
- •No destructive, obfuscated, or secret-exfiltrating behavior; curl output is piped to jq for parsing only, not executed
Exemples
How do I build a dynamic where clause with Ecto.Query? Check the Ecto version in my mix.lock and show me the relevant function docs.Search the Sobelow docs for how to skip specific checks in .sobelow-conf and show me a concrete example.Find out how Ash integrates with Phoenix controllers — look in deps/ first, and fetch the Ash docs only if they're missing.name: hex-docs-search description: Research Hex packages (Sobelow, Phoenix, Ecto, Credo, Ash, etc). Use when investigating packages, understanding integration patterns, or finding module/function docs and usage examples. Automatically fetches missing documentation and source code locally. allowed-tools: Read, Grep, Glob, Bash, WebSearch, AskUserQuestion model: haiku context: fork agent: Explore user-invocable: true
Hex Documentation Search
Search Elixir package documentation. Prioritize local sources, fetch if needed.
Search Locations (in order)
- Project deps:
deps/<package>/lib/(source with @moduledoc/@doc),deps/<package>/doc/(HTML if generated) - Fetched docs cache:
.hex-docs/docs/hexpm/<package>/<version>/ - Fetched source cache:
.hex-packages/<package>-<version>/ - HexDocs API: Programmatic search (see below)
- Web search: Last resort with
site:hexdocs.pm
Fetching Locally
Determine version from mix.lock, mix.exs, or prompt user if ambiguous.
# Fetch documentation (stores in .hex-docs/)
HEX_HOME=.hex-docs mix hex.docs fetch <package> <version>
# Fetch source code (if docs insufficient or unavailable)
mix hex.package fetch <package> <version> --unpack --output .hex-packages/<package>-<version>
Mention adding .hex-docs/ and .hex-packages/ to .gitignore once per session when fetching occurs.
HexDocs Search API
Powered by Typesense at search.hexdocs.pm.
# Search within a specific package
curl -s "https://search.hexdocs.pm/?q=<query>&filter_by=package:=[<package>-<version>]" \
| jq '.hits[].document | {title, doc, url}'
# Search across all packages
curl -s "https://search.hexdocs.pm/?q=<query>" \
| jq '.hits[].document | {package, title, doc}'
Response fields:
package: Package nametitle: Module/function namedoc: Documentation texturl: Path to append tohttps://hexdocs.pm
Version Resolution
# From mix.lock
grep '"<package>"' mix.lock | grep -oE '[0-9]+\.[0-9]+\.[0-9]+'
# Latest from hex.pm
curl -s "https://hex.pm/api/packages/<package>" | jq -r '.releases[0].version'
Key Behaviors
- Prefer local/cached results (version matches project)
- Show real usage examples from project codebase when relevant
- Include file:line references for source code
- Prompt user before fetching external packages
- Source code @moduledoc/@doc often has more detail than HTML docs
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/hex-documentation-search-mmio7130/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/hex-documentation-search-mmio7130' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/hex-documentation-search-mmio7130/download' --output '.skill-downloads/hex-documentation-search-mmio7130/SKILL.md.part' && mv '.skill-downloads/hex-documentation-search-mmio7130/SKILL.md.part' '.skill-downloads/hex-documentation-search-mmio7130/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.
Outils déclarés par l’auteur (à vérifier dans votre agent) : Read, Grep, Glob, Bash, WebSearch, AskUserQuestion
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/hex-documentation-search-mmio7130/SKILL.md' && test -s '.skill-downloads/hex-documentation-search-mmio7130/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/hex-docs-search' && cp -R '.skill-downloads/hex-documentation-search-mmio7130' '.claude/skills/hex-docs-search'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/hex-documentation-search-mmio7130'openskills read 'hex-documentation-search-mmio7130'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/hex-documentation-search-mmio7130/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.
Rédaction de docs Supabase
Documentation
Rédigez, éditez et révisez le contenu de la documentation Supabase : guides, tutoriels, références et partiels. Suivez les guides de style et les règles de validation MDX/TOML.
Créer un enregistrement de décision d'architecture
Documentation
Créer un nouveau ADR avec numérotation séquentielle, l'enregistrer dans le graphe AgentDB et le lier aux ADR associés.
Mise à jour de plan avec recherche approfondie
Documentation
Met à jour un document de plan en lançant des sous-agents en parallèle pour analyser un sujet sur tous les passes du compilateur, puis consolide les résultats.