Communitygithub.com

curiositech/windags-skills

Algèbre d'intervalles temporels pour raisonner sur les relations temporelles dans la planification et la représentation des connaissances.

Qu'est-ce que windags-skills ?

Cette compétence implémente l'algèbre d'intervalles temporels d'Allen (1983) pour le raisonnement temporel qualitatif. Elle est conçue pour les agents IA (Claude Code, Codex, Cursor) confrontés à des scénarios de planification, de représentation des connaissances ou de diagnostic où les relations entre intervalles temporels (avant, pendant, chevauche, etc.) sont cruciales. La compétence gère l'incertitude en maintenant des étiquettes disjonctives complètes sur les 13 relations possibles, évite les engagements prématurés, détecte les incohérences via la propagation de contraintes, et gère le raisonnement multi-échelle via une hiérarchie d'intervalles de référence. Elle fournit des points de décision structurés, des détecteurs de modes de défaillance (comme la 'point-ification' ou la 'bombe de propagation globale'), des exemples détaillés et des portes qualité pour garantir une application correcte. La compétence délimite clairement son domaine : ne pas utiliser pour des comparaisons de timestamps simples, des durées métriques ou des systèmes temps réel – elle excelle dans le raisonnement qualitatif sous incertitude avec mises à jour incrémentales.

Compatible avec✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/curiositech/windags-skills/tree/HEAD/skills/allen-cacm1983

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

SKILL.md : Raisonnement par intervalles temporels (Allen 1983)

Quand utiliser cette compétence

Chargez cette compétence lorsque vous rencontrez :

Situation déclencheurPourquoi Allen s'applique
"Est-ce que la tâche A se termine avant que la tâche B commence ?"Nécessite une classification des relations entre intervalles (avant, rencontre, chevauche...)
"Je ne sais pas exactement quand X s'est produit, seulement que c'était pendant Y"Incertitude disjonctive parmi les 13 relations
"Si nous ajoutons cette contrainte, le planning fonctionne-t-il encore ?"Propagation de contraintes + détection d'incohérence
"L'événement A se produit quotidiennement ; l'événement B se produit annuellement – comment interagissent-ils ?"Hiérarchie d'intervalles de référence pour la gestion de portée

Ne pas utiliser si vous devez seulement comparer deux timestamps absolus sans incertitude – une simple arithmétique suffit.


Points de décision

Nouvelle assertion temporelle ajoutée

SI l'assertion est en conflit avec les contraintes existantes :
    → Détecter une étiquette d'arc vide pendant la propagation
    → S'ARRÊTER immédiatement, signaler la paire d'intervalles incohérente
    → NE PAS continuer avec un état incohérent

SI l'assertion est cohérente :
    → Exécuter la propagation de contraintes à partir des arcs affectés
    → Mettre à jour les étiquettes en intersectant les conséquences de transitivité
    → Continuer jusqu'à ce qu'aucun autre raffinement ne soit possible

Gestion de l'incertitude temporelle

SI les preuves ne supportent que plusieurs relations :
    → Maintenir l'étiquette disjonctive complète {avant, rencontre, chevauche}
    → Ne jamais réduire à une seule relation sans preuve
    → Journaliser quand/pourquoi l'ensemble de contraintes se réduit

SI vous êtes contraint d'agir sous incertitude :
    → Utiliser l'étiquette disjonctive telle quelle pour la planification
    → Marquer toute hypothèse comme révisable
    → Éviter l'engagement prématuré

Cadrage du raisonnement temporel

SI vous traitez avec des événements à des échelles de temps très différentes :
    → Identifier la hiérarchie d'intervalles de référence (année→mois→jour)
    → Raisonner au sein de chaque cluster séparément
    → Créer des contraintes de pont explicites aux limites
    → Éviter d'aplatir tout en un seul graphe global

SI le raisonnement local semble suffisant :
    → Vérifier que la portée de la requête correspond au niveau d'intervalle de référence
    → Propager uniquement dans le cluster pertinent
    → Escalader entre clusters uniquement lorsqu'une dépendance est détectée

Persistance de l'état

SI l'état se poursuit sans limite de fin explicite :
    → Appliquer la persistance par défaut ET marquer comme révisable
    → Toute assertion de limite de fin future remplace la valeur par défaut
    → Ne jamais traiter une hypothèse de persistance comme une contrainte dure

SI une limite temporelle explicite est fournie :
    → Remplacer toute persistance par défaut existante
    → Propager la nouvelle contrainte normalement

Modes de défaillance

Anti-patronSymptômeDiagnosticCorrectif
Point-ificationRéduire les événements à des timestamps, perdre les informations de chevauchement/contenanceUtiliser time=14:30 au lieu d'intervalles [14:30, 14:45]Modéliser chaque événement comme un intervalle avec début/fin, même si la durée est inconnue
Engagement prématuréChoisir une seule relation alors que les preuves en supportent plusieursAffirmer "avant" alors que vous savez seulement "pas pendant"Maintenir l'étiquette disjonctive complète jusqu'à ce que les preuves forcent le rétrécissement
Bombe de propagation globaleCoût O(N²) par mise à jour, performances dégradées avec la taille de la base de connaissancesExécuter la propagation de contraintes sur tout le graphe pour une requête localeUtiliser la hiérarchie d'intervalles de référence pour limiter la portée de la propagation
Déni d'étiquette videContinuer le raisonnement après détection d'incohérenceObtenir des résultats absurdes parce que les contraintes conflictuelles sont ignoréesTraiter l'étiquette d'arc vide comme un SUCCÈS (incohérence détectée tôt), arrêt immédiat
Rigidité de persistanceImpossible de remplacer les hypothèses "se poursuit jusqu'à changement"Les nouvelles limites temporelles sont rejetées car elles entrent en conflit avec la persistanceMarquer toutes les persistance par défaut comme révisables, permettre le remplacement par des assertions explicites

Règles de détection :

  • Si vous voyez des timestamps sans durée → Point-ification
  • Si vous voyez une seule relation choisie arbitrairement → Engagement prématuré
  • Si le coût de propagation augmente avec la taille totale de la base de connaissances → Bombe de propagation globale
  • Si le raisonnement continue après une étiquette vide → Déni d'étiquette vide
  • Si de nouveaux faits temporels sont rejetés → Rigidité de persistance

Exemples détaillés

Exemple 1 : Détection de conflit dans un planning de réunion

Scénario : Ajouter "Revue d'équipe" à un calendrier qui contient déjà "Appel client" et "Réunion quotidienne d'ingénierie"

État initial :

Appel client (I₁) : [10:00, 11:00]
Réunion quotidienne d'ingénierie (I₂) : [11:30, 12:00]
Connu : I₁ {avant} I₂

Nouvelle assertion : Revue d'équipe (I₃) : [10:45, 11:15]

Trace de raisonnement expert :

  1. Classifier les nouvelles relations :

    • I₃ vs I₁ : commence à 10:45, I₁ se termine à 11:00 → {chevauche}
    • I₃ vs I₂ : se termine à 11:15, I₂ commence à 11:30 → {avant}
  2. Propagation de contraintes :

    • Depuis I₁ {avant} I₂ et I₃ {chevauche} I₁
    • Transitivité : chevauche ∘ avant = {avant, chevauche, rencontre, commence, pendant}
    • Nouvelle contrainte : I₃ {avant, chevauche, rencontre, commence, pendant} I₂
    • Intersection avec I₃ {avant} I₂ : l'étiquette devient {avant}
  3. Vérification de cohérence : Toutes les étiquettes non vides → Le planning est réalisable mais a un chevauchement

Ce que le novice manquerait :

  • Pourrait ne pas vérifier que le chevauchement de I₃ avec I₁ crée un conflit de ressources
  • Pourrait ne pas vérifier que la transitivité maintient la cohérence
  • Pourrait ne pas distinguer "ordonnancement réalisable" de "pas de conflit de ressources"

L'expert détecte :

  • Le chevauchement est signalé immédiatement via la classification des relations
  • La propagation vérifie que la cohérence globale est maintenue
  • Distinction claire entre faisabilité temporelle et disponibilité des ressources

Exemple 2 : Dépendances de phases de processus

Scénario : Pipeline de déploiement avec des temps d'achèvement de tâches incertains

État initial :

Phase de construction (B) : durée inconnue, doit finir avant Déploiement
Phase de test (T) : chevauche la fin de Construction, durée incertaine
Phase de déploiement (D) : commence après que B et T soient terminés

Réseau de contraintes :

T {chevauche, finit} B (Le test peut finir avec ou avant la construction)
B {avant, rencontre} D (La construction doit être terminée avant le déploiement)
T {avant, rencontre} D (Le test doit être terminé avant le déploiement)

Nouvelle information : "Le test a trouvé un bogue critique, prolongeant de 2 heures"

Raisonnement expert :

  1. La mise à jour affecte la portée : Le prolongement du test repousse la fin de T
  2. Propagation : Si T {finit} B à l'origine, maintenant T {chevauche} B (se prolonge au-delà de la fin de Construction)
  3. Vérification de cohérence : T {chevauche} B permet toujours B {avant, rencontre} D et T {avant, rencontre} D
  4. Résultat : Déploiement retardé mais la logique du pipeline est intacte

Ce que le novice manquerait :

  • Pourrait supposer que l'achèvement du test n'affecte pas la dépendance Construction-Déploiement
  • Pourrait ne pas propager le prolongement du test jusqu'au timing du Déploiement
  • Pourrait traiter "Le test se prolonge" comme un fait isolé plutôt que comme une mise à jour du réseau de contraintes

L'expert détecte :

  • Reconnaît que la relation Test-Construction doit être réévaluée
  • Propage les implications temporelles à travers tout le réseau de contraintes
  • Maintient l'incertitude de manière appropriée (Déploiement pourrait commencer immédiatement après Construction OU après Test prolongé)

Portes qualité

La tâche de raisonnement temporel est terminée lorsque :

  • Tous les intervalles représentés avec des bornes de début/fin explicites (pas d'événements ponctuels)
  • Chaque paire d'intervalles a une étiquette d'arc non vide parmi le vocabulaire des 13 relations
  • La propagation de contraintes exécutée jusqu'à complétion (aucune mise à jour de transitivité en attente)
  • Toutes les étiquettes disjonctives reflètent honnêtement les preuves actuelles (aucun engagement arbitraire)
  • Hiérarchie d'intervalles de référence établie pour le raisonnement multi-échelle
  • Les persistance par défaut marquées comme révisables lorsque applicable
  • Détection d'incohérence vérifiée (étiquettes vides capturées et signalées)
  • Les ponts de portée de référence inter-domaines définis explicitement
  • Toutes les assertions temporelles tracées jusqu'à leur source de preuve
  • La portée de la requête correspond au niveau de granularité du raisonnement

Limites (À NE PAS FAIRE)

Ne PAS utiliser l'algèbre d'intervalles d'Allen pour :

  • Comparaison simple de timestamps → Utiliser l'arithmétique : if (t1 < t2)
  • Calcul de durée métrique → Utiliser l'arithmétique de calendrier : date_fin - date_debut
  • Optimisation d'ordonnancement temps réel → Utiliser la satisfaction de contraintes avec domaines numériques
  • Inférence temporelle probabiliste → Utiliser des réseaux temporels probabilistes
  • Dynamique de temps continu → Utiliser des équations différentielles
  • Flux d'événements haute fréquence → Utiliser des frameworks de traitement de flux

Déléguer à la place :

  • Pour les contraintes métriques : Utiliser satisfaction-de-contraintes-avec-domaines-numériques
  • Pour le raisonnement temporel probabiliste : Utiliser réseaux-temporels-bayésiens
  • Pour les systèmes temps réel : Utiliser ordonnancement-à-taux-monotonique
  • Pour la dynamique continue : Utiliser vérification-de-modèle-logique-temporel
  • Pour le traitement de flux d'événements : Utiliser traitement-d'événements-complexes

Allen excelle dans : Le raisonnement temporel qualitatif sous incertitude avec des mises à jour incrémentales de connaissances et une gestion hiérarchique de la portée.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

curiositech/windags-skills

Expert in 2000s-era music visualization (Milkdrop, AVS, Geiss) and modern WebGL implementations. Specializes in Butterchurn integration, Web Audio API AnalyserNode FFT data, GLSL shaders for audio-reactive visuals, and psychedelic generative art. Activate on "Milkdrop", "music visualization", "WebGL visualizer", "Butterchurn", "audio reactive", "FFT visualization", "spectrum analyzer". NOT for simple bar charts/waveforms (use basic canvas), video editing, or non-audio visuals.

curiositech/windags-skills

Expert legal research agent for finding and scraping expungement data state by state. Knows authoritative sources, URL patterns, Firecrawl configuration, and 2026 legal landscape.

curiositech/windags-skills

Expert in 3D computer vision labeling tools, workflows, and AI-assisted annotation for LiDAR, point clouds, and sensor fusion. Covers SAM4D/Point-SAM, human-in-the-loop architectures, and vertical-specific training strategies. Activate on '3D labeling', 'point cloud annotation', 'LiDAR labeling', 'SAM 3D', 'SAM4D', 'sensor fusion annotation', '3D bounding box', 'semantic segmentation point cloud'. NOT for 2D image labeling (use clip-aware-embeddings), general ML training (use ml-engineer), video annotation without 3D (use computer-vision-pipeline), or VLM prompt engineering (use prompt-engineer).

curiositech/windags-skills

Implement WCAG 2.2 AA/AAA compliance with automated testing, keyboard navigation, screen reader support, and focus management. Activate on: accessibility audit, WCAG compliance, keyboard navigation, screen reader, aria attributes, axe-core, focus trap. NOT for: design-level accessibility review (use design-accessibility-auditor), color contrast only (use css-in-js-architect).

curiositech/windags-skills

Time-blind friendly planning, executive function support, and daily structure for ADHD brains. Specializes in realistic time estimation, dopamine-aware task design, and building systems that actually work for neurodivergent minds.

curiositech/windags-skills

Designs digital experiences for ADHD brains using neuroscience research and UX principles. Expert in reducing cognitive load, time blindness solutions, dopamine-driven engagement, and compassionate design patterns. Activate on 'ADHD design', 'cognitive load', 'accessibility', 'neurodivergent UX', 'time blindness', 'dopamine-driven', 'executive function'. NOT for general accessibility (WCAG only), neurotypical UX design, or simple UI styling without ADHD context.

curiositech/windags-skills

>- Apply crisis decision-making research to agent routing, uncertainty triage, and coordination failure analysis in time-pressured systems. Use when diagnosing handoff failures, analytical paralysis, or expert judgment under incomplete information. NOT for routine coding, simple CRUD design, or static single-agent tasks with complete information.

curiositech/windags-skills

Extend and modify the admin dashboard, developer portal, and operations console. Use when adding new admin tabs, metrics, monitoring features, or internal tools. Activates for dashboard development, analytics, user management, and internal tooling.

curiositech/windags-skills

Conversation patterns and interaction protocols for multi-agent systems. Covers request/response, pub/sub, blackboard, delegation chains, debate, critique, consensus, fan-out/fan-in, supervisor-worker, and peer negotiation. Deep analysis of AutoGen conversation patterns, CrewAI delegation, LangGraph state passing, and FIPA-ACL performatives. Teaches how to design what agents say to each other and in what order. Activate on: "agent conversation", "agent protocol", "multi-agent debate", "agent delegation", "supervisor worker pattern", "agent voting", "consensus protocol", "fan-out fan-in", "agent negotiation", "blackboard pattern", "agent dialogue", "conversation topology", "agent handoff". NOT for: wire format or serialization (use agent-interchange-formats), orchestration infrastructure (use agentic-infrastructure-2026), single agent behavior (use agentic-patterns).

curiositech/windags-skills

Meta-agent for creating new custom agents, skills, and MCP integrations. Expert in agent design, MCP development, skill architecture, and rapid prototyping. Activate on 'create agent', 'new skill', 'MCP server', 'custom tool', 'agent design'. NOT for using existing agents (invoke them directly), general coding (use language-specific skills), or infrastructure setup (use deployment-engineer).

curiositech/windags-skills

AI-powered calendar management and agent-based scheduling coordination. Covers calendar APIs (Google Calendar, CalDAV/iCal), AI scheduling assistants (Reclaim, Clockwise, Motion, Cal.com), building custom calendar agents with MCP, multi-calendar merging, timezone management, focus block protection, meeting fatigue detection, and agent-to-agent meeting negotiation protocols. Activate on: "calendar agent", "AI scheduling", "calendar coordination", "meeting scheduling", "calendar API", "focus time protection", "calendar optimization", "Google Calendar MCP", "Reclaim", "Clockwise", "Motion", "Cal.com", "smart scheduling", "calendar-aware agent", "timezone scheduling", "agent negotiation meetings". NOT for: manual calendar UI component design (use form-validation-architect), project management scheduling or Gantt charts (use project-management-guru-adhd), general time-tracking or pomodoro apps (use adhd-daily-planner for time-awareness), building the agent itself from scratch (use agent-creator).

curiositech/windags-skills

Build and adopt production AI agent infrastructure in 2026. Covers framework selection (LangGraph, CrewAI, AutoGen, MCP), orchestration patterns, evaluation, observability, memory systems, and tool use. Also covers the SOCIAL dimension: how to sell agent infrastructure internally, change management, measuring ROI, building trust in autonomous systems, and scaling adoption across teams. Activate on: "agent infrastructure", "agent framework comparison", "which agent framework", "sell AI tools internally", "agent adoption", "agent observability", "agent evaluation", "MCP architecture", "agentic mesh", "enterprise AI agents", "AI change management", "agent ROI". NOT for: building specific agents (use ai-engineer), designing agent behavior patterns (use agentic-patterns), prompt tuning (use prompt-engineer).

curiositech/windags-skills

Fundamental patterns for effective agentic behavior. Teaches decomposition, tool orchestration, error recovery, context management, quality self-assessment, and knowing when to stop. Model-agnostic principles that make any agent more effective regardless of domain. Activate on: "how should I structure this agent", "agentic workflow", "agent patterns", "multi-step task", "tool orchestration", "/agentic-patterns", "decompose this", "agent best practices", "chain of actions", "when should the agent stop", "agent loop design". NOT for: creating agent infrastructure (use agent-creator), building DAGs (use windags-architect), specific tool implementation.

curiositech/windags-skills

Automated discovery and matching of agent skills for dynamic task routing and capability assessment

curiositech/windags-skills

Cryptographic security for agentic systems — zero-trust agent networking, signed message envelopes (JWS/JWE), capability-based security (ocaps), Merkle tree audit trails, WASM sandboxing, and formal verification. Covers CLI dev tool security, mTLS between agents, permission boundaries (least privilege for AI agents), and supply chain security for skills/plugins. Activate on: "agent security", "zero trust agents", "secure agent communication", "capability-based security", "ocap", "signed messages between agents", "agent audit trail", "sandbox agent execution", "agent permissions", "mTLS agents", "cryptographic verification", "agent supply chain", "OWASP agentic", "prove agent did X", "tamper-proof agent logs". NOT for: application-level SAST scanning (use security-auditor), network firewall rules (use infrastructure), SOC2/HIPAA compliance (organizational), or prompt injection defense (use prompt-engineer).

curiositech/windags-skills

Data structures and serialization formats for agent-to-agent communication. Covers message envelopes, structured output schemas, capability declarations, task handoff payloads, error/retry signaling, and context windows as data structures. Deep comparison of A2A protocol, MCP, OpenAI function calling, and LangChain message types. Teaches when to use rigid schemas vs free-form with validation, typed vs untyped, streaming vs batch. Activate on: "agent message format", "agent communication schema", "agent-to-agent protocol", "A2A protocol", "MCP message format", "structured output for agents", "agent interop", "interchange format", "agent serialization", "task handoff format", "capability declaration". NOT for: what agents say to each other (use agent-conversation-protocols), orchestration topology (use multi-agent-coordination), building agent infrastructure (use agentic-infrastructure-2026).

curiositech/windags-skills

Logic-based agent programming language implementing BDI architecture for practical autonomous agent development

curiositech/windags-skills

>- Design AgentSpeak(L)-style BDI agents with context-guarded plans, selection functions, and intention stacks. Use for interruptible autonomy, agent policy, and multi-agent orchestration in dynamic environments. NOT for simple rule engines, static planners, or centralized workflows.

curiositech/windags-skills

Foundational concurrent computation model where actors communicate exclusively through asynchronous message passing

curiositech/windags-skills

license: Apache-2.0 NOT for unrelated tasks outside this domain.

Skills associés