Jelajahi Sumber

Merge pull request #54 from Timmoth/spectre-command-descriptions

Spectre command descriptions
Tim Jones 2 bulan lalu
induk
melakukan
d5fc27e2c3
4 mengubah file dengan 623 tambahan dan 506 penghapusan
  1. 76 75
      CommandIndex.md
  2. 210 141
      Commands.md
  3. 76 75
      README.md
  4. 261 215
      RackPeek/CliBootstrap.cs

+ 76 - 75
CommandIndex.md

@@ -1,93 +1,94 @@
+
 - [rpk](Commands.md#rpk)
-  - [summary](Commands.md#rpk-summary) - Show a summarized report for all resources
-  - [servers](Commands.md#rpk-servers) - Manage servers
+  - [summary](Commands.md#rpk-summary) - Show a summarized report of all resources in the system
+  - [servers](Commands.md#rpk-servers) - Manage servers and their components
     - [summary](Commands.md#rpk-servers-summary) - Show a summarized hardware report for all servers
-    - [add](Commands.md#rpk-servers-add) - Add a new server
-    - [get](Commands.md#rpk-servers-get) - List servers or get a server by name
-    - [describe](Commands.md#rpk-servers-describe) - Show detailed information about a server
-    - [set](Commands.md#rpk-servers-set) - Update server properties
-    - [del](Commands.md#rpk-servers-del) - Delete a server
-    - [tree](Commands.md#rpk-servers-tree) - Displays a dependency tree for the server
-    - [cpu](Commands.md#rpk-servers-cpu) - Manage server CPUs
-      - [add](Commands.md#rpk-servers-cpu-add) - Add a CPU to a server
-      - [set](Commands.md#rpk-servers-cpu-set) - Update a CPU on a server
+    - [add](Commands.md#rpk-servers-add) - Add a new server to the inventory
+    - [get](Commands.md#rpk-servers-get) - List all servers or retrieve a specific server by name
+    - [describe](Commands.md#rpk-servers-describe) - Display detailed information about a specific server
+    - [set](Commands.md#rpk-servers-set) - Update properties of an existing server
+    - [del](Commands.md#rpk-servers-del) - Delete a server from the inventory
+    - [tree](Commands.md#rpk-servers-tree) - Display the dependency tree of a server
+    - [cpu](Commands.md#rpk-servers-cpu) - Manage CPUs attached to a server
+      - [add](Commands.md#rpk-servers-cpu-add) - Add a CPU to a specific server
+      - [set](Commands.md#rpk-servers-cpu-set) - Update configuration of a server CPU
       - [del](Commands.md#rpk-servers-cpu-del) - Remove a CPU from a server
-    - [drive](Commands.md#rpk-servers-drive) - Manage server drives
-      - [add](Commands.md#rpk-servers-drive-add) - Add a drive to a server
-      - [set](Commands.md#rpk-servers-drive-set) - Update a drive on a server
+    - [drive](Commands.md#rpk-servers-drive) - Manage drives attached to a server
+      - [add](Commands.md#rpk-servers-drive-add) - Add a storage drive to a server
+      - [set](Commands.md#rpk-servers-drive-set) - Update properties of a server drive
       - [del](Commands.md#rpk-servers-drive-del) - Remove a drive from a server
-    - [gpu](Commands.md#rpk-servers-gpu) - Manage server GPUs
+    - [gpu](Commands.md#rpk-servers-gpu) - Manage GPUs attached to a server
       - [add](Commands.md#rpk-servers-gpu-add) - Add a GPU to a server
-      - [set](Commands.md#rpk-servers-gpu-set) - Update a GPU on a server
+      - [set](Commands.md#rpk-servers-gpu-set) - Update properties of a server GPU
       - [del](Commands.md#rpk-servers-gpu-del) - Remove a GPU from a server
-    - [nic](Commands.md#rpk-servers-nic) - Manage server NICs
+    - [nic](Commands.md#rpk-servers-nic) - Manage network interface cards (NICs) for a server
       - [add](Commands.md#rpk-servers-nic-add) - Add a NIC to a server
-      - [set](Commands.md#rpk-servers-nic-set) - Update a NIC on a server
+      - [set](Commands.md#rpk-servers-nic-set) - Update properties of a server NIC
       - [del](Commands.md#rpk-servers-nic-del) - Remove a NIC from a server
-  - [switches](Commands.md#rpk-switches) - Manage switches
-    - [summary](Commands.md#rpk-switches-summary) - Show switch hardware report
-    - [add](Commands.md#rpk-switches-add) - Add a new switch
-    - [list](Commands.md#rpk-switches-list) - List switches
-    - [get](Commands.md#rpk-switches-get) - Get a switches by name
+  - [switches](Commands.md#rpk-switches) - Manage network switches
+    - [summary](Commands.md#rpk-switches-summary) - Show a hardware report for all switches
+    - [add](Commands.md#rpk-switches-add) - Add a new network switch to the inventory
+    - [list](Commands.md#rpk-switches-list) - List all switches in the system
+    - [get](Commands.md#rpk-switches-get) - Retrieve details of a specific switch by name
     - [describe](Commands.md#rpk-switches-describe) - Show detailed information about a switch
-    - [set](Commands.md#rpk-switches-set) - Update switch properties
-    - [del](Commands.md#rpk-switches-del) - Delete a switch
-  - [systems](Commands.md#rpk-systems) - Manage systems
-    - [summary](Commands.md#rpk-systems-summary) - Show system report
-    - [add](Commands.md#rpk-systems-add) - Add a new system
-    - [list](Commands.md#rpk-systems-list) - List systems
-    - [get](Commands.md#rpk-systems-get) - Get a system by name
-    - [describe](Commands.md#rpk-systems-describe) - Show detailed information about a system
-    - [set](Commands.md#rpk-systems-set) - Update system properties
-    - [del](Commands.md#rpk-systems-del) - Delete a system
-    - [tree](Commands.md#rpk-systems-tree) - Displays a dependency tree for the system
+    - [set](Commands.md#rpk-switches-set) - Update properties of a switch
+    - [del](Commands.md#rpk-switches-del) - Delete a switch from the inventory
+  - [systems](Commands.md#rpk-systems) - Manage systems and their dependencies
+    - [summary](Commands.md#rpk-systems-summary) - Show a summary report for all systems
+    - [add](Commands.md#rpk-systems-add) - Add a new system to the inventory
+    - [list](Commands.md#rpk-systems-list) - List all systems
+    - [get](Commands.md#rpk-systems-get) - Retrieve a system by name
+    - [describe](Commands.md#rpk-systems-describe) - Display detailed information about a system
+    - [set](Commands.md#rpk-systems-set) - Update properties of a system
+    - [del](Commands.md#rpk-systems-del) - Delete a system from the inventory
+    - [tree](Commands.md#rpk-systems-tree) - Display the dependency tree for a system
   - [accesspoints](Commands.md#rpk-accesspoints) - Manage access points
-    - [summary](Commands.md#rpk-accesspoints-summary) - Show access point hardware report
+    - [summary](Commands.md#rpk-accesspoints-summary) - Show a hardware report for all access points
     - [add](Commands.md#rpk-accesspoints-add) - Add a new access point
-    - [list](Commands.md#rpk-accesspoints-list) - List access points
-    - [get](Commands.md#rpk-accesspoints-get) - Get an access point by name
+    - [list](Commands.md#rpk-accesspoints-list) - List all access points
+    - [get](Commands.md#rpk-accesspoints-get) - Retrieve an access point by name
     - [describe](Commands.md#rpk-accesspoints-describe) - Show detailed information about an access point
-    - [set](Commands.md#rpk-accesspoints-set) - Update access point properties
+    - [set](Commands.md#rpk-accesspoints-set) - Update properties of an access point
     - [del](Commands.md#rpk-accesspoints-del) - Delete an access point
   - [ups](Commands.md#rpk-ups) - Manage UPS units
-    - [summary](Commands.md#rpk-ups-summary) - Show UPS hardware report
-    - [add](Commands.md#rpk-ups-add) - Add a new UPS
-    - [list](Commands.md#rpk-ups-list) - List UPS units
-    - [get](Commands.md#rpk-ups-get) - Get a UPS by name
-    - [describe](Commands.md#rpk-ups-describe) - Show detailed information about a UPS
-    - [set](Commands.md#rpk-ups-set) - Update UPS properties
-    - [del](Commands.md#rpk-ups-del) - Delete a UPS
-  - [desktops](Commands.md#rpk-desktops) - Manage Desktops
-    - [add](Commands.md#rpk-desktops-add)
-    - [list](Commands.md#rpk-desktops-list)
-    - [get](Commands.md#rpk-desktops-get)
-    - [describe](Commands.md#rpk-desktops-describe)
-    - [set](Commands.md#rpk-desktops-set)
-    - [del](Commands.md#rpk-desktops-del)
-    - [summary](Commands.md#rpk-desktops-summary) - Show desktop hardware report
-    - [tree](Commands.md#rpk-desktops-tree)
-    - [cpu](Commands.md#rpk-desktops-cpu)
-      - [add](Commands.md#rpk-desktops-cpu-add)
-      - [set](Commands.md#rpk-desktops-cpu-set)
-      - [del](Commands.md#rpk-desktops-cpu-del)
-    - [drive](Commands.md#rpk-desktops-drive)
-      - [add](Commands.md#rpk-desktops-drive-add)
-      - [set](Commands.md#rpk-desktops-drive-set)
-      - [del](Commands.md#rpk-desktops-drive-del)
-    - [gpu](Commands.md#rpk-desktops-gpu)
-      - [add](Commands.md#rpk-desktops-gpu-add)
-      - [set](Commands.md#rpk-desktops-gpu-set)
-      - [del](Commands.md#rpk-desktops-gpu-del)
-    - [nic](Commands.md#rpk-desktops-nic)
-      - [add](Commands.md#rpk-desktops-nic-add)
-      - [set](Commands.md#rpk-desktops-nic-set)
-      - [del](Commands.md#rpk-desktops-nic-del)
-  - [services](Commands.md#rpk-services) - Manage services
-    - [summary](Commands.md#rpk-services-summary) - Show service summary report
+    - [summary](Commands.md#rpk-ups-summary) - Show a hardware report for all UPS units
+    - [add](Commands.md#rpk-ups-add) - Add a new UPS unit
+    - [list](Commands.md#rpk-ups-list) - List all UPS units
+    - [get](Commands.md#rpk-ups-get) - Retrieve a UPS unit by name
+    - [describe](Commands.md#rpk-ups-describe) - Show detailed information about a UPS unit
+    - [set](Commands.md#rpk-ups-set) - Update properties of a UPS unit
+    - [del](Commands.md#rpk-ups-del) - Delete a UPS unit
+  - [desktops](Commands.md#rpk-desktops) - Manage desktop computers and their components
+    - [add](Commands.md#rpk-desktops-add) - Add a new desktop
+    - [list](Commands.md#rpk-desktops-list) - List all desktops
+    - [get](Commands.md#rpk-desktops-get) - Retrieve a desktop by name
+    - [describe](Commands.md#rpk-desktops-describe) - Show detailed information about a desktop
+    - [set](Commands.md#rpk-desktops-set) - Update properties of a desktop
+    - [del](Commands.md#rpk-desktops-del) - Delete a desktop from the inventory
+    - [summary](Commands.md#rpk-desktops-summary) - Show a summarized hardware report for all desktops
+    - [tree](Commands.md#rpk-desktops-tree) - Display the dependency tree for a desktop
+    - [cpu](Commands.md#rpk-desktops-cpu) - Manage CPUs attached to desktops
+      - [add](Commands.md#rpk-desktops-cpu-add) - Add a CPU to a desktop
+      - [set](Commands.md#rpk-desktops-cpu-set) - Update a desktop CPU
+      - [del](Commands.md#rpk-desktops-cpu-del) - Remove a CPU from a desktop
+    - [drive](Commands.md#rpk-desktops-drive) - Manage storage drives attached to desktops
+      - [add](Commands.md#rpk-desktops-drive-add) - Add a drive to a desktop
+      - [set](Commands.md#rpk-desktops-drive-set) - Update a desktop drive
+      - [del](Commands.md#rpk-desktops-drive-del) - Remove a drive from a desktop
+    - [gpu](Commands.md#rpk-desktops-gpu) - Manage GPUs attached to desktops
+      - [add](Commands.md#rpk-desktops-gpu-add) - Add a GPU to a desktop
+      - [set](Commands.md#rpk-desktops-gpu-set) - Update a desktop GPU
+      - [del](Commands.md#rpk-desktops-gpu-del) - Remove a GPU from a desktop
+    - [nic](Commands.md#rpk-desktops-nic) - Manage network interface cards (NICs) for desktops
+      - [add](Commands.md#rpk-desktops-nic-add) - Add a NIC to a desktop
+      - [set](Commands.md#rpk-desktops-nic-set) - Update a desktop NIC
+      - [del](Commands.md#rpk-desktops-nic-del) - Remove a NIC from a desktop
+  - [services](Commands.md#rpk-services) - Manage services and their configurations
+    - [summary](Commands.md#rpk-services-summary) - Show a summary report for all services
     - [add](Commands.md#rpk-services-add) - Add a new service
     - [list](Commands.md#rpk-services-list) - List all services
-    - [get](Commands.md#rpk-services-get) - Get a service by name
+    - [get](Commands.md#rpk-services-get) - Retrieve a service by name
     - [describe](Commands.md#rpk-services-describe) - Show detailed information about a service
-    - [set](Commands.md#rpk-services-set) - Update service properties
+    - [set](Commands.md#rpk-services-set) - Update properties of a service
     - [del](Commands.md#rpk-services-del) - Delete a service
-    - [subnets](Commands.md#rpk-services-subnets) - List service subnets or filter by CIDR
+    - [subnets](Commands.md#rpk-services-subnets) - List subnets associated with a service, optionally filtered by CIDR

+ 210 - 141
Commands.md

@@ -9,20 +9,20 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    summary         Show a summarized report for all resources
-    servers         Manage servers                            
-    switches        Manage switches                           
-    systems         Manage systems                            
-    accesspoints    Manage access points                      
-    ups             Manage UPS units                          
-    desktops        Manage Desktops                           
-    services        Manage services                           
+    summary         Show a summarized report of all resources in the system
+    servers         Manage servers and their components                    
+    switches        Manage network switches                                
+    systems         Manage systems and their dependencies                  
+    accesspoints    Manage access points                                   
+    ups             Manage UPS units                                       
+    desktops        Manage desktop computers and their components          
+    services        Manage services and their configurations               
 ```
 
 ## `rpk summary`
 ```
 DESCRIPTION:
-Show a summarized report for all resources
+Show a summarized report of all resources in the system
 
 USAGE:
     rpk summary [OPTIONS]
@@ -34,7 +34,7 @@ OPTIONS:
 ## `rpk servers`
 ```
 DESCRIPTION:
-Manage servers
+Manage servers and their components
 
 USAGE:
     rpk servers [OPTIONS] <COMMAND>
@@ -43,17 +43,17 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    summary            Show a summarized hardware report for all servers
-    add <name>         Add a new server                                 
-    get <name>         List servers or get a server by name             
-    describe <name>    Show detailed information about a server         
-    set <name>         Update server properties                         
-    del <name>         Delete a server                                  
-    tree <name>        Displays a dependency tree for the server        
-    cpu                Manage server CPUs                               
-    drive              Manage server drives                             
-    gpu                Manage server GPUs                               
-    nic                Manage server NICs                               
+    summary            Show a summarized hardware report for all servers     
+    add <name>         Add a new server to the inventory                     
+    get <name>         List all servers or retrieve a specific server by name
+    describe <name>    Display detailed information about a specific server  
+    set <name>         Update properties of an existing server               
+    del <name>         Delete a server from the inventory                    
+    tree <name>        Display the dependency tree of a server               
+    cpu                Manage CPUs attached to a server                      
+    drive              Manage drives attached to a server                    
+    gpu                Manage GPUs attached to a server                      
+    nic                Manage network interface cards (NICs) for a server    
 ```
 
 ## `rpk servers summary`
@@ -71,7 +71,7 @@ OPTIONS:
 ## `rpk servers add`
 ```
 DESCRIPTION:
-Add a new server
+Add a new server to the inventory
 
 USAGE:
     rpk servers add <name> [OPTIONS]
@@ -86,7 +86,7 @@ OPTIONS:
 ## `rpk servers get`
 ```
 DESCRIPTION:
-List servers or get a server by name
+List all servers or retrieve a specific server by name
 
 USAGE:
     rpk servers get <name> [OPTIONS]
@@ -101,7 +101,7 @@ OPTIONS:
 ## `rpk servers describe`
 ```
 DESCRIPTION:
-Show detailed information about a server
+Display detailed information about a specific server
 
 USAGE:
     rpk servers describe <name> [OPTIONS]
@@ -116,7 +116,7 @@ OPTIONS:
 ## `rpk servers set`
 ```
 DESCRIPTION:
-Update server properties
+Update properties of an existing server
 
 USAGE:
     rpk servers set <name> [OPTIONS]
@@ -133,7 +133,7 @@ OPTIONS:
 ## `rpk servers del`
 ```
 DESCRIPTION:
-Delete a server
+Delete a server from the inventory
 
 USAGE:
     rpk servers del <name> [OPTIONS]
@@ -148,7 +148,7 @@ OPTIONS:
 ## `rpk servers tree`
 ```
 DESCRIPTION:
-Displays a dependency tree for the server
+Display the dependency tree of a server
 
 USAGE:
     rpk servers tree <name> [OPTIONS]
@@ -163,7 +163,7 @@ OPTIONS:
 ## `rpk servers cpu`
 ```
 DESCRIPTION:
-Manage server CPUs
+Manage CPUs attached to a server
 
 USAGE:
     rpk servers cpu [OPTIONS] <COMMAND>
@@ -172,15 +172,15 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    add <name>    Add a CPU to a server     
-    set <name>    Update a CPU on a server  
-    del <name>    Remove a CPU from a server
+    add <name>    Add a CPU to a specific server      
+    set <name>    Update configuration of a server CPU
+    del <name>    Remove a CPU from a server          
 ```
 
 ## `rpk servers cpu add`
 ```
 DESCRIPTION:
-Add a CPU to a server
+Add a CPU to a specific server
 
 USAGE:
     rpk servers cpu add <name> [OPTIONS]
@@ -198,7 +198,7 @@ OPTIONS:
 ## `rpk servers cpu set`
 ```
 DESCRIPTION:
-Update a CPU on a server
+Update configuration of a server CPU
 
 USAGE:
     rpk servers cpu set <name> [OPTIONS]
@@ -233,7 +233,7 @@ OPTIONS:
 ## `rpk servers drive`
 ```
 DESCRIPTION:
-Manage server drives
+Manage drives attached to a server
 
 USAGE:
     rpk servers drive [OPTIONS] <COMMAND>
@@ -242,15 +242,15 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    add <name>    Add a drive to a server     
-    set <name>    Update a drive on a server  
-    del <name>    Remove a drive from a server
+    add <name>    Add a storage drive to a server    
+    set <name>    Update properties of a server drive
+    del <name>    Remove a drive from a server       
 ```
 
 ## `rpk servers drive add`
 ```
 DESCRIPTION:
-Add a drive to a server
+Add a storage drive to a server
 
 USAGE:
     rpk servers drive add <name> [OPTIONS]
@@ -267,7 +267,7 @@ OPTIONS:
 ## `rpk servers drive set`
 ```
 DESCRIPTION:
-Update a drive on a server
+Update properties of a server drive
 
 USAGE:
     rpk servers drive set <name> [OPTIONS]
@@ -301,7 +301,7 @@ OPTIONS:
 ## `rpk servers gpu`
 ```
 DESCRIPTION:
-Manage server GPUs
+Manage GPUs attached to a server
 
 USAGE:
     rpk servers gpu [OPTIONS] <COMMAND>
@@ -310,9 +310,9 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    add <name>    Add a GPU to a server     
-    set <name>    Update a GPU on a server  
-    del <name>    Remove a GPU from a server
+    add <name>    Add a GPU to a server            
+    set <name>    Update properties of a server GPU
+    del <name>    Remove a GPU from a server       
 ```
 
 ## `rpk servers gpu add`
@@ -335,7 +335,7 @@ OPTIONS:
 ## `rpk servers gpu set`
 ```
 DESCRIPTION:
-Update a GPU on a server
+Update properties of a server GPU
 
 USAGE:
     rpk servers gpu set <name> [OPTIONS]
@@ -369,7 +369,7 @@ OPTIONS:
 ## `rpk servers nic`
 ```
 DESCRIPTION:
-Manage server NICs
+Manage network interface cards (NICs) for a server
 
 USAGE:
     rpk servers nic [OPTIONS] <COMMAND>
@@ -378,9 +378,9 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    add <name>    Add a NIC to a server     
-    set <name>    Update a NIC on a server  
-    del <name>    Remove a NIC from a server
+    add <name>    Add a NIC to a server            
+    set <name>    Update properties of a server NIC
+    del <name>    Remove a NIC from a server       
 ```
 
 ## `rpk servers nic add`
@@ -404,7 +404,7 @@ OPTIONS:
 ## `rpk servers nic set`
 ```
 DESCRIPTION:
-Update a NIC on a server
+Update properties of a server NIC
 
 USAGE:
     rpk servers nic set <name> [OPTIONS]
@@ -439,7 +439,7 @@ OPTIONS:
 ## `rpk switches`
 ```
 DESCRIPTION:
-Manage switches
+Manage network switches
 
 USAGE:
     rpk switches [OPTIONS] <COMMAND>
@@ -448,19 +448,19 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    summary            Show switch hardware report             
-    add <name>         Add a new switch                        
-    list               List switches                           
-    get <name>         Get a switches by name                  
-    describe <name>    Show detailed information about a switch
-    set <name>         Update switch properties                
-    del <name>         Delete a switch                         
+    summary            Show a hardware report for all switches      
+    add <name>         Add a new network switch to the inventory    
+    list               List all switches in the system              
+    get <name>         Retrieve details of a specific switch by name
+    describe <name>    Show detailed information about a switch     
+    set <name>         Update properties of a switch                
+    del <name>         Delete a switch from the inventory           
 ```
 
 ## `rpk switches summary`
 ```
 DESCRIPTION:
-Show switch hardware report
+Show a hardware report for all switches
 
 USAGE:
     rpk switches summary [OPTIONS]
@@ -472,7 +472,7 @@ OPTIONS:
 ## `rpk switches add`
 ```
 DESCRIPTION:
-Add a new switch
+Add a new network switch to the inventory
 
 USAGE:
     rpk switches add <name> [OPTIONS]
@@ -487,7 +487,7 @@ OPTIONS:
 ## `rpk switches list`
 ```
 DESCRIPTION:
-List switches
+List all switches in the system
 
 USAGE:
     rpk switches list [OPTIONS]
@@ -499,7 +499,7 @@ OPTIONS:
 ## `rpk switches get`
 ```
 DESCRIPTION:
-Get a switches by name
+Retrieve details of a specific switch by name
 
 USAGE:
     rpk switches get <name> [OPTIONS]
@@ -529,7 +529,7 @@ OPTIONS:
 ## `rpk switches set`
 ```
 DESCRIPTION:
-Update switch properties
+Update properties of a switch
 
 USAGE:
     rpk switches set <name> [OPTIONS]
@@ -547,7 +547,7 @@ OPTIONS:
 ## `rpk switches del`
 ```
 DESCRIPTION:
-Delete a switch
+Delete a switch from the inventory
 
 USAGE:
     rpk switches del <name> [OPTIONS]
@@ -562,7 +562,7 @@ OPTIONS:
 ## `rpk systems`
 ```
 DESCRIPTION:
-Manage systems
+Manage systems and their dependencies
 
 USAGE:
     rpk systems [OPTIONS] <COMMAND>
@@ -571,20 +571,20 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    summary            Show system report                       
-    add <name>         Add a new system                         
-    list               List systems                             
-    get <name>         Get a system by name                     
-    describe <name>    Show detailed information about a system 
-    set <name>         Update system properties                 
-    del <name>         Delete a system                          
-    tree <name>        Displays a dependency tree for the system
+    summary            Show a summary report for all systems      
+    add <name>         Add a new system to the inventory          
+    list               List all systems                           
+    get <name>         Retrieve a system by name                  
+    describe <name>    Display detailed information about a system
+    set <name>         Update properties of a system              
+    del <name>         Delete a system from the inventory         
+    tree <name>        Display the dependency tree for a system   
 ```
 
 ## `rpk systems summary`
 ```
 DESCRIPTION:
-Show system report
+Show a summary report for all systems
 
 USAGE:
     rpk systems summary [OPTIONS]
@@ -596,7 +596,7 @@ OPTIONS:
 ## `rpk systems add`
 ```
 DESCRIPTION:
-Add a new system
+Add a new system to the inventory
 
 USAGE:
     rpk systems add <name> [OPTIONS]
@@ -611,7 +611,7 @@ OPTIONS:
 ## `rpk systems list`
 ```
 DESCRIPTION:
-List systems
+List all systems
 
 USAGE:
     rpk systems list [OPTIONS]
@@ -623,7 +623,7 @@ OPTIONS:
 ## `rpk systems get`
 ```
 DESCRIPTION:
-Get a system by name
+Retrieve a system by name
 
 USAGE:
     rpk systems get <name> [OPTIONS]
@@ -638,7 +638,7 @@ OPTIONS:
 ## `rpk systems describe`
 ```
 DESCRIPTION:
-Show detailed information about a system
+Display detailed information about a system
 
 USAGE:
     rpk systems describe <name> [OPTIONS]
@@ -653,7 +653,7 @@ OPTIONS:
 ## `rpk systems set`
 ```
 DESCRIPTION:
-Update system properties
+Update properties of a system
 
 USAGE:
     rpk systems set <name> [OPTIONS]
@@ -673,7 +673,7 @@ OPTIONS:
 ## `rpk systems del`
 ```
 DESCRIPTION:
-Delete a system
+Delete a system from the inventory
 
 USAGE:
     rpk systems del <name> [OPTIONS]
@@ -688,7 +688,7 @@ OPTIONS:
 ## `rpk systems tree`
 ```
 DESCRIPTION:
-Displays a dependency tree for the system
+Display the dependency tree for a system
 
 USAGE:
     rpk systems tree <name> [OPTIONS]
@@ -712,19 +712,19 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    summary            Show access point hardware report              
+    summary            Show a hardware report for all access points   
     add <name>         Add a new access point                         
-    list               List access points                             
-    get <name>         Get an access point by name                    
+    list               List all access points                         
+    get <name>         Retrieve an access point by name               
     describe <name>    Show detailed information about an access point
-    set <name>         Update access point properties                 
+    set <name>         Update properties of an access point           
     del <name>         Delete an access point                         
 ```
 
 ## `rpk accesspoints summary`
 ```
 DESCRIPTION:
-Show access point hardware report
+Show a hardware report for all access points
 
 USAGE:
     rpk accesspoints summary [OPTIONS]
@@ -751,7 +751,7 @@ OPTIONS:
 ## `rpk accesspoints list`
 ```
 DESCRIPTION:
-List access points
+List all access points
 
 USAGE:
     rpk accesspoints list [OPTIONS]
@@ -763,7 +763,7 @@ OPTIONS:
 ## `rpk accesspoints get`
 ```
 DESCRIPTION:
-Get an access point by name
+Retrieve an access point by name
 
 USAGE:
     rpk accesspoints get <name> [OPTIONS]
@@ -793,7 +793,7 @@ OPTIONS:
 ## `rpk accesspoints set`
 ```
 DESCRIPTION:
-Update access point properties
+Update properties of an access point
 
 USAGE:
     rpk accesspoints set <name> [OPTIONS]
@@ -834,19 +834,19 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    summary            Show UPS hardware report             
-    add <name>         Add a new UPS                        
-    list               List UPS units                       
-    get <name>         Get a UPS by name                    
-    describe <name>    Show detailed information about a UPS
-    set <name>         Update UPS properties                
-    del <name>         Delete a UPS                         
+    summary            Show a hardware report for all UPS units  
+    add <name>         Add a new UPS unit                        
+    list               List all UPS units                        
+    get <name>         Retrieve a UPS unit by name               
+    describe <name>    Show detailed information about a UPS unit
+    set <name>         Update properties of a UPS unit           
+    del <name>         Delete a UPS unit                         
 ```
 
 ## `rpk ups summary`
 ```
 DESCRIPTION:
-Show UPS hardware report
+Show a hardware report for all UPS units
 
 USAGE:
     rpk ups summary [OPTIONS]
@@ -858,7 +858,7 @@ OPTIONS:
 ## `rpk ups add`
 ```
 DESCRIPTION:
-Add a new UPS
+Add a new UPS unit
 
 USAGE:
     rpk ups add <name> [OPTIONS]
@@ -873,7 +873,7 @@ OPTIONS:
 ## `rpk ups list`
 ```
 DESCRIPTION:
-List UPS units
+List all UPS units
 
 USAGE:
     rpk ups list [OPTIONS]
@@ -885,7 +885,7 @@ OPTIONS:
 ## `rpk ups get`
 ```
 DESCRIPTION:
-Get a UPS by name
+Retrieve a UPS unit by name
 
 USAGE:
     rpk ups get <name> [OPTIONS]
@@ -900,7 +900,7 @@ OPTIONS:
 ## `rpk ups describe`
 ```
 DESCRIPTION:
-Show detailed information about a UPS
+Show detailed information about a UPS unit
 
 USAGE:
     rpk ups describe <name> [OPTIONS]
@@ -915,7 +915,7 @@ OPTIONS:
 ## `rpk ups set`
 ```
 DESCRIPTION:
-Update UPS properties
+Update properties of a UPS unit
 
 USAGE:
     rpk ups set <name> [OPTIONS]
@@ -932,7 +932,7 @@ OPTIONS:
 ## `rpk ups del`
 ```
 DESCRIPTION:
-Delete a UPS
+Delete a UPS unit
 
 USAGE:
     rpk ups del <name> [OPTIONS]
@@ -947,7 +947,7 @@ OPTIONS:
 ## `rpk desktops`
 ```
 DESCRIPTION:
-Manage Desktops
+Manage desktop computers and their components
 
 USAGE:
     rpk desktops [OPTIONS] <COMMAND>
@@ -956,22 +956,25 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    add <name>                                     
-    list                                           
-    get <name>                                     
-    describe <name>                                
-    set <name>                                     
-    del <name>                                     
-    summary            Show desktop hardware report
-    tree <name>                                    
-    cpu                                            
-    drive                                          
-    gpu                                            
-    nic                                            
+    add <name>         Add a new desktop                                 
+    list               List all desktops                                 
+    get <name>         Retrieve a desktop by name                        
+    describe <name>    Show detailed information about a desktop         
+    set <name>         Update properties of a desktop                    
+    del <name>         Delete a desktop from the inventory               
+    summary            Show a summarized hardware report for all desktops
+    tree <name>        Display the dependency tree for a desktop         
+    cpu                Manage CPUs attached to desktops                  
+    drive              Manage storage drives attached to desktops        
+    gpu                Manage GPUs attached to desktops                  
+    nic                Manage network interface cards (NICs) for desktops
 ```
 
 ## `rpk desktops add`
 ```
+DESCRIPTION:
+Add a new desktop
+
 USAGE:
     rpk desktops add <name> [OPTIONS]
 
@@ -984,6 +987,9 @@ OPTIONS:
 
 ## `rpk desktops list`
 ```
+DESCRIPTION:
+List all desktops
+
 USAGE:
     rpk desktops list [OPTIONS]
 
@@ -993,6 +999,9 @@ OPTIONS:
 
 ## `rpk desktops get`
 ```
+DESCRIPTION:
+Retrieve a desktop by name
+
 USAGE:
     rpk desktops get <name> [OPTIONS]
 
@@ -1005,6 +1014,9 @@ OPTIONS:
 
 ## `rpk desktops describe`
 ```
+DESCRIPTION:
+Show detailed information about a desktop
+
 USAGE:
     rpk desktops describe <name> [OPTIONS]
 
@@ -1017,6 +1029,9 @@ OPTIONS:
 
 ## `rpk desktops set`
 ```
+DESCRIPTION:
+Update properties of a desktop
+
 USAGE:
     rpk desktops set <name> [OPTIONS]
 
@@ -1030,6 +1045,9 @@ OPTIONS:
 
 ## `rpk desktops del`
 ```
+DESCRIPTION:
+Delete a desktop from the inventory
+
 USAGE:
     rpk desktops del <name> [OPTIONS]
 
@@ -1043,7 +1061,7 @@ OPTIONS:
 ## `rpk desktops summary`
 ```
 DESCRIPTION:
-Show desktop hardware report
+Show a summarized hardware report for all desktops
 
 USAGE:
     rpk desktops summary [OPTIONS]
@@ -1054,6 +1072,9 @@ OPTIONS:
 
 ## `rpk desktops tree`
 ```
+DESCRIPTION:
+Display the dependency tree for a desktop
+
 USAGE:
     rpk desktops tree <name> [OPTIONS]
 
@@ -1066,6 +1087,9 @@ OPTIONS:
 
 ## `rpk desktops cpu`
 ```
+DESCRIPTION:
+Manage CPUs attached to desktops
+
 USAGE:
     rpk desktops cpu [OPTIONS] <COMMAND>
 
@@ -1073,13 +1097,16 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    add <desktop>             
-    set <desktop> <index>     
-    del <desktop> <index>     
+    add <desktop>            Add a CPU to a desktop     
+    set <desktop> <index>    Update a desktop CPU       
+    del <desktop> <index>    Remove a CPU from a desktop
 ```
 
 ## `rpk desktops cpu add`
 ```
+DESCRIPTION:
+Add a CPU to a desktop
+
 USAGE:
     rpk desktops cpu add <desktop> [OPTIONS]
 
@@ -1095,6 +1122,9 @@ OPTIONS:
 
 ## `rpk desktops cpu set`
 ```
+DESCRIPTION:
+Update a desktop CPU
+
 USAGE:
     rpk desktops cpu set <desktop> <index> [OPTIONS]
 
@@ -1111,6 +1141,9 @@ OPTIONS:
 
 ## `rpk desktops cpu del`
 ```
+DESCRIPTION:
+Remove a CPU from a desktop
+
 USAGE:
     rpk desktops cpu del <desktop> <index> [OPTIONS]
 
@@ -1124,6 +1157,9 @@ OPTIONS:
 
 ## `rpk desktops drive`
 ```
+DESCRIPTION:
+Manage storage drives attached to desktops
+
 USAGE:
     rpk desktops drive [OPTIONS] <COMMAND>
 
@@ -1131,13 +1167,16 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    add <desktop>             
-    set <desktop> <index>     
-    del <desktop> <index>     
+    add <desktop>            Add a drive to a desktop     
+    set <desktop> <index>    Update a desktop drive       
+    del <desktop> <index>    Remove a drive from a desktop
 ```
 
 ## `rpk desktops drive add`
 ```
+DESCRIPTION:
+Add a drive to a desktop
+
 USAGE:
     rpk desktops drive add <desktop> [OPTIONS]
 
@@ -1152,6 +1191,9 @@ OPTIONS:
 
 ## `rpk desktops drive set`
 ```
+DESCRIPTION:
+Update a desktop drive
+
 USAGE:
     rpk desktops drive set <desktop> <index> [OPTIONS]
 
@@ -1167,6 +1209,9 @@ OPTIONS:
 
 ## `rpk desktops drive del`
 ```
+DESCRIPTION:
+Remove a drive from a desktop
+
 USAGE:
     rpk desktops drive del <desktop> <index> [OPTIONS]
 
@@ -1180,6 +1225,9 @@ OPTIONS:
 
 ## `rpk desktops gpu`
 ```
+DESCRIPTION:
+Manage GPUs attached to desktops
+
 USAGE:
     rpk desktops gpu [OPTIONS] <COMMAND>
 
@@ -1187,13 +1235,16 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    add <desktop>             
-    set <desktop> <index>     
-    del <desktop> <index>     
+    add <desktop>            Add a GPU to a desktop     
+    set <desktop> <index>    Update a desktop GPU       
+    del <desktop> <index>    Remove a GPU from a desktop
 ```
 
 ## `rpk desktops gpu add`
 ```
+DESCRIPTION:
+Add a GPU to a desktop
+
 USAGE:
     rpk desktops gpu add <desktop> [OPTIONS]
 
@@ -1208,6 +1259,9 @@ OPTIONS:
 
 ## `rpk desktops gpu set`
 ```
+DESCRIPTION:
+Update a desktop GPU
+
 USAGE:
     rpk desktops gpu set <desktop> <index> [OPTIONS]
 
@@ -1223,6 +1277,9 @@ OPTIONS:
 
 ## `rpk desktops gpu del`
 ```
+DESCRIPTION:
+Remove a GPU from a desktop
+
 USAGE:
     rpk desktops gpu del <desktop> <index> [OPTIONS]
 
@@ -1236,6 +1293,9 @@ OPTIONS:
 
 ## `rpk desktops nic`
 ```
+DESCRIPTION:
+Manage network interface cards (NICs) for desktops
+
 USAGE:
     rpk desktops nic [OPTIONS] <COMMAND>
 
@@ -1243,13 +1303,16 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    add <desktop>             
-    set <desktop> <index>     
-    del <desktop> <index>     
+    add <desktop>            Add a NIC to a desktop     
+    set <desktop> <index>    Update a desktop NIC       
+    del <desktop> <index>    Remove a NIC from a desktop
 ```
 
 ## `rpk desktops nic add`
 ```
+DESCRIPTION:
+Add a NIC to a desktop
+
 USAGE:
     rpk desktops nic add <desktop> [OPTIONS]
 
@@ -1265,6 +1328,9 @@ OPTIONS:
 
 ## `rpk desktops nic set`
 ```
+DESCRIPTION:
+Update a desktop NIC
+
 USAGE:
     rpk desktops nic set <desktop> <index> [OPTIONS]
 
@@ -1281,6 +1347,9 @@ OPTIONS:
 
 ## `rpk desktops nic del`
 ```
+DESCRIPTION:
+Remove a NIC from a desktop
+
 USAGE:
     rpk desktops nic del <desktop> <index> [OPTIONS]
 
@@ -1295,7 +1364,7 @@ OPTIONS:
 ## `rpk services`
 ```
 DESCRIPTION:
-Manage services
+Manage services and their configurations
 
 USAGE:
     rpk services [OPTIONS] <COMMAND>
@@ -1304,20 +1373,20 @@ OPTIONS:
     -h, --help    Prints help information
 
 COMMANDS:
-    summary            Show service summary report              
-    add <name>         Add a new service                        
-    list               List all services                        
-    get <name>         Get a service by name                    
-    describe <name>    Show detailed information about a service
-    set <name>         Update service properties                
-    del <name>         Delete a service                         
-    subnets            List service subnets or filter by CIDR   
+    summary            Show a summary report for all services                             
+    add <name>         Add a new service                                                  
+    list               List all services                                                  
+    get <name>         Retrieve a service by name                                         
+    describe <name>    Show detailed information about a service                          
+    set <name>         Update properties of a service                                     
+    del <name>         Delete a service                                                   
+    subnets            List subnets associated with a service, optionally filtered by CIDR
 ```
 
 ## `rpk services summary`
 ```
 DESCRIPTION:
-Show service summary report
+Show a summary report for all services
 
 USAGE:
     rpk services summary [OPTIONS]
@@ -1356,7 +1425,7 @@ OPTIONS:
 ## `rpk services get`
 ```
 DESCRIPTION:
-Get a service by name
+Retrieve a service by name
 
 USAGE:
     rpk services get <name> [OPTIONS]
@@ -1386,7 +1455,7 @@ OPTIONS:
 ## `rpk services set`
 ```
 DESCRIPTION:
-Update service properties
+Update properties of a service
 
 USAGE:
     rpk services set <name> [OPTIONS]
@@ -1421,7 +1490,7 @@ OPTIONS:
 ## `rpk services subnets`
 ```
 DESCRIPTION:
-List service subnets or filter by CIDR
+List subnets associated with a service, optionally filtered by CIDR
 
 USAGE:
     rpk services subnets [OPTIONS]

+ 76 - 75
README.md

@@ -54,96 +54,97 @@ The project is optimized for home labs and self-hosted environments, not enterpr
 ```
 
 ## Command Tree
+
 - [rpk](Commands.md#rpk)
-  - [summary](Commands.md#rpk-summary) - Show a summarized report for all resources
-  - [servers](Commands.md#rpk-servers) - Manage servers
+  - [summary](Commands.md#rpk-summary) - Show a summarized report of all resources in the system
+  - [servers](Commands.md#rpk-servers) - Manage servers and their components
     - [summary](Commands.md#rpk-servers-summary) - Show a summarized hardware report for all servers
-    - [add](Commands.md#rpk-servers-add) - Add a new server
-    - [get](Commands.md#rpk-servers-get) - List servers or get a server by name
-    - [describe](Commands.md#rpk-servers-describe) - Show detailed information about a server
-    - [set](Commands.md#rpk-servers-set) - Update server properties
-    - [del](Commands.md#rpk-servers-del) - Delete a server
-    - [tree](Commands.md#rpk-servers-tree) - Displays a dependency tree for the server
-    - [cpu](Commands.md#rpk-servers-cpu) - Manage server CPUs
-      - [add](Commands.md#rpk-servers-cpu-add) - Add a CPU to a server
-      - [set](Commands.md#rpk-servers-cpu-set) - Update a CPU on a server
+    - [add](Commands.md#rpk-servers-add) - Add a new server to the inventory
+    - [get](Commands.md#rpk-servers-get) - List all servers or retrieve a specific server by name
+    - [describe](Commands.md#rpk-servers-describe) - Display detailed information about a specific server
+    - [set](Commands.md#rpk-servers-set) - Update properties of an existing server
+    - [del](Commands.md#rpk-servers-del) - Delete a server from the inventory
+    - [tree](Commands.md#rpk-servers-tree) - Display the dependency tree of a server
+    - [cpu](Commands.md#rpk-servers-cpu) - Manage CPUs attached to a server
+      - [add](Commands.md#rpk-servers-cpu-add) - Add a CPU to a specific server
+      - [set](Commands.md#rpk-servers-cpu-set) - Update configuration of a server CPU
       - [del](Commands.md#rpk-servers-cpu-del) - Remove a CPU from a server
-    - [drive](Commands.md#rpk-servers-drive) - Manage server drives
-      - [add](Commands.md#rpk-servers-drive-add) - Add a drive to a server
-      - [set](Commands.md#rpk-servers-drive-set) - Update a drive on a server
+    - [drive](Commands.md#rpk-servers-drive) - Manage drives attached to a server
+      - [add](Commands.md#rpk-servers-drive-add) - Add a storage drive to a server
+      - [set](Commands.md#rpk-servers-drive-set) - Update properties of a server drive
       - [del](Commands.md#rpk-servers-drive-del) - Remove a drive from a server
-    - [gpu](Commands.md#rpk-servers-gpu) - Manage server GPUs
+    - [gpu](Commands.md#rpk-servers-gpu) - Manage GPUs attached to a server
       - [add](Commands.md#rpk-servers-gpu-add) - Add a GPU to a server
-      - [set](Commands.md#rpk-servers-gpu-set) - Update a GPU on a server
+      - [set](Commands.md#rpk-servers-gpu-set) - Update properties of a server GPU
       - [del](Commands.md#rpk-servers-gpu-del) - Remove a GPU from a server
-    - [nic](Commands.md#rpk-servers-nic) - Manage server NICs
+    - [nic](Commands.md#rpk-servers-nic) - Manage network interface cards (NICs) for a server
       - [add](Commands.md#rpk-servers-nic-add) - Add a NIC to a server
-      - [set](Commands.md#rpk-servers-nic-set) - Update a NIC on a server
+      - [set](Commands.md#rpk-servers-nic-set) - Update properties of a server NIC
       - [del](Commands.md#rpk-servers-nic-del) - Remove a NIC from a server
-  - [switches](Commands.md#rpk-switches) - Manage switches
-    - [summary](Commands.md#rpk-switches-summary) - Show switch hardware report
-    - [add](Commands.md#rpk-switches-add) - Add a new switch
-    - [list](Commands.md#rpk-switches-list) - List switches
-    - [get](Commands.md#rpk-switches-get) - Get a switches by name
+  - [switches](Commands.md#rpk-switches) - Manage network switches
+    - [summary](Commands.md#rpk-switches-summary) - Show a hardware report for all switches
+    - [add](Commands.md#rpk-switches-add) - Add a new network switch to the inventory
+    - [list](Commands.md#rpk-switches-list) - List all switches in the system
+    - [get](Commands.md#rpk-switches-get) - Retrieve details of a specific switch by name
     - [describe](Commands.md#rpk-switches-describe) - Show detailed information about a switch
-    - [set](Commands.md#rpk-switches-set) - Update switch properties
-    - [del](Commands.md#rpk-switches-del) - Delete a switch
-  - [systems](Commands.md#rpk-systems) - Manage systems
-    - [summary](Commands.md#rpk-systems-summary) - Show system report
-    - [add](Commands.md#rpk-systems-add) - Add a new system
-    - [list](Commands.md#rpk-systems-list) - List systems
-    - [get](Commands.md#rpk-systems-get) - Get a system by name
-    - [describe](Commands.md#rpk-systems-describe) - Show detailed information about a system
-    - [set](Commands.md#rpk-systems-set) - Update system properties
-    - [del](Commands.md#rpk-systems-del) - Delete a system
-    - [tree](Commands.md#rpk-systems-tree) - Displays a dependency tree for the system
+    - [set](Commands.md#rpk-switches-set) - Update properties of a switch
+    - [del](Commands.md#rpk-switches-del) - Delete a switch from the inventory
+  - [systems](Commands.md#rpk-systems) - Manage systems and their dependencies
+    - [summary](Commands.md#rpk-systems-summary) - Show a summary report for all systems
+    - [add](Commands.md#rpk-systems-add) - Add a new system to the inventory
+    - [list](Commands.md#rpk-systems-list) - List all systems
+    - [get](Commands.md#rpk-systems-get) - Retrieve a system by name
+    - [describe](Commands.md#rpk-systems-describe) - Display detailed information about a system
+    - [set](Commands.md#rpk-systems-set) - Update properties of a system
+    - [del](Commands.md#rpk-systems-del) - Delete a system from the inventory
+    - [tree](Commands.md#rpk-systems-tree) - Display the dependency tree for a system
   - [accesspoints](Commands.md#rpk-accesspoints) - Manage access points
-    - [summary](Commands.md#rpk-accesspoints-summary) - Show access point hardware report
+    - [summary](Commands.md#rpk-accesspoints-summary) - Show a hardware report for all access points
     - [add](Commands.md#rpk-accesspoints-add) - Add a new access point
-    - [list](Commands.md#rpk-accesspoints-list) - List access points
-    - [get](Commands.md#rpk-accesspoints-get) - Get an access point by name
+    - [list](Commands.md#rpk-accesspoints-list) - List all access points
+    - [get](Commands.md#rpk-accesspoints-get) - Retrieve an access point by name
     - [describe](Commands.md#rpk-accesspoints-describe) - Show detailed information about an access point
-    - [set](Commands.md#rpk-accesspoints-set) - Update access point properties
+    - [set](Commands.md#rpk-accesspoints-set) - Update properties of an access point
     - [del](Commands.md#rpk-accesspoints-del) - Delete an access point
   - [ups](Commands.md#rpk-ups) - Manage UPS units
-    - [summary](Commands.md#rpk-ups-summary) - Show UPS hardware report
-    - [add](Commands.md#rpk-ups-add) - Add a new UPS
-    - [list](Commands.md#rpk-ups-list) - List UPS units
-    - [get](Commands.md#rpk-ups-get) - Get a UPS by name
-    - [describe](Commands.md#rpk-ups-describe) - Show detailed information about a UPS
-    - [set](Commands.md#rpk-ups-set) - Update UPS properties
-    - [del](Commands.md#rpk-ups-del) - Delete a UPS
-  - [desktops](Commands.md#rpk-desktops) - Manage Desktops
-    - [add](Commands.md#rpk-desktops-add)
-    - [list](Commands.md#rpk-desktops-list)
-    - [get](Commands.md#rpk-desktops-get)
-    - [describe](Commands.md#rpk-desktops-describe)
-    - [set](Commands.md#rpk-desktops-set)
-    - [del](Commands.md#rpk-desktops-del)
-    - [summary](Commands.md#rpk-desktops-summary) - Show desktop hardware report
-    - [tree](Commands.md#rpk-desktops-tree)
-    - [cpu](Commands.md#rpk-desktops-cpu)
-      - [add](Commands.md#rpk-desktops-cpu-add)
-      - [set](Commands.md#rpk-desktops-cpu-set)
-      - [del](Commands.md#rpk-desktops-cpu-del)
-    - [drive](Commands.md#rpk-desktops-drive)
-      - [add](Commands.md#rpk-desktops-drive-add)
-      - [set](Commands.md#rpk-desktops-drive-set)
-      - [del](Commands.md#rpk-desktops-drive-del)
-    - [gpu](Commands.md#rpk-desktops-gpu)
-      - [add](Commands.md#rpk-desktops-gpu-add)
-      - [set](Commands.md#rpk-desktops-gpu-set)
-      - [del](Commands.md#rpk-desktops-gpu-del)
-    - [nic](Commands.md#rpk-desktops-nic)
-      - [add](Commands.md#rpk-desktops-nic-add)
-      - [set](Commands.md#rpk-desktops-nic-set)
-      - [del](Commands.md#rpk-desktops-nic-del)
-  - [services](Commands.md#rpk-services) - Manage services
-    - [summary](Commands.md#rpk-services-summary) - Show service summary report
+    - [summary](Commands.md#rpk-ups-summary) - Show a hardware report for all UPS units
+    - [add](Commands.md#rpk-ups-add) - Add a new UPS unit
+    - [list](Commands.md#rpk-ups-list) - List all UPS units
+    - [get](Commands.md#rpk-ups-get) - Retrieve a UPS unit by name
+    - [describe](Commands.md#rpk-ups-describe) - Show detailed information about a UPS unit
+    - [set](Commands.md#rpk-ups-set) - Update properties of a UPS unit
+    - [del](Commands.md#rpk-ups-del) - Delete a UPS unit
+  - [desktops](Commands.md#rpk-desktops) - Manage desktop computers and their components
+    - [add](Commands.md#rpk-desktops-add) - Add a new desktop
+    - [list](Commands.md#rpk-desktops-list) - List all desktops
+    - [get](Commands.md#rpk-desktops-get) - Retrieve a desktop by name
+    - [describe](Commands.md#rpk-desktops-describe) - Show detailed information about a desktop
+    - [set](Commands.md#rpk-desktops-set) - Update properties of a desktop
+    - [del](Commands.md#rpk-desktops-del) - Delete a desktop from the inventory
+    - [summary](Commands.md#rpk-desktops-summary) - Show a summarized hardware report for all desktops
+    - [tree](Commands.md#rpk-desktops-tree) - Display the dependency tree for a desktop
+    - [cpu](Commands.md#rpk-desktops-cpu) - Manage CPUs attached to desktops
+      - [add](Commands.md#rpk-desktops-cpu-add) - Add a CPU to a desktop
+      - [set](Commands.md#rpk-desktops-cpu-set) - Update a desktop CPU
+      - [del](Commands.md#rpk-desktops-cpu-del) - Remove a CPU from a desktop
+    - [drive](Commands.md#rpk-desktops-drive) - Manage storage drives attached to desktops
+      - [add](Commands.md#rpk-desktops-drive-add) - Add a drive to a desktop
+      - [set](Commands.md#rpk-desktops-drive-set) - Update a desktop drive
+      - [del](Commands.md#rpk-desktops-drive-del) - Remove a drive from a desktop
+    - [gpu](Commands.md#rpk-desktops-gpu) - Manage GPUs attached to desktops
+      - [add](Commands.md#rpk-desktops-gpu-add) - Add a GPU to a desktop
+      - [set](Commands.md#rpk-desktops-gpu-set) - Update a desktop GPU
+      - [del](Commands.md#rpk-desktops-gpu-del) - Remove a GPU from a desktop
+    - [nic](Commands.md#rpk-desktops-nic) - Manage network interface cards (NICs) for desktops
+      - [add](Commands.md#rpk-desktops-nic-add) - Add a NIC to a desktop
+      - [set](Commands.md#rpk-desktops-nic-set) - Update a desktop NIC
+      - [del](Commands.md#rpk-desktops-nic-del) - Remove a NIC from a desktop
+  - [services](Commands.md#rpk-services) - Manage services and their configurations
+    - [summary](Commands.md#rpk-services-summary) - Show a summary report for all services
     - [add](Commands.md#rpk-services-add) - Add a new service
     - [list](Commands.md#rpk-services-list) - List all services
-    - [get](Commands.md#rpk-services-get) - Get a service by name
+    - [get](Commands.md#rpk-services-get) - Retrieve a service by name
     - [describe](Commands.md#rpk-services-describe) - Show detailed information about a service
-    - [set](Commands.md#rpk-services-set) - Update service properties
+    - [set](Commands.md#rpk-services-set) - Update properties of a service
     - [del](Commands.md#rpk-services-del) - Delete a service
-    - [subnets](Commands.md#rpk-services-subnets) - List service subnets or filter by CIDR
+    - [subnets](Commands.md#rpk-services-subnets) - List subnets associated with a service, optionally filtered by CIDR

+ 261 - 215
RackPeek/CliBootstrap.cs

@@ -67,283 +67,329 @@ public static class CliBootstrap
         services.AddCommands();
 
         // Spectre bootstrap
-        app.Configure(config =>
-        {
-            config.SetApplicationName("rpk");
-            config.ValidateExamples();
+app.Configure(config =>
+{
+    config.SetApplicationName("rpk");
+    config.ValidateExamples();
 
+    // Global summary
+    config.AddCommand<GetTotalSummaryCommand>("summary")
+        .WithDescription("Show a summarized report of all resources in the system.");
 
-            config.AddCommand<GetTotalSummaryCommand>("summary")
-                .WithDescription("Show a summarized report for all resources");
-            // ----------------------------
-            // Server commands (CRUD-style)
-            // ----------------------------
-            config.AddBranch("servers", server =>
-            {
-                server.SetDescription("Manage servers");
+    // ----------------------------
+    // Server commands (CRUD-style)
+    // ----------------------------
+    config.AddBranch("servers", server =>
+    {
+        server.SetDescription("Manage servers and their components.");
 
-                server.AddCommand<ServerReportCommand>("summary")
-                    .WithDescription("Show a summarized hardware report for all servers");
+        server.AddCommand<ServerReportCommand>("summary")
+            .WithDescription("Show a summarized hardware report for all servers.");
 
-                server.AddCommand<ServerAddCommand>("add")
-                    .WithDescription("Add a new server");
+        server.AddCommand<ServerAddCommand>("add")
+            .WithDescription("Add a new server to the inventory.");
 
-                server.AddCommand<ServerGetByNameCommand>("get")
-                    .WithDescription("List servers or get a server by name");
+        server.AddCommand<ServerGetByNameCommand>("get")
+            .WithDescription("List all servers or retrieve a specific server by name.");
 
-                server.AddCommand<ServerDescribeCommand>("describe")
-                    .WithDescription("Show detailed information about a server");
+        server.AddCommand<ServerDescribeCommand>("describe")
+            .WithDescription("Display detailed information about a specific server.");
 
-                server.AddCommand<ServerSetCommand>("set")
-                    .WithDescription("Update server properties");
+        server.AddCommand<ServerSetCommand>("set")
+            .WithDescription("Update properties of an existing server.");
 
-                server.AddCommand<ServerDeleteCommand>("del")
-                    .WithDescription("Delete a server");
+        server.AddCommand<ServerDeleteCommand>("del")
+            .WithDescription("Delete a server from the inventory.");
 
-                server.AddCommand<ServerTreeCommand>("tree")
-                    .WithDescription("Displays a dependency tree for the server.");
+        server.AddCommand<ServerTreeCommand>("tree")
+            .WithDescription("Display the dependency tree of a server.");
 
-                server.AddBranch("cpu", cpu =>
-                {
-                    cpu.SetDescription("Manage server CPUs");
+        // Server CPUs
+        server.AddBranch("cpu", cpu =>
+        {
+            cpu.SetDescription("Manage CPUs attached to a server.");
 
-                    cpu.AddCommand<ServerCpuAddCommand>("add")
-                        .WithDescription("Add a CPU to a server");
+            cpu.AddCommand<ServerCpuAddCommand>("add")
+                .WithDescription("Add a CPU to a specific server.");
 
-                    cpu.AddCommand<ServerCpuSetCommand>("set")
-                        .WithDescription("Update a CPU on a server");
+            cpu.AddCommand<ServerCpuSetCommand>("set")
+                .WithDescription("Update configuration of a server CPU.");
 
-                    cpu.AddCommand<ServerCpuRemoveCommand>("del")
-                        .WithDescription("Remove a CPU from a server");
-                });
+            cpu.AddCommand<ServerCpuRemoveCommand>("del")
+                .WithDescription("Remove a CPU from a server.");
+        });
 
-                server.AddBranch("nic", nic =>
-                {
-                    nic.SetDescription("Manage server NICs");
+        // Server Drives
+        server.AddBranch("drive", drive =>
+        {
+            drive.SetDescription("Manage drives attached to a server.");
 
-                    nic.AddCommand<ServerNicAddCommand>("add")
-                        .WithDescription("Add a NIC to a server");
+            drive.AddCommand<ServerDriveAddCommand>("add")
+                .WithDescription("Add a storage drive to a server.");
 
-                    nic.AddCommand<ServerNicUpdateCommand>("set")
-                        .WithDescription("Update a NIC on a server");
+            drive.AddCommand<ServerDriveUpdateCommand>("set")
+                .WithDescription("Update properties of a server drive.");
 
-                    nic.AddCommand<ServerNicRemoveCommand>("del")
-                        .WithDescription("Remove a NIC from a server");
-                    server.AddBranch("drive", drive =>
-                    {
-                        drive.SetDescription("Manage server drives");
+            drive.AddCommand<ServerDriveRemoveCommand>("del")
+                .WithDescription("Remove a drive from a server.");
+        });
 
-                        drive.AddCommand<ServerDriveAddCommand>("add")
-                            .WithDescription("Add a drive to a server");
+        // Server GPUs
+        server.AddBranch("gpu", gpu =>
+        {
+            gpu.SetDescription("Manage GPUs attached to a server.");
 
-                        drive.AddCommand<ServerDriveUpdateCommand>("set")
-                            .WithDescription("Update a drive on a server");
+            gpu.AddCommand<ServerGpuAddCommand>("add")
+                .WithDescription("Add a GPU to a server.");
 
-                        drive.AddCommand<ServerDriveRemoveCommand>("del")
-                            .WithDescription("Remove a drive from a server");
-                    });
-                    server.AddBranch("gpu", gpu =>
-                    {
-                        gpu.SetDescription("Manage server GPUs");
+            gpu.AddCommand<ServerGpuUpdateCommand>("set")
+                .WithDescription("Update properties of a server GPU.");
 
-                        gpu.AddCommand<ServerGpuAddCommand>("add")
-                            .WithDescription("Add a GPU to a server");
+            gpu.AddCommand<ServerGpuRemoveCommand>("del")
+                .WithDescription("Remove a GPU from a server.");
+        });
 
-                        gpu.AddCommand<ServerGpuUpdateCommand>("set")
-                            .WithDescription("Update a GPU on a server");
+        // Server NICs
+        server.AddBranch("nic", nic =>
+        {
+            nic.SetDescription("Manage network interface cards (NICs) for a server.");
 
-                        gpu.AddCommand<ServerGpuRemoveCommand>("del")
-                            .WithDescription("Remove a GPU from a server");
-                    });
-                });
-            });
+            nic.AddCommand<ServerNicAddCommand>("add")
+                .WithDescription("Add a NIC to a server.");
 
-            config.AddBranch("switches", switches =>
-            {
-                switches.SetDescription("Manage switches");
+            nic.AddCommand<ServerNicUpdateCommand>("set")
+                .WithDescription("Update properties of a server NIC.");
 
-                switches.AddCommand<SwitchReportCommand>("summary")
-                    .WithDescription("Show switch hardware report");
+            nic.AddCommand<ServerNicRemoveCommand>("del")
+                .WithDescription("Remove a NIC from a server.");
+        });
+    });
 
-                switches.AddCommand<SwitchAddCommand>("add")
-                    .WithDescription("Add a new switch");
+    // ----------------------------
+    // Switch commands
+    // ----------------------------
+    config.AddBranch("switches", switches =>
+    {
+        switches.SetDescription("Manage network switches.");
 
-                switches.AddCommand<SwitchGetCommand>("list")
-                    .WithDescription("List switches");
+        switches.AddCommand<SwitchReportCommand>("summary")
+            .WithDescription("Show a hardware report for all switches.");
 
-                switches.AddCommand<SwitchGetByNameCommand>("get")
-                    .WithDescription("Get a switches by name");
+        switches.AddCommand<SwitchAddCommand>("add")
+            .WithDescription("Add a new network switch to the inventory.");
 
-                switches.AddCommand<SwitchDescribeCommand>("describe")
-                    .WithDescription("Show detailed information about a switch");
+        switches.AddCommand<SwitchGetCommand>("list")
+            .WithDescription("List all switches in the system.");
 
-                switches.AddCommand<SwitchSetCommand>("set")
-                    .WithDescription("Update switch properties");
+        switches.AddCommand<SwitchGetByNameCommand>("get")
+            .WithDescription("Retrieve details of a specific switch by name.");
 
-                switches.AddCommand<SwitchDeleteCommand>("del")
-                    .WithDescription("Delete a switch");
-            });
+        switches.AddCommand<SwitchDescribeCommand>("describe")
+            .WithDescription("Show detailed information about a switch.");
 
-            config.AddBranch("systems", system =>
-            {
-                system.SetDescription("Manage systems");
+        switches.AddCommand<SwitchSetCommand>("set")
+            .WithDescription("Update properties of a switch.");
 
-                system.AddCommand<SystemReportCommand>("summary")
-                    .WithDescription("Show system report");
+        switches.AddCommand<SwitchDeleteCommand>("del")
+            .WithDescription("Delete a switch from the inventory.");
+    });
 
-                system.AddCommand<SystemAddCommand>("add")
-                    .WithDescription("Add a new system");
+    // ----------------------------
+    // System commands
+    // ----------------------------
+    config.AddBranch("systems", system =>
+    {
+        system.SetDescription("Manage systems and their dependencies.");
 
-                system.AddCommand<SystemGetCommand>("list")
-                    .WithDescription("List systems");
+        system.AddCommand<SystemReportCommand>("summary")
+            .WithDescription("Show a summary report for all systems.");
 
-                system.AddCommand<SystemGetByNameCommand>("get")
-                    .WithDescription("Get a system by name");
+        system.AddCommand<SystemAddCommand>("add")
+            .WithDescription("Add a new system to the inventory.");
 
-                system.AddCommand<SystemDescribeCommand>("describe")
-                    .WithDescription("Show detailed information about a system");
+        system.AddCommand<SystemGetCommand>("list")
+            .WithDescription("List all systems.");
 
-                system.AddCommand<SystemSetCommand>("set")
-                    .WithDescription("Update system properties");
+        system.AddCommand<SystemGetByNameCommand>("get")
+            .WithDescription("Retrieve a system by name.");
 
-                system.AddCommand<SystemDeleteCommand>("del")
-                    .WithDescription("Delete a system");
+        system.AddCommand<SystemDescribeCommand>("describe")
+            .WithDescription("Display detailed information about a system.");
 
-                system.AddCommand<SystemTreeCommand>("tree")
-                    .WithDescription("Displays a dependency tree for the system.");
-            });
+        system.AddCommand<SystemSetCommand>("set")
+            .WithDescription("Update properties of a system.");
 
-            config.AddBranch("accesspoints", ap =>
-            {
-                ap.SetDescription("Manage access points");
+        system.AddCommand<SystemDeleteCommand>("del")
+            .WithDescription("Delete a system from the inventory.");
 
-                ap.AddCommand<AccessPointReportCommand>("summary")
-                    .WithDescription("Show access point hardware report");
+        system.AddCommand<SystemTreeCommand>("tree")
+            .WithDescription("Display the dependency tree for a system.");
+    });
 
-                ap.AddCommand<AccessPointAddCommand>("add")
-                    .WithDescription("Add a new access point");
+    // ----------------------------
+    // Access Points
+    // ----------------------------
+    config.AddBranch("accesspoints", ap =>
+    {
+        ap.SetDescription("Manage access points.");
 
-                ap.AddCommand<AccessPointGetCommand>("list")
-                    .WithDescription("List access points");
+        ap.AddCommand<AccessPointReportCommand>("summary")
+            .WithDescription("Show a hardware report for all access points.");
 
-                ap.AddCommand<AccessPointGetByNameCommand>("get")
-                    .WithDescription("Get an access point by name");
+        ap.AddCommand<AccessPointAddCommand>("add")
+            .WithDescription("Add a new access point.");
 
-                ap.AddCommand<AccessPointDescribeCommand>("describe")
-                    .WithDescription("Show detailed information about an access point");
+        ap.AddCommand<AccessPointGetCommand>("list")
+            .WithDescription("List all access points.");
 
-                ap.AddCommand<AccessPointSetCommand>("set")
-                    .WithDescription("Update access point properties");
+        ap.AddCommand<AccessPointGetByNameCommand>("get")
+            .WithDescription("Retrieve an access point by name.");
 
-                ap.AddCommand<AccessPointDeleteCommand>("del")
-                    .WithDescription("Delete an access point");
-            });
+        ap.AddCommand<AccessPointDescribeCommand>("describe")
+            .WithDescription("Show detailed information about an access point.");
 
-            config.AddBranch("ups", ups =>
-            {
-                ups.SetDescription("Manage UPS units");
+        ap.AddCommand<AccessPointSetCommand>("set")
+            .WithDescription("Update properties of an access point.");
 
-                ups.AddCommand<UpsReportCommand>("summary")
-                    .WithDescription("Show UPS hardware report");
+        ap.AddCommand<AccessPointDeleteCommand>("del")
+            .WithDescription("Delete an access point.");
+    });
 
-                ups.AddCommand<UpsAddCommand>("add")
-                    .WithDescription("Add a new UPS");
+    // ----------------------------
+    // UPS units
+    // ----------------------------
+    config.AddBranch("ups", ups =>
+    {
+        ups.SetDescription("Manage UPS units.");
 
-                ups.AddCommand<UpsGetCommand>("list")
-                    .WithDescription("List UPS units");
+        ups.AddCommand<UpsReportCommand>("summary")
+            .WithDescription("Show a hardware report for all UPS units.");
 
-                ups.AddCommand<UpsGetByNameCommand>("get")
-                    .WithDescription("Get a UPS by name");
+        ups.AddCommand<UpsAddCommand>("add")
+            .WithDescription("Add a new UPS unit.");
 
-                ups.AddCommand<UpsDescribeCommand>("describe")
-                    .WithDescription("Show detailed information about a UPS");
+        ups.AddCommand<UpsGetCommand>("list")
+            .WithDescription("List all UPS units.");
 
-                ups.AddCommand<UpsSetCommand>("set")
-                    .WithDescription("Update UPS properties");
+        ups.AddCommand<UpsGetByNameCommand>("get")
+            .WithDescription("Retrieve a UPS unit by name.");
 
-                ups.AddCommand<UpsDeleteCommand>("del")
-                    .WithDescription("Delete a UPS");
-            });
+        ups.AddCommand<UpsDescribeCommand>("describe")
+            .WithDescription("Show detailed information about a UPS unit.");
 
-            config.AddBranch("desktops", desktops =>
-            {
-                desktops.SetDescription("Manage Desktops.");
+        ups.AddCommand<UpsSetCommand>("set")
+            .WithDescription("Update properties of a UPS unit.");
 
-                // CRUD
-                desktops.AddCommand<DesktopAddCommand>("add");
-                desktops.AddCommand<DesktopGetCommand>("list");
-                desktops.AddCommand<DesktopGetByNameCommand>("get");
-                desktops.AddCommand<DesktopDescribeCommand>("describe");
-                desktops.AddCommand<DesktopSetCommand>("set");
-                desktops.AddCommand<DesktopDeleteCommand>("del");
-                desktops.AddCommand<DesktopReportCommand>("summary")
-                    .WithDescription("Show desktop hardware report");
-                desktops.AddCommand<DesktopTreeCommand>("tree");
+        ups.AddCommand<UpsDeleteCommand>("del")
+            .WithDescription("Delete a UPS unit.");
+    });
 
+    // ----------------------------
+    // Desktops
+    // ----------------------------
+    config.AddBranch("desktops", desktops =>
+    {
+        desktops.SetDescription("Manage desktop computers and their components.");
+
+        // CRUD
+        desktops.AddCommand<DesktopAddCommand>("add")
+            .WithDescription("Add a new desktop.");
+        desktops.AddCommand<DesktopGetCommand>("list")
+            .WithDescription("List all desktops.");
+        desktops.AddCommand<DesktopGetByNameCommand>("get")
+            .WithDescription("Retrieve a desktop by name.");
+        desktops.AddCommand<DesktopDescribeCommand>("describe")
+            .WithDescription("Show detailed information about a desktop.");
+        desktops.AddCommand<DesktopSetCommand>("set")
+            .WithDescription("Update properties of a desktop.");
+        desktops.AddCommand<DesktopDeleteCommand>("del")
+            .WithDescription("Delete a desktop from the inventory.");
+        desktops.AddCommand<DesktopReportCommand>("summary")
+            .WithDescription("Show a summarized hardware report for all desktops.");
+        desktops.AddCommand<DesktopTreeCommand>("tree")
+            .WithDescription("Display the dependency tree for a desktop.");
+
+        // CPU
+        desktops.AddBranch("cpu", cpu =>
+        {
+            cpu.SetDescription("Manage CPUs attached to desktops.");
+            cpu.AddCommand<DesktopCpuAddCommand>("add")
+                .WithDescription("Add a CPU to a desktop.");
+            cpu.AddCommand<DesktopCpuSetCommand>("set")
+                .WithDescription("Update a desktop CPU.");
+            cpu.AddCommand<DesktopCpuRemoveCommand>("del")
+                .WithDescription("Remove a CPU from a desktop.");
+        });
 
-                // CPU
-                desktops.AddBranch("cpu", cpu =>
-                {
-                    cpu.AddCommand<DesktopCpuAddCommand>("add");
-                    cpu.AddCommand<DesktopCpuSetCommand>("set");
-                    cpu.AddCommand<DesktopCpuRemoveCommand>("del");
-                });
+        // Drives
+        desktops.AddBranch("drive", drive =>
+        {
+            drive.SetDescription("Manage storage drives attached to desktops.");
+            drive.AddCommand<DesktopDriveAddCommand>("add")
+                .WithDescription("Add a drive to a desktop.");
+            drive.AddCommand<DesktopDriveSetCommand>("set")
+                .WithDescription("Update a desktop drive.");
+            drive.AddCommand<DesktopDriveRemoveCommand>("del")
+                .WithDescription("Remove a drive from a desktop.");
+        });
 
-                // Drives
-                desktops.AddBranch("drive", drive =>
-                {
-                    drive.AddCommand<DesktopDriveAddCommand>("add");
-                    drive.AddCommand<DesktopDriveSetCommand>("set");
-                    drive.AddCommand<DesktopDriveRemoveCommand>("del");
-                });
+        // GPUs
+        desktops.AddBranch("gpu", gpu =>
+        {
+            gpu.SetDescription("Manage GPUs attached to desktops.");
+            gpu.AddCommand<DesktopGpuAddCommand>("add")
+                .WithDescription("Add a GPU to a desktop.");
+            gpu.AddCommand<DesktopGpuSetCommand>("set")
+                .WithDescription("Update a desktop GPU.");
+            gpu.AddCommand<DesktopGpuRemoveCommand>("del")
+                .WithDescription("Remove a GPU from a desktop.");
+        });
 
-                // GPUs
-                desktops.AddBranch("gpu", gpu =>
-                {
-                    gpu.AddCommand<DesktopGpuAddCommand>("add");
-                    gpu.AddCommand<DesktopGpuSetCommand>("set");
-                    gpu.AddCommand<DesktopGpuRemoveCommand>("del");
-                });
-
-                // NICs
-                desktops.AddBranch("nic", nic =>
-                {
-                    nic.AddCommand<DesktopNicAddCommand>("add");
-                    nic.AddCommand<DesktopNicSetCommand>("set");
-                    nic.AddCommand<DesktopNicRemoveCommand>("del");
-                });
-            });
-
-            config.AddBranch("services", service =>
-            {
-                service.SetDescription(
-                    "Manage services."
-                );
-
-                service.AddCommand<ServiceReportCommand>("summary")
-                    .WithDescription("Show service summary report");
-
-                service.AddCommand<ServiceAddCommand>("add")
-                    .WithDescription("Add a new service");
-
-                service.AddCommand<ServiceGetCommand>("list")
-                    .WithDescription("List all services");
-
-                service.AddCommand<ServiceGetByNameCommand>("get")
-                    .WithDescription("Get a service by name");
-
-                service.AddCommand<ServiceDescribeCommand>("describe")
-                    .WithDescription("Show detailed information about a service");
-
-                service.AddCommand<ServiceSetCommand>("set")
-                    .WithDescription("Update service properties");
-
-                service.AddCommand<ServiceDeleteCommand>("del")
-                    .WithDescription("Delete a service");
-
-                service.AddCommand<ServiceSubnetsCommand>("subnets")
-                    .WithDescription("List service subnets or filter by CIDR");
-            });
+        // NICs
+        desktops.AddBranch("nic", nic =>
+        {
+            nic.SetDescription("Manage network interface cards (NICs) for desktops.");
+            nic.AddCommand<DesktopNicAddCommand>("add")
+                .WithDescription("Add a NIC to a desktop.");
+            nic.AddCommand<DesktopNicSetCommand>("set")
+                .WithDescription("Update a desktop NIC.");
+            nic.AddCommand<DesktopNicRemoveCommand>("del")
+                .WithDescription("Remove a NIC from a desktop.");
         });
+    });
+
+    // ----------------------------
+    // Services
+    // ----------------------------
+    config.AddBranch("services", service =>
+    {
+        service.SetDescription("Manage services and their configurations.");
+
+        service.AddCommand<ServiceReportCommand>("summary")
+            .WithDescription("Show a summary report for all services.");
+
+        service.AddCommand<ServiceAddCommand>("add")
+            .WithDescription("Add a new service.");
+
+        service.AddCommand<ServiceGetCommand>("list")
+            .WithDescription("List all services.");
+
+        service.AddCommand<ServiceGetByNameCommand>("get")
+            .WithDescription("Retrieve a service by name.");
+
+        service.AddCommand<ServiceDescribeCommand>("describe")
+            .WithDescription("Show detailed information about a service.");
+
+        service.AddCommand<ServiceSetCommand>("set")
+            .WithDescription("Update properties of a service.");
+
+        service.AddCommand<ServiceDeleteCommand>("del")
+            .WithDescription("Delete a service.");
+
+        service.AddCommand<ServiceSubnetsCommand>("subnets")
+            .WithDescription("List subnets associated with a service, optionally filtered by CIDR.");
+    });
+});
+
     }
 }