Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -165,4 +165,5 @@ config.json
# Claude AI assistant working files
CLAUDE.md

bindings.rs
bindings.rs
site/
9 changes: 1 addition & 8 deletions Doc/docs/contacts/contact.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,3 @@
- **Tettamanti Lorenzo** [📧 lorenzotettamanti5@gmail.com](mailto:lorenzotettamanti5@gmail.com)
- **Lorenzo Bradanini** [📧 lorenzolollobrada@gmail.com](mailto:lorenzolollobrada@gmail.com)
Right now we're looking for contributors and collaborators. If you have knowledge in DevOps/Kubernetes or Networks please write an email to lorenzotettamanti5@gmail.com

| **Role** | **Skills** | **Tasks** | **Related Issues and Milestones** |
|-----------------------------------|-----------------------------------------------------|------------------------------------------------------------------------------------------|----------------------------------|
| **CortexBrain Core Developer** | - Kubernetes <br> - Networks <br> - Rust | - Work alongside us to build and optimize the core functionalities (Client, DNS, Proxy, Telemetry, etc.) | - [Rust](https://github.com/CortexFlow/CortexBrain/labels/rust) <br> - [Core](https://github.com/CortexFlow/CortexBrain/milestone/1) |
| **CortexBrain Dashboard Developer** | - React <br> - Frontend Development <br> - JavaScript/TypeScript | - Work alongside us to design and improve the dashboard | - [JavaScript](https://github.com/CortexFlow/CortexBrain/labels/javascript) |
| **General Maintainers** | - GitHub <br> - Practical organization <br> - Documentation | - Keep the repository organized and clean <br> - Write/Update documentation <br> - Spot typos in the repository | - [Documentation](https://github.com/CortexFlow/CortexBrain/labels/documentation) <br> - [Question](https://github.com/CortexFlow/CortexBrain/labels/question) |
| **Code Reviewers/Testers** | - Rust <br> - JavaScript/TypeScript <br> - Kubernetes <br> - Docker | - Review code and suggest changes/optimizations <br> - Write tests for CI/CD | - [Code refactoring](https://github.com/CortexFlow/CortexBrain/labels/code%20refactoring) |
We're looking for contributors and collaborators. If you have knowledge in DevOps/Kubernetes, Monitoring, GPUs or Networking and Security please write an email to lorenzotettamanti5@gmail.com
42 changes: 42 additions & 0 deletions Doc/docs/developer-guide/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Developer Guide

!!! note
CortexBrain is currently in active development. Resources on eBPF and the Aya Rust framework are sparse across the internet, and existing references such as [ebpf.io](https://ebpf.io) and [aya-rs.dev](https://aya-rs.dev) only cover the top of the iceberg. This Developer Guide aims to flatten the learning curve so that newcomers can easily learn, contribute and become maintainers of the project.

## Why this section exists
The project has a very steep curve because of the combination of eBPF and Rust at the same time.
This section consolidates the architecture, the Agent API surface, the integrated metrics, and the contribution workflow into a single, detailed reference so that you don't have to guess what the codebase does to get started.

## What you'll find here

| Page | What it covers |
|------|----------------|
| [Glossary](glossary.md) | Definitions for eBPF, kernel, Kubernetes, networking, observability, GPU, and MCP terms used across the docs |
| [Architecture Overview](architecture.md) | Covers kernel instrumentation, maps pinning, aggregation and consumption |
| [Development Workflow](dev-workflow.md) | Covers the complete developer workflow: Fork, development branch and PR flow, CI pipeline, commit and branch conventions |
| [Agent API Overview](agent-api.md) | The Cortexflow agent service. Covers the RPC methods, the BPF maps the agent reads, and the data flow from eBPF kernel programs to `cfcli` |
| [Integrated Metrics](metrics.md) | Covers the live metrics and the OpenTelemetry metric format from `metrics-patch` |
| [MCP Server](mcp-server.md) | The MCP server that exposes CortexBrain metrics to AI assistants via Prometheus queries |
| [GPU Metrics (Upcoming)](gpu-metrics.md) | The complete CUDA observability roadmap |
| [Troubleshooting](troubleshooting.md) | Common issues (BPF fs not mounted, pinned map path mismatch, port-forward, permissions) and their fixes |
| [Development Goals & Discussions](discussions.md) | Milestones, roadmap, GitHub Discussions, labels, and how to propose new features |

## Prerequisites

Make sure you have the development environment set up. The guided setup (Rust nightly, eBPF toolchain, Minikube/Kind, Calico CNI, Docker setup) is documented in the [Getting Started for developers](../getting-started/installation.md#getting-started-for-developers) section of the installation page.

The core build requirements (kernel `>= 5.15`, `bpftool`, `bcc`, `clang`, `llvm`, `libbpf-dev`, `rustc >= 1.85.0` nightly) are also listed there.

## External resources

CortexBrain sits at the intersection of Rust and eBPF no single resource covers everything at the same time, in the same repository. The following are the best starting points beyond this guide:

- **eBPF** - [ebpf.io](https://ebpf.io/what-is-ebpf/) (concept overview), the [Cilium eBPF documentation](https://docs.cilium.io/) (practical kernel hook reference), and the [BPF and XDP reference guide](https://docs.kernel.org/networking/filter.html) in the Linux kernel docs.
- **Aya (Rust eBPF)** - [aya-rs.dev](https://aya-rs.dev/) (the framework CortexBrain uses to load and pin BPF maps), the [Aya book](https://aya-rs.dev/book/), and the [Aya examples](https://github.com/aya-rs/aya/tree/main/examples).
- **gRPC / tonic** - the [tonic](https://docs.rs/tonic/) Rust gRPC stack documentation, which powers the `agent.Agent` service.
- **Kubernetes networking** - the [Kubernetes CNI documentation](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-network/network-plugins/) and the [Calico docs](https://docs.tigera.io/calico/latest/about), since CortexBrain attaches eBPF programs to veth interfaces created by Calico.
- **Docker docs** - [Docker docs](https://docs.docker.com/)

## Contributing

CortexBrain is open source under Apache 2.0. We actively look for contributors and collaborators. If you have knowledge in DevOps,GPUs, Kubernetes,Docker or networking.