Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Generate eBPF programs and tracing with ChatGPT
| Date | Stars |
|---|---|
| 2026-07-24 | 273 |
| 2026-07-25 | 273 |
| 2026-07-28 | 273 |
| 2026-07-30 | 273 |
| 2026-08-06 | 273 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
# GPTtrace 🤖 [](https://opensource.org/licenses/MIT) [](https://github.com/eunomia-bpf/GPTtrace/actions) [](https://deepsource.io/gh/eunomia-bpf/eunomia-bpf/?ref=repository-badge) [](https://www.codefactor.io/repository/github/eunomia-bpf/eunomia-bpf) [](https://zenodo.org/badge/latestdoi/603351016) An experiment for generating eBPF programs and tracing with GPT and natural language. This experiment is not suitable for production use. For a better ways to use AI to generate eBPF programs or trace kernel, you can check [MCPtrace: A mcp server for eBPF tracing](https://github.com/eunomia-bpf/MCPtrace) Want the online version? please see [GPTtrace-web](https://github.com/eunomia-bpf/GPTtrace-web) for **online demo**! ### **Checkout our paper [Kgent: Kernel Extensions Large Language Model Agent](https://dl.acm.org/doi/10.1145/3672197.3673434) in eBPF'24!** ## Key Features 💡 ### Interact and Tracing your Linux with natural language example: tracing with Count page faults by process <img src="doc/trace.png" alt="Image" width="600"> - start tracing with natural language - let AI explain the result to you ### Generate eBPF programs with natural language example: Write an eBPF program Print entered bash commands from all running shells, save the bpf program to a file and exit without actual run it. <img src="doc/generate.png" alt="Image" width="600"> We use examples from [bpftrace tools](tools) to create vector store and search. For more detail documents and tutorials about how to write eBPF programs, please refer to: [`bpf-developer-tutorial`](https://github.com/eunomia-bpf/bpf-developer-tutorial) (a libbpf tool tutorial to teach ChatGPT to write eBPF programs) ### Choose the right bcc command line tool to complete the tracking task Use the right bcc tools to trace the kernel ```console $ python3 gpttrace "Trace allocations and display each individual allocator function call" Run: sudo memleak-bpfcc --trace Attaching to kernel allocators, Ctrl+C to quit. (b'Relay(35)', 402, 6, b'd...1', 20299.252425, b'alloc exited, size = 4096, result = ffff8881009cc000') (b'Relay(35)', 402, 6, b'd...1', 20299.252425, b'free entered, address = ffff8881009cc000, size = 4096') (b'Relay(35)', 402, 6, b'd...1', 20299.252426, b'free entered, address = 588a6f, size = 4096') (b'Relay(35)', 402, 6, b'd...1', 20299.252427, b'alloc entered, size = 4096') (b'Relay(35)', 402, 6, b'd...1', 20299.252427, b'alloc exited, size = 4096, result = ffff8881009cc000') (b'Relay(35)', 402, 6, b'd...1', 20299.252428, b'free entered, address = ffff8881009cc000, size = 4096') (b'sudo', 6938, 10, b'd...1', 20299.252437, b'alloc entered, size = 2048') (b'sudo', 6938, 10, b'd...1', 20299.252439, b'alloc exited, size = 2048, result = ffff88822e845800') (b'node', 410, 18, b'd...1', 20299.252455, b'alloc entered, size = 256') (b'node', 410, 18, b'd...1', 20299.252457, b'alloc exited, size = 256, result = ffff8882e9b66400') (b'node', 410, 18, b'd...1', 20299.252458, b'alloc entered, size = 2048') ``` ## How it works  1. **User Input**: The user provides their operating system information and kernel version. This information is crucial as it helps to tailor the eBPF program to the specific environment of the user. 2. **Prompt Construction**: The user's input, along with the OS info and kernel version, is used to construct a prompt. This prompt is designed to guide the generation of the eBPF program. 3. **Vector Database Query**: The constructed prompt is used to query the Vector Database for e
Excerpt of 9,799 characters
Read on GitHubWould you bet a product on this? Bounded 0–100 and slow moving.
matched fp:98cce079429b7e3f, topic:tracing
matched fp:98cce079429b7e3f, topic:chatgpt