Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
ranwhat — Enregistreur de vol et scanner de secrets pour les agents de codage IA. Lit ce que Claude Code, Codex, Gemini CLI et 9 autres ont exécuté, et signale les actions risquées et les clés divulguées. Fonctionne localement, sans télémétrie, MIT. | Kitploit
Outils/GitHubGitHub/matijamiki/ranwhat
Outils DéfensifsGestion des IdentitésScripting et AutomatisationCollecte d'InformationsProtection de la Vie PrivéeUtilitaires et FrameworksDétection de SecretsRéponse aux IncidentsSécurité de l'IAAnalyse de Journaux
GitHub
111il y a 5h 47mPas encore vérifié
matijamiki/ranwhat

ranwhat

Enregistreur de vol et scanner de secrets pour les agents de codage IA. Lit ce que Claude Code, Codex, Gemini CLI et 9 autres ont exécuté, et signale les actions risquées et les clés divulguées. Fonctionne localement, sans télémétrie, MIT.

Voir le dépôtSite web

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

ranwhat

Un enregistreur de vol pour les agents IA, et un scanner pour l'autorité qu'ils détiennent. Sécurité des agents de codage IA pour Claude Code et onze autres agents de codage, exécuté sur votre propre machine. Pas de compte, pas de télémétrie, pas de dépendances.

Site web et documentation : https://ranwhat.com

Votre agent de codage a votre shell, vos clés et votre dépôt. ranwhat lit ce qu'il a réellement exécuté et fait ressortir la poignée d'actions irréversibles qui valent la peine d'être connues.

$ ranwhat watch --days 90

  ranwhat watch  · local agent flight recorder
  ----------------------------------------------------------------------------
  Read Claude Code: 4 transcripts, last 90 days

  2 critical  2 high

  * Credential material accessed   2026-09-30 18:13:00  Bash
      cat ~/.ssh/id_rsa
      -> The agent read a file whose only purpose is to hold secrets. Whatever
         it read is now in a model context you do not control.

  * Bulk or recursive deletion   2026-09-28 14:42:00  Bash
      …rm -rf '@'
      -> Recursive deletion. Recoverable only if something else was backing it
         up.

  * Package or release published   2026-09-21 11:05:00  Bash
      npm publish
      -> Something was pushed to a registry other people may install from.
         Supply-chain reach, and usually irreversible.

  * Destructive git operation   2026-09-15 17:30:00  Bash
      git push --force origin main
      -> History rewriting or branch deletion. This is the class of action
         that destroys the record of what else happened.

  ----------------------------------------------------------------------------
  Read locally. Nothing was transmitted.

Claude Code supprime la transcription d'une session que vous n'avez pas utilisée depuis plus de cleanupPeriodDays, 30 jours par défaut. Donc --days 90 en trouve davantage si vous l'avez augmenté, si une session que vous avez reprise durant cette période contient des actions plus anciennes, ou pour les sessions démarrées ou poursuivies pour la dernière fois dans Claude Desktop ou Cowork, que Claude Code v2.1.248 et versions ultérieures conserve à tout âge par défaut.

Installation

Exécutez-le une fois, sans rien installer :

uvx ranwhat check

Ou mettez-le dans votre PATH :

pipx install ranwhat
pip install ranwhat

Ensuite ranwhat demo montre un scan d'autorité sur un exemple fourni.

Python 3.9+. Aucune dépendance, et rien n'est compilé sur votre machine.

Commandes

ranwhat check : tout ce qui vaut la peine d'être su, en une seule passe en lecture seule

Exécute watch et clean ensemble et ne change rien.

Sur un terminal, check, watch et clean gardent une ligne de statut sur stderr pendant qu'ils lisent, comptant les transcriptions à chaque passe : indexing secrets ((first run) la première fois), checking actions, looking for secrets. Rien n'y est écrit quand stderr n'est pas un terminal, ou avec --json.

ranwhat watch : auditez ce que Claude Code et vos autres agents ont exécuté

Lit ce que Claude Code et vos autres agents de codage ont déjà écrit sur le disque. Pas de wrapper, pas de proxy, rien dans votre chemin critique. Chaque agent ci-dessous est lu par défaut, chacun depuis l'endroit où il conserve son historique (la variable entre crochets le déplace, comme elle déplace l'agent lui-même) ; un agent qui n'est pas sur votre machine est ignoré.

SourceEmplacementFormat
Claude Code~/.claude/projects/*/*.jsonl et les subagents/**/agent-*.jsonl de chaque session, ou les mêmes sous $CLAUDE_CONFIG_DIR/projects lorsqu'il est définiJSONL
Codex (CLI, extension IDE, application de bureau)~/.codex/sessions/YYYY/MM/DD/rollout-*.jsonl et archived_sessions/ ($CODEX_HOME) ; history.jsonl, shell_snapshots/ et son index de threads SQLite sont fouillés pour des secretsJSONL ; SQLite en lecture seule ; .jsonl.zst en lecture seule, sur Python 3.14 ou avec la commande zstd
Gemini CLI~/.gemini/tmp/<project>/chats/session-*.jsonl et les plus anciens session-*.json ($GEMINI_CLI_HOME)JSONL, JSON
GitHub Copilot CLI~/.copilot/session-state/<session>/events.jsonl ($COPILOT_HOME)JSONL
Qwen Code~/.qwen/projects/<project>/chats/*.jsonl et les plus anciens tmp/<hash>/chats/session-*.json ($QWEN_RUNTIME_DIR, $QWEN_HOME)JSONL, JSON
Grok Build~/.grok/sessions/<folder>/<session>/updates.jsonl ($GROK_HOME)JSONL
Droid~/.factory/sessions/*.jsonl, et -<cwd>/*.jsonl et btw/*.jsonl en dessous ($FACTORY_HOME_OVERRIDE)JSONL
Kimi Code~/.kimi-code/sessions/<folder>/<session>/agents/*/wire.jsonl ($KIMI_CODE_HOME)JSONL
Kimi CLI~/.kimi/sessions/<folder>/<session>/wire.jsonl et context*.jsonl ($KIMI_SHARE_DIR)JSONL
Pi~/.pi/agent/sessions/--<cwd>--/*.jsonl ($PI_CODING_AGENT_DIR)JSONL
Muse Code~/.local/share/muse/sessions/YYYY/MM/DD/<session>/session.jsonl ($XDG_DATA_HOME/muse)JSONL
OpenClaw$OPENCLAW_STATE_DIR/agents/*/agent/openclaw-agent.sqliteSQLite, en lecture seule

Meta Muse s'exécute dans le cloud de Meta et ne conserve rien sur votre machine, donc il n'y a rien à lire ; Muse Code, le CLI de codage de Meta, est pris en charge. Grok Bot conserve son historique dans le cloud de xAI, même pour les commandes qu'il exécute sur votre machine ; Grok Build, le CLI de codage de xAI, est pris en charge. L'Amp actuel conserve ses threads sur ampcode.com. Cursor est le prochain, une fois son format vérifié par rapport à une source primaire.

Neuf règles : accès aux identifiants, chaînes ressemblant à des secrets dans les appels d'outils, publication de paquets, modifications de ressources cloud, appels d'API financières, altération de journaux, git destructif, suppression récursive, et fichiers locaux téléversés avec curl. Les appels d'outils de chaque agent sont jugés par les mêmes règles ; chaque action indique quel agent l'a exécutée.

ranwhat watch --days 30
ranwhat watch --source codex                # one agent (repeatable)
ranwhat watch --path codex=~/work/.codex    # an agent's history elsewhere
ranwhat watch --json
ranwhat sources                             # every agent, where it looked, what it found

--root et --state-dir fonctionnent toujours, comme noms de --path claude-code= et --path openclaw=.

ranwhat clean : trouvez des secrets dans les transcriptions de Claude Code et d'autres agents

Quand un agent exécute cat .env, la sortie est écrite dans la transcription : le mot de passe de votre base de données, votre secret JWT, vos jetons de fournisseur, en clair, dans un fichier que Claude Code conserve 30 jours par défaut.

ranwhat clean               # report, then open a review session
ranwhat clean --apply       # mask everything without asking

clean parcourt l'historique de chaque agent, et masque une valeur uniquement dans un fichier que l'agent lui permet de réécrire : un fichier JSONL, JSON ou texte brut auquel rien n'a écrit durant les deux dernières minutes. Les bases de données (l'index de threads de Codex, les bases de données d'agents d'OpenClaw) et les fichiers compressés sont en lecture seule : le rapport nomme chacun de ceux qui contiennent un secret et comment le supprimer dans l'agent à la place.

Scanner un historique réel prend du temps, donc la session reste ouverte sur ce qu'elle vient de trouver plutôt que de vous faire rescanner pour agir dessus :

Télécharger l’outil