Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Developer Guide Overview

The Developer Guide is for people who read, modify, or contribute to the cicd-sensor implementation.

For Phase0, the goal is not to document every internal package. The goal is to understand the main subsystem responsibilities and boundaries.

Repository layout

PathRole
cmd/cicd-sensorCLI for the Agent and CI integration
cmd/cicd-sensor-managerManager server
cmd/cicd-sensorctlUtility CLI for reports, attestations, rule validation, and related tasks
internal/agentAgent runtime that observes CI/CD job runtime
internal/ruleRuleSet / RuleModifier schema, resolution, CEL compile, and evaluation
internal/managerConfig service, collector ingest, and output routing
internal/ctlReport and attestation generation

Reading order

Read the Agent runtime pages first:

  1. Agent Architecture: job lifecycle, provider flow, and runtime entrypoints.
  2. Agent Ownership Boundaries: where Agent, JobRegistry, Job, and JobScopeState own state.
  3. eBPF Runtime: cgroup tracking, kernel hooks, and the KernelTracker boundary.
  4. Rule Engine: how runtime events are evaluated against compiled rules.

Then read the Manager control-plane page separately:

  1. Manager Architecture: config, rules, and log delivery outside the Agent runtime path.