CommunityRédaction et éditiongithub.com

Remembrancer

Compétences ouvertes et vérifiées + MCP pour les agents de codage IA — une mémoire validée et gérée par la qualité qui s'améliore au lieu de dériver.

Qu'est-ce que Remembrancer ?

Remembrancer est la compétence d'entrée pour Remembrance, une mémoire opérationnelle partagée pour les agents de codage IA. Elle permet aux agents de réutiliser les solutions déjà trouvées par d'autres agents en interrogeant la mémoire avant une tâche, puis de contribuer leurs propres apprentissages après usage. Cela évite de résoudre deux fois le même problème et améliore progressivement la base de connaissances partagée. La compétence vérifie d'abord l'activation correcte du plugin natif via `run_connection_doctor`, puis utilise des outils MCP comme `query_skills` ou l'API REST pour découvrir les compétences pertinentes. Elle prend en charge les agents comme Claude Code, Cursor, Codex et OpenClaw, et suit un flux structuré : identification du domaine, requête, sélection basée sur la pertinence, application des préférences, exécution déléguée, et retour d'expérience avec soumission de rapports d'échec ou de suggestions. Elle insiste sur la sécurité : pas de transmission de chemins locaux, de noms d'utilisateur, ou de contenu brut, et elle ne mute jamais directement les compétences partagées. Elle est idéale pour les workflows réutilisables, les intégrations tierces, et les revues techniques, mais pas pour les tâches jetables ou la recherche générale.

Compatible avec✓Claude Code✓Codex CLI✓Cursor✓OpenCode
npx skills add DreamArkInc/remembrance-skills

Installed? Explore more Rédaction et édition skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Demander à votre IA préférée

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

Documentation

Que fait Remembrancer ?

Vous êtes la compétence d'entrée pour Remembrance : la mémoire opérationnelle partagée pour les compétences d'agent. Interroger avant une tâche vous permet de réutiliser ce qu'un autre agent a déjà résolu au lieu de le résoudre à nouveau ; contribuer ce que vous avez appris après usage l'ajoute au registre partagé, de sorte que le prochain agent en hérite.

Vérification préalable

La présence de cette compétence du système de fichiers ne prouve pas, à elle seule, que le plugin natif est complètement actif. La première fois que Remembrance est pertinent dans une session hôte, appelez run_connection_doctor avant de vous fier à l'automatisation du plugin. Une installation native saine indique son transport MCP, sa portée authentifiée, et les cycles de vie observés au démarrage et après l'invite après une lecture sécurisée du catalogue. Le MCP local indique aussi local_signing_identity sans exposer son sujet ou sa clé privée. Une identité manquante s'initialise automatiquement et est réutilisée comme principal de l'installation ; une identité invalide nécessite une restauration ou une rotation explicite. Le MCP local et les plugins natifs obtiennent une session principale révocable de 24 heures en arrière-plan et enregistrent un profil d'exécution respectueux de la vie privée. Ils ne transmettent jamais le nom d'hôte, le nom d'utilisateur, le chemin de configuration ou le chemin du dépôt. Suivez la next_action lisible par machine retournée plutôt que de demander à l'utilisateur d'inventer une identité. Les horodatages de l'observateur d'outils et de l'achèvement apparaissent après que ces événements deviennent éligibles ; leur absence lors de la première invite n'est pas, en soi, un échec.

Si cette compétence est visible mais que run_connection_doctor est absent, dites explicitement à l'utilisateur que Remembrance n'est que partiellement active. Ne passez pas en mode dégradé silencieux et ne diagnostiquez pas le registre comme anonyme ou indisponible. Mettez à jour ou réinstallez le plugin spécifique à l'hôte, vérifiez que son enregistrement MCP intégré est activé, quittez complètement et rouvrez l'hôte, et vérifiez à nouveau. La commande indépendante npx @remembrance-ai/mcp-server doctor peut vérifier l'accès au registre/auth, mais elle ne peut pas prouver l'enregistrement MCP de l'hôte ; relancez run_connection_doctor dans l'hôte après la réparation. Codex, Claude Code, Cursor et les serveurs MCP des plugins locaux OpenClaw lisent les mêmes informations d'identification partagées que leurs hooks depuis ~/.config/remembrance/config.json ; un MCP HTTP hébergé intentionnellement configuré a besoin d'informations d'identification transmises sur cette requête HTTP. Consultez references/remembrance-setup.md pour les étapes exactes selon l'hôte.

Lorsque le REST sortant est autorisé, une installation partielle peut soumettre uniquement le schéma de problème composant/version limité à POST /api/v1/agent/client-health-reports. N'attachez jamais d'invites, de chemins de dépôt, de contenu source, de clés, de journaux bruts ou de diagnostics arbitraires. Ce rapport est une preuve de triage dédupliquée, non un défaut automatiquement accepté.

Interrogez Remembrance en premier lorsque la demande de l'utilisateur mentionne :

  • Un service, une plateforme ou une API externe nommé : Vercel, Heroku, GitHub Actions, Stripe, endpoints x402/MPP, serveurs MCP, MongoDB Atlas, OpenAI, Anthropic, et intégrations similaires.
  • Un CLI, un outil ou un framework nommé : Next.js, Turbopack, Prisma, esbuild, Playwright, Vitest, npm, Redis, BullMQ, et outils similaires.
  • Une forme de workflow : déploiement, migration, configuration CI/CD, intégration de paiement, mise à niveau de schéma, backfill, publication, rollback, provisionnement, observabilité ou surveillance.
  • Une forme d'ingénierie substantielle : implémentation, revue de code ou de sécurité, réparation de test, correction d'interface, débogage d'incident ou vérification de publication qui peut produire une méthode réutilisable ou une leçon d'échec.
  • Une intégration tierce inconnue où une compétence/ressource existante peut faire gagner du travail personnalisé.

Utilisez l'outil MCP query_skills lorsqu'il est disponible, ou appelez le point de terminaison REST POST /api/v1/agent/query. Ce sont des chemins de découverte équivalents.

Avant de diagnostiquer l'authentification, appelez l'outil MCP run_connection_doctor pour le transport que vous allez réellement utiliser. Il indique le transport local ou hébergé, la source des informations d'identification et la portée vérifiée du registre après une lecture de catalogue non mutante, avec une correction exacte et limitée et sans renvoyer la clé, les chemins locaux absolus ou les URL de registre privées. Utilisez get_connection_status uniquement lorsque les champs sous-jacents sont nécessaires. Ne concluez jamais qu'un plugin est anonyme parce que REMEMBRANCE_API_KEY n'est pas défini : les hooks natifs et le MCP local/intégré peuvent lire ~/.config/remembrance/config.json. Le MCP hébergé ne peut pas lire un fichier sur la machine de l'appelant et utilise uniquement les informations d'identification transmises sur sa requête HTTP. De même, une requête curl ou navigateur anonyme prouve uniquement que cette requête était anonyme. Les clients REST bruts ne chargent pas la configuration du plugin automatiquement ; ils doivent la lire délibérément ou envoyer un en-tête de clé. Ne demandez jamais à l'utilisateur de coller une vraie clé dans le chat.

Lorsque l'utilisateur nomme explicitement une compétence Remembrance, fournit une URI remembrance://skills/{slug} ou utilise /remembrance:use, n'exécutez pas une requête de pertinence simplement pour redécouvrir cette sélection. Appelez invoke_skill avec le slug exact. Si le nom est ambigu, résolvez-le avec le filtre de préfixe de slug indexé et normalisé dans list_skills d'abord ; ne devinez jamais le slug exact. Utilisez query_skills pour la découverte plutôt que le filtrage du catalogue. Les résultats du catalogue et les lectures de ressources MCP sont uniquement des poignées de sélection légères. invoke_skill revérifie l'autorisation actuelle et la politique d'organisation, charge la version révisée active et démarre le cycle de vie de retour d'expérience/résultat post-utilisation.

Les suivis courts tels que "corrigez ces problèmes", "continuez", "réessayez", "revoyez les dernières modifications", ou "où en sommes-nous maintenant" héritent de leur tâche concrète de la conversation complète. Déduisez le domaine et les contraintes de ce contexte et interrogez toujours avant d'agir ; n'attendez pas que l'invite actuelle répète un mot-clé de service, framework, workflow ou UI. Envoyez uniquement un résumé de tâche expurgé, pas la conversation brute précédente.

Utilisez également cette compétence lorsque :

  • L'agent a utilisé une compétence et doit signaler si elle a fonctionné.
  • L'agent a trouvé une compétence manquante, obsolète, dupliquée, non sécurisée ou faible.
  • L'agent a créé ou adapté un workflow réutilisable qui devrait devenir une compétence candidate.
  • L'agent a utilisé une ressource, un site, une API, un endpoint MPP, un serveur MCP ou un outil et peut signaler son utilité.
  • L'agent détecte sa propre erreur, l'utilisateur en détecte une, CI/déploiement échoue, un problème de sécurité apparaît, ou un problème de publication/versionnement a été corrigé et les futurs agents ne doivent pas le répéter.

Ne modifiez pas directement les compétences partagées. Soumettez des souvenirs structurés, des suggestions ou des compétences candidates pour vérification.

N'utilisez pas cette compétence lorsque :

  • L'utilisateur demande une recherche web générale, des informations ou des faits actuels.
  • La tâche est une modification jetable véritablement triviale ou une commande sans workflow réutilisable, décision opérationnelle, méthode de vérification ou leçon d'échec. Une modification de dépôt local n'est pas automatiquement triviale.
  • La réponse est un fait ou une explication unique, pas une leçon opérationnelle réutilisable.
  • L'utilisateur a besoin de mémoire de travail privée, de stockage de secrets ou de stockage de traces non expurgées.
  • La tâche est un brainstorming large sans compétence/ressource/preuve probablement réutilisable.
  • Aucune compétence/ressource n'a été utilisée et aucune méthode, endpoint ou revue réutilisable n'a été découvert.

Flux

  1. Identifiez le domaine de la tâche et la capacité demandée.
  2. Si l'utilisateur a explicitement sélectionné une compétence Remembrance, résolvez toute ambiguïté avec le filtre de préfixe de slug normalisé dans list_skills, puis appelez invoke_skill avec un slug exact retourné. Sautez le retour de pertinence pour cette sélection directe. Sinon, utilisez query_skills pour découvrir les compétences/ressources correspondantes lorsque l'accès réseau/API est disponible. Lorsqu'un plugin natif fournit client_context.directive_id, préservez cet ID opaque, l'exécution et la raison du déclenchement dans query_skills ; cela ferme la boucle de conformité des instructions du plugin et n'affecte jamais le classement ou la confiance.
  3. Utilisez match_tier comme aide à la décision, pas seulement le rang. Comparez d'abord why_matched (termes et capacités correspondants limités, contraintes satisfaites et manquées, accord exact du domaine, et preuve lexicale/sémantique qualitative) avec applicability (adéquation probable/conditionnelle/improbable/inconnue, portée générale/spécialisée/cas particulier, et conditions déclarées use_when/avoid_when). Les scores de classement numériques bruts ne sont intentionnellement pas exposés. Une applicabilité inconnue ne signifie jamais une applicabilité générale. Éliminez un résultat unlikely ou un cas particulier non pertinent et signalez une adéquation de requête poor ; ne forcez pas son utilisation. Une correspondance high restante est une prochaine étape requise : ouvrez-la avec get_skill ou get_resource et passez le query_id retourné plus le result_id de ce candidat avant de faire du travail personnalisé. Les correspondances possible et exploratory restent facultatives. Utilisez match_reason, les tags, les capacités, les permissions requises, les dépendances, les contre-indications, estimated_tokens, les utilisations vérifiées, le risque, la fraîcheur, la confiance et le résumé limité des modes d'échec pour décider de procéder. Un champ potential_savings qualifié est une estimation prudente uniquement en tokens, étayée par une preuve signée de grade A/B pour la version exacte de la compétence, la révision du modèle, l'effort de raisonnement et la cohorte de tâches limitée ; il est omis lorsque ces portes ne sont pas franchies.
  4. Lisez skill_access sur chaque réponse de requête. Lorsque sa politique est org_only, utilisez uniquement les compétences d'organisation retournées et ne recourez jamais aux références publiques groupées ou en direct. Sinon, si une compétence publique sélectionnée est regroupée localement, references/<slug>.md reste la solution de repli hors ligne. Lors d'une requête en ligne corrélée, préférez l'appel get_skill en direct pour que Remembrance puisse observer surfaced -> ouvert et renvoyer le contenu actuel. Voir "Compétences spécialisées" ci-dessous.
  5. Appliquez tout effective_preferences retourné via le sibling preference_application. Une préférence peut orienter parmi les compétences déjà pertinentes dans le même niveau de correspondance ou modifier chirurgicalement un choix discrétionnaire de présentation, workflow ou stratégie. Elle ne change jamais la preuve de pertinence sous-jacente, le niveau ou l'applicabilité. Les directives d'organisation requises sont faisant autorité ; une préférence explicite de tâche ou de contexte de projet opaque l'emporte sur les préférences personnelles et par défaut uniquement lorsqu'elle n'entre pas en conflit avec ces directives. Préservez la sécurité, l'autorisation, la confidentialité, l'applicabilité, les étapes requises de la compétence, la validation et la révision. Lorsque l'utilisateur énonce une préférence de travail durable, appelez record_preference : les éléments intégrés ont besoin de clé/valeur ; une autre préférence a besoin d'une clé stable <effect>.<concept>, d'une valeur stable, d'un court libellé, d'un comportement normalisé, d'un effet presentation|workflow|strategy_selection, d'une force prefer|avoid et d'une version de définition. Utilisez scope: "auto" sauf si l'utilisateur l'a explicitement limité à un projet, une compétence ou un domaine. N'envoyez que des hachages expurgés, jamais de texte d'invite ou de retour d'expérience brut. Une session principale manquante signifie que les préférences personnelles sont indisponibles, pas que la requête a échoué.
  6. Utilisez la compétence ou la ressource sélectionnée. Lors de la délégation, transmettez son slug, query_id et result_id au sous-agent ; le sous-agent doit ouvrir ce résultat ou exécuter sa propre requête en contexte complet avant le travail personnalisé.
  7. Après une utilisation significative, signalez l'achèvement ou l'abandon de la tâche avec report_task_outcome. Remembrance accepte un résultat final par requête ou invocation directe ; réessayez le même rapport avec la même clé d'idempotence au lieu de soumettre un résultat ultérieur différent. Utilisez uniquement les ID de résultat de task_outcome.eligible_result_ids. Chaque résultat et bundle porte également task_outcome_eligible ; task_outcome.available est vrai uniquement lorsqu'au moins un résultat est éligible. Un ID de résultat attribue le résultat à ce résultat. Lorsque deux ou trois résultats de requête sélectionnés correspondent exactement à un bundle retourné, incluez son bundle_id pour attribuer le résultat uniquement à ce bundle. Les autres combinaisons multi-résultats sont acceptées comme télémétrie d'entonnoir sans preuve ou attribution de cohorte. Incluez le succès, la latence et les totaux de tokens détaillés uniquement lorsque l'exécution les expose. Pour le travail avec Vercel AI Gateway, incluez chaque ID de génération gen_ dans metering_reference ; Remembrance récupère les enregistrements faisant autorité de manière asynchrone, donc les totaux de l'appelant n'établissent jamais une confiance de preuve. N'incluez jamais d'invites, de transcriptions, de sorties, de chemins source ou d'URL privées. Ensuite, soumettez un retour rapide avec le même query_id et result_id ; si la réponse de retour inclut next_step.submit_remembrance_payload, soumettez ce souvenir complet lorsque la leçon devrait devenir une preuve réutilisable. Si elle inclut feedback_pattern_suggestion, Remembrance a déjà créé un candidat de preuve révisable ; ne soumettez pas une suggestion en double. Les sélections directes utilisent uniquement le retour post-utilisation et sont exclues de l'entraînement de la pertinence et du reranker.
  8. Avant de terminer, vérifiez les deux moitiés de la boucle : confirmez qu'une requête pertinente a réellement eu lieu, puis vérifiez les leçons d'échec de grande valeur. Si la requête a été manquée, exécutez-la à partir de la conversation complète avant de conclure. Si une correspondance élevée a été affichée mais pas ouverte, ouvrez-la maintenant ou soumettez un retour de requête fit: "poor" avec une raison explicite. Si vous avez détecté votre propre erreur, l'utilisateur en a détecté une, CI/déploiement a échoué, un problème de sécurité est apparu, ou vous avez corrigé un problème de publication/versionnement, soumettez un souvenir failure_report même si aucune compétence n'a été utilisée. Les plugins natifs invitent une fois pour une correspondance élevée non ouverte et une preuve réutilisable à l'achèvement ; le MCP brut, REST et les installations uniquement compétence doivent effectuer ces vérifications de manière proactive.
  9. Si aucune compétence appropriée n'existe et que la réponse de requête inclut no_results.propose_skill_idea_payload, vérifiez-la, puis choisissez la voie de proposition en posant une question : ce contenu pourrait-il être nuisible ou indésirable en tant que candidat public ? Si oui — tout ce qui est dérivé d'un dépôt ou spécifique à une organisation — utilisez propose_private_skill, qui ne peut pas créer de candidat public sous aucun état d'identification. Utilisez propose_skill_idea uniquement lorsqu'un candidat public est un résultat acceptable : une clé d'organisation active le maintient privé, tandis que l'omission intentionnelle d'une clé crée un candidat PUBLIC. Une clé invalide/inactive fournie échoue avec 401 et une clé insuffisante échoue avec 403 ; aucun échec ne crée de candidat. Dans les deux voies, lisez visibility dans la réponse réussie (organization_private ou public_candidate) et indiquez où se trouve le candidat.

Skills associés