{
  "repo": "tidbcloud/sysdig",
  "binary": "csysdig",
  "binary_path": "userspace/sysdig/csysdig.cpp",
  "dependencies": {
    "CLI csysdig ui": {
      "infrastructure": {
        "kernel_trace": {
          "conditions": [
            "When running interactive live capture mode"
          ],
          "operations": [
            {
              "operation": "CAPTURE SYSTEM EVENTS",
              "trigger": "Open the sysdig inspection engine for ncurses visualization",
              "conditions": [
                "The CLI is not reading a prerecorded trace"
              ],
              "implementation": "csysdig initializes the same capture stack as sysdig and renders it through curses components"
            }
          ]
        },
        "filesystem": {
          "conditions": [
            "When loading capture files or chisel/view assets"
          ],
          "operations": [
            {
              "operation": "READ FILES",
              "trigger": "Load trace files, embedded views, and optional chisel resources",
              "conditions": [
                "The command is started with readfile or custom chisel/view options"
              ],
              "implementation": "csysdig can read trace files and additional assets from disk"
            }
          ]
        },
        "terminal": {
          "conditions": [
            "Always"
          ],
          "operations": [
            {
              "operation": "RENDER NCURSES UI",
              "trigger": "Present the interactive top-like interface",
              "conditions": [
                "The command is started in normal UI mode"
              ],
              "implementation": "cursesui and related components render terminal views"
            }
          ]
        }
      },
      "services": []
    }
  }
}
