Quick answer: Les catalogues d'outils grossissent. Quelqu'un ajoute un outil de navigateur, quelqu'un un outil de base de données, quelqu'un cinq opérations de terminal, et un an plus tard chaque agent du système...

DeepSeek Harness : portées, restrictions et masquage d'outils

Updated August 16, 2026 · first published August 16, 2026

Les catalogues d'outils grossissent. Quelqu'un ajoute un outil de navigateur, quelqu'un un outil de base de données, quelqu'un cinq opérations de terminal, et un an plus tard chaque agent du système se voit proposer quarante outils, qu'il en ait besoin ou non. On en parle d'habitude comme d'un problème de sécurité. C'est aussi une ligne de dépense. DeepSeek Harness propose un modèle de portée par agent qui traite les deux d'un coup.

Pourquoi le catalogue est un coût récurrent

Les définitions d'outils font partie de la requête. Le harness enregistre un événement d'en-tête de requête portant la configuration, le prompt système et l'ensemble d'outils tels qu'envoyés, ce qui rend la chose concrète : le catalogue est retransmis à chaque requête modèle de la session, donc c'est une taxe fixe par étape et non un coût unique.

Il y a un second effet, plus large. Un catalogue étendu élargit l'espace de choix du modèle. Plus de sélections plausibles mais fausses veut dire plus d'étapes qui ne produisent rien d'utile, et l'étape est l'unité de facturation. Rogner la surface abaisse ensemble le plancher de tokens et le taux d'erreur.

Le vocabulaire

TermeSens
PortéeL'unité d'enregistrement par agent pour outils, prompts, variables, restrictions et écouteurs
Clé de portéeL'identité opaque qui indexe une portée, comparée par identité d'objet — en général l'agent vivant lui-même
Contexte d'agentLe contexte propre à l'agent, où les enregistrements sont liés à sa durée de vie et visibles dans la portée
RestrictionUn filtre sur l'ensemble global d'outils pour une portée, appliqué par intersection
MasquageUn élément de portée qui remplace son homonyme global, à l'intérieur de cette portée seulement
Fenêtre de setupLe créneau de création où le créateur compose le monde de l'agent, avant publication ou premier assemblage de prompt

Comment la composition se résout

Les restrictions filtrent d'abord l'ensemble global, puis les enregistrements locaux à la portée s'y ajoutent. Cet ordre est ce qui rend le moindre privilège praticable : on part d'une intersection avec le catalogue global — jamais plus que global — puis on ajoute exactement les outils spécifiques dont cet agent a besoin.

Le masquage offre le cas de substitution sans fork. Un agent peut recevoir une autre implémentation derrière un nom d'outil familier — variante en lecture seule, variante mesurée, backend moins cher — tandis que tous les autres continuent de voir la version globale.

La liaison à la durée de vie compte pour la même raison que le dispose. Les enregistrements de portée s'achèvent avec le contexte de l'agent, donc un enfant éphémère ne peut pas faire fuiter ses contributions dans le monde du parent.

Toute la composition se joue dans la fenêtre de setup, avant que l'agent soit publié ou assemble son premier prompt. Les décisions de privilège prises après le premier prompt ne sont plus des décisions de privilège : c'est du nettoyage.

Dispatch par portée et lignage

Les événements concernant un agent sont dispatchés avec le porteur de cet agent, si bien qu'un écouteur sait de qui il observe l'activité ; les événements de niveau registre restent non filtrés. À part cela, le lignage — session parente, profondeur de délégation, profondeur de sous-agent — est décrit explicitement comme une donnée qui n'affecte pas en soi la visibilité.

Cette séparation vaut d'être reprise. Un enfant n'hérite pas d'un accès parce qu'il est enfant ; l'accès se compose délibérément dans sa fenêtre de setup. Le privilège hérité par défaut, c'est exactement comme un sous-agent de résumé bon marché finit par détenir le même jeu d'outils coûteux que son parent.

Quatre choses à en faire

  1. Comptez vos définitions d'outils et multipliez par le nombre d'étapes par session. C'est votre taxe fixe d'outils par session, en tokens.
  2. Définissez un jeu d'outils minimal viable par rôle d'agent, et appliquez-le comme restriction plutôt que comme convention.
  3. Masquez les outils coûteux par des variantes bon marché ou en lecture seule dans les contextes à faible valeur, plutôt que de les retirer entièrement.
  4. N'héritez jamais par défaut du jeu d'outils du parent dans les sous-agents. Composez-le.

Related


Want this applied to your own LLM spend? FinOps LLM runs a free audit of your AI costs and shows where the savings are. Book free audit →

Back to research