Logo Matlock Matlock

Matlock — Outils pour Agents et Développeurs. (Manuel du Propriétaire et Référence Opérationnelle)

POUR LES AGENTS DE CODAGE IA ET ORCHESTRATEURS : Accédez directement à la Partie II : Spécification Opérationnelle Machine et Agent Autonome pour le catalogue MCP stdio de 27 outils, le déblocage HTTP 402 à double voie, les règles du bac à sable de frontière (cold_box) et les contrats de fin de tâche.

Produit : Matlock — Outils pour Agents et Développeurs. (Efficace. Exact. Dans les règles.)
Positionnement : Vérification technique locale polyglotte en < 50ms pour AST, MITRE CWE, IEEE Std 1003.1 POSIX, CISA SSDF et AICPA SOC 2 Trust Services Criteria avec scellés d'intégrité des tests, bacs à sable Pre-CI de frontière, automatisation CLI en 1 clic et serveur MCP stdio local à 27 outils (0 envoi de code dans le cloud, 0 port ouvert, 0 blocage de git commit).
Éditeur : Matlock by Dutch P2P © 2026. Tous droits réservés.
Surfaces : Centre de commande Bureau (Windows, Linux et GoogleBook ; macOS arm64 (matlock-mcp sans affichage prêt) — appuyez sur ? ou F1 à tout moment) · Centre de commande Web · Analyse Gratuite dans le Navigateur · Documentation · Manuel en Ligne · URI MCP matlock://help/appliance-manual

Portée et mention légale : Matlock évalue les contrôles techniques de code et de pipeline face aux référentiels publiés de l'industrie (MITRE CWE, CISA SSDF, IEEE Std 1003.1 POSIX, portes automatisées Pre-CI et contrôles techniques AICPA SOC 2 Trust Services Criteria). Matlock ne garantit pas un logiciel exempt de défauts, ne délivre pas de rapports formels d'attestation par un tiers et ne fournit pas de certifications émanant d'un cabinet CPA indépendant agréé.


Partie I : Guide de l'Opérateur Humain et Établi

1. Glossaire Rapide et Flux Principal

2. Disposition de l'Écran, Thèmes et Navigation

3. Scripts Détectés, Contrôles Personnalisés, Actions et Favoris

4. Routines Autonomes, Commandes Machine et Alertes Locales

CarteWindowsLinuxNotes
Shutdown in 30 minutesshutdown.exe /s /t 1800shutdown -h +30Délai 30 min, jamais /f ; associé à Cancel shutdown
Cancel shutdownshutdown.exe /ashutdown -cAnnulation immédiate en 1 clic
Clean temporary filesDossier temp utilisateur seul, ignore actifsFichiers > 1 jour dans ~/.cache et /tmpNe touche jamais aux fichiers du projet
Check disk spaceGet-PSDrive -PSProvider FileSystemdf -hLecture seule
Optimize disk (defrag or trim)Optimize-Volume -DriveLetter C -Verbosefstrim -avExige admin/root ; s'arrête proprement sans UAC/sudo
Backup copyrobocopy . "<backup-folder>" /MIRrsync -a --delete ./ "<backup-folder>/"Garde .git, ignore les caches ; robocopy 0–7 = Réussi
Find a Word & Expose Itfindstr /s /i /m /c:"Aluminium" *.dartgrep -rnI "Aluminium" --include="*.dart" .Recherche récursive modifiable insensible à la casse
Lines Over 250 Catchfor /r %i in (*.dart) do ... find /c /v ""find . -name "*.dart" -exec awk '... c>250 ...' {} +Analyse en lecture seule des fichiers de plus de 250 lignes

5. Cascade de Résultats, Relance Isolée, Ignorer et Copier

6. Sauvegarde Fixe Inviolable, Intégrité des Tests et Restauration

7. Barres Horizontales de Score, Couverture et Standard de Modularité

8. Réglages sur Deux Colonnes et Récupération d'État Scellé

Cliquez sur Settings en haut à droite pour ouvrir la fenêtre à 2 colonnes (rail gauche à 6 catégories + réglages concis à droite ; chaque en-tête comporte un bouton ? ouvrant la section dédiée du Manuel) :

  1. Appearance : Langue (9 langues + langue du texte copié), Thème (System Default, Light, Dark Slate), raccourci Bureau et Minimize to System Tray when closed sous Windows.
  2. Project & Runner : Sélecteur de Modularité (Grade A..Minimum), Open folder du profil local hors dépôt, Restaurer la bannière de configuration initiale (Restore starter setup banner, rouvre Set up for me), Keep Quick Run history et Reset Ignore Registry.
  3. Safeguard & Restore : Allow Matlock to restore tests, bascule personnelle de rétablissement auto de Sauvegarde et Sync across my computers (synchronisation scellée par dossier).
  4. Email Alerts (matlock://settings/alerts) : Station d'alertes locale email_smtp et custom_script + Test Email.
  5. AI Agent (MCP) : Interrupteur MCP Server (stdio) (désactivé par défaut), pont bidirectionnel "Synchroniser avec Headless" ("Sync with Headless" en 1 clic pour recharger les cartes/séquences d'agent et publier les consignes permanentes avec 0 scrutation en arrière-plan), Test MCP Connection, Copy MCP Config & Agent Instructions, Copy a question for my phone AI et Agent Email Bridge.
  6. License & Updates : Activate par clé de 24 caractères / Move license to this device, Automatically check for updates (MATLOCK_OFFLINE=1 coupe tout trafic sortant), Send anonymous crash diagnostics (désactivé par défaut ; MATLOCK_NO_TELEMETRY=1), Copy diagnostic info, Free up memory, Share Matlock, Contact us (dutch@dutchp2p.com) et Dutch P2P Tools.
  7. Récupération d'État Scellé (Reset Ignore Registry) : Si des modifications externes déclenchent integrity_seal:MUTE_SEAL_TAMPERED ou storage_recovery:BAK_AUTO_RESTORE ([REMEDY] Sealed configuration was modified outside engine API. Discard manual edits to AppData/Matlock. Manage ignores only via the Desktop UI (agents cannot self-exempt). To reset: Settings -> Storage & Backup -> Reset Ignore Registry.), ouvrez Settings -> Project & Runner -> Storage & backup -> Reset Ignore Registry.

9. Connexion des Agents IA (MCP Bureau et Guide Mobile/Chat)

{
  "mcpServers": {
    "matlock": {
      "command": "matlock.exe",
      "args": ["mcp", "--stdio"]
    }
  }
}

10. Référence des Standards Intégrés (10 Écosystèmes + Pre-CI)

Chaque contrôle intégré est compilé dans Matlock et adossé aux contrôles techniques MITRE CWE, CISA SSDF (NIST SP 800-218), IEEE Std 1003.1 POSIX, portes Pre-CI et AICPA SOC 2 Trust Services Criteria :

Écosystème et DomaineCe que Matlock Inspecte et Pannes de Production Évitées
Socle Polyglotte et Dart / FlutterBlocs catch silencieux (CWE-391), risques null/bornes (CWE-476/CWE-125), courses async sans await, fuites de streams/timers/contrôleurs (CWE-401), boucles infinies (CWE-835), secrets codés en dur (CWE-798), secrets dans les logs (CWE-532), désactivation de validation de certificats TLS sur HTTP/SMTP/CLI/CI (CWE-295 / [MITRE T1557]), SQLi (CWE-89), SSRF (CWE-918), XXE (CWE-611), JWT non signés (CWE-347), redirections ouvertes (CWE-601), absence de timeouts, écritures non atomiques, traversée de chemin (CWE-22) et tests creux (CWE-362).
Java (.java)Clés intégrées (CWE-798), injection de commandes/SQL (CWE-78/CWE-89), désérialisation non sûre (CWE-502), chiffrements faibles (CWE-327), exceptions étouffées (CWE-391), fuites JDBC/streams (CWE-404), comparaisons == de chaînes, System.exit brutal et pauses en boucle.
Python (.py)Secrets fixes (CWE-798), injection shell/SQL (CWE-78/CWE-89), chargements pickle/yaml non sûrs (CWE-502), hachages faibles (CWE-328), except nu (CWE-391), arguments mutables par défaut, descripteurs non fermés (CWE-775), appels bloquants dans async def et tests creux.
Rust (.rs)Secrets intégrés (CWE-798), chaînes shell/SQL formatées (CWE-78/CWE-89), conversions unsafe non gardées, TLS désactivé (CWE-295), paniques .unwrap()/todo!() en prod, pauses bloquantes en async, fuites volontaires (CWE-401), Result ignorés et tests creux.
Go (.go)Jetons fixes (CWE-798), exec/SQL concaténés (CWE-78/CWE-89), InsecureSkipVerify (CWE-295), RNG faible (CWE-330), erreurs ignorées (CWE-252), fuites defer en boucle et contextes non annulés (CWE-404), clients HTTP sans délai, panic en prod et tests creux.
TypeScript et JavaScript (.ts, .tsx, .js, .jsx)Secrets exposés (CWE-798), puits DOM XSS / eval (CWE-79/CWE-95), interpolation shell (CWE-78), pollution de prototype (CWE-1321), .catch() vide (CWE-391), suppressions de types, bogues NaN, E/S synchrones bloquantes, restes debugger et fuites d'écouteurs/timers (CWE-401).
C et C++ (.c, .cpp, .cc, .h, .hpp)Secrets fixes (CWE-798), copies FFI/tampon sans borne (CWE-787/CWE-120), chaînes de format (CWE-134), injection system() (CWE-78), new[]/delete incompatibles (CWE-762), use-after-free (CWE-416), destructeurs lançant des exceptions, memset sur objets non triviaux et threads non joints.
Kotlin et Android (.kt, .kts)Secrets fixes (CWE-798), concaténation SQL (CWE-89), ponts WebView non sûrs, TLS contourné (CWE-295), préférences lisibles par tous (CWE-276), coroutines GlobalScope divulguées (CWE-401), blocages du thread UI, plantages !!, CancellationException avalée et en-têtes ZIP/APK malformés (CWE-190).
C# et .NET (.cs)Descripteurs IDisposable non libérés (CWE-404), crashs async void, requêtes SQL/commandes non paramétrées (CWE-89/CWE-78), vérification de certificat TLS désactivée (CWE-295), exceptions étouffées (CWE-391), interblocages .Result/.Wait() et tests creux.
SQL et Moteurs de Stockage (.sql)Droits génériques (CWE-250), SQL dynamique concaténé (CWE-89), mots de passe en clair dans le DDL (CWE-256), procédures d'échappement OS (CWE-78), RLS désactivé, DELETE/UPDATE sans prédicat, migrations non idempotentes, pagination OFFSET profonde et verrous de table non gardés.
Pre-CI Multiplateforme, Bash/Shell (.sh), PowerShell (.ps1), Dockerfile et GitHub Actions YAMLCollisions de casse (POSIX.1), shebangs CRLF, pièges de portabilité Bash/POSIX et erreurs $ErrorActionPreference / LASTEXITCODE en PowerShell, images Dockerfile non épinglées et conteneurs root, dépassements de budget HTML/ressources, pièges .cmd/.bat sous Windows, descripteurs divulgués (CWE-775), séparateurs de chemin en dur, imports non suivis, dérive des lockfiles, permissions GitHub Actions YAML non figées, injection workflow et perte des bits +x.
Modularité et Contrôles PersonnalisésSélecteur de Modularité réservé à l'utilisateur (Grade A <= 60 à Minimum <= 1000, défaut Grade C <= 250 fichier / <= 80 fn ; CWE-1080 / CWE-1120) plus contrôles par motif et script enregistrés dans votre profil OS.

11. Licence Workstation Pro, Aperçu Web et Analyse Gratuite

12. Linux, GoogleBook, Mises à Jour, Confidentialité et Assistance


Partie II : Spécification Opérationnelle Machine et Agent Autonome

A. Points d'Entrée et Transport de l'Agent

{
  "mcpServers": {
    "matlock": {
      "command": "matlock-mcp",
      "args": ["--stdio", "--headless", "--no-coverage"]
    }
  }
}

B. Comptage, Déblocage 402 à Double Voie et Réserve de Gaz

C. Catalogue Complet des 27 Outils MCP Locaux

  1. matlock_run_scan(target_path?, changed_only?, dedup_by_rule?, if_none_match?, agent_id?, rule_id?, category?, pillar?, file_filter?, include_generated?, compact?, cursor?, rule_code?, transaction_signature?) : Index 0 (readOnlyHint: true) analyse AST, CWE, POSIX et Pre-CI en < 50ms renvoyant file:line:col (col >= 1), cwe, mitre_attack et correctifs diff de 5 lignes (prend aussi en charge matlock-mcp scan . --format=sarif en SARIF 2.1.0).
  2. matlock_describe_project(target_path?, mode?) : Profil optionnel du projet (0 crédit, readOnlyHint: true) ; passez mode: "tool_bag" (ou CLI matlock-mcp toolbag [--json]) pour un inventaire progressif de ~350–550 jetons des cartes [LOCKED] (exécution seule) vs [MODIFIABLE] (ajustables), séquences, badges [NEW] / [UPDATED], marqueurs [UNAVAILABLE IN CONTAINER], consignes permanentes et état des alertes.
  3. matlock_get_scan_results(target_path?, cursor?, pillar?, rule_code?) : Constats paginés (25/page ; Bureau masque les lignes Sauvegardées jusqu'au déverrouillage ; --headless avec Réserve de Gaz débloque les coordonnées).
  4. matlock_qualify_test(file | files, target_path?, dry_run?, baseline_only?, wait_if_busy?, max_wait_seconds?) : Vérifie 1 à 5 fichiers de test (test_file / test_files) sur 3 contrôles (exécution réussie avec >= 1 assertion, 0 alerte analyseur + plafond LOC, 0 constat Matlock) avant scellement Sauvegarde, ou scelle une base (baseline_only: true).
  5. matlock_get_test_integrity(target_path?, reverify?, include_archive?, id?, include_text?, note_for_id?, note?) : Inspecte les enregistrements d'intégrité des tests et ajoute une note explicative d'agent (0 droit de clôture).
  6. matlock_get_history(target_path?, limit?) : Historique en lecture seule des scores et corrections.
  7. matlock_read_appliance_manual(section_id?, standard_id?, query?, locale?) : Manuel hors ligne (9 langues) et recherche CWE/POSIX/SSDF/SOC2/résultats (0 crédit, 0 réseau).
  8. matlock_list_custom_tests : Liste les contrôles personnalisés définis par l'utilisateur.
  9. matlock_register_custom_test : Enregistre un contrôle personnalisé par motif ou script.
  10. matlock_delete_custom_test : Supprime un contrôle personnalisé déverrouillé (les contrôles intégrés sont immuables).
  11. matlock_list_actions : Liste les cartes d'action (avec favorite/verrouillage/approbation) ainsi que recommendedTemplates non configurés (unconfiguredTemplate: true).
  12. matlock_register_action(id, command, name?, favorite?) : Programme ou met à jour toute Action déverrouillée ou modèle de départ (tpl_github, tpl_save_drive, tpl_cloud_sync, tpl_save_backup, tpl_defrag_optimize, tpl_shut_down), efface unconfiguredTemplate, épingle/retire des Favoris (favorite: true | false) et impose Require Approval sur Bureau.
  13. matlock_register_sealed_script : Scelle les commandes build/test (Locked by User) face aux sous-agents.
  14. matlock_run_action(id, working_dir?, async?, send_alert?, cold_box?) : Exécute une commande sous confinement d'arbre de processus OS (async: true non bloquant, send_alert, cartes USB robocopy/rsync, cloud R2/S3/GCS/Azure et git push prises en charge ; 0 git push intégré dans les tests Matlock).
  15. matlock_get_action_status(id?) : Interroge l'état en direct, le code retour et les capsules compactes des exécutions async: true.
  16. matlock_stop_action(id?, stop_sequence?) : Termine immédiatement un arbre de processus actif (stop_sequence: true arrête proprement toute la séquence active).
  17. matlock_delete_action : Supprime une carte d'action déverrouillée.
  18. matlock_list_sequences : Liste les routines multi-étapes.
  19. matlock_register_sequence(id, name?, step_ids?, commands?, insert_step_id?, insert_command?, insert_step_name?, insert_at_index?, remove_step_index?, failure_policy?, always_run?, favorite?) : Compose ou modifie en série une Séquence déverrouillée, en insérant toute Action ou alert::<id> à l'index exact insert_at_index (base 0) avec failure_policy ("stop" | "stop_and_alert" | "continue_and_alert"), always_run et favorite: true | false.
  20. matlock_run_sequence(id, file?, async?, send_alert?, cold_box?, deep?, include_coverage?) : Lance seq_matlock ou seq_fast_verify (file pour un seul fichier de test, async: true sans blocage avec réveil automatique en fin de tâche, send_alert pour notification ; cold_box: false par défaut ; cold_box: true avant sauvegarde externe, synchro cloud, backup, push ou build release avec reçu en < 15ms si inchangé ; deep: true force nettoyage et couverture complets).
  21. matlock_delete_sequence : Supprime une routine déverrouillée.
  22. matlock_list_alerts : Liste les canaux d'alerte locaux (secrets masqués).
  23. matlock_set_alert : Configure les alertes sortantes email_smtp sur Native Dart TLS 1.2/1.3 (préréglages mondiaux, trousseau OS ou coffre local scellé par phrase secrète) ou custom_script.
  24. matlock_trigger_alert(id, status, task_completed, uncovered_issues, next_move) : Déclenche une notification locale avec les 3 questions obligatoires de clôture.
  25. matlock_delete_alert : Supprime une carte d'alerte déverrouillée.
  26. matlock_purchase_license(transaction_signature?, license_key?, target_path?, network?, runs?, lid?) : Règle les recharges M2M autonomes en libre garde ou active une license_key Pro de 24 caractères d'env. 23 €* ($24.99 USD/an).
  27. matlock_report_issue(category, subject, description, tool_context?, output_dump?) : Envoi asynchrone nettoyé de retour/suggestion (0 crédit, CONTINUE_IMMEDIATELY).

D. Bac à Sable Cold Box de Frontière, Régulateur 3 Boucles et Clôture

E. Spécification Lisible par Machine pour Agents IA (YAML)

product: "Matlock — Agent & Developer Tools. (Efficient. Exact. By the book.)"
pinned_version: "v1.0.0+1"
web_command_center: "https://matlock.dutchp2p.com/fr/app"
free_local_scan: "https://matlock.dutchp2p.com/fr/#wasm-instant-audit"
docs_hub: "https://matlock.dutchp2p.com/fr/docs"
online_manual: "https://matlock.dutchp2p.com/fr/manual"
public_repository: "https://github.com/Dutchp2p/matlock-public"
online_operational_map: "https://matlock.dutchp2p.com/llms.txt"
mcp_resource_uri: "matlock://help/appliance-manual"
mcp_stdio_command: "npx -y @dutchp2p/matlock-mcp | uvx matlock-mcp | matlock.exe mcp --stdio (Windows) | matlock mcp --stdio (.deb) or /path/to/matlock-linux-x64.AppImage mcp --stdio (Linux & GoogleBook) | matlock-mcp --stdio --headless --no-coverage (Linux x64, Windows x64 & macOS arm64)"
network_ports: 0
git_hooks_installed: 0
builtin_git_push_in_test_runs: false
custom_push_deploy_actions_allowed: true
mcp_tools_count: 27
primary_pipeline:
  card: "Matlock"
  sequence_id: "seq_matlock"
  entry_tool_index_0: "matlock_run_scan"
  badge_svg_url: "https://matlock.dutchp2p.com/badge/verified.svg"
  stages: "Clean -> Get -> Format -> Lint -> Analyze/Compile -> Test -> Coverage (depth 0..2)"
  cold_box_default: false
  cold_box_boundary_triggers: ["before external git push", "before cloud-drive save", "before removable backup", "before release compile"]
modularity_tuning_dial:
  person_only_sealed_os_settings: true
  default_tier: "Grade C (<= 250 / <= 80 fn)"
  tiers: ["Grade A (<= 60 / <= 25 fn)", "Grade B (<= 100 / <= 40 fn)", "Grade C (<= 250 / <= 80 fn)", "Grade D (<= 500 / <= 120 fn)", "Minimum (<= 1000 / <= 250 fn)"]
ignore_scopes_5: ["file:line:code", "file:code", "*:code", "file", "folder/"]
lock_governance:
  safeguarded: "Read & Run Only (auto-reverts unauthorized edits + Envelope tamper alert)"
  unlocked: "AI agent can modify (Read, Write, Modify & Run)"
os_storage:
  scope: "private_user_profile_outside_repo"
  env_override: "MATLOCK_STATE_DIR"

F. Principes Opérationnels de l'Agent et Limites d'Exécution

Haut de page