boxmux 0.190.0

YAML-driven terminal UI framework for rich, interactive CLI applications and dashboards with PTY support
Documentation
{
  "version": "1.0.0",
  "channels": {
    "boxmux-control": {
      "description": "BoxMux control channel for managing boxes and layouts",
      "commands": {
        "replace-box-content": {
          "description": "Replace the content of a specific box",
          "args": {
            "box_id": {
              "type": "string",
              "required": true,
              "description": "The ID of the box to update",
              "validation": {
                "minLength": 1,
                "maxLength": 256
              }
            },
            "success": {
              "type": "boolean",
              "required": true,
              "description": "Whether the content update was successful"
            },
            "content": {
              "type": "string",
              "required": true,
              "description": "The new content for the box",
              "validation": {
                "maxLength": 1000000
              }
            }
          },
          "response": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Operation status"
              },
              "result": {
                "type": "string",
                "description": "Operation result message"
              }
            }
          }
        },
        "replace-box-script": {
          "description": "Replace the script commands for a specific box",
          "args": {
            "box_id": {
              "type": "string",
              "required": true,
              "description": "The ID of the box to update",
              "validation": {
                "minLength": 1,
                "maxLength": 256
              }
            },
            "script": {
              "type": "array",
              "required": true,
              "description": "Array of script commands",
              "validation": {
                "maxItems": 100
              },
              "items": {
                "type": "string",
                "validation": {
                  "maxLength": 1000
                }
              }
            }
          },
          "response": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Operation status"
              },
              "result": {
                "type": "string",
                "description": "Operation result message"
              }
            }
          }
        },
        "stop-box-refresh": {
          "description": "Stop automatic refresh for a specific box",
          "args": {
            "box_id": {
              "type": "string",
              "required": true,
              "description": "The ID of the box to stop refreshing",
              "validation": {
                "minLength": 1,
                "maxLength": 256
              }
            }
          },
          "response": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Operation status"
              },
              "result": {
                "type": "string",
                "description": "Operation result message"
              }
            }
          }
        },
        "start-box-refresh": {
          "description": "Start automatic refresh for a specific box",
          "args": {
            "box_id": {
              "type": "string",
              "required": true,
              "description": "The ID of the box to start refreshing",
              "validation": {
                "minLength": 1,
                "maxLength": 256
              }
            }
          },
          "response": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Operation status"
              },
              "result": {
                "type": "string",
                "description": "Operation result message"
              }
            }
          }
        },
        "replace-box": {
          "description": "Replace an entire box with a new box definition",
          "args": {
            "box_id": {
              "type": "string",
              "required": true,
              "description": "The ID of the box to replace",
              "validation": {
                "minLength": 1,
                "maxLength": 256
              }
            },
            "new_box": {
              "type": "object",
              "required": true,
              "description": "The new box definition object",
              "validation": {
                "maxDataSize": 100000
              }
            }
          },
          "response": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Operation status"
              },
              "result": {
                "type": "string",
                "description": "Operation result message"
              }
            }
          }
        },
        "switch-active-layout": {
          "description": "Switch to a different active layout",
          "args": {
            "layout_id": {
              "type": "string",
              "required": true,
              "description": "The ID of the layout to activate",
              "validation": {
                "minLength": 1,
                "maxLength": 256
              }
            }
          },
          "response": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Operation status"
              },
              "result": {
                "type": "string",
                "description": "Operation result message"
              }
            }
          }
        },
        "add-box": {
          "description": "Add a new box to a specific layout",
          "args": {
            "layout_id": {
              "type": "string",
              "required": true,
              "description": "The ID of the layout to add the box to",
              "validation": {
                "minLength": 1,
                "maxLength": 256
              }
            },
            "box": {
              "type": "object",
              "required": true,
              "description": "The box definition object to add",
              "validation": {
                "maxDataSize": 100000
              }
            }
          },
          "response": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Operation status"
              },
              "result": {
                "type": "string",
                "description": "Operation result message"
              }
            }
          }
        },
        "remove-box": {
          "description": "Remove a box from the current layout",
          "args": {
            "box_id": {
              "type": "string",
              "required": true,
              "description": "The ID of the box to remove",
              "validation": {
                "minLength": 1,
                "maxLength": 256
              }
            }
          },
          "response": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Operation status"
              },
              "result": {
                "type": "string",
                "description": "Operation result message"
              }
            }
          }
        }
      }
    }
  }
}