
cynative v1.6.0
Agent IA en lecture seule qui interroge votre infrastructure cloud, code et runtime pour révéler les mauvaises configurations, les secrets divulgués et les chemins d'élévation de privilèges avec des conclusions vérifiées et fondées sur des preuves.

Créez vos propres agents de sécurité
Framework open source pour des agents de sécurité disposant d'un accès en direct et en lecture seule à votre infrastructure.
Démarrage rapide · Agents intégrés · Votre premier agent · Documentation
Interrogez votre infrastructure sur n'importe quoi. Cynative exécute des modèles de pointe sur votre code, votre cloud et votre runtime - en raisonnant sur GitHub, GitLab, AWS, GCP, Azure et Kubernetes comme un seul système - et revient avec des réponses vérifiées.
cynative "what in my cloud is publicly exposed that shouldn't be?"
45 agents intégrés pour AWS, GCP, Azure, GitHub et Kubernetes - élévation de privilèges, exposition publique, chaîne d'approvisionnement, couverture de détection et plus encore - ou vous écrivez le vôtre dans un seul fichier markdown.
Une seule question se déploie sur l'ensemble de votre stack : Cynative écrit et exécute du code dans un bac à sable éphémère, en interrogeant vos API en parallèle. Chaque constat est recoupé et retracé jusqu'à son origine.
Contrairement aux agents de codage et aux serveurs MCP, il est en lecture seule par construction : chaque appel est filtré et autorisé avant qu'un identifiant ne soit attaché - pointez-le vers la production en toute confiance.
Ce que vos agents obtiennent
- Du code à l'exécution : Raisonne à travers AWS, GCP, Azure, n'importe quel K8s, GitHub et GitLab
- Bac à sable : Génère et exécute du code pour enquêter à grande échelle, sans accès réseau ni accès à l'hôte de sa propre initiative
- Filtre d'action : Résout chaque appel vers les actions IAM requises et applique une politique en lecture seule avant qu'un identifiant ne soit attaché
- Étayé par des preuves : Recoupe pour vérifier chaque constat
- Souverain : Un seul binaire, votre modèle, vos données restent les vôtres
Démarrage rapide
Installez et configurez un LLM :
brew install cynative/tap/cynative
export CYNATIVE_LLM_PROVIDER=anthropic
export CYNATIVE_LLM_MODEL=claude-opus-5
export ANTHROPIC_API_KEY=...
Il récupère les identifiants déjà présents dans votre shell. Lancez un agent intégré :
cynative -p --agent aws-network-exposure
Ou demandez-lui n'importe quoi :
cynative -p "which IAM roles can escalate to admin?"
cynative -p "high-risk cloud permissions, trace each to the PR where it was granted"
cynative -p "cloud credentials leaked in source code and their current blast radius"
cynative "live cloud resources absent from IaC - drift" # starts an interactive session
cat findings.json | cynative -p "triage these findings by exploitability"
Agents intégrés
45 agents sont intégrés dans le binaire. Chacun est un prompt revu pour une question spécifique.
| Agents | Par exemple | |
|---|---|---|
| AWS | 20 | aws-privilege-escalation, aws-public-storage, aws-unpatched-workloads, aws-supply-chain |
| Azure | 11 | azure-keyvault-exposure, azure-storage-exposure, azure-privilege-escalation |
| GCP | 5 | gcp-public-bindings, gcp-static-credentials, gcp-inference-exposure |
| GitHub | 4 | github-workflow-trust, github-unpatched-dependencies, github-branch-protection |
| Kubernetes | 5 | k8s-pod-privilege, k8s-self-managed-apiserver-access |
cynative agents list # every agent, with its description
cynative agents show <name> # the exact prompt that would run
Le catalogue complet avec une description en une ligne de chaque agent se trouve dans docs/agents-catalog.md.
Votre premier agent
cynative agents show <name> affiche le fichier exact qu'un agent exécuterait. Pour créer votre propre version, copiez-le dans votre répertoire d'agents sous un nouveau nom et modifiez-le :
mkdir -p ~/.cynative/agents
cynative agents show aws-public-datastores > ~/.cynative/agents/my-aws-public-datastores.md
# edit ~/.cynative/agents/my-aws-public-datastores.md, then:
cynative -p --agent my-aws-public-datastores
Un agent est un fichier markdown : un frontmatter YAML strict dont la seule clé est
description, puis le corps du prompt. Le nom du fichier est le nom. Un fichier dans
~/.cynative/agents/ a la priorité sur un agent intégré du même nom, donc donnez à votre copie un
nom distinct pour conserver les deux. Voir docs/agents.md pour le format.
Exécution des agents
cynative -p --agent aws-public-datastores "AWS account 128149835728 only" # with a task
cynative -p --agent aws-public-datastores # without
cynative --agent aws-public-datastores # seeds an interactive session
--agent se combine avec -p, --auto-approve, --config et stdin redirigé, de sorte que le même fichier s'exécute de manière interactive pendant le développement et de manière non interactive une fois stabilisé.
Les agents sont lus depuis ~/.cynative/agents/ et depuis l'ensemble intégré au binaire ; un fichier utilisateur prime sur un agent intégré portant le même nom. cynative agents list affiche chaque agent avec sa source et signale les copies masquées, et cynative agents show <name> affiche le fichier exact qui serait exécuté.
Un agent de codage avec des MCP ne peut-il pas faire cela ?
| Agent de codage + MCP | Cynative | |
|---|---|---|
| Débit | Une action par appel | Écrit du code sandboxé qui distribue les appels en parallèle - moins de tokens, réponses plus rapides |
| Résultats | Sortie non vérifiée | Le vérificateur recoupe chaque résultat avec des preuves en direct |
| Lecture seule | Filtre de lecture opt-in | Activé par défaut, échoue en mode fermé - les actions IAM requises sont vérifiées par rapport à une politique d'audit de sécurité. secretsmanager:GetSecretValue est une action IAM de type Read : un filtre l'autorise, SecurityAudit la bloque |
| Identifiants | Ambiants, inchangés | Session STS limitée à la lecture seule - AWS applique également la frontière |
| Rayon d'impact | Votre shell, n'importe quel réseau | Le code de recherche s'exécute dans un sandbox sans accès à l'hôte, réseau limité à vos services mappés |
| Secrets | Envoyés au modèle tels quels | Masqués dans la sortie des outils avant d'être envoyés au modèle |
| Chaîne d'approvisionnement | MCP et skills tiers s'exécutant avec vos identifiants | Un seul binaire open source, connecteurs intégrés |
| Piste d'audit | Journaux de session éparpillés, au mieux | Journal JSONL en mode fermé de chaque appel d'outil - s'il ne peut pas enregistrer, il s'arrête |