Notre avis
Récupère les signets d'un PDF en OCRisant la table des matières imprimée via le serveur Arcane-PP, puis en utilisant les entrées parsées comme graines pour la récupération.
Points forts
- Utilise la table des matières imprimée comme source fiable même en l'absence d'édition de référence
- Combine OCR et analyse heuristique pour une récupération robuste
- Propose des chemins manuels et automatisés pour différents niveaux de confiance
Limites
- Nécessite que le serveur Arcane-PP soit en cours d'exécution
- Ne fonctionne pas sur les PDF numérisés (document_kind == 'Scanned')
- La plage de pages TOC doit être connue ou détectée automatiquement
Utilisez cette compétence lorsque votre PDF n'a pas de signets et que la table des matières imprimée est la seule source fiable de structure de chapitre.
Ne l'utilisez pas si le PDF est numérisé ou si une édition de référence avec signets est disponible.
Analyse de sécurité
SûrThe skill uses Arcane-PP CLI commands for PDF analysis and outline recovery, with no destructive or exfiltrating actions. Shell scripts are local and only for server checks and PDF processing.
Aucun point d'attention détecté
Exemples
Recover outline bookmarks for my PDF by OCR-ing its printed table of contents using Arcane-PP.I have a PDF without bookmarks. Use the printed table of contents (pages 3-5) to recover the outline.Set TOC page ranges for all sources in my project and recover outlines for the whole project.Skill: recover-outline-bridge
Recover PDF outline bookmarks by OCR-ing the printed table of contents via the Arcane-PP server, then using the parsed entries as seeds for recovery.
When to use
- The PDF has no bookmarks and no reference edition is available
- The printed TOC is the only reliable source of chapter structure
- The user mentions "Arcane-PP", "OCR", "TOC pages", or "bridge"
- Heuristic recovery (
recover-outline-heuristic) gave poor results
Prerequisites
- Arcane-PP server must be running. Verify:
bash .claude/commands/recover-outline-bridge/scripts/check-server.sh - User must provide (or agree to identify) the TOC page range.
Steps Claude must follow
-
Probe the PDF:
arcane analyze probe "<pdf>" --jsonAbort if
document_kind == "Scanned". -
Identify TOC page range — ask the user if unknown. Alternatively, detect automatically:
arcane analyze layout "<pdf>" --json | python3 -c \ "import sys,json; d=json.load(sys.stdin); \ toc=[a for a in d['anchors'] if a['kind']=='TocEntry']; \ print(f\"TOC pages: {min(a['page_index']+1 for a in toc)}-{max(a['page_index']+1 for a in toc)}\") if toc else print('No TOC anchors detected')" -
Manual path — extract and inspect (recommended for first time):
arcane pdf extract-pages "<pdf>" --start N --end M toc-extract.pdf arcane process-toc "<pdf>" --toc-pages "N-M" --output seeds.jsonShow the user the
seeds.jsoncontent. Ask: "Does this look like the correct chapter list?" Then run recovery with the seeds:arcane recover-outline "<pdf>" --seed-file seeds.json --toc-pages "N-M" \ --dry-run --depth 2 -
Automated path (when user is confident):
arcane recover "<pdf>" --toc-pages "N-M" --output "<fixed.pdf>" --depth 2 -
For a whole project (when all sources have TOC ranges set):
arcane recover-project --project "<name>" --dry-run arcane recover-project --project "<name>" -
Verify:
arcane analyze outline "<fixed.pdf>" --depth 2 -
Fill in
template.mdand present the summary.
Setting TOC ranges for batch recovery
When adding sources, include TOC page ranges so recover-project works:
arcane add "<project>" "<pdf>" --textbook --toc-start-page N --toc-end-page M
Generateur de Documentation API
Documentation
Genere automatiquement de la documentation API OpenAPI/Swagger.
Rédacteur Technique
Documentation
Rédige de la documentation technique claire selon les meilleurs style guides.
Créer des entrées de journal avec timestamps
Documentation
Crée des entrées de journal horodatées pour documenter les découvertes, réunions, revues de code, articles ou événements significatifs. Structure les informations avec un résumé, un type d'événement, des sources et des tags, puis enregistre le fichier dans `docs/log/` avec un nom basé sur la date et un slug descriptif.