An operator workbench for authorized red-team operations and adversarial security testing.
Plan engagements, govern offensive workflows, coordinate execution, and turn evidence into findings.
Vision | Architecture | Roadmap | Security | Contributing
Important
Rod is an early implementation foundation. The API and operator shell run locally, but assessment workflows, persistence, authentication, execution, and target interaction are not implemented. Rod is not production-ready or security-certified.
Rod is designed for red teams and security practitioners conducting explicitly authorized offensive security work. It brings engagement scope, asset intelligence, operation planning, approvals, execution coordination, governed sessions, findings, evidence, and reporting into one operator workspace.
An Engagement is the primary authorization and isolation boundary. Target-facing work must also pass a ScopePolicy decision and remain constrained by risk classification, approvals, rate and concurrency budgets, cancellation, audit, and a kill switch.
Rod exposes capabilities through reviewable, purpose-specific workflows instead of treating a generic command channel as universal authority.
| Area | Available today |
|---|---|
| Control plane | Runnable .NET 10 ASP.NET Core API with a versioned root and health endpoints |
| Operator UI | React and TypeScript workstation shell with a local API proxy |
| Contracts | Architecture, domain, security, protocol, module, and threat-model documentation |
| Quality | Architecture and API integration tests for the executable foundation |
| Target execution | Not implemented; no scanner, module runner, managed node, or relay is active |
The roadmap defines the evidence required before each capability can advance.
Rod is for systems whose owners have explicitly authorized assessment. It does not accept capabilities whose primary purpose is stealth persistence, defense evasion, credential theft, keylogging, silent surveillance, unauthorized payload delivery, or indiscriminate scanning of public infrastructure.
High-risk concepts remain guarded contracts, fakes, simulators, or local fixtures until governance, isolation, denial behavior, and recovery are separately reviewed and tested. See the security policy, security model, and threat model.
Rod starts as a solo-maintainable modular monolith. Business modules own their domain rules and persistence boundaries; cross-module collaboration uses explicit contracts and stable identifiers.
flowchart LR
UI["React operator workstation"] --> API["ASP.NET Core control plane"]
API --> Data["PostgreSQL and outbox (planned)"]
API --> Evidence["S3 evidence store (planned)"]
API --> Gateway["gRPC southbound gateway (planned)"]
Gateway --> Runner["Isolated .NET Runner (planned)"]
The planned platform uses EF Core with PostgreSQL, S3-compatible evidence storage, REST/OpenAPI northbound contracts, versioned Protobuf/gRPC southbound contracts, OCI-isolated modules, a transactional outbox, and OpenTelemetry. Read the architecture and ADR index for the durable decisions.
Prerequisites:
- .NET SDK 10.0.110, selected by
global.json; - Node.js 24.x and npm 11.16.0.
Restore, build, and test the control-plane foundation:
dotnet restore
dotnet build --no-restore
dotnet test --no-buildInstall and validate the operator workstation:
npm ci --prefix src/Web
npm run lint --prefix src/Web
npm run build --prefix src/WebRun the API and web development servers in separate terminals:
dotnet run --project src/Rod.Api --launch-profile https
npm run dev --prefix src/WebOpen http://localhost:5173. The development proxy connects to the API at https://localhost:7256.
| Path | Purpose |
|---|---|
src/Rod.Api |
ASP.NET Core host and public HTTP boundary |
src/Rod.Bootstrap |
Application composition and shared hosting setup |
src/Web |
React operator workstation |
tests/Architecture |
Enforced dependency rules |
tests/Integration |
Executable API behavior |
docs |
Product, architecture, safety, and protocol decisions |
Changes should be small, reviewable vertical slices with focused tests and honest validation results. Start with CONTRIBUTING.md before proposing a change. Report suspected vulnerabilities through the private process described in SECURITY.md, not through a public issue.
Rod is licensed under the MIT License.
