Skip to content

ngkore/OCUDU-AI-Agent-Skills

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

OCUDU AI Agent Skills

Agent skills for monitoring and operating an Ocudu 5G RAN stack using AI coding agents.

Built on the open Agent Skills standard.

Structure

.agents/
└── skills/
    └── ocudu/
        ├── SKILL.md              # Skill instructions (agent reads this)
        ├── scripts/
        │   └── ws_metrics.py     # WebSocket metrics collector
        └── references/
            ├── metrics_schema.md # JSON metrics field reference
            └── config_params.md  # gNB YAML config reference

Setup

  1. Clone this repo into your project or copy the .agents/ directory.
  2. Install the dependency: pip install websocket-client
  3. Ensure the gNB has remote_control and metrics.enable_json enabled in its config.

Example config:

# ---- Add these sections ----

metrics:
  enable_json: true           # Required: enables JSON metrics for WebSocket
  layers:
    enable_sched: true        # Scheduler per-UE/cell metrics (default: true)
    enable_mac: true          # MAC latency/CPU metrics
    enable_rlc: true          # RLC per-bearer stats
    enable_ngap: true         # AMF connection & PDU session metrics
    enable_rrc: true          # RRC connection stats
    enable_executor: true     # Thread/executor load metrics
    enable_app_usage: true    # CPU/memory/power usage
    enable_du_low: true       # DU-low processing stats
    enable_ru: true           # Radio Unit / Open Fronthaul stats

remote_control:
  enabled: true
  bind_addr: 127.0.0.1       # Use 0.0.0.0 if connecting from another machine
  port: 8001

Usage

Once the skill is in place, ask your AI agent natural language questions. Examples:

> How many UEs are connected and what's their signal quality?
> Are there any scheduling issues or HARQ failures?
> What's the CPU and memory usage of the gNB?
> Collect metrics during a ping test and summarize the results.
> Is the AMF connected? How many PDU sessions are active?
> What MCS and modulation scheme is the UE using?
> Check if the gNB is running.
> Run a ping test from the UE to the core network.

How it works

The agent connects to the Ocudu gNB WebSocket interface (default 127.0.0.1:8001), subscribes to JSON metrics, and interprets the data to answer questions. No REST API is involved — Ocudu streams metrics over WebSocket.

Requirements

  • Ocudu gNB with remote control enabled
  • Python 3.8+
  • websocket-client package

Additional

  • To run and test the metrices collector manually:
pip install websocket-client
python3 .agents/skills/ocudu/scripts/ws_metrics.py --url 127.0.0.1:8001 --count 5 --pretty

License

See LICENSE.

About

OCUDU enabled with AI Agent Skills to perform action by AI agents like Claude, Cursor, Windsurf etc...

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages