Przeglądaj źródła

Merge pull request #118 from Timmoth/#109-embedded-docs

Embedded docs into webapp
Tim Jones 1 miesiąc temu
rodzic
commit
701dba793f

+ 0 - 1376
Commands.md

@@ -1,1376 +0,0 @@
-# CLI Commands
-
-## `rpk`
-```
-USAGE:
-    rpk [OPTIONS] <COMMAND>
-
-OPTIONS:
-    -h, --help    Prints help information
-
-COMMANDS:
-    switches        Manage switches                  
-    systems         Manage systems                   
-    accesspoints    Manage access points             
-    ups             Manage UPS units                 
-    desktops                                         
-    services        Manage services                  
-    ap              Show access point hardware report
-    desktops        Show desktop hardware report     
-    ups             Show UPS hardware report         
-    servers         Manage servers                   
-```
-
-## `rpk switches`
-```
-DESCRIPTION:
-Manage switches
-
-USAGE:
-    rpk switches [OPTIONS] <COMMAND>
-
-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                         
-```
-
-## `rpk switches summary`
-```
-DESCRIPTION:
-Show switch hardware report
-
-USAGE:
-    rpk switches summary [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk switches add`
-```
-DESCRIPTION:
-Add a new switch
-
-USAGE:
-    rpk switches add <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk switches list`
-```
-DESCRIPTION:
-List switches
-
-USAGE:
-    rpk switches list [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk switches get`
-```
-DESCRIPTION:
-Get a switches by name
-
-USAGE:
-    rpk switches get <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk switches describe`
-```
-DESCRIPTION:
-Show detailed information about a switch
-
-USAGE:
-    rpk switches describe <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk switches set`
-```
-DESCRIPTION:
-Update switch properties
-
-USAGE:
-    rpk switches set <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help       Prints help information
-        --Model                             
-        --managed                           
-        --poe                               
-```
-
-## `rpk switches del`
-```
-DESCRIPTION:
-Delete a switch
-
-USAGE:
-    rpk switches del <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk systems`
-```
-DESCRIPTION:
-Manage systems
-
-USAGE:
-    rpk systems [OPTIONS] <COMMAND>
-
-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                         
-```
-
-## `rpk systems summary`
-```
-DESCRIPTION:
-Show system report
-
-USAGE:
-    rpk systems summary [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk systems add`
-```
-DESCRIPTION:
-Add a new system
-
-USAGE:
-    rpk systems add <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk systems list`
-```
-DESCRIPTION:
-List systems
-
-USAGE:
-    rpk systems list [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk systems get`
-```
-DESCRIPTION:
-Get a system by name
-
-USAGE:
-    rpk systems get <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk systems describe`
-```
-DESCRIPTION:
-Show detailed information about a system
-
-USAGE:
-    rpk systems describe <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk systems set`
-```
-DESCRIPTION:
-Update system properties
-
-USAGE:
-    rpk systems set <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help       Prints help information
-        --type                              
-        --os                                
-        --cores                             
-        --ram                               
-        --runs-on                           
-```
-
-## `rpk systems del`
-```
-DESCRIPTION:
-Delete a system
-
-USAGE:
-    rpk systems del <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk accesspoints`
-```
-DESCRIPTION:
-Manage access points
-
-USAGE:
-    rpk accesspoints [OPTIONS] <COMMAND>
-
-OPTIONS:
-    -h, --help    Prints help information
-
-COMMANDS:
-    summary            Show access point hardware report              
-    add <name>         Add a new access point                         
-    list               List access points                             
-    get <name>         Get an access point by name                    
-    describe <name>    Show detailed information about an access point
-    set <name>         Update access point properties                 
-    del <name>         Delete an access point                         
-```
-
-## `rpk accesspoints summary`
-```
-DESCRIPTION:
-Show access point hardware report
-
-USAGE:
-    rpk accesspoints summary [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk accesspoints add`
-```
-DESCRIPTION:
-Add a new access point
-
-USAGE:
-    rpk accesspoints add <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>    The access point name
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk accesspoints list`
-```
-DESCRIPTION:
-List access points
-
-USAGE:
-    rpk accesspoints list [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk accesspoints get`
-```
-DESCRIPTION:
-Get an access point by name
-
-USAGE:
-    rpk accesspoints get <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>    The access point name
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk accesspoints describe`
-```
-DESCRIPTION:
-Show detailed information about an access point
-
-USAGE:
-    rpk accesspoints describe <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>    The access point name
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk accesspoints set`
-```
-DESCRIPTION:
-Update access point properties
-
-USAGE:
-    rpk accesspoints set <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help     Prints help information            
-        --model    The access point model name        
-        --speed    The speed of the access point in Gb
-```
-
-## `rpk accesspoints del`
-```
-DESCRIPTION:
-Delete an access point
-
-USAGE:
-    rpk accesspoints del <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>    The access point name
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk ups`
-```
-DESCRIPTION:
-Manage UPS units
-
-USAGE:
-    rpk ups [OPTIONS] <COMMAND>
-
-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                         
-```
-
-## `rpk ups summary`
-```
-DESCRIPTION:
-Show UPS hardware report
-
-USAGE:
-    rpk ups summary [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk ups add`
-```
-DESCRIPTION:
-Add a new UPS
-
-USAGE:
-    rpk ups add <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk ups list`
-```
-DESCRIPTION:
-List UPS units
-
-USAGE:
-    rpk ups list [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk ups get`
-```
-DESCRIPTION:
-Get a UPS by name
-
-USAGE:
-    rpk ups get <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk ups describe`
-```
-DESCRIPTION:
-Show detailed information about a UPS
-
-USAGE:
-    rpk ups describe <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk ups set`
-```
-DESCRIPTION:
-Update UPS properties
-
-USAGE:
-    rpk ups set <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help     Prints help information
-        --model                           
-        --va                              
-```
-
-## `rpk ups del`
-```
-DESCRIPTION:
-Delete a UPS
-
-USAGE:
-    rpk ups del <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk desktops`
-```
-USAGE:
-    rpk desktops [OPTIONS] <COMMAND>
-
-OPTIONS:
-    -h, --help    Prints help information
-
-COMMANDS:
-    add <name>          
-    list                
-    get <name>          
-    describe <name>     
-    set <name>          
-    del <name>          
-    cpu                 
-    drive               
-    gpu                 
-    nic                 
-```
-
-## `rpk desktops add`
-```
-USAGE:
-    rpk desktops add <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk desktops list`
-```
-USAGE:
-    rpk desktops list [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk desktops get`
-```
-USAGE:
-    rpk desktops get <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk desktops describe`
-```
-USAGE:
-    rpk desktops describe <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk desktops set`
-```
-USAGE:
-    rpk desktops set <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help     Prints help information
-        --model                           
-```
-
-## `rpk desktops del`
-```
-USAGE:
-    rpk desktops del <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk desktops cpu`
-```
-USAGE:
-    rpk desktops cpu [OPTIONS] <COMMAND>
-
-OPTIONS:
-    -h, --help    Prints help information
-
-COMMANDS:
-    add <desktop>             
-    set <desktop> <index>     
-    del <desktop> <index>     
-```
-
-## `rpk desktops cpu add`
-```
-USAGE:
-    rpk desktops cpu add <desktop> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The desktop name
-
-OPTIONS:
-    -h, --help       Prints help information  
-        --model      The model name           
-        --cores      The number of cpu cores  
-        --threads    The number of cpu threads
-```
-
-## `rpk desktops cpu set`
-```
-USAGE:
-    rpk desktops cpu set <desktop> <index> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The desktop name            
-    <index>      The index of the desktop cpu
-
-OPTIONS:
-    -h, --help       Prints help information  
-        --model      The cpu model            
-        --cores      The number of cpu cores  
-        --threads    The number of cpu threads
-```
-
-## `rpk desktops cpu del`
-```
-USAGE:
-    rpk desktops cpu del <desktop> <index> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The name of the desktop               
-    <index>      The index of the desktop cpu to remove
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk desktops drive`
-```
-USAGE:
-    rpk desktops drive [OPTIONS] <COMMAND>
-
-OPTIONS:
-    -h, --help    Prints help information
-
-COMMANDS:
-    add <desktop>             
-    set <desktop> <index>     
-    del <desktop> <index>     
-```
-
-## `rpk desktops drive add`
-```
-USAGE:
-    rpk desktops drive add <desktop> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The name of the desktop
-
-OPTIONS:
-    -h, --help    Prints help information     
-        --type    The drive type e.g hdd / ssd
-        --size    The drive capacity in Gb    
-```
-
-## `rpk desktops drive set`
-```
-USAGE:
-    rpk desktops drive set <desktop> <index> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The desktop name         
-    <index>      The drive index to update
-
-OPTIONS:
-    -h, --help    Prints help information     
-        --type    The drive type e.g hdd / ssd
-        --size    The drive capacity in Gb    
-```
-
-## `rpk desktops drive del`
-```
-USAGE:
-    rpk desktops drive del <desktop> <index> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The name of the desktop         
-    <index>      The index of the drive to remove
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk desktops gpu`
-```
-USAGE:
-    rpk desktops gpu [OPTIONS] <COMMAND>
-
-OPTIONS:
-    -h, --help    Prints help information
-
-COMMANDS:
-    add <desktop>             
-    set <desktop> <index>     
-    del <desktop> <index>     
-```
-
-## `rpk desktops gpu add`
-```
-USAGE:
-    rpk desktops gpu add <desktop> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The name of the desktop
-
-OPTIONS:
-    -h, --help     Prints help information     
-        --model    The Gpu model               
-        --vram     The amount of gpu vram in Gb
-```
-
-## `rpk desktops gpu set`
-```
-USAGE:
-    rpk desktops gpu set <desktop> <index> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The desktop name              
-    <index>      The index of the gpu to update
-
-OPTIONS:
-    -h, --help     Prints help information     
-        --model    The gpu model name          
-        --vram     The amount of gpu vram in Gb
-```
-
-## `rpk desktops gpu del`
-```
-USAGE:
-    rpk desktops gpu del <desktop> <index> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The desktop name              
-    <index>      The index of the Gpu to remove
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk desktops nic`
-```
-USAGE:
-    rpk desktops nic [OPTIONS] <COMMAND>
-
-OPTIONS:
-    -h, --help    Prints help information
-
-COMMANDS:
-    add <desktop>             
-    set <desktop> <index>     
-    del <desktop> <index>     
-```
-
-## `rpk desktops nic add`
-```
-USAGE:
-    rpk desktops nic add <desktop> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The desktop name
-
-OPTIONS:
-    -h, --help     Prints help information          
-        --type     The nic port type e.g rj45 / sfp+
-        --speed    The port speed                   
-        --ports    The number of ports              
-```
-
-## `rpk desktops nic set`
-```
-USAGE:
-    rpk desktops nic set <desktop> <index> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The desktop name              
-    <index>      The index of the nic to remove
-
-OPTIONS:
-    -h, --help     Prints help information          
-        --type     The nic port type e.g rj45 / sfp+
-        --speed    The speed of the nic in Gb/s     
-        --ports    The number of ports              
-```
-
-## `rpk desktops nic del`
-```
-USAGE:
-    rpk desktops nic del <desktop> <index> [OPTIONS]
-
-ARGUMENTS:
-    <desktop>    The desktop name              
-    <index>      The index of the nic to remove
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk services`
-```
-DESCRIPTION:
-Manage services
-
-USAGE:
-    rpk services [OPTIONS] <COMMAND>
-
-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                         
-```
-
-## `rpk services summary`
-```
-DESCRIPTION:
-Show service summary report
-
-USAGE:
-    rpk services summary [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk services add`
-```
-DESCRIPTION:
-Add a new service
-
-USAGE:
-    rpk services add <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>    The name of the service
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk services list`
-```
-DESCRIPTION:
-List all services
-
-USAGE:
-    rpk services list [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk services get`
-```
-DESCRIPTION:
-Get a service by name
-
-USAGE:
-    rpk services get <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>    The name of the service
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk services describe`
-```
-DESCRIPTION:
-Show detailed information about a service
-
-USAGE:
-    rpk services describe <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>    The name of the service
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk services set`
-```
-DESCRIPTION:
-Update service properties
-
-USAGE:
-    rpk services set <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help        Prints help information             
-        --ip          The ip address of the service       
-        --port        The port the service is running on  
-        --protocol    The service protocol                
-        --url         The service URL                     
-        --runs-on     The system the service is running on
-```
-
-## `rpk services del`
-```
-DESCRIPTION:
-Delete a service
-
-USAGE:
-    rpk services del <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>    The name of the service
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk ap`
-```
-DESCRIPTION:
-Show access point hardware report
-
-USAGE:
-    rpk ap [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk servers`
-```
-DESCRIPTION:
-Manage servers
-
-USAGE:
-    rpk servers [OPTIONS] <COMMAND>
-
-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                               
-```
-
-## `rpk servers summary`
-```
-DESCRIPTION:
-Show a summarized hardware report for all servers
-
-USAGE:
-    rpk servers summary [OPTIONS]
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk servers add`
-```
-DESCRIPTION:
-Add a new server
-
-USAGE:
-    rpk servers add <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk servers get`
-```
-DESCRIPTION:
-List servers or get a server by name
-
-USAGE:
-    rpk servers get <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk servers describe`
-```
-DESCRIPTION:
-Show detailed information about a server
-
-USAGE:
-    rpk servers describe <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk servers set`
-```
-DESCRIPTION:
-Update server properties
-
-USAGE:
-    rpk servers set <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help        Prints help information
-        --ram <GB>                           
-        --ipmi                               
-```
-
-## `rpk servers del`
-```
-DESCRIPTION:
-Delete a server
-
-USAGE:
-    rpk servers del <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk servers tree`
-```
-DESCRIPTION:
-Displays a dependency tree for the server
-
-USAGE:
-    rpk servers tree <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help    Prints help information
-```
-
-## `rpk servers cpu`
-```
-DESCRIPTION:
-Manage server CPUs
-
-USAGE:
-    rpk servers cpu [OPTIONS] <COMMAND>
-
-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
-```
-
-## `rpk servers cpu add`
-```
-DESCRIPTION:
-Add a CPU to a server
-
-USAGE:
-    rpk servers cpu add <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help                 Prints help information
-        --model <MODEL>                               
-        --cores <CORES>                               
-        --threads <THREADS>                           
-```
-
-## `rpk servers cpu set`
-```
-DESCRIPTION:
-Update a CPU on a server
-
-USAGE:
-    rpk servers cpu set <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help                 Prints help information
-        --index <INDEX>                               
-        --model <MODEL>                               
-        --cores <CORES>                               
-        --threads <THREADS>                           
-```
-
-## `rpk servers cpu del`
-```
-DESCRIPTION:
-Remove a CPU from a server
-
-USAGE:
-    rpk servers cpu del <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help             Prints help information
-        --index <INDEX>                           
-```
-
-## `rpk servers drive`
-```
-DESCRIPTION:
-Manage server drives
-
-USAGE:
-    rpk servers drive [OPTIONS] <COMMAND>
-
-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
-```
-
-## `rpk servers drive add`
-```
-DESCRIPTION:
-Add a drive to a server
-
-USAGE:
-    rpk servers drive add <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help           Prints help information
-        --type <TYPE>                           
-        --size <SIZE>                           
-```
-
-## `rpk servers drive set`
-```
-DESCRIPTION:
-Update a drive on a server
-
-USAGE:
-    rpk servers drive set <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help             Prints help information
-        --index <INDEX>                           
-        --type <TYPE>                             
-        --size <SIZE>                             
-```
-
-## `rpk servers drive del`
-```
-DESCRIPTION:
-Remove a drive from a server
-
-USAGE:
-    rpk servers drive del <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help             Prints help information
-        --index <INDEX>                           
-```
-
-## `rpk servers gpu`
-```
-DESCRIPTION:
-Manage server GPUs
-
-USAGE:
-    rpk servers gpu [OPTIONS] <COMMAND>
-
-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
-```
-
-## `rpk servers gpu add`
-```
-DESCRIPTION:
-Add a GPU to a server
-
-USAGE:
-    rpk servers gpu add <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help             Prints help information
-        --model <MODEL>                           
-        --vram <VRAM>                             
-```
-
-## `rpk servers gpu set`
-```
-DESCRIPTION:
-Update a GPU on a server
-
-USAGE:
-    rpk servers gpu set <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help             Prints help information
-        --index <INDEX>                           
-        --model <MODEL>                           
-        --vram <VRAM>                             
-```
-
-## `rpk servers gpu del`
-```
-DESCRIPTION:
-Remove a GPU from a server
-
-USAGE:
-    rpk servers gpu del <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help             Prints help information
-        --index <INDEX>                           
-```
-
-## `rpk servers nic`
-```
-DESCRIPTION:
-Manage server NICs
-
-USAGE:
-    rpk servers nic [OPTIONS] <COMMAND>
-
-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
-```
-
-## `rpk servers nic add`
-```
-DESCRIPTION:
-Add a NIC to a server
-
-USAGE:
-    rpk servers nic add <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help             Prints help information
-        --type <TYPE>                             
-        --speed <SPEED>                           
-        --ports <PORTS>                           
-```
-
-## `rpk servers nic set`
-```
-DESCRIPTION:
-Update a NIC on a server
-
-USAGE:
-    rpk servers nic set <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help             Prints help information
-        --index <INDEX>                           
-        --type <TYPE>                             
-        --speed <SPEED>                           
-        --ports <PORTS>                           
-```
-
-## `rpk servers nic del`
-```
-DESCRIPTION:
-Remove a NIC from a server
-
-USAGE:
-    rpk servers nic del <name> [OPTIONS]
-
-ARGUMENTS:
-    <name>     
-
-OPTIONS:
-    -h, --help             Prints help information
-        --index <INDEX>                           
-```
-

+ 1 - 145
README.md

@@ -129,148 +129,4 @@ The project is optimized for home labs and self-hosted environments, not enterpr
 We’re gathering feedback from homelabbers to validate direction and prioritize features.  
 Answer whichever questions stand out to you, your input directly shapes the project.
 
-[![User Questionnaire](https://img.shields.io/badge/Questionnaire-Share%20Feedback-orange?logo=googleforms&logoColor=white)](https://forms.gle/KKA4bqfGAeRYvGxT6)
-
-## Command Tree
-
-- [rpk](Commands.md#rpk)
-  - [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 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 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 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 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 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 properties of a server NIC
-      - [del](Commands.md#rpk-servers-nic-del) - Remove a NIC from a server
-  - [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 properties of a switch
-    - [del](Commands.md#rpk-switches-del) - Delete a switch from the inventory
-    - [port](Commands.md#rpk-switches-port) - Manage ports on a network switch
-      - [add](Commands.md#rpk-switches-port-add) - Add a port to a switch
-      - [set](Commands.md#rpk-switches-port-set) - Update a switch port
-      - [del](Commands.md#rpk-switches-port-del) - Remove a port from a switch
-  - [routers](Commands.md#rpk-routers) - Manage network routers
-    - [summary](Commands.md#rpk-routers-summary) - Show a hardware report for all routers
-    - [add](Commands.md#rpk-routers-add) - Add a new network router to the inventory
-    - [list](Commands.md#rpk-routers-list) - List all routers in the system
-    - [get](Commands.md#rpk-routers-get) - Retrieve details of a specific router by name
-    - [describe](Commands.md#rpk-routers-describe) - Show detailed information about a router
-    - [set](Commands.md#rpk-routers-set) - Update properties of a router
-    - [del](Commands.md#rpk-routers-del) - Delete a router from the inventory
-    - [port](Commands.md#rpk-routers-port) - Manage ports on a router
-      - [add](Commands.md#rpk-routers-port-add) - Add a port to a router
-      - [set](Commands.md#rpk-routers-port-set) - Update a router port
-      - [del](Commands.md#rpk-routers-port-del) - Remove a port from a router
-  - [firewalls](Commands.md#rpk-firewalls) - Manage firewalls
-    - [summary](Commands.md#rpk-firewalls-summary) - Show a hardware report for all firewalls
-    - [add](Commands.md#rpk-firewalls-add) - Add a new firewall to the inventory
-    - [list](Commands.md#rpk-firewalls-list) - List all firewalls in the system
-    - [get](Commands.md#rpk-firewalls-get) - Retrieve details of a specific firewall by name
-    - [describe](Commands.md#rpk-firewalls-describe) - Show detailed information about a firewall
-    - [set](Commands.md#rpk-firewalls-set) - Update properties of a firewall
-    - [del](Commands.md#rpk-firewalls-del) - Delete a firewall from the inventory
-    - [port](Commands.md#rpk-firewalls-port) - Manage ports on a firewall
-      - [add](Commands.md#rpk-firewalls-port-add) - Add a port to a firewall
-      - [set](Commands.md#rpk-firewalls-port-set) - Update a firewall port
-      - [del](Commands.md#rpk-firewalls-port-del) - Remove a port from a firewall
-  - [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 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 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 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 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
-  - [Laptops](Commands.md#rpk-laptops) - Manage Laptop computers and their components
-    - [add](Commands.md#rpk-laptops-add) - Add a new Laptop
-    - [list](Commands.md#rpk-laptops-list) - List all Laptops
-    - [get](Commands.md#rpk-laptops-get) - Retrieve a Laptop by name
-    - [describe](Commands.md#rpk-laptops-describe) - Show detailed information about a Laptop
-    - [del](Commands.md#rpk-laptops-del) - Delete a Laptop from the inventory
-    - [summary](Commands.md#rpk-laptops-summary) - Show a summarized hardware report for all Laptops
-    - [tree](Commands.md#rpk-laptops-tree) - Display the dependency tree for a Laptop
-    - [cpu](Commands.md#rpk-laptops-cpu) - Manage CPUs attached to Laptops
-      - [add](Commands.md#rpk-laptops-cpu-add) - Add a CPU to a Laptop
-      - [set](Commands.md#rpk-laptops-cpu-set) - Update a Laptop CPU
-      - [del](Commands.md#rpk-laptops-cpu-del) - Remove a CPU from a Laptop
-    - [drive](Commands.md#rpk-laptops-drive) - Manage storage drives attached to Laptops
-      - [add](Commands.md#rpk-laptops-drive-add) - Add a drive to a Laptop
-      - [set](Commands.md#rpk-laptops-drive-set) - Update a Laptop drive
-      - [del](Commands.md#rpk-laptops-drive-del) - Remove a drive from a Laptop
-    - [gpu](Commands.md#rpk-laptops-gpu) - Manage GPUs attached to Laptops
-      - [add](Commands.md#rpk-laptops-gpu-add) - Add a GPU to a Laptop
-      - [set](Commands.md#rpk-laptops-gpu-set) - Update a Laptop GPU
-      - [del](Commands.md#rpk-laptops-gpu-del) - Remove a GPU from a Laptop
-  - [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) - Retrieve a service by name
-    - [describe](Commands.md#rpk-services-describe) - Show detailed information about a service
-    - [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 subnets associated with a service, optionally filtered by CIDR
+[![User Questionnaire](https://img.shields.io/badge/Questionnaire-Share%20Feedback-orange?logo=googleforms&logoColor=white)](https://forms.gle/KKA4bqfGAeRYvGxT6)

+ 12 - 2
RackPeek.Web.Viewer/Program.cs

@@ -1,3 +1,4 @@
+using Microsoft.AspNetCore.Components;
 using Microsoft.AspNetCore.Components.Web;
 using Microsoft.AspNetCore.Components.WebAssembly.Hosting;
 using RackPeek.Domain;
@@ -19,9 +20,18 @@ public class Program
         builder.RootComponents.Add<HeadOutlet>("head::after");
 
         var services = builder.Services;
-        builder.Services.AddScoped(sp =>
-            new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) });
 
+
+        builder.Services.AddScoped(sp =>
+        {
+            var nav = sp.GetRequiredService<NavigationManager>();
+            return new HttpClient
+            {
+                BaseAddress = new Uri(nav.BaseUri)
+            };
+        });
+
+        
         builder.Services.AddScoped<ITextFileStore, WasmTextFileStore>();
 
         var resources = new ResourceCollection();

+ 250 - 18
RackPeek.Web.Viewer/wwwroot/app.css

@@ -1,35 +1,267 @@
-.markdown h1 { font-size: 1.5rem; font-weight: 700; margin: 0.6em 0; }
-.markdown h2 { font-size: 1.3rem; font-weight: 600; margin: 0.5em 0; }
-.markdown h3 { font-size: 1.1rem; font-weight: 600; margin: 0.4em 0; }
+/* ============================= */
+/* Base Container */
+/* ============================= */
 
-.markdown p { margin: 0.4em 0; }
+.markdown {
+    color: #e4e4e7;
+    line-height: 1.7;
+    font-size: 0.95rem;
+}
+
+.markdown > :first-child {
+    margin-top: 0;
+}
+
+.markdown > :last-child {
+    margin-bottom: 0;
+}
+
+/* ============================= */
+/* Headings */
+/* ============================= */
+
+.markdown h1,
+.markdown h2,
+.markdown h3,
+.markdown h4,
+.markdown h5,
+.markdown h6 {
+    font-weight: 700;
+    line-height: 1.3;
+    margin: 1.2em 0 0.5em;
+    color: #34d399;
+}
+
+.markdown h1 { font-size: 1.8rem; border-bottom: 1px solid #27272a; padding-bottom: 0.3em; }
+.markdown h2 { font-size: 1.5rem; border-bottom: 1px solid #27272a; padding-bottom: 0.25em; }
+.markdown h3 { font-size: 1.25rem; }
+.markdown h4 { font-size: 1.1rem; }
+.markdown h5 { font-size: 1rem; opacity: 0.9; }
+.markdown h6 { font-size: 0.9rem; opacity: 0.7; text-transform: uppercase; letter-spacing: 0.05em; }
+
+/* ============================= */
+/* Paragraphs */
+/* ============================= */
+
+.markdown p {
+    margin: 0.8em 0;
+}
+
+/* ============================= */
+/* Links */
+/* ============================= */
+
+.markdown a {
+    color: #4ade80;
+    text-decoration: none;
+    border-bottom: 1px dotted #4ade80;
+    transition: color 0.2s ease;
+}
+
+.markdown a:hover {
+    color: #86efac;
+    border-bottom-color: #86efac;
+}
+
+/* ============================= */
+/* Lists */
+/* ============================= */
+
+.markdown ul,
+.markdown ol {
+    margin: 0.8em 0 0.8em 1.5rem;
+    padding-left: 1rem;
+}
 
-.markdown ul { list-style: disc; margin-left: 1.2rem; }
-.markdown ol { list-style: decimal; margin-left: 1.2rem; }
+.markdown ul { list-style: disc; }
+.markdown ul ul { list-style: circle; }
+.markdown ul ul ul { list-style: square; }
 
-.markdown li { margin: 0.2em 0; }
+.markdown ol { list-style: decimal; }
+
+.markdown li {
+    margin: 0.35em 0;
+}
+
+/* Task lists */
+.markdown input[type="checkbox"] {
+    margin-right: 0.5rem;
+}
+
+/* ============================= */
+/* Blockquotes */
+/* ============================= */
+
+.markdown blockquote {
+    border-left: 4px solid #52525b;
+    padding: 0.6em 1em;
+    margin: 1em 0;
+    background: #18181b;
+    color: #a1a1aa;
+    border-radius: 6px;
+}
+
+/* ============================= */
+/* Horizontal Rule */
+/* ============================= */
+
+.markdown hr {
+    border: none;
+    border-top: 1px solid #27272a;
+    margin: 2em 0;
+}
+
+/* ============================= */
+/* Inline Code */
+/* ============================= */
 
 .markdown code {
     background: #27272a;
-    padding: 2px 5px;
-    border-radius: 4px;
-    font-size: 0.9em;
+    padding: 3px 6px;
+    border-radius: 5px;
+    font-size: 0.85em;
+    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
+    color: #facc15;
 }
 
+/* ============================= */
+/* Code Blocks */
+/* ============================= */
+
 .markdown pre {
     background: #18181b;
-    padding: 12px;
-    border-radius: 8px;
+    padding: 1rem;
+    border-radius: 10px;
     overflow-x: auto;
+    border: 1px solid #27272a;
+    margin: 1.2em 0;
 }
 
-.markdown blockquote {
-    border-left: 3px solid #52525b;
-    padding-left: 10px;
+.markdown pre code {
+    background: transparent;
+    padding: 0;
+    color: #e4e4e7;
+}
+
+/* Scrollbar styling */
+.markdown pre::-webkit-scrollbar {
+    height: 8px;
+}
+
+.markdown pre::-webkit-scrollbar-thumb {
+    background: #3f3f46;
+    border-radius: 4px;
+}
+
+/* ============================= */
+/* Tables */
+/* ============================= */
+
+.markdown table {
+    width: 100%;
+    border-collapse: collapse;
+    margin: 1.2em 0;
+    font-size: 0.9rem;
+}
+
+.markdown th,
+.markdown td {
+    border: 1px solid #27272a;
+    padding: 0.6em 0.8em;
+}
+
+.markdown th {
+    background: #18181b;
+    text-align: left;
+    color: #34d399;
+}
+
+.markdown tr:nth-child(even) {
+    background: #1f1f23;
+}
+
+/* ============================= */
+/* Images */
+/* ============================= */
+
+.markdown img {
+    max-width: 100%;
+    border-radius: 8px;
+    margin: 1em 0;
+    border: 1px solid #27272a;
+}
+
+/* ============================= */
+/* Definition Lists */
+/* ============================= */
+
+.markdown dt {
+    font-weight: 600;
+    margin-top: 1em;
+}
+
+.markdown dd {
+    margin-left: 1.2rem;
     color: #a1a1aa;
-    margin: 0.6em 0;
 }
 
-.markdown > :first-child {
-    margin-top: 0;
+/* ============================= */
+/* Keyboard */
+/* ============================= */
+
+.markdown kbd {
+    background: #27272a;
+    border: 1px solid #3f3f46;
+    border-radius: 4px;
+    padding: 2px 6px;
+    font-size: 0.8em;
+    box-shadow: inset 0 -2px 0 #3f3f46;
+}
+
+/* ============================= */
+/* Superscript / Subscript */
+/* ============================= */
+
+.markdown sup,
+.markdown sub {
+    font-size: 0.75em;
+}
+
+/* ============================= */
+/* Details / Summary */
+/* ============================= */
+
+.markdown details {
+    background: #18181b;
+    border: 1px solid #27272a;
+    padding: 0.8em;
+    border-radius: 8px;
+    margin: 1em 0;
+}
+
+.markdown summary {
+    cursor: pointer;
+    font-weight: 600;
+    color: #34d399;
+}
+
+/* ============================= */
+/* Footnotes */
+/* ============================= */
+
+.markdown .footnotes {
+    margin-top: 2em;
+    font-size: 0.85rem;
+    color: #a1a1aa;
+    border-top: 1px solid #27272a;
+    padding-top: 1em;
+}
+
+/* ============================= */
+/* Selection */
+/* ============================= */
+
+.markdown ::selection {
+    background: #065f46;
+    color: #ffffff;
 }

+ 23 - 0
RackPeek.Web.Viewer/wwwroot/console.js

@@ -6,3 +6,26 @@ window.consoleHasSelection = () => {
     const sel = window.getSelection();
     return sel && sel.toString().length > 0;
 };
+
+window.scrollToAnchor = (anchor) => {
+    if (!anchor) return;
+
+    let attempts = 0;
+    const maxAttempts = 30;
+
+    const tryScroll = () => {
+        const el = document.getElementById(anchor);
+
+        if (el) {
+            el.scrollIntoView({ behavior: "smooth", block: "start" });
+            return;
+        }
+
+        attempts++;
+        if (attempts < maxAttempts) {
+            setTimeout(tryScroll, 50);
+        }
+    };
+
+    tryScroll();
+};

BIN
RackPeek.Web/.DS_Store


+ 12 - 0
RackPeek.Web/Program.cs

@@ -1,3 +1,4 @@
+using Microsoft.AspNetCore.Components;
 using Microsoft.AspNetCore.Hosting.StaticWebAssets;
 using RackPeek.Domain;
 using RackPeek.Domain.Persistence;
@@ -51,6 +52,17 @@ public class Program
 
         builder.Services.AddScoped<ITextFileStore, PhysicalTextFileStore>();
 
+        
+        builder.Services.AddScoped(sp =>
+        {
+            var nav = sp.GetRequiredService<NavigationManager>();
+            return new HttpClient
+            {
+                BaseAddress = new Uri(nav.BaseUri)
+            };
+        });
+
+        
         var resources = new ResourceCollection();
         builder.Services.AddSingleton(resources);
 

+ 250 - 18
RackPeek.Web/wwwroot/app.css

@@ -1,35 +1,267 @@
-.markdown h1 { font-size: 1.5rem; font-weight: 700; margin: 0.6em 0; }
-.markdown h2 { font-size: 1.3rem; font-weight: 600; margin: 0.5em 0; }
-.markdown h3 { font-size: 1.1rem; font-weight: 600; margin: 0.4em 0; }
+/* ============================= */
+/* Base Container */
+/* ============================= */
 
-.markdown p { margin: 0.4em 0; }
+.markdown {
+    color: #e4e4e7;
+    line-height: 1.7;
+    font-size: 0.95rem;
+}
+
+.markdown > :first-child {
+    margin-top: 0;
+}
+
+.markdown > :last-child {
+    margin-bottom: 0;
+}
+
+/* ============================= */
+/* Headings */
+/* ============================= */
+
+.markdown h1,
+.markdown h2,
+.markdown h3,
+.markdown h4,
+.markdown h5,
+.markdown h6 {
+    font-weight: 700;
+    line-height: 1.3;
+    margin: 1.2em 0 0.5em;
+    color: #34d399;
+}
+
+.markdown h1 { font-size: 1.8rem; border-bottom: 1px solid #27272a; padding-bottom: 0.3em; }
+.markdown h2 { font-size: 1.5rem; border-bottom: 1px solid #27272a; padding-bottom: 0.25em; }
+.markdown h3 { font-size: 1.25rem; }
+.markdown h4 { font-size: 1.1rem; }
+.markdown h5 { font-size: 1rem; opacity: 0.9; }
+.markdown h6 { font-size: 0.9rem; opacity: 0.7; text-transform: uppercase; letter-spacing: 0.05em; }
+
+/* ============================= */
+/* Paragraphs */
+/* ============================= */
+
+.markdown p {
+    margin: 0.8em 0;
+}
+
+/* ============================= */
+/* Links */
+/* ============================= */
+
+.markdown a {
+    color: #4ade80;
+    text-decoration: none;
+    border-bottom: 1px dotted #4ade80;
+    transition: color 0.2s ease;
+}
+
+.markdown a:hover {
+    color: #86efac;
+    border-bottom-color: #86efac;
+}
+
+/* ============================= */
+/* Lists */
+/* ============================= */
+
+.markdown ul,
+.markdown ol {
+    margin: 0.8em 0 0.8em 1.5rem;
+    padding-left: 1rem;
+}
 
-.markdown ul { list-style: disc; margin-left: 1.2rem; }
-.markdown ol { list-style: decimal; margin-left: 1.2rem; }
+.markdown ul { list-style: disc; }
+.markdown ul ul { list-style: circle; }
+.markdown ul ul ul { list-style: square; }
 
-.markdown li { margin: 0.2em 0; }
+.markdown ol { list-style: decimal; }
+
+.markdown li {
+    margin: 0.35em 0;
+}
+
+/* Task lists */
+.markdown input[type="checkbox"] {
+    margin-right: 0.5rem;
+}
+
+/* ============================= */
+/* Blockquotes */
+/* ============================= */
+
+.markdown blockquote {
+    border-left: 4px solid #52525b;
+    padding: 0.6em 1em;
+    margin: 1em 0;
+    background: #18181b;
+    color: #a1a1aa;
+    border-radius: 6px;
+}
+
+/* ============================= */
+/* Horizontal Rule */
+/* ============================= */
+
+.markdown hr {
+    border: none;
+    border-top: 1px solid #27272a;
+    margin: 2em 0;
+}
+
+/* ============================= */
+/* Inline Code */
+/* ============================= */
 
 .markdown code {
     background: #27272a;
-    padding: 2px 5px;
-    border-radius: 4px;
-    font-size: 0.9em;
+    padding: 3px 6px;
+    border-radius: 5px;
+    font-size: 0.85em;
+    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
+    color: #facc15;
 }
 
+/* ============================= */
+/* Code Blocks */
+/* ============================= */
+
 .markdown pre {
     background: #18181b;
-    padding: 12px;
-    border-radius: 8px;
+    padding: 1rem;
+    border-radius: 10px;
     overflow-x: auto;
+    border: 1px solid #27272a;
+    margin: 1.2em 0;
 }
 
-.markdown blockquote {
-    border-left: 3px solid #52525b;
-    padding-left: 10px;
+.markdown pre code {
+    background: transparent;
+    padding: 0;
+    color: #e4e4e7;
+}
+
+/* Scrollbar styling */
+.markdown pre::-webkit-scrollbar {
+    height: 8px;
+}
+
+.markdown pre::-webkit-scrollbar-thumb {
+    background: #3f3f46;
+    border-radius: 4px;
+}
+
+/* ============================= */
+/* Tables */
+/* ============================= */
+
+.markdown table {
+    width: 100%;
+    border-collapse: collapse;
+    margin: 1.2em 0;
+    font-size: 0.9rem;
+}
+
+.markdown th,
+.markdown td {
+    border: 1px solid #27272a;
+    padding: 0.6em 0.8em;
+}
+
+.markdown th {
+    background: #18181b;
+    text-align: left;
+    color: #34d399;
+}
+
+.markdown tr:nth-child(even) {
+    background: #1f1f23;
+}
+
+/* ============================= */
+/* Images */
+/* ============================= */
+
+.markdown img {
+    max-width: 100%;
+    border-radius: 8px;
+    margin: 1em 0;
+    border: 1px solid #27272a;
+}
+
+/* ============================= */
+/* Definition Lists */
+/* ============================= */
+
+.markdown dt {
+    font-weight: 600;
+    margin-top: 1em;
+}
+
+.markdown dd {
+    margin-left: 1.2rem;
     color: #a1a1aa;
-    margin: 0.6em 0;
 }
 
-.markdown > :first-child {
-    margin-top: 0;
+/* ============================= */
+/* Keyboard */
+/* ============================= */
+
+.markdown kbd {
+    background: #27272a;
+    border: 1px solid #3f3f46;
+    border-radius: 4px;
+    padding: 2px 6px;
+    font-size: 0.8em;
+    box-shadow: inset 0 -2px 0 #3f3f46;
+}
+
+/* ============================= */
+/* Superscript / Subscript */
+/* ============================= */
+
+.markdown sup,
+.markdown sub {
+    font-size: 0.75em;
+}
+
+/* ============================= */
+/* Details / Summary */
+/* ============================= */
+
+.markdown details {
+    background: #18181b;
+    border: 1px solid #27272a;
+    padding: 0.8em;
+    border-radius: 8px;
+    margin: 1em 0;
+}
+
+.markdown summary {
+    cursor: pointer;
+    font-weight: 600;
+    color: #34d399;
+}
+
+/* ============================= */
+/* Footnotes */
+/* ============================= */
+
+.markdown .footnotes {
+    margin-top: 2em;
+    font-size: 0.85rem;
+    color: #a1a1aa;
+    border-top: 1px solid #27272a;
+    padding-top: 1em;
+}
+
+/* ============================= */
+/* Selection */
+/* ============================= */
+
+.markdown ::selection {
+    background: #065f46;
+    color: #ffffff;
 }

+ 9 - 0
RackPeek.Web/wwwroot/console.js

@@ -6,3 +6,12 @@ window.consoleHasSelection = () => {
     const sel = window.getSelection();
     return sel && sel.toString().length > 0;
 };
+
+window.scrollToAnchor = (anchor) => {
+    if (!anchor) return;
+
+    const el = document.getElementById(anchor);
+    if (el) {
+        el.scrollIntoView({ behavior: "smooth", block: "start" });
+    }
+};

+ 122 - 0
Shared.Rcl/Components/DocsPage.razor

@@ -0,0 +1,122 @@
+@page "/docs/{Page}"
+
+@using Markdig
+@inject HttpClient Http
+@inject NavigationManager Nav
+@inject IJSRuntime JS
+@implements IDisposable
+
+<PageTitle>Docs: @Page</PageTitle>
+
+<div class="min-h-screen bg-zinc-950 text-zinc-200 font-mono p-6 space-y-6">
+
+    <!-- Header -->
+    <div class="space-y-2">
+        <h1 class="text-lg text-zinc-100">
+            Docs:
+            <span class="text-emerald-400">@Page</span>
+        </h1>
+    </div>
+
+    @if (_isLoading)
+    {
+        <div class="text-zinc-500">loading documentation…</div>
+    }
+    else if (_notFound)
+    {
+        <div class="text-zinc-500">document not found</div>
+    }
+    else
+    {
+        <div class="markdown">
+            @((MarkupString)_htmlContent!)
+        </div>
+    }
+
+</div>
+
+@code {
+
+    [Parameter]
+    public string Page { get; set; } = string.Empty;
+
+    private string? _htmlContent;
+    private bool _isLoading = true;
+    private bool _notFound;
+
+    private static readonly MarkdownPipeline Pipeline =
+        new MarkdownPipelineBuilder()
+            .UseAdvancedExtensions()
+            .UseAutoIdentifiers()
+            .Build();
+
+    private bool _pendingScroll;
+
+    protected override void OnInitialized()
+    {
+        Nav.LocationChanged += HandleLocationChanged;
+    }
+
+    private void HandleLocationChanged(object? sender, LocationChangedEventArgs e)
+    {
+        // Trigger re-render so OnAfterRenderAsync runs again
+        _pendingScroll = true;
+        InvokeAsync(StateHasChanged);
+    }
+
+    protected override async Task OnParametersSetAsync()
+    {
+        _isLoading = true;
+        _notFound = false;
+        _pendingScroll = true;
+
+        try
+        {
+            var decoded = Uri.UnescapeDataString(Page);
+
+            if (!decoded.EndsWith(".md", StringComparison.OrdinalIgnoreCase))
+                decoded += ".md";
+
+            var url = $"_content/Shared.Rcl/raw_docs/{decoded}";
+
+            var markdown = await Http.GetStringAsync(url);
+
+            _htmlContent = Markdown.ToHtml(markdown, Pipeline);
+        }
+        catch
+        {
+            _notFound = true;
+            _htmlContent = null;
+        }
+        finally
+        {
+            _isLoading = false;
+        }
+    }
+
+    protected override async Task OnAfterRenderAsync(bool firstRender)
+    {
+        if (_pendingScroll && !_isLoading && !_notFound)
+        {
+            _pendingScroll = false;
+            await ScrollToFragmentAsync();
+        }
+    }
+
+    private async Task ScrollToFragmentAsync()
+    {
+        var uri = new Uri(Nav.Uri);
+        var fragment = uri.Fragment;
+
+        if (!string.IsNullOrWhiteSpace(fragment))
+        {
+            var anchor = fragment.TrimStart('#');
+            await JS.InvokeVoidAsync("scrollToAnchor", anchor);
+        }
+    }
+
+    public void Dispose()
+    {
+        Nav.LocationChanged -= HandleLocationChanged;
+    }
+}

+ 4 - 0
Shared.Rcl/Layout/MainLayout.razor

@@ -34,6 +34,10 @@
             <NavLink href="services/list" class="hover:text-emerald-400" activeClass="text-emerald-400 font-semibold">
                 Services
             </NavLink>
+            <NavLink href="docs/CommandIndex" class="hover:text-emerald-400" activeClass="text-emerald-400 font-semibold">
+                Docs
+            </NavLink>
+            
         </nav>
     </header>
 

+ 2 - 0
Shared.Rcl/Shared.Rcl.csproj

@@ -87,5 +87,7 @@
     <ItemGroup>
       <Folder Include="Pages\" />
     </ItemGroup>
+    
+
 
 </Project>

+ 142 - 0
Shared.Rcl/wwwroot/raw_docs/CommandIndex.md

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

+ 2309 - 0
Shared.Rcl/wwwroot/raw_docs/Commands.md

@@ -0,0 +1,2309 @@
+# CLI Commands
+
+## `rpk`
+```
+USAGE:
+    rpk [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help       Prints help information   
+    -v, --version    Prints version information
+
+COMMANDS:
+    summary         Show a summarized report of all resources in   
+                    the system                                     
+    servers         Manage servers and their components            
+    switches        Manage network switches                        
+    routers         Manage network routers                         
+    firewalls       Manage firewalls                               
+    systems         Manage systems and their dependencies          
+    accesspoints    Manage access points                           
+    ups             Manage UPS units                               
+    desktops        Manage desktop computers and their components  
+    Laptops         Manage Laptop computers and their components   
+    services        Manage services and their configurations       
+```
+
+## `rpk summary`
+```
+DESCRIPTION:
+Show a summarized report of all resources in the system
+
+USAGE:
+    rpk summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers`
+```
+DESCRIPTION:
+Manage servers and their components
+
+USAGE:
+    rpk servers [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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`
+```
+DESCRIPTION:
+Show a summarized hardware report for all servers
+
+USAGE:
+    rpk servers summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers add`
+```
+DESCRIPTION:
+Add a new server to the inventory
+
+USAGE:
+    rpk servers add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers get`
+```
+DESCRIPTION:
+List all servers or retrieve a specific server by name
+
+USAGE:
+    rpk servers get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers describe`
+```
+DESCRIPTION:
+Display detailed information about a specific server
+
+USAGE:
+    rpk servers describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers set`
+```
+DESCRIPTION:
+Update properties of an existing server
+
+USAGE:
+    rpk servers set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --ram <GB>                                
+        --ram_mts <MTS>                           
+        --ipmi                                    
+```
+
+## `rpk servers del`
+```
+DESCRIPTION:
+Delete a server from the inventory
+
+USAGE:
+    rpk servers del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers tree`
+```
+DESCRIPTION:
+Display the dependency tree of a server
+
+USAGE:
+    rpk servers tree <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers cpu`
+```
+DESCRIPTION:
+Manage CPUs attached to a server
+
+USAGE:
+    rpk servers cpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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 specific server
+
+USAGE:
+    rpk servers cpu add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help                 Prints help information
+        --model <MODEL>                               
+        --cores <CORES>                               
+        --threads <THREADS>                           
+```
+
+## `rpk servers cpu set`
+```
+DESCRIPTION:
+Update configuration of a server CPU
+
+USAGE:
+    rpk servers cpu set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help                 Prints help information
+        --index <INDEX>                               
+        --model <MODEL>                               
+        --cores <CORES>                               
+        --threads <THREADS>                           
+```
+
+## `rpk servers cpu del`
+```
+DESCRIPTION:
+Remove a CPU from a server
+
+USAGE:
+    rpk servers cpu del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk servers drive`
+```
+DESCRIPTION:
+Manage drives attached to a server
+
+USAGE:
+    rpk servers drive [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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 storage drive to a server
+
+USAGE:
+    rpk servers drive add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help           Prints help information
+        --type <TYPE>                           
+        --size <SIZE>                           
+```
+
+## `rpk servers drive set`
+```
+DESCRIPTION:
+Update properties of a server drive
+
+USAGE:
+    rpk servers drive set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --type <TYPE>                             
+        --size <SIZE>                             
+```
+
+## `rpk servers drive del`
+```
+DESCRIPTION:
+Remove a drive from a server
+
+USAGE:
+    rpk servers drive del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk servers gpu`
+```
+DESCRIPTION:
+Manage GPUs attached to a server
+
+USAGE:
+    rpk servers gpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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`
+```
+DESCRIPTION:
+Add a GPU to a server
+
+USAGE:
+    rpk servers gpu add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --model <MODEL>                           
+        --vram <VRAM>                             
+```
+
+## `rpk servers gpu set`
+```
+DESCRIPTION:
+Update properties of a server GPU
+
+USAGE:
+    rpk servers gpu set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --model <MODEL>                           
+        --vram <VRAM>                             
+```
+
+## `rpk servers gpu del`
+```
+DESCRIPTION:
+Remove a GPU from a server
+
+USAGE:
+    rpk servers gpu del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk servers nic`
+```
+DESCRIPTION:
+Manage network interface cards (NICs) for a server
+
+USAGE:
+    rpk servers nic [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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`
+```
+DESCRIPTION:
+Add a NIC to a server
+
+USAGE:
+    rpk servers nic add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --type <TYPE>                             
+        --speed <SPEED>                           
+        --ports <PORTS>                           
+```
+
+## `rpk servers nic set`
+```
+DESCRIPTION:
+Update properties of a server NIC
+
+USAGE:
+    rpk servers nic set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --type <TYPE>                             
+        --speed <SPEED>                           
+        --ports <PORTS>                           
+```
+
+## `rpk servers nic del`
+```
+DESCRIPTION:
+Remove a NIC from a server
+
+USAGE:
+    rpk servers nic del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk switches`
+```
+DESCRIPTION:
+Manage network switches
+
+USAGE:
+    rpk switches [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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          
+    port               Manage ports on a network switch            
+```
+
+## `rpk switches summary`
+```
+DESCRIPTION:
+Show a hardware report for all switches
+
+USAGE:
+    rpk switches summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches add`
+```
+DESCRIPTION:
+Add a new network switch to the inventory
+
+USAGE:
+    rpk switches add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches list`
+```
+DESCRIPTION:
+List all switches in the system
+
+USAGE:
+    rpk switches list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches get`
+```
+DESCRIPTION:
+Retrieve details of a specific switch by name
+
+USAGE:
+    rpk switches get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches describe`
+```
+DESCRIPTION:
+Show detailed information about a switch
+
+USAGE:
+    rpk switches describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches set`
+```
+DESCRIPTION:
+Update properties of a switch
+
+USAGE:
+    rpk switches set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help       Prints help information
+        --Model                             
+        --managed                           
+        --poe                               
+```
+
+## `rpk switches del`
+```
+DESCRIPTION:
+Delete a switch from the inventory
+
+USAGE:
+    rpk switches del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches port`
+```
+DESCRIPTION:
+Manage ports on a network switch
+
+USAGE:
+    rpk switches port [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <name>    Add a port to a switch     
+    set <name>    Update a switch port       
+    del <name>    Remove a port from a switch
+```
+
+## `rpk switches port add`
+```
+DESCRIPTION:
+Add a port to a switch
+
+USAGE:
+    rpk switches port add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information          
+        --type     The port type (e.g., rj45, sfp+) 
+        --speed    The port speed (e.g., 1, 2.5, 10)
+        --count    Number of ports of this type     
+```
+
+## `rpk switches port set`
+```
+DESCRIPTION:
+Update a switch port
+
+USAGE:
+    rpk switches port set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --type                                    
+        --speed                                   
+        --count                                   
+```
+
+## `rpk switches port del`
+```
+DESCRIPTION:
+Remove a port from a switch
+
+USAGE:
+    rpk switches port del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk routers`
+```
+DESCRIPTION:
+Manage network routers
+
+USAGE:
+    rpk routers [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    summary            Show a hardware report for all routers      
+    add <name>         Add a new network router to the inventory   
+    list               List all routers in the system              
+    get <name>         Retrieve details of a specific router by    
+                       name                                        
+    describe <name>    Show detailed information about a router    
+    set <name>         Update properties of a router               
+    del <name>         Delete a router from the inventory          
+    port               Manage ports on a router                    
+```
+
+## `rpk routers summary`
+```
+DESCRIPTION:
+Show a hardware report for all routers
+
+USAGE:
+    rpk routers summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers add`
+```
+DESCRIPTION:
+Add a new network router to the inventory
+
+USAGE:
+    rpk routers add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers list`
+```
+DESCRIPTION:
+List all routers in the system
+
+USAGE:
+    rpk routers list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers get`
+```
+DESCRIPTION:
+Retrieve details of a specific router by name
+
+USAGE:
+    rpk routers get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers describe`
+```
+DESCRIPTION:
+Show detailed information about a router
+
+USAGE:
+    rpk routers describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers set`
+```
+DESCRIPTION:
+Update properties of a router
+
+USAGE:
+    rpk routers set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help       Prints help information
+        --Model                             
+        --managed                           
+        --poe                               
+```
+
+## `rpk routers del`
+```
+DESCRIPTION:
+Delete a router from the inventory
+
+USAGE:
+    rpk routers del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers port`
+```
+DESCRIPTION:
+Manage ports on a router
+
+USAGE:
+    rpk routers port [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <name>    Add a port to a router     
+    set <name>    Update a router port       
+    del <name>    Remove a port from a router
+```
+
+## `rpk routers port add`
+```
+DESCRIPTION:
+Add a port to a router
+
+USAGE:
+    rpk routers port add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information
+        --type                            
+        --speed                           
+        --count                           
+```
+
+## `rpk routers port set`
+```
+DESCRIPTION:
+Update a router port
+
+USAGE:
+    rpk routers port set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --type                                    
+        --speed                                   
+        --count                                   
+```
+
+## `rpk routers port del`
+```
+DESCRIPTION:
+Remove a port from a router
+
+USAGE:
+    rpk routers port del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk firewalls`
+```
+DESCRIPTION:
+Manage firewalls
+
+USAGE:
+    rpk firewalls [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    summary            Show a hardware report for all firewalls    
+    add <name>         Add a new firewall to the inventory         
+    list               List all firewalls in the system            
+    get <name>         Retrieve details of a specific firewall by  
+                       name                                        
+    describe <name>    Show detailed information about a firewall  
+    set <name>         Update properties of a firewall             
+    del <name>         Delete a firewall from the inventory        
+    port               Manage ports on a firewall                  
+```
+
+## `rpk firewalls summary`
+```
+DESCRIPTION:
+Show a hardware report for all firewalls
+
+USAGE:
+    rpk firewalls summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls add`
+```
+DESCRIPTION:
+Add a new firewall to the inventory
+
+USAGE:
+    rpk firewalls add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls list`
+```
+DESCRIPTION:
+List all firewalls in the system
+
+USAGE:
+    rpk firewalls list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls get`
+```
+DESCRIPTION:
+Retrieve details of a specific firewall by name
+
+USAGE:
+    rpk firewalls get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls describe`
+```
+DESCRIPTION:
+Show detailed information about a firewall
+
+USAGE:
+    rpk firewalls describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls set`
+```
+DESCRIPTION:
+Update properties of a firewall
+
+USAGE:
+    rpk firewalls set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help       Prints help information
+        --Model                             
+        --managed                           
+        --poe                               
+```
+
+## `rpk firewalls del`
+```
+DESCRIPTION:
+Delete a firewall from the inventory
+
+USAGE:
+    rpk firewalls del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls port`
+```
+DESCRIPTION:
+Manage ports on a firewall
+
+USAGE:
+    rpk firewalls port [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <name>    Add a port to a firewall     
+    set <name>    Update a firewall port       
+    del <name>    Remove a port from a firewall
+```
+
+## `rpk firewalls port add`
+```
+DESCRIPTION:
+Add a port to a firewall
+
+USAGE:
+    rpk firewalls port add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information
+        --type                            
+        --speed                           
+        --count                           
+```
+
+## `rpk firewalls port set`
+```
+DESCRIPTION:
+Update a firewall port
+
+USAGE:
+    rpk firewalls port set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --type                                    
+        --speed                                   
+        --count                                   
+```
+
+## `rpk firewalls port del`
+```
+DESCRIPTION:
+Remove a port from a firewall
+
+USAGE:
+    rpk firewalls port del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk systems`
+```
+DESCRIPTION:
+Manage systems and their dependencies
+
+USAGE:
+    rpk systems [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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 a summary report for all systems
+
+USAGE:
+    rpk systems summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems add`
+```
+DESCRIPTION:
+Add a new system to the inventory
+
+USAGE:
+    rpk systems add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems list`
+```
+DESCRIPTION:
+List all systems
+
+USAGE:
+    rpk systems list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems get`
+```
+DESCRIPTION:
+Retrieve a system by name
+
+USAGE:
+    rpk systems get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the system
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems describe`
+```
+DESCRIPTION:
+Display detailed information about a system
+
+USAGE:
+    rpk systems describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the system
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems set`
+```
+DESCRIPTION:
+Update properties of a system
+
+USAGE:
+    rpk systems set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help       Prints help information
+        --type                              
+        --os                                
+        --cores                             
+        --ram                               
+        --runs-on                           
+```
+
+## `rpk systems del`
+```
+DESCRIPTION:
+Delete a system from the inventory
+
+USAGE:
+    rpk systems del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the system
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems tree`
+```
+DESCRIPTION:
+Display the dependency tree for a system
+
+USAGE:
+    rpk systems tree <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the system
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints`
+```
+DESCRIPTION:
+Manage access points
+
+USAGE:
+    rpk accesspoints [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    summary            Show a hardware report for all access points
+    add <name>         Add a new access point                      
+    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 properties of an access point        
+    del <name>         Delete an access point                      
+```
+
+## `rpk accesspoints summary`
+```
+DESCRIPTION:
+Show a hardware report for all access points
+
+USAGE:
+    rpk accesspoints summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints add`
+```
+DESCRIPTION:
+Add a new access point
+
+USAGE:
+    rpk accesspoints add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The access point name
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints list`
+```
+DESCRIPTION:
+List all access points
+
+USAGE:
+    rpk accesspoints list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints get`
+```
+DESCRIPTION:
+Retrieve an access point by name
+
+USAGE:
+    rpk accesspoints get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The access point name
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints describe`
+```
+DESCRIPTION:
+Show detailed information about an access point
+
+USAGE:
+    rpk accesspoints describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The access point name
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints set`
+```
+DESCRIPTION:
+Update properties of an access point
+
+USAGE:
+    rpk accesspoints set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information            
+        --model    The access point model name        
+        --speed    The speed of the access point in Gb
+```
+
+## `rpk accesspoints del`
+```
+DESCRIPTION:
+Delete an access point
+
+USAGE:
+    rpk accesspoints del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The access point name
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups`
+```
+DESCRIPTION:
+Manage UPS units
+
+USAGE:
+    rpk ups [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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 a hardware report for all UPS units
+
+USAGE:
+    rpk ups summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups add`
+```
+DESCRIPTION:
+Add a new UPS unit
+
+USAGE:
+    rpk ups add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups list`
+```
+DESCRIPTION:
+List all UPS units
+
+USAGE:
+    rpk ups list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups get`
+```
+DESCRIPTION:
+Retrieve a UPS unit by name
+
+USAGE:
+    rpk ups get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups describe`
+```
+DESCRIPTION:
+Show detailed information about a UPS unit
+
+USAGE:
+    rpk ups describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups set`
+```
+DESCRIPTION:
+Update properties of a UPS unit
+
+USAGE:
+    rpk ups set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information
+        --model                           
+        --va                              
+```
+
+## `rpk ups del`
+```
+DESCRIPTION:
+Delete a UPS unit
+
+USAGE:
+    rpk ups del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops`
+```
+DESCRIPTION:
+Manage desktop computers and their components
+
+USAGE:
+    rpk desktops [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops list`
+```
+DESCRIPTION:
+List all desktops
+
+USAGE:
+    rpk desktops list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops get`
+```
+DESCRIPTION:
+Retrieve a desktop by name
+
+USAGE:
+    rpk desktops get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops describe`
+```
+DESCRIPTION:
+Show detailed information about a desktop
+
+USAGE:
+    rpk desktops describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops set`
+```
+DESCRIPTION:
+Update properties of a desktop
+
+USAGE:
+    rpk desktops set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information
+        --model                           
+```
+
+## `rpk desktops del`
+```
+DESCRIPTION:
+Delete a desktop from the inventory
+
+USAGE:
+    rpk desktops del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops summary`
+```
+DESCRIPTION:
+Show a summarized hardware report for all desktops
+
+USAGE:
+    rpk desktops summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops tree`
+```
+DESCRIPTION:
+Display the dependency tree for a desktop
+
+USAGE:
+    rpk desktops tree <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops cpu`
+```
+DESCRIPTION:
+Manage CPUs attached to desktops
+
+USAGE:
+    rpk desktops cpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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]
+
+ARGUMENTS:
+    <desktop>    The desktop name
+
+OPTIONS:
+    -h, --help       Prints help information  
+        --model      The model name           
+        --cores      The number of cpu cores  
+        --threads    The number of cpu threads
+```
+
+## `rpk desktops cpu set`
+```
+DESCRIPTION:
+Update a desktop CPU
+
+USAGE:
+    rpk desktops cpu set <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name            
+    <index>      The index of the desktop cpu
+
+OPTIONS:
+    -h, --help       Prints help information  
+        --model      The cpu model            
+        --cores      The number of cpu cores  
+        --threads    The number of cpu threads
+```
+
+## `rpk desktops cpu del`
+```
+DESCRIPTION:
+Remove a CPU from a desktop
+
+USAGE:
+    rpk desktops cpu del <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The name of the desktop               
+    <index>      The index of the desktop cpu to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops drive`
+```
+DESCRIPTION:
+Manage storage drives attached to desktops
+
+USAGE:
+    rpk desktops drive [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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]
+
+ARGUMENTS:
+    <desktop>    The name of the desktop
+
+OPTIONS:
+    -h, --help    Prints help information     
+        --type    The drive type e.g hdd / ssd
+        --size    The drive capacity in Gb    
+```
+
+## `rpk desktops drive set`
+```
+DESCRIPTION:
+Update a desktop drive
+
+USAGE:
+    rpk desktops drive set <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name         
+    <index>      The drive index to update
+
+OPTIONS:
+    -h, --help    Prints help information     
+        --type    The drive type e.g hdd / ssd
+        --size    The drive capacity in Gb    
+```
+
+## `rpk desktops drive del`
+```
+DESCRIPTION:
+Remove a drive from a desktop
+
+USAGE:
+    rpk desktops drive del <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The name of the desktop         
+    <index>      The index of the drive to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops gpu`
+```
+DESCRIPTION:
+Manage GPUs attached to desktops
+
+USAGE:
+    rpk desktops gpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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]
+
+ARGUMENTS:
+    <desktop>    The name of the desktop
+
+OPTIONS:
+    -h, --help     Prints help information     
+        --model    The Gpu model               
+        --vram     The amount of gpu vram in Gb
+```
+
+## `rpk desktops gpu set`
+```
+DESCRIPTION:
+Update a desktop GPU
+
+USAGE:
+    rpk desktops gpu set <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name              
+    <index>      The index of the gpu to update
+
+OPTIONS:
+    -h, --help     Prints help information     
+        --model    The gpu model name          
+        --vram     The amount of gpu vram in Gb
+```
+
+## `rpk desktops gpu del`
+```
+DESCRIPTION:
+Remove a GPU from a desktop
+
+USAGE:
+    rpk desktops gpu del <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name              
+    <index>      The index of the Gpu to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops nic`
+```
+DESCRIPTION:
+Manage network interface cards (NICs) for desktops
+
+USAGE:
+    rpk desktops nic [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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]
+
+ARGUMENTS:
+    <desktop>    The desktop name
+
+OPTIONS:
+    -h, --help     Prints help information          
+        --type     The nic port type e.g rj45 / sfp+
+        --speed    The port speed                   
+        --ports    The number of ports              
+```
+
+## `rpk desktops nic set`
+```
+DESCRIPTION:
+Update a desktop NIC
+
+USAGE:
+    rpk desktops nic set <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name              
+    <index>      The index of the nic to remove
+
+OPTIONS:
+    -h, --help     Prints help information          
+        --type     The nic port type e.g rj45 / sfp+
+        --speed    The speed of the nic in Gb/s     
+        --ports    The number of ports              
+```
+
+## `rpk desktops nic del`
+```
+DESCRIPTION:
+Remove a NIC from a desktop
+
+USAGE:
+    rpk desktops nic del <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name              
+    <index>      The index of the nic to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops`
+```
+DESCRIPTION:
+Manage Laptop computers and their components
+
+USAGE:
+    rpk Laptops [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <name>         Add a new Laptop                            
+    list               List all Laptops                            
+    get <name>         Retrieve a Laptop by name                   
+    describe <name>    Show detailed information about a Laptop    
+    del <name>         Delete a Laptop from the inventory          
+    summary            Show a summarized hardware report for all   
+                       Laptops                                     
+    tree <name>        Display the dependency tree for a Laptop    
+    cpu                Manage CPUs attached to Laptops             
+    drive              Manage storage drives attached to Laptops   
+    gpu                Manage GPUs attached to Laptops             
+```
+
+## `rpk Laptops add`
+```
+DESCRIPTION:
+Add a new Laptop
+
+USAGE:
+    rpk Laptops add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops list`
+```
+DESCRIPTION:
+List all Laptops
+
+USAGE:
+    rpk Laptops list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops get`
+```
+DESCRIPTION:
+Retrieve a Laptop by name
+
+USAGE:
+    rpk Laptops get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops describe`
+```
+DESCRIPTION:
+Show detailed information about a Laptop
+
+USAGE:
+    rpk Laptops describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops del`
+```
+DESCRIPTION:
+Delete a Laptop from the inventory
+
+USAGE:
+    rpk Laptops del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops summary`
+```
+DESCRIPTION:
+Show a summarized hardware report for all Laptops
+
+USAGE:
+    rpk Laptops summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops tree`
+```
+DESCRIPTION:
+Display the dependency tree for a Laptop
+
+USAGE:
+    rpk Laptops tree <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops cpu`
+```
+DESCRIPTION:
+Manage CPUs attached to Laptops
+
+USAGE:
+    rpk Laptops cpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <Laptop>            Add a CPU to a Laptop     
+    set <Laptop> <index>    Update a Laptop CPU       
+    del <Laptop> <index>    Remove a CPU from a Laptop
+```
+
+## `rpk Laptops cpu add`
+```
+DESCRIPTION:
+Add a CPU to a Laptop
+
+USAGE:
+    rpk Laptops cpu add <Laptop> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The Laptop name
+
+OPTIONS:
+    -h, --help       Prints help information  
+        --model      The model name           
+        --cores      The number of cpu cores  
+        --threads    The number of cpu threads
+```
+
+## `rpk Laptops cpu set`
+```
+DESCRIPTION:
+Update a Laptop CPU
+
+USAGE:
+    rpk Laptops cpu set <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The Laptop name            
+    <index>     The index of the Laptop cpu
+
+OPTIONS:
+    -h, --help       Prints help information  
+        --model      The cpu model            
+        --cores      The number of cpu cores  
+        --threads    The number of cpu threads
+```
+
+## `rpk Laptops cpu del`
+```
+DESCRIPTION:
+Remove a CPU from a Laptop
+
+USAGE:
+    rpk Laptops cpu del <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The name of the Laptop               
+    <index>     The index of the Laptop cpu to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops drive`
+```
+DESCRIPTION:
+Manage storage drives attached to Laptops
+
+USAGE:
+    rpk Laptops drive [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <Laptop>            Add a drive to a Laptop     
+    set <Laptop> <index>    Update a Laptop drive       
+    del <Laptop> <index>    Remove a drive from a Laptop
+```
+
+## `rpk Laptops drive add`
+```
+DESCRIPTION:
+Add a drive to a Laptop
+
+USAGE:
+    rpk Laptops drive add <Laptop> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The name of the Laptop
+
+OPTIONS:
+    -h, --help    Prints help information     
+        --type    The drive type e.g hdd / ssd
+        --size    The drive capacity in Gb    
+```
+
+## `rpk Laptops drive set`
+```
+DESCRIPTION:
+Update a Laptop drive
+
+USAGE:
+    rpk Laptops drive set <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The Laptop name          
+    <index>     The drive index to update
+
+OPTIONS:
+    -h, --help    Prints help information     
+        --type    The drive type e.g hdd / ssd
+        --size    The drive capacity in Gb    
+```
+
+## `rpk Laptops drive del`
+```
+DESCRIPTION:
+Remove a drive from a Laptop
+
+USAGE:
+    rpk Laptops drive del <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The name of the Laptop          
+    <index>     The index of the drive to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops gpu`
+```
+DESCRIPTION:
+Manage GPUs attached to Laptops
+
+USAGE:
+    rpk Laptops gpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <Laptop>            Add a GPU to a Laptop     
+    set <Laptop> <index>    Update a Laptop GPU       
+    del <Laptop> <index>    Remove a GPU from a Laptop
+```
+
+## `rpk Laptops gpu add`
+```
+DESCRIPTION:
+Add a GPU to a Laptop
+
+USAGE:
+    rpk Laptops gpu add <Laptop> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The name of the Laptop
+
+OPTIONS:
+    -h, --help     Prints help information     
+        --model    The Gpu model               
+        --vram     The amount of gpu vram in Gb
+```
+
+## `rpk Laptops gpu set`
+```
+DESCRIPTION:
+Update a Laptop GPU
+
+USAGE:
+    rpk Laptops gpu set <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The Laptop name               
+    <index>     The index of the gpu to update
+
+OPTIONS:
+    -h, --help     Prints help information     
+        --model    The gpu model name          
+        --vram     The amount of gpu vram in Gb
+```
+
+## `rpk Laptops gpu del`
+```
+DESCRIPTION:
+Remove a GPU from a Laptop
+
+USAGE:
+    rpk Laptops gpu del <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The Laptop name               
+    <index>     The index of the Gpu to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services`
+```
+DESCRIPTION:
+Manage services and their configurations
+
+USAGE:
+    rpk services [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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 a summary report for all services
+
+USAGE:
+    rpk services summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services add`
+```
+DESCRIPTION:
+Add a new service
+
+USAGE:
+    rpk services add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the service
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services list`
+```
+DESCRIPTION:
+List all services
+
+USAGE:
+    rpk services list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services get`
+```
+DESCRIPTION:
+Retrieve a service by name
+
+USAGE:
+    rpk services get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the service
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services describe`
+```
+DESCRIPTION:
+Show detailed information about a service
+
+USAGE:
+    rpk services describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the service
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services set`
+```
+DESCRIPTION:
+Update properties of a service
+
+USAGE:
+    rpk services set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help        Prints help information             
+        --ip          The ip address of the service       
+        --port        The port the service is running on  
+        --protocol    The service protocol                
+        --url         The service URL                     
+        --runs-on     The system the service is running on
+```
+
+## `rpk services del`
+```
+DESCRIPTION:
+Delete a service
+
+USAGE:
+    rpk services del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the service
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services subnets`
+```
+DESCRIPTION:
+List subnets associated with a service, optionally filtered by CIDR
+
+USAGE:
+    rpk services subnets [OPTIONS]
+
+OPTIONS:
+    -h, --help               Prints help information
+        --cidr <CIDR>                               
+        --prefix <PREFIX>                           
+```
+

+ 0 - 0
CommandIndex.md → docs/CommandIndex.md


+ 2309 - 0
docs/Commands.md

@@ -0,0 +1,2309 @@
+# CLI Commands
+
+## `rpk`
+```
+USAGE:
+    rpk [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help       Prints help information   
+    -v, --version    Prints version information
+
+COMMANDS:
+    summary         Show a summarized report of all resources in   
+                    the system                                     
+    servers         Manage servers and their components            
+    switches        Manage network switches                        
+    routers         Manage network routers                         
+    firewalls       Manage firewalls                               
+    systems         Manage systems and their dependencies          
+    accesspoints    Manage access points                           
+    ups             Manage UPS units                               
+    desktops        Manage desktop computers and their components  
+    Laptops         Manage Laptop computers and their components   
+    services        Manage services and their configurations       
+```
+
+## `rpk summary`
+```
+DESCRIPTION:
+Show a summarized report of all resources in the system
+
+USAGE:
+    rpk summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers`
+```
+DESCRIPTION:
+Manage servers and their components
+
+USAGE:
+    rpk servers [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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`
+```
+DESCRIPTION:
+Show a summarized hardware report for all servers
+
+USAGE:
+    rpk servers summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers add`
+```
+DESCRIPTION:
+Add a new server to the inventory
+
+USAGE:
+    rpk servers add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers get`
+```
+DESCRIPTION:
+List all servers or retrieve a specific server by name
+
+USAGE:
+    rpk servers get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers describe`
+```
+DESCRIPTION:
+Display detailed information about a specific server
+
+USAGE:
+    rpk servers describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers set`
+```
+DESCRIPTION:
+Update properties of an existing server
+
+USAGE:
+    rpk servers set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --ram <GB>                                
+        --ram_mts <MTS>                           
+        --ipmi                                    
+```
+
+## `rpk servers del`
+```
+DESCRIPTION:
+Delete a server from the inventory
+
+USAGE:
+    rpk servers del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers tree`
+```
+DESCRIPTION:
+Display the dependency tree of a server
+
+USAGE:
+    rpk servers tree <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk servers cpu`
+```
+DESCRIPTION:
+Manage CPUs attached to a server
+
+USAGE:
+    rpk servers cpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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 specific server
+
+USAGE:
+    rpk servers cpu add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help                 Prints help information
+        --model <MODEL>                               
+        --cores <CORES>                               
+        --threads <THREADS>                           
+```
+
+## `rpk servers cpu set`
+```
+DESCRIPTION:
+Update configuration of a server CPU
+
+USAGE:
+    rpk servers cpu set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help                 Prints help information
+        --index <INDEX>                               
+        --model <MODEL>                               
+        --cores <CORES>                               
+        --threads <THREADS>                           
+```
+
+## `rpk servers cpu del`
+```
+DESCRIPTION:
+Remove a CPU from a server
+
+USAGE:
+    rpk servers cpu del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk servers drive`
+```
+DESCRIPTION:
+Manage drives attached to a server
+
+USAGE:
+    rpk servers drive [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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 storage drive to a server
+
+USAGE:
+    rpk servers drive add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help           Prints help information
+        --type <TYPE>                           
+        --size <SIZE>                           
+```
+
+## `rpk servers drive set`
+```
+DESCRIPTION:
+Update properties of a server drive
+
+USAGE:
+    rpk servers drive set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --type <TYPE>                             
+        --size <SIZE>                             
+```
+
+## `rpk servers drive del`
+```
+DESCRIPTION:
+Remove a drive from a server
+
+USAGE:
+    rpk servers drive del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk servers gpu`
+```
+DESCRIPTION:
+Manage GPUs attached to a server
+
+USAGE:
+    rpk servers gpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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`
+```
+DESCRIPTION:
+Add a GPU to a server
+
+USAGE:
+    rpk servers gpu add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --model <MODEL>                           
+        --vram <VRAM>                             
+```
+
+## `rpk servers gpu set`
+```
+DESCRIPTION:
+Update properties of a server GPU
+
+USAGE:
+    rpk servers gpu set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --model <MODEL>                           
+        --vram <VRAM>                             
+```
+
+## `rpk servers gpu del`
+```
+DESCRIPTION:
+Remove a GPU from a server
+
+USAGE:
+    rpk servers gpu del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk servers nic`
+```
+DESCRIPTION:
+Manage network interface cards (NICs) for a server
+
+USAGE:
+    rpk servers nic [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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`
+```
+DESCRIPTION:
+Add a NIC to a server
+
+USAGE:
+    rpk servers nic add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --type <TYPE>                             
+        --speed <SPEED>                           
+        --ports <PORTS>                           
+```
+
+## `rpk servers nic set`
+```
+DESCRIPTION:
+Update properties of a server NIC
+
+USAGE:
+    rpk servers nic set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --type <TYPE>                             
+        --speed <SPEED>                           
+        --ports <PORTS>                           
+```
+
+## `rpk servers nic del`
+```
+DESCRIPTION:
+Remove a NIC from a server
+
+USAGE:
+    rpk servers nic del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk switches`
+```
+DESCRIPTION:
+Manage network switches
+
+USAGE:
+    rpk switches [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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          
+    port               Manage ports on a network switch            
+```
+
+## `rpk switches summary`
+```
+DESCRIPTION:
+Show a hardware report for all switches
+
+USAGE:
+    rpk switches summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches add`
+```
+DESCRIPTION:
+Add a new network switch to the inventory
+
+USAGE:
+    rpk switches add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches list`
+```
+DESCRIPTION:
+List all switches in the system
+
+USAGE:
+    rpk switches list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches get`
+```
+DESCRIPTION:
+Retrieve details of a specific switch by name
+
+USAGE:
+    rpk switches get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches describe`
+```
+DESCRIPTION:
+Show detailed information about a switch
+
+USAGE:
+    rpk switches describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches set`
+```
+DESCRIPTION:
+Update properties of a switch
+
+USAGE:
+    rpk switches set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help       Prints help information
+        --Model                             
+        --managed                           
+        --poe                               
+```
+
+## `rpk switches del`
+```
+DESCRIPTION:
+Delete a switch from the inventory
+
+USAGE:
+    rpk switches del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk switches port`
+```
+DESCRIPTION:
+Manage ports on a network switch
+
+USAGE:
+    rpk switches port [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <name>    Add a port to a switch     
+    set <name>    Update a switch port       
+    del <name>    Remove a port from a switch
+```
+
+## `rpk switches port add`
+```
+DESCRIPTION:
+Add a port to a switch
+
+USAGE:
+    rpk switches port add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information          
+        --type     The port type (e.g., rj45, sfp+) 
+        --speed    The port speed (e.g., 1, 2.5, 10)
+        --count    Number of ports of this type     
+```
+
+## `rpk switches port set`
+```
+DESCRIPTION:
+Update a switch port
+
+USAGE:
+    rpk switches port set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --type                                    
+        --speed                                   
+        --count                                   
+```
+
+## `rpk switches port del`
+```
+DESCRIPTION:
+Remove a port from a switch
+
+USAGE:
+    rpk switches port del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk routers`
+```
+DESCRIPTION:
+Manage network routers
+
+USAGE:
+    rpk routers [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    summary            Show a hardware report for all routers      
+    add <name>         Add a new network router to the inventory   
+    list               List all routers in the system              
+    get <name>         Retrieve details of a specific router by    
+                       name                                        
+    describe <name>    Show detailed information about a router    
+    set <name>         Update properties of a router               
+    del <name>         Delete a router from the inventory          
+    port               Manage ports on a router                    
+```
+
+## `rpk routers summary`
+```
+DESCRIPTION:
+Show a hardware report for all routers
+
+USAGE:
+    rpk routers summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers add`
+```
+DESCRIPTION:
+Add a new network router to the inventory
+
+USAGE:
+    rpk routers add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers list`
+```
+DESCRIPTION:
+List all routers in the system
+
+USAGE:
+    rpk routers list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers get`
+```
+DESCRIPTION:
+Retrieve details of a specific router by name
+
+USAGE:
+    rpk routers get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers describe`
+```
+DESCRIPTION:
+Show detailed information about a router
+
+USAGE:
+    rpk routers describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers set`
+```
+DESCRIPTION:
+Update properties of a router
+
+USAGE:
+    rpk routers set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help       Prints help information
+        --Model                             
+        --managed                           
+        --poe                               
+```
+
+## `rpk routers del`
+```
+DESCRIPTION:
+Delete a router from the inventory
+
+USAGE:
+    rpk routers del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk routers port`
+```
+DESCRIPTION:
+Manage ports on a router
+
+USAGE:
+    rpk routers port [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <name>    Add a port to a router     
+    set <name>    Update a router port       
+    del <name>    Remove a port from a router
+```
+
+## `rpk routers port add`
+```
+DESCRIPTION:
+Add a port to a router
+
+USAGE:
+    rpk routers port add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information
+        --type                            
+        --speed                           
+        --count                           
+```
+
+## `rpk routers port set`
+```
+DESCRIPTION:
+Update a router port
+
+USAGE:
+    rpk routers port set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --type                                    
+        --speed                                   
+        --count                                   
+```
+
+## `rpk routers port del`
+```
+DESCRIPTION:
+Remove a port from a router
+
+USAGE:
+    rpk routers port del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk firewalls`
+```
+DESCRIPTION:
+Manage firewalls
+
+USAGE:
+    rpk firewalls [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    summary            Show a hardware report for all firewalls    
+    add <name>         Add a new firewall to the inventory         
+    list               List all firewalls in the system            
+    get <name>         Retrieve details of a specific firewall by  
+                       name                                        
+    describe <name>    Show detailed information about a firewall  
+    set <name>         Update properties of a firewall             
+    del <name>         Delete a firewall from the inventory        
+    port               Manage ports on a firewall                  
+```
+
+## `rpk firewalls summary`
+```
+DESCRIPTION:
+Show a hardware report for all firewalls
+
+USAGE:
+    rpk firewalls summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls add`
+```
+DESCRIPTION:
+Add a new firewall to the inventory
+
+USAGE:
+    rpk firewalls add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls list`
+```
+DESCRIPTION:
+List all firewalls in the system
+
+USAGE:
+    rpk firewalls list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls get`
+```
+DESCRIPTION:
+Retrieve details of a specific firewall by name
+
+USAGE:
+    rpk firewalls get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls describe`
+```
+DESCRIPTION:
+Show detailed information about a firewall
+
+USAGE:
+    rpk firewalls describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls set`
+```
+DESCRIPTION:
+Update properties of a firewall
+
+USAGE:
+    rpk firewalls set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help       Prints help information
+        --Model                             
+        --managed                           
+        --poe                               
+```
+
+## `rpk firewalls del`
+```
+DESCRIPTION:
+Delete a firewall from the inventory
+
+USAGE:
+    rpk firewalls del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk firewalls port`
+```
+DESCRIPTION:
+Manage ports on a firewall
+
+USAGE:
+    rpk firewalls port [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <name>    Add a port to a firewall     
+    set <name>    Update a firewall port       
+    del <name>    Remove a port from a firewall
+```
+
+## `rpk firewalls port add`
+```
+DESCRIPTION:
+Add a port to a firewall
+
+USAGE:
+    rpk firewalls port add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information
+        --type                            
+        --speed                           
+        --count                           
+```
+
+## `rpk firewalls port set`
+```
+DESCRIPTION:
+Update a firewall port
+
+USAGE:
+    rpk firewalls port set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+        --type                                    
+        --speed                                   
+        --count                                   
+```
+
+## `rpk firewalls port del`
+```
+DESCRIPTION:
+Remove a port from a firewall
+
+USAGE:
+    rpk firewalls port del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help             Prints help information
+        --index <INDEX>                           
+```
+
+## `rpk systems`
+```
+DESCRIPTION:
+Manage systems and their dependencies
+
+USAGE:
+    rpk systems [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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 a summary report for all systems
+
+USAGE:
+    rpk systems summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems add`
+```
+DESCRIPTION:
+Add a new system to the inventory
+
+USAGE:
+    rpk systems add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems list`
+```
+DESCRIPTION:
+List all systems
+
+USAGE:
+    rpk systems list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems get`
+```
+DESCRIPTION:
+Retrieve a system by name
+
+USAGE:
+    rpk systems get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the system
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems describe`
+```
+DESCRIPTION:
+Display detailed information about a system
+
+USAGE:
+    rpk systems describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the system
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems set`
+```
+DESCRIPTION:
+Update properties of a system
+
+USAGE:
+    rpk systems set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help       Prints help information
+        --type                              
+        --os                                
+        --cores                             
+        --ram                               
+        --runs-on                           
+```
+
+## `rpk systems del`
+```
+DESCRIPTION:
+Delete a system from the inventory
+
+USAGE:
+    rpk systems del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the system
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk systems tree`
+```
+DESCRIPTION:
+Display the dependency tree for a system
+
+USAGE:
+    rpk systems tree <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the system
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints`
+```
+DESCRIPTION:
+Manage access points
+
+USAGE:
+    rpk accesspoints [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    summary            Show a hardware report for all access points
+    add <name>         Add a new access point                      
+    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 properties of an access point        
+    del <name>         Delete an access point                      
+```
+
+## `rpk accesspoints summary`
+```
+DESCRIPTION:
+Show a hardware report for all access points
+
+USAGE:
+    rpk accesspoints summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints add`
+```
+DESCRIPTION:
+Add a new access point
+
+USAGE:
+    rpk accesspoints add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The access point name
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints list`
+```
+DESCRIPTION:
+List all access points
+
+USAGE:
+    rpk accesspoints list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints get`
+```
+DESCRIPTION:
+Retrieve an access point by name
+
+USAGE:
+    rpk accesspoints get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The access point name
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints describe`
+```
+DESCRIPTION:
+Show detailed information about an access point
+
+USAGE:
+    rpk accesspoints describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The access point name
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk accesspoints set`
+```
+DESCRIPTION:
+Update properties of an access point
+
+USAGE:
+    rpk accesspoints set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information            
+        --model    The access point model name        
+        --speed    The speed of the access point in Gb
+```
+
+## `rpk accesspoints del`
+```
+DESCRIPTION:
+Delete an access point
+
+USAGE:
+    rpk accesspoints del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The access point name
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups`
+```
+DESCRIPTION:
+Manage UPS units
+
+USAGE:
+    rpk ups [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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 a hardware report for all UPS units
+
+USAGE:
+    rpk ups summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups add`
+```
+DESCRIPTION:
+Add a new UPS unit
+
+USAGE:
+    rpk ups add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups list`
+```
+DESCRIPTION:
+List all UPS units
+
+USAGE:
+    rpk ups list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups get`
+```
+DESCRIPTION:
+Retrieve a UPS unit by name
+
+USAGE:
+    rpk ups get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups describe`
+```
+DESCRIPTION:
+Show detailed information about a UPS unit
+
+USAGE:
+    rpk ups describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk ups set`
+```
+DESCRIPTION:
+Update properties of a UPS unit
+
+USAGE:
+    rpk ups set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information
+        --model                           
+        --va                              
+```
+
+## `rpk ups del`
+```
+DESCRIPTION:
+Delete a UPS unit
+
+USAGE:
+    rpk ups del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops`
+```
+DESCRIPTION:
+Manage desktop computers and their components
+
+USAGE:
+    rpk desktops [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops list`
+```
+DESCRIPTION:
+List all desktops
+
+USAGE:
+    rpk desktops list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops get`
+```
+DESCRIPTION:
+Retrieve a desktop by name
+
+USAGE:
+    rpk desktops get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops describe`
+```
+DESCRIPTION:
+Show detailed information about a desktop
+
+USAGE:
+    rpk desktops describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops set`
+```
+DESCRIPTION:
+Update properties of a desktop
+
+USAGE:
+    rpk desktops set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help     Prints help information
+        --model                           
+```
+
+## `rpk desktops del`
+```
+DESCRIPTION:
+Delete a desktop from the inventory
+
+USAGE:
+    rpk desktops del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops summary`
+```
+DESCRIPTION:
+Show a summarized hardware report for all desktops
+
+USAGE:
+    rpk desktops summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops tree`
+```
+DESCRIPTION:
+Display the dependency tree for a desktop
+
+USAGE:
+    rpk desktops tree <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops cpu`
+```
+DESCRIPTION:
+Manage CPUs attached to desktops
+
+USAGE:
+    rpk desktops cpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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]
+
+ARGUMENTS:
+    <desktop>    The desktop name
+
+OPTIONS:
+    -h, --help       Prints help information  
+        --model      The model name           
+        --cores      The number of cpu cores  
+        --threads    The number of cpu threads
+```
+
+## `rpk desktops cpu set`
+```
+DESCRIPTION:
+Update a desktop CPU
+
+USAGE:
+    rpk desktops cpu set <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name            
+    <index>      The index of the desktop cpu
+
+OPTIONS:
+    -h, --help       Prints help information  
+        --model      The cpu model            
+        --cores      The number of cpu cores  
+        --threads    The number of cpu threads
+```
+
+## `rpk desktops cpu del`
+```
+DESCRIPTION:
+Remove a CPU from a desktop
+
+USAGE:
+    rpk desktops cpu del <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The name of the desktop               
+    <index>      The index of the desktop cpu to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops drive`
+```
+DESCRIPTION:
+Manage storage drives attached to desktops
+
+USAGE:
+    rpk desktops drive [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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]
+
+ARGUMENTS:
+    <desktop>    The name of the desktop
+
+OPTIONS:
+    -h, --help    Prints help information     
+        --type    The drive type e.g hdd / ssd
+        --size    The drive capacity in Gb    
+```
+
+## `rpk desktops drive set`
+```
+DESCRIPTION:
+Update a desktop drive
+
+USAGE:
+    rpk desktops drive set <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name         
+    <index>      The drive index to update
+
+OPTIONS:
+    -h, --help    Prints help information     
+        --type    The drive type e.g hdd / ssd
+        --size    The drive capacity in Gb    
+```
+
+## `rpk desktops drive del`
+```
+DESCRIPTION:
+Remove a drive from a desktop
+
+USAGE:
+    rpk desktops drive del <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The name of the desktop         
+    <index>      The index of the drive to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops gpu`
+```
+DESCRIPTION:
+Manage GPUs attached to desktops
+
+USAGE:
+    rpk desktops gpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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]
+
+ARGUMENTS:
+    <desktop>    The name of the desktop
+
+OPTIONS:
+    -h, --help     Prints help information     
+        --model    The Gpu model               
+        --vram     The amount of gpu vram in Gb
+```
+
+## `rpk desktops gpu set`
+```
+DESCRIPTION:
+Update a desktop GPU
+
+USAGE:
+    rpk desktops gpu set <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name              
+    <index>      The index of the gpu to update
+
+OPTIONS:
+    -h, --help     Prints help information     
+        --model    The gpu model name          
+        --vram     The amount of gpu vram in Gb
+```
+
+## `rpk desktops gpu del`
+```
+DESCRIPTION:
+Remove a GPU from a desktop
+
+USAGE:
+    rpk desktops gpu del <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name              
+    <index>      The index of the Gpu to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk desktops nic`
+```
+DESCRIPTION:
+Manage network interface cards (NICs) for desktops
+
+USAGE:
+    rpk desktops nic [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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]
+
+ARGUMENTS:
+    <desktop>    The desktop name
+
+OPTIONS:
+    -h, --help     Prints help information          
+        --type     The nic port type e.g rj45 / sfp+
+        --speed    The port speed                   
+        --ports    The number of ports              
+```
+
+## `rpk desktops nic set`
+```
+DESCRIPTION:
+Update a desktop NIC
+
+USAGE:
+    rpk desktops nic set <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name              
+    <index>      The index of the nic to remove
+
+OPTIONS:
+    -h, --help     Prints help information          
+        --type     The nic port type e.g rj45 / sfp+
+        --speed    The speed of the nic in Gb/s     
+        --ports    The number of ports              
+```
+
+## `rpk desktops nic del`
+```
+DESCRIPTION:
+Remove a NIC from a desktop
+
+USAGE:
+    rpk desktops nic del <desktop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <desktop>    The desktop name              
+    <index>      The index of the nic to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops`
+```
+DESCRIPTION:
+Manage Laptop computers and their components
+
+USAGE:
+    rpk Laptops [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <name>         Add a new Laptop                            
+    list               List all Laptops                            
+    get <name>         Retrieve a Laptop by name                   
+    describe <name>    Show detailed information about a Laptop    
+    del <name>         Delete a Laptop from the inventory          
+    summary            Show a summarized hardware report for all   
+                       Laptops                                     
+    tree <name>        Display the dependency tree for a Laptop    
+    cpu                Manage CPUs attached to Laptops             
+    drive              Manage storage drives attached to Laptops   
+    gpu                Manage GPUs attached to Laptops             
+```
+
+## `rpk Laptops add`
+```
+DESCRIPTION:
+Add a new Laptop
+
+USAGE:
+    rpk Laptops add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops list`
+```
+DESCRIPTION:
+List all Laptops
+
+USAGE:
+    rpk Laptops list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops get`
+```
+DESCRIPTION:
+Retrieve a Laptop by name
+
+USAGE:
+    rpk Laptops get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops describe`
+```
+DESCRIPTION:
+Show detailed information about a Laptop
+
+USAGE:
+    rpk Laptops describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops del`
+```
+DESCRIPTION:
+Delete a Laptop from the inventory
+
+USAGE:
+    rpk Laptops del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops summary`
+```
+DESCRIPTION:
+Show a summarized hardware report for all Laptops
+
+USAGE:
+    rpk Laptops summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops tree`
+```
+DESCRIPTION:
+Display the dependency tree for a Laptop
+
+USAGE:
+    rpk Laptops tree <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops cpu`
+```
+DESCRIPTION:
+Manage CPUs attached to Laptops
+
+USAGE:
+    rpk Laptops cpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <Laptop>            Add a CPU to a Laptop     
+    set <Laptop> <index>    Update a Laptop CPU       
+    del <Laptop> <index>    Remove a CPU from a Laptop
+```
+
+## `rpk Laptops cpu add`
+```
+DESCRIPTION:
+Add a CPU to a Laptop
+
+USAGE:
+    rpk Laptops cpu add <Laptop> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The Laptop name
+
+OPTIONS:
+    -h, --help       Prints help information  
+        --model      The model name           
+        --cores      The number of cpu cores  
+        --threads    The number of cpu threads
+```
+
+## `rpk Laptops cpu set`
+```
+DESCRIPTION:
+Update a Laptop CPU
+
+USAGE:
+    rpk Laptops cpu set <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The Laptop name            
+    <index>     The index of the Laptop cpu
+
+OPTIONS:
+    -h, --help       Prints help information  
+        --model      The cpu model            
+        --cores      The number of cpu cores  
+        --threads    The number of cpu threads
+```
+
+## `rpk Laptops cpu del`
+```
+DESCRIPTION:
+Remove a CPU from a Laptop
+
+USAGE:
+    rpk Laptops cpu del <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The name of the Laptop               
+    <index>     The index of the Laptop cpu to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops drive`
+```
+DESCRIPTION:
+Manage storage drives attached to Laptops
+
+USAGE:
+    rpk Laptops drive [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <Laptop>            Add a drive to a Laptop     
+    set <Laptop> <index>    Update a Laptop drive       
+    del <Laptop> <index>    Remove a drive from a Laptop
+```
+
+## `rpk Laptops drive add`
+```
+DESCRIPTION:
+Add a drive to a Laptop
+
+USAGE:
+    rpk Laptops drive add <Laptop> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The name of the Laptop
+
+OPTIONS:
+    -h, --help    Prints help information     
+        --type    The drive type e.g hdd / ssd
+        --size    The drive capacity in Gb    
+```
+
+## `rpk Laptops drive set`
+```
+DESCRIPTION:
+Update a Laptop drive
+
+USAGE:
+    rpk Laptops drive set <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The Laptop name          
+    <index>     The drive index to update
+
+OPTIONS:
+    -h, --help    Prints help information     
+        --type    The drive type e.g hdd / ssd
+        --size    The drive capacity in Gb    
+```
+
+## `rpk Laptops drive del`
+```
+DESCRIPTION:
+Remove a drive from a Laptop
+
+USAGE:
+    rpk Laptops drive del <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The name of the Laptop          
+    <index>     The index of the drive to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk Laptops gpu`
+```
+DESCRIPTION:
+Manage GPUs attached to Laptops
+
+USAGE:
+    rpk Laptops gpu [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    add <Laptop>            Add a GPU to a Laptop     
+    set <Laptop> <index>    Update a Laptop GPU       
+    del <Laptop> <index>    Remove a GPU from a Laptop
+```
+
+## `rpk Laptops gpu add`
+```
+DESCRIPTION:
+Add a GPU to a Laptop
+
+USAGE:
+    rpk Laptops gpu add <Laptop> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The name of the Laptop
+
+OPTIONS:
+    -h, --help     Prints help information     
+        --model    The Gpu model               
+        --vram     The amount of gpu vram in Gb
+```
+
+## `rpk Laptops gpu set`
+```
+DESCRIPTION:
+Update a Laptop GPU
+
+USAGE:
+    rpk Laptops gpu set <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The Laptop name               
+    <index>     The index of the gpu to update
+
+OPTIONS:
+    -h, --help     Prints help information     
+        --model    The gpu model name          
+        --vram     The amount of gpu vram in Gb
+```
+
+## `rpk Laptops gpu del`
+```
+DESCRIPTION:
+Remove a GPU from a Laptop
+
+USAGE:
+    rpk Laptops gpu del <Laptop> <index> [OPTIONS]
+
+ARGUMENTS:
+    <Laptop>    The Laptop name               
+    <index>     The index of the Gpu to remove
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services`
+```
+DESCRIPTION:
+Manage services and their configurations
+
+USAGE:
+    rpk services [OPTIONS] <COMMAND>
+
+OPTIONS:
+    -h, --help    Prints help information
+
+COMMANDS:
+    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 a summary report for all services
+
+USAGE:
+    rpk services summary [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services add`
+```
+DESCRIPTION:
+Add a new service
+
+USAGE:
+    rpk services add <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the service
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services list`
+```
+DESCRIPTION:
+List all services
+
+USAGE:
+    rpk services list [OPTIONS]
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services get`
+```
+DESCRIPTION:
+Retrieve a service by name
+
+USAGE:
+    rpk services get <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the service
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services describe`
+```
+DESCRIPTION:
+Show detailed information about a service
+
+USAGE:
+    rpk services describe <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the service
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services set`
+```
+DESCRIPTION:
+Update properties of a service
+
+USAGE:
+    rpk services set <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>     
+
+OPTIONS:
+    -h, --help        Prints help information             
+        --ip          The ip address of the service       
+        --port        The port the service is running on  
+        --protocol    The service protocol                
+        --url         The service URL                     
+        --runs-on     The system the service is running on
+```
+
+## `rpk services del`
+```
+DESCRIPTION:
+Delete a service
+
+USAGE:
+    rpk services del <name> [OPTIONS]
+
+ARGUMENTS:
+    <name>    The name of the service
+
+OPTIONS:
+    -h, --help    Prints help information
+```
+
+## `rpk services subnets`
+```
+DESCRIPTION:
+List subnets associated with a service, optionally filtered by CIDR
+
+USAGE:
+    rpk services subnets [OPTIONS]
+
+OPTIONS:
+    -h, --help               Prints help information
+        --cidr <CIDR>                               
+        --prefix <PREFIX>                           
+```
+

+ 21 - 2
generate_commands_markdown.sh → generate-docs.sh

@@ -115,6 +115,12 @@ generate_help_recursive() {
     return
   fi
 
+if is_invalid_help "$help_output"; then
+  echo "Skipping: $map_key (invalid command)" >&2
+  return
+fi
+
+
   # 2. Extract Description
   local description
   description=$(get_description "$help_output")
@@ -167,6 +173,19 @@ generate_help_recursive() {
   done
 }
 
+is_invalid_help() {
+  local output="$1"
+
+  # Detect common failure patterns
+  if echo "$output" | grep -qiE \
+    "Unknown command|CommandParseException|Unexpected error occurred"; then
+    return 0
+  fi
+
+  return 1
+}
+
+
 # ----------------------------
 # Main
 # ----------------------------
@@ -178,12 +197,12 @@ generate_help_recursive ""
 {
   echo ""
   cat "$TREE_TEMP"
-} > "CommandIndex.md"
+} > "docs/CommandIndex.md"
 
 {
   echo "# CLI Commands"
   echo ""
   cat "$BODY_TEMP"
-} > "Commands.md"
+} > "docs/Commands.md"
 
 echo "Generated Successfully."

+ 1 - 1
notes.md

@@ -28,7 +28,7 @@ chmod +x webui_capture.sh
 docker buildx build \
   --platform linux/amd64,linux/arm64 \
   -f ./Dockerfile \
-  -t aptacode/rackpeek:v0.0.9 \
+  -t aptacode/rackpeek:v0.0.11 \
   -t aptacode/rackpeek:latest \
   --push ..