Que fait legends-obs-kit ?
Utilisez le CLI fourni comme source de vérité. L'épine dorsale d'exécution est OBS WebSocket v5 ; FFprobe et le log OBS fournissent la preuve d'enregistrement.
Résoudre et qualifier
Résolvez la commande dans cet ordre :
- Utilisez
lobsoulegends-obs-kitlorsqu'il est disponible dans lePATH. - Si ce skill est lié depuis un dépôt ou une release extraite, remontez de deux répertoires à partir de
SKILL.mdet exécuteznode <racine>\dist\index.js. - Dans un checkout développeur sans
dist, exécutezpnpm dev --depuis la racine du dépôt.
Si aucune de ces options n'existe, dites à l'utilisateur d'installer la release complète ou le dépôt. N'inventez pas de backend de contrôle OBS. Dans les exemples ci-dessous, lobs signifie l'invocation résolue disponible.
lobs doctor --pretty
lobs manifest --pretty
lobs agent:context --pretty
lobs audit:status --pretty
doctor verrouille l'accès au contrôle OBS local authentifié. Les vérifications d'encodeur, HDR, FFprobe, chemin d'enregistrement et microphone sont des capacités optionnelles, sauf si l'opération demandée les nécessite. Si FFprobe n'est pas dans le PATH, définissez LEGENDS_OBS_FFPROBE_PATH sur son exécutable.
Si la machine ne possède pas de registre (ledger), exécutez audit:capture --reason first-baseline. Si un registre existe, exécutez audit:diff --against good ; utilisez --against latest jusqu'à ce que le premier canary réussi crée un pointeur connu fiable.
Router par intention
| Intention | Commandes |
|---|---|
| Santé et état en direct | doctor, status, record:status |
| Machine, profil, scènes et sources | inventory, profile:show |
| Point de terminaison audio | audio:status, audio:plan, audio:bind |
| Historique des réglages et dérive | audit:status, audit:capture, audit:show, audit:diff, audit:verify |
| Changement de profil | profile:plan, profile:backup, profile:apply, profile:refresh, profile:rollback |
| Enregistrement local | record:start, record:stop, record:canary |
| Preuve | logs:latest, receipts:list, receipts:verify |
| Commutateur de scènes par panneaux (optionnel) | vision-switch:* |
Consultez references/command-map.md pour la carte compacte des commandes et de sécurité.
La sortie par défaut est minimisée en termes de confidentialité pour une utilisation par agent. inventory --full, audio:status --include-devices, les documents d'audit et les reçus locaux peuvent contenir des chemins machine, des noms de sources, des identifiants de points de terminaison, des titres de fenêtres et d'autres faits relatifs au poste de travail ; conservez-les en local sauf si l'utilisateur demande explicitement de les partager.
Règles de mutation
- Lisez d'abord l'état actuel et produisez un plan.
- Vérifiez que l'enregistrement, le streaming, le tampon de relecture et la caméra virtuelle sont inactifs.
- Gardez
LEGENDS_OBS_DRY_RUN=truepar défaut. - Pour une écriture autorisée, définissez-le sur
false, passez--confirm, effectuez une mutation bornée, et restaurez le mode dry-run dans un blocfinally. - Chaque inspection de profil, plan, sauvegarde, application ou rafraîchissement et chaque
record:canarynécessite un--preset <id>explicite ; les presets fournis ne sont jamais sélectionnés comme recommandation utilisateur. - L'application de profil prend un instantané avant d'écrire, ne rafraîchit que lorsque nécessaire, et vérifie une relecture exacte.
- Ne jamais imprimer ou copier le mot de passe OBS WebSocket ou les identifiants du service OBS.
- Ne jamais qualifier un enregistrement de
WORKSsans un reçu canary réussi. - Traitez
latestcomme la dernière observation, non prouvée. Seul un canary réussi fait progresserlast-known-good. - Utilisez
--require-microphoneuniquement lorsque la capture microphone fait partie des critères d'acceptation de l'utilisateur.
Décisions matérielles
Ne traitez aucun preset fourni comme universellement correct. Inspectez les encodeurs disponibles, la résolution/taux d'images actuel, le format de couleur, le chemin d'affichage, le stockage, les besoins audio et la plateforme cible. Expliquez les compromis, exécutez profile:plan, et laissez le résultat demandé par l'utilisateur sélectionner le preset.
Le preset fourni hdr-4k60-av1-hybrid-mp4 est une référence testée pour du matériel NVIDIA capable : 3840×2160/60, P010, Rec.2100 PQ, plage limitée, Standard NVENC AV1, Hybrid MP4, CQP20 ou mieux, images clés de deux secondes, un seul passage et pas de redimensionnement. Ce n'est pas une recommandation par défaut pour d'autres systèmes.
Commutateur de scènes optionnel (Vision Switcher)
Le commutateur déterministe panneau-vers-scène est désarmé et en mode dry-run par défaut. Fournissez des échantillons de panneaux avec --panel A|B|C|D ou définissez LEGENDS_OBS_PANEL_SENSOR sur un script PowerShell qui émet la structure JSON documentée. Les coupures en direct nécessitent en plus un état armé, des sorties inactives, LEGENDS_OBS_DRY_RUN=false et --confirm. La boucle de coupure n'utilise jamais de LLM et ne modifie jamais le mode d'affichage de Windows.