{
  "name": "yomo",
  "description": "CLI interface for YoMo",
  "options": [
    {
      "names": [
        "--help",
        "-h"
      ],
      "description": "Show help for yomo"
    }
  ],
  "subcommands": [
    {
      "name": "init",
      "description": "Initial an example StreamFunction",
      "options": [
        {
          "names": [
            "--rx"
          ],
          "description": "Generate Rx code template"
        }
      ],
      "args": [
        {
          "name": "function name",
          "description": "StreamFunction name to initialize locally"
        }
      ]
    },
    {
      "name": "build",
      "description": "Build a StreamFunction to WebAssembly",
      "options": [
        {
          "names": [
            "--target"
          ],
          "description": "Build to wasm or binary",
          "args": [
            {
              "name": "wasm"
            },
            {
              "name": "binary"
            }
          ]
        },
        {
          "names": [
            "-m",
            "--modfile"
          ],
          "description": "Custom go.mod filepath",
          "args": [
            {
              "name": "module",
              "template": "filepaths"
            }
          ]
        }
      ],
      "args": [
        {
          "name": ".go file",
          "description": "The .go file to build",
          "template": "filepaths"
        }
      ]
    },
    {
      "name": "run",
      "description": "Run a wasm stream function",
      "options": [
        {
          "names": [
            "-z",
            "--zipper"
          ],
          "description": "Zipper endpoint this StreamFunction will connect to"
        },
        {
          "names": [
            "-n",
            "--name"
          ],
          "description": "Specify the name of this StreamFunction"
        }
      ],
      "args": [
        {
          "name": ".wasm file",
          "description": "The .wasm file to run",
          "template": "filepaths"
        }
      ]
    }
  ]
}
