Security Hardening
6 nodes · 3 podsclaude-code, codex
securityadversarialobserver
An attack pod probes your app for vulnerabilities. A defense pod patches what's found. An observer pod watches both and writes a security dossier. Iterate until clean.
rig up rigs/security-hardening.yamlRigSpec
version: "0.2"
name: security-hardening
pods:
- id: attack
label: Attack
members:
- id: probe
agent_ref: "local:agents/attacker-probe"
profile: default
runtime: claude-code
cwd: .
- id: exploit
agent_ref: "local:agents/attacker-exploit"
profile: default
runtime: codex
cwd: .
edges:
- kind: can_observe
from: exploit
to: probe
- id: defense
label: Defense
members:
- id: patcher
agent_ref: "local:agents/defender-patch"
profile: default
runtime: claude-code
cwd: .
- id: hardener
agent_ref: "local:agents/defender-harden"
profile: default
runtime: codex
cwd: .
edges:
- kind: can_observe
from: hardener
to: patcher
- id: observer
label: Observer
members:
- id: auditor
agent_ref: "local:agents/security-auditor"
profile: default
runtime: claude-code
cwd: .
- id: reporter
agent_ref: "local:agents/security-reporter"
profile: default
runtime: codex
cwd: .
edges:
- kind: can_observe
from: reporter
to: auditor
edges:
- kind: can_observe
from: defense.patcher
to: attack.probe
- kind: can_observe
from: observer.auditor
to: attack.probe
- kind: can_observe
from: observer.auditor
to: defense.patcher
- kind: delegates_to
from: observer.auditor
to: defense.patcher