md-to-wiki — Routeur fin (Phase 2)
Transformez des fichiers de spécifications markdown en sites de documentation.
Déclencheurs : "build wiki", "generate docs", "publish specs", "make a site", "wiki from markdown", "draw diagram", "flow chart", "architecture diagram", "state diagram", "sequence diagram"
Routeur de phase
Analysez la demande de l'utilisateur pour déterminer le chemin à suivre :
lower=$(echo "$1" | tr '[:upper:]' '[:lower:]')
case "$lower" in
*"not sure"*|*"help"*|*"recommend"*) ROUTE="onboarding" ;;
*"html"*|*"site"*|*"mkdocs"*|*"material"*) ROUTE="mkdocs" ;;
*"swagger"*|*"openapi"*|*"api"*) ROUTE="swagger" ;;
*"github wiki"*|*"wiki tab"*) ROUTE="github-wiki" ;;
*"dokuwiki"*|*"doku"*) ROUTE="dokuwiki" ;;
*"pdf"*|*"print"*|*"book"*) ROUTE="pdf" ;;
*"reference"*|*"issue"*|*"pr"*|*"pull"*) ROUTE="references" ;;
*"deploy"*|*"publish"*|*"go live"*) ROUTE="deploy" ;;
*) ROUTE="onboarding" ;;
esac
Lancez ensuite l'agent approprié :
| Route | Agent | Description |
|---|---|---|
onboarding | agents/onboarding.md | Interroge l'utilisateur, détecte l'OS, configure SKILL_DIR |
mkdocs | agents/format-mkdocs.md | Génère un site MkDocs Material |
swagger | agents/format-swagger.md | Génère une interface OpenAPI 3.0 + Swagger UI |
github-wiki | agents/format-github-wiki.md | Publie vers GitHub Wiki |
dokuwiki | agents/format-dokuwiki.md | Convertit au format DokuWiki |
pdf | agents/format-pdf.md | Génère un PDF via Pandoc |
references | agents/references.md | Enrichit la documentation avec des références d'issues/PR GitHub |
deploy | agents/deploy.md | Déploie la documentation générée sur un hébergement |
Flux d'exécution
- Onboarding → Pose des questions : nom du projet, répertoires sources, public (développeur/partie prenante/grand public), format souhaité. Détecte une fois l'OS, stocke
SKILL_DIR,SCRIPT_EXT,SCRIPT_RUNNER. - Génération du format → Charge l'agent de format approprié. Utilise les scripts compagnons de
scripts/avec$SCRIPT_RUNNER. - Références → Si l'utilisateur souhaite des références d'issues/PR, charge references.md.
- Déploiement → Après la génération, charge deploy.md pour proposer un hébergement.
Variables globales (définies une fois pendant l'onboarding)
SKILL_DIR— chemin résolu vers le dossier de cette compétenceSCRIPT_EXT—.shou.ps1SCRIPT_RUNNER—""ou"powershell -File"OS_TYPE—unixouwindowsPROJECT_NAME— fourni par l'utilisateurSOURCES— chemins vers les fichiers de spécificationsAUDIENCE—developer,stakeholderougeneral
Scripts compagnons
Tous acceptent les arguments positionnels de manière identique en .sh et .ps1 :
| Script | Objectif |
|---|---|
discover-sources | Analyse les répertoires pour trouver les fichiers spec/project/codebase/quick |
generate-mkdocs | Crée un fichier mkdocs.yml complet + structure de pages |
generate-index | Construit une page d'accueil adaptée au public cible |
to-dokuwiki | Convertit le markdown vers la syntaxe DokuWiki |
to-pdf | Concatène et convertit en PDF via pandoc |
fetch-issues | Met en cache les métadonnées des issues/PR GitHub |
Entrée multi-répertoire
Fusionne plusieurs répertoires sources dans merged-specs/ avant d'exécuter :
mkdir -p merged-specs && cp -r .specs/* docs/* merged-specs/
Partage
Copiez md-to-wiki/ dans le dossier .config/opencode/skills/ ou .opencode/skills/ d'un collègue. Les dépendances varient selon le format.