{
  "commands": {
    "add-assembly": {
      "aliases": [],
      "args": {
        "sequence": {
          "description": "sequence file or URL\n\nIf TYPE is indexedFasta or bgzipFasta, the index file defaults to <location>.fai\nand can be optionally specified with --faiLocation\nIf TYPE is bgzipFasta, the gzip index file defaults to <location>.gzi and can be\noptionally specified with --gziLocation",
          "name": "sequence",
          "required": true
        }
      },
      "description": "Add an assembly to a JBrowse 2 configuration",
      "examples": [
        "# add assembly to installation in current directory. assumes .fai file also exists, and copies GRCh38.fa and GRCh38.fa.fai to current directory",
        "$ jbrowse add-assembly GRCh38.fa --load copy",
        "",
        "# add assembly to a specific jb2 installation path using --out, and copies the .fa and .fa.fai file to /path/to/jb2",
        "$ jbrowse add-assembly GRCh38.fa --out /path/to/jb2/ --load copy",
        "",
        "# force indexedFasta for add-assembly without relying on file extension",
        "$ jbrowse add-assembly GRCh38.xyz --type indexedFasta --load copy",
        "",
        "# add displayName for an assembly",
        "$ jbrowse add-assembly myFile.fa.gz --name hg38 --displayName \"Homo sapiens (hg38)\"",
        "",
        "# use chrom.sizes file for assembly instead of a fasta file",
        "$ jbrowse add-assembly GRCh38.chrom.sizes --load inPlace",
        "",
        "# add assembly from preconfigured json file, expert option",
        "$ jbrowse add-assembly GRCh38.config.json --load copy",
        "",
        "# add assembly from a 2bit file, also note pointing direct to a URL so no --load flag needed",
        "$ jbrowse add-assembly https://example.com/data/sample.2bit",
        "",
        "# add a bgzip indexed fasta inferred by fa.gz extension. assumes .fa.gz.gzi and .fa.gz.fai files also exists",
        "$ jbrowse add-assembly myfile.fa.gz --load copy"
      ],
      "flags": {
        "type": {
          "char": "t",
          "description": "type of sequence, by default inferred from sequence file\n\nindexedFasta   An index FASTA (e.g. .fa or .fasta) file;\n               can optionally specify --faiLocation\n\nbgzipFasta     A block-gzipped and indexed FASTA (e.g. .fa.gz or .fasta.gz) file;\n               can optionally specify --faiLocation and/or --gziLocation\n\ntwoBit         A twoBit (e.g. .2bit) file\n\nchromSizes     A chromosome sizes (e.g. .chrom.sizes) file\n\ncustom         Either a JSON file location or inline JSON that defines a custom\n               sequence adapter; must provide --name if using inline JSON",
          "name": "type",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "indexedFasta",
            "bgzipFasta",
            "twoBit",
            "chromSizes",
            "custom"
          ],
          "type": "option"
        },
        "name": {
          "char": "n",
          "description": "Name of the assembly; if not specified, will be guessed using the sequence file name",
          "name": "name",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "alias": {
          "char": "a",
          "description": "An alias for the assembly name (e.g. \"hg38\" if the name of the assembly is \"GRCh38\");\ncan be specified multiple times",
          "name": "alias",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "displayName": {
          "description": "The display name to specify for the assembly, e.g. \"Homo sapiens (hg38)\" while the name can be a shorter identifier like \"hg38\"",
          "name": "displayName",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "faiLocation": {
          "description": "[default: <fastaLocation>.fai] FASTA index file or URL",
          "name": "faiLocation",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "gziLocation": {
          "description": "[default: <fastaLocation>.gzi] FASTA gzip index file or URL",
          "name": "gziLocation",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "refNameAliases": {
          "description": "Reference sequence name aliases file or URL; assumed to be a tab-separated aliases\nfile unless --refNameAliasesType is specified",
          "name": "refNameAliases",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "refNameAliasesType": {
          "dependsOn": [
            "refNameAliases"
          ],
          "description": "Type of aliases defined by --refNameAliases; if \"custom\", --refNameAliases is either\na JSON file location or inline JSON that defines a custom sequence adapter",
          "name": "refNameAliasesType",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "aliases",
            "custom"
          ],
          "type": "option"
        },
        "refNameColors": {
          "description": "A comma-separated list of color strings for the reference sequence names; will cycle\nthrough colors if there are fewer colors than sequences",
          "name": "refNameColors",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target": {
          "description": "path to config file in JB2 installation directory to write out to.\nCreates ./config.json if nonexistent",
          "name": "target",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "out": {
          "description": "synonym for target",
          "name": "out",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "help": {
          "char": "h",
          "description": "Show CLI help.",
          "name": "help",
          "allowNo": false,
          "type": "boolean"
        },
        "load": {
          "char": "l",
          "description": "Required flag when using a local file. Choose how to manage the data directory. Copy, symlink, or move the data directory to the JBrowse directory. Or use inPlace to modify the config without doing any file operations",
          "name": "load",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "copy",
            "symlink",
            "move",
            "inPlace"
          ],
          "type": "option"
        },
        "skipCheck": {
          "description": "Don't check whether or not the sequence file or URL exists or if you are in a JBrowse directory",
          "name": "skipCheck",
          "allowNo": false,
          "type": "boolean"
        },
        "overwrite": {
          "description": "Overwrite existing assembly if one with the same name exists",
          "name": "overwrite",
          "allowNo": false,
          "type": "boolean"
        },
        "force": {
          "char": "f",
          "description": "Equivalent to `--skipCheck --overwrite`",
          "name": "force",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "add-assembly",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "add-assembly.js"
      ]
    },
    "add-connection": {
      "aliases": [],
      "args": {
        "connectionUrlOrPath": {
          "description": "URL of data directory\nFor hub file, usually called hub.txt\nFor JBrowse 1, location of JB1 data directory similar to http://mysite.com/jbrowse/data/ ",
          "name": "connectionUrlOrPath",
          "required": true
        }
      },
      "description": "Add a connection to a JBrowse 2 configuration",
      "examples": [
        "$ jbrowse add-connection http://mysite.com/jbrowse/data/ -a hg19",
        "$ jbrowse add-connection http://mysite.com/jbrowse/custom_data_folder/ --type JBrowse1Connection -a hg38",
        "$ jbrowse add-connection http://mysite.com/path/to/hub.txt",
        "$ jbrowse add-connection http://mysite.com/path/to/custom_hub_name.txt --type UCSCTrackHubConnection",
        "$ jbrowse add-connection http://mysite.com/path/to/custom --type custom --config '{\"uri\":{\"url\":\"https://mysite.com/path/to/custom\"}, \"locationType\": \"UriLocation\"}' -a hg19",
        "$ jbrowse add-connection https://mysite.com/path/to/hub.txt --connectionId newId --name newName --target /path/to/jb2/installation/config.json"
      ],
      "flags": {
        "type": {
          "char": "t",
          "description": "type of connection, ex. JBrowse1Connection, UCSCTrackHubConnection, custom",
          "name": "type",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "assemblyNames": {
          "char": "a",
          "description": "For UCSC, optional: Comma separated list of assembly name(s) to filter from this connection. For JBrowse: a single assembly name",
          "name": "assemblyNames",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "config": {
          "char": "c",
          "description": "Any extra config settings to add to connection in JSON object format, such as '{\"uri\":\"url\":\"https://sample.com\"}, \"locationType\": \"UriLocation\"}'",
          "name": "config",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "connectionId": {
          "description": "Id for the connection that must be unique to JBrowse.  Defaults to 'connectionType-assemblyName-currentTime'",
          "name": "connectionId",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "description": "Name of the connection. Defaults to connectionId if not provided",
          "name": "name",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target": {
          "description": "path to config file in JB2 installation directory to write out to.",
          "name": "target",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "out": {
          "description": "synonym for target",
          "name": "out",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "help": {
          "char": "h",
          "description": "Show CLI help.",
          "name": "help",
          "allowNo": false,
          "type": "boolean"
        },
        "skipCheck": {
          "description": "Don't check whether or not the data directory URL exists or if you are in a JBrowse directory",
          "name": "skipCheck",
          "allowNo": false,
          "type": "boolean"
        },
        "overwrite": {
          "description": "Overwrites any existing connections if same connection id",
          "name": "overwrite",
          "allowNo": false,
          "type": "boolean"
        },
        "force": {
          "char": "f",
          "description": "Equivalent to `--skipCheck --overwrite`",
          "name": "force",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "add-connection",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "add-connection.js"
      ]
    },
    "add-track-json": {
      "aliases": [],
      "args": {
        "track": {
          "description": "track JSON file or command line arg blob",
          "name": "track",
          "required": true
        }
      },
      "description": "Add a track configuration directly from a JSON hunk to the JBrowse 2 configuration",
      "examples": [
        "$ jbrowse add-track-json track.json",
        "$ jbrowse add-track-json track.json --update"
      ],
      "flags": {
        "update": {
          "char": "u",
          "description": "update the contents of an existing track, matched based on trackId",
          "name": "update",
          "allowNo": false,
          "type": "boolean"
        },
        "target": {
          "description": "path to config file in JB2 installation directory to write out to.\nCreates ./config.json if nonexistent",
          "name": "target",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "out": {
          "description": "synonym for target",
          "name": "out",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "add-track-json",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "add-track-json.js"
      ]
    },
    "add-track": {
      "aliases": [],
      "args": {
        "track": {
          "description": "Track file or URL",
          "name": "track",
          "required": true
        }
      },
      "description": "Add a track to a JBrowse 2 configuration",
      "examples": [
        "# copy /path/to/my.bam and /path/to/my.bam.bai to current directory and adds track to config.json",
        "$ jbrowse add-track /path/to/my.bam --load copy",
        "",
        "# copy my.bam and my.bam.bai to /path/to/jb2/bam and adds track entry to /path/to/jb2/bam/config.json",
        "$ jbrowse add-track my.bam --load copy --out /path/to/jb2 --subDir bam",
        "",
        "# same as above, but specify path to bai file. needed for if the bai file does not have the extension .bam.bai",
        "$ jbrowse add-track my.bam --indexFile my.bai --load copy",
        "",
        "# creates symlink for /path/to/my.bam and adds track to config.json",
        "$ jbrowse add-track /path/to/my.bam --load symlink",
        "",
        "# add track from URL to config.json, no --load flag needed",
        "$ jbrowse add-track https://mywebsite.com/my.bam",
        "",
        "# --load inPlace adds a track without doing file operations",
        "$ jbrowse add-track /url/relative/path.bam --load inPlace"
      ],
      "flags": {
        "trackType": {
          "char": "t",
          "description": "Type of track, by default inferred from track file",
          "name": "trackType",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "description": "Name of the track. Will be defaulted to the trackId if none specified",
          "name": "name",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "indexFile": {
          "description": "Optional index file for the track",
          "name": "indexFile",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "description": {
          "char": "d",
          "description": "Optional description of the track",
          "name": "description",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "assemblyNames": {
          "char": "a",
          "description": "Assembly name or names for track as comma separated string. If none, will default to the assembly in your config file",
          "name": "assemblyNames",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "category": {
          "description": "Optional Comma separated string of categories to group tracks",
          "name": "category",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "config": {
          "description": "Any extra config settings to add to a track. i.e '{\"defaultRendering\": \"density\"}'",
          "name": "config",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target": {
          "description": "path to config file in JB2 installation to write out to.",
          "name": "target",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "out": {
          "description": "synonym for target",
          "name": "out",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "subDir": {
          "description": "when using --load a file, output to a subdirectory of the target dir",
          "name": "subDir",
          "default": "",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "help": {
          "char": "h",
          "description": "Show CLI help.",
          "name": "help",
          "allowNo": false,
          "type": "boolean"
        },
        "trackId": {
          "description": "trackId for the track, by default inferred from filename, must be unique throughout config",
          "name": "trackId",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "load": {
          "char": "l",
          "description": "Required flag when using a local file. Choose how to manage the track. Copy, symlink, or move the track to the JBrowse directory. Or inPlace to leave track alone",
          "name": "load",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "copy",
            "symlink",
            "move",
            "inPlace"
          ],
          "type": "option"
        },
        "skipCheck": {
          "description": "Skip check for whether or not the file or URL exists or if you are in a JBrowse directory",
          "name": "skipCheck",
          "allowNo": false,
          "type": "boolean"
        },
        "overwrite": {
          "description": "Overwrites existing track if it shares the same trackId",
          "name": "overwrite",
          "allowNo": false,
          "type": "boolean"
        },
        "force": {
          "char": "f",
          "description": "Equivalent to `--skipCheck --overwrite`",
          "name": "force",
          "allowNo": false,
          "type": "boolean"
        },
        "protocol": {
          "description": "Force protocol to a specific value",
          "name": "protocol",
          "default": "uri",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "bed1": {
          "description": "Used only for mcscan anchors/simpleAnchors types",
          "name": "bed1",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "bed2": {
          "description": "Used only for mcscan anchors/simpleAnchors types",
          "name": "bed2",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "add-track",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "add-track.js"
      ]
    },
    "admin-server": {
      "aliases": [],
      "args": {},
      "description": "Start up a small admin server for JBrowse configuration",
      "examples": [
        "$ jbrowse admin-server",
        "$ jbrowse admin-server -p 8888"
      ],
      "flags": {
        "port": {
          "char": "p",
          "description": "Specifified port to start the server on;\nDefault is 9090.",
          "name": "port",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "root": {
          "description": "path to the root of the JB2 installation.\nCreates ./config.json if nonexistent. note that you can navigate to ?config=path/to/subconfig.json in the web browser and it will write to rootDir/path/to/subconfig.json",
          "name": "root",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "bodySizeLimit": {
          "description": "Size limit of the update message; may need to increase if config is large.\nArgument is passed to bytes library for parsing: https://www.npmjs.com/package/bytes.",
          "name": "bodySizeLimit",
          "default": "25mb",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "help": {
          "char": "h",
          "description": "Show CLI help.",
          "name": "help",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "admin-server",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "admin-server.js"
      ]
    },
    "create": {
      "aliases": [],
      "args": {
        "localPath": {
          "description": "Location where JBrowse 2 will be installed",
          "name": "localPath",
          "required": true
        }
      },
      "description": "Downloads and installs the latest JBrowse 2 release",
      "examples": [
        "# Download latest release from github, and put in specific path",
        "$ jbrowse create /path/to/new/installation",
        "",
        "# Download latest release from github and force overwrite existing contents at path",
        "$ jbrowse create /path/to/new/installation --force",
        "",
        "# Download latest release from a specific URL",
        "$ jbrowse create /path/to/new/installation --url url.com/directjbrowselink.zip",
        "",
        "# Download a specific tag from github",
        "$ jbrowse create /path/to/new/installation --tag v1.0.0",
        "",
        "# List available versions",
        "$ jbrowse create --listVersions"
      ],
      "flags": {
        "help": {
          "char": "h",
          "description": "Show CLI help.",
          "name": "help",
          "allowNo": false,
          "type": "boolean"
        },
        "force": {
          "char": "f",
          "description": "Overwrites existing JBrowse 2 installation if present in path",
          "name": "force",
          "allowNo": false,
          "type": "boolean"
        },
        "listVersions": {
          "char": "l",
          "description": "Lists out all versions of JBrowse 2",
          "name": "listVersions",
          "allowNo": false,
          "type": "boolean"
        },
        "branch": {
          "description": "Download a development build from a named git branch",
          "name": "branch",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "nightly": {
          "description": "Download the latest development build from the main branch",
          "name": "nightly",
          "allowNo": false,
          "type": "boolean"
        },
        "url": {
          "char": "u",
          "description": "A direct URL to a JBrowse 2 release",
          "name": "url",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "tag": {
          "char": "t",
          "description": "Version of JBrowse 2 to install. Format is v1.0.0.\nDefaults to latest",
          "name": "tag",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "create",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "create.js"
      ]
    },
    "make-pif": {
      "aliases": [],
      "args": {
        "file": {
          "description": "PAF file as input",
          "name": "file",
          "required": true
        }
      },
      "description": "creates pairwise indexed PAF (PIF), with bgzip and tabix",
      "examples": [
        "$ jbrowse pif input.paf # creates input.pif.gz in same directory",
        "",
        "$ jbrowse pif input.paf --out output.pif.gz # specify output file, creates output.pif.gz.tbi also"
      ],
      "flags": {
        "out": {
          "description": "Where to write the output file. will write ${file}.pif.gz and ${file}.pif.gz.tbi",
          "name": "out",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "csi": {
          "description": "Create a CSI index for the PIF file instead of TBI",
          "name": "csi",
          "allowNo": false,
          "type": "boolean"
        },
        "help": {
          "char": "h",
          "description": "Show CLI help.",
          "name": "help",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "make-pif",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "make-pif.js"
      ]
    },
    "remove-track": {
      "aliases": [],
      "args": {
        "track": {
          "description": "track JSON file or command line arg blob",
          "name": "track",
          "required": true
        }
      },
      "description": "Remove a track configuration from a JBrowse 2 configuration. Be aware that this can cause crashes in saved sessions that refer to this track!",
      "examples": [
        "$ jbrowse remove-track-json trackId"
      ],
      "flags": {
        "target": {
          "description": "path to config file in JB2 installation directory to write out to.\nCreates ./config.json if nonexistent",
          "name": "target",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "out": {
          "description": "synonym for target",
          "name": "out",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "remove-track",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "remove-track.js"
      ]
    },
    "set-default-session": {
      "aliases": [],
      "args": {},
      "description": "Set a default session with views and tracks",
      "examples": [
        "# set default session for the config.json in your current directory",
        "$ jbrowse set-default-session --session /path/to/default/session.json",
        "",
        "# make session.json the defaultSession on the specified target config.json file",
        "$ jbrowse set-default-session --target /path/to/jb2/installation/config.json --session session.json",
        "",
        "# print current default session",
        "$ jbrowse set-default-session --currentSession # Prints out current default session"
      ],
      "flags": {
        "session": {
          "char": "s",
          "description": "set path to a file containing session in json format (required, unless using delete/currentSession flags)",
          "name": "session",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "description": "Give a name for the default session",
          "name": "name",
          "default": "New Default Session",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "currentSession": {
          "char": "c",
          "description": "List out the current default session",
          "name": "currentSession",
          "allowNo": false,
          "type": "boolean"
        },
        "target": {
          "description": "path to config file in JB2 installation directory to write out to",
          "name": "target",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "out": {
          "description": "synonym for target",
          "name": "out",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "delete": {
          "description": "Delete any existing default session.",
          "name": "delete",
          "allowNo": false,
          "type": "boolean"
        },
        "help": {
          "char": "h",
          "description": "Show CLI help.",
          "name": "help",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "set-default-session",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "set-default-session.js"
      ]
    },
    "sort-bed": {
      "aliases": [],
      "args": {
        "file": {
          "description": "GFF file",
          "name": "file",
          "required": true
        }
      },
      "description": "Helper utility to sort GFF files for tabix. Moves all lines starting with # to the top of the file, and sort by refname and start position using unix utilities sort and grep",
      "examples": [
        "# sort gff and pipe to bgzip",
        "$ jbrowse sort-gff input.gff | bgzip > sorted.gff.gz",
        "$ tabix sorted.gff.gz"
      ],
      "flags": {
        "help": {
          "char": "h",
          "description": "Show CLI help.",
          "name": "help",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "sort-bed",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "sort-bed.js"
      ]
    },
    "sort-gff": {
      "aliases": [],
      "args": {
        "file": {
          "description": "GFF file",
          "name": "file",
          "required": true
        }
      },
      "description": "Helper utility to sort GFF files for tabix. Moves all lines starting with # to the top of the file, and sort by refname and start position using unix utilities sort and grep",
      "examples": [
        "# sort gff and pipe to bgzip",
        "$ jbrowse sort-gff input.gff | bgzip > sorted.gff.gz",
        "$ tabix sorted.gff.gz"
      ],
      "flags": {
        "help": {
          "char": "h",
          "description": "Show CLI help.",
          "name": "help",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "sort-gff",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "sort-gff.js"
      ]
    },
    "text-index": {
      "aliases": [],
      "args": {},
      "description": "Make a text-indexing file for any given track(s).",
      "examples": [
        "# indexes all tracks that it can find in the current directory's config.json",
        "$ jbrowse text-index",
        "",
        "# indexes specific trackIds that it can find in the current directory's config.json",
        "$ jbrowse text-index --tracks=track1,track2,track3",
        "",
        "# indexes all tracks in a directory's config.json or in a specific config file",
        "$ jbrowse text-index --out /path/to/jb2/",
        "",
        "# indexes only a specific assembly, and overwrite what was previously there using force (which is needed if a previous index already existed)",
        "$ jbrowse text-index -a hg19 --force",
        "",
        "# create index for some files for use in @jbrowse/react-linear-genome-view2 or similar",
        "$ jbrowse text-index --file myfile.gff3.gz --file myfile.vcfgz --out indexes"
      ],
      "flags": {
        "help": {
          "char": "h",
          "description": "Show CLI help.",
          "name": "help",
          "allowNo": false,
          "type": "boolean"
        },
        "tracks": {
          "description": "Specific tracks to index, formatted as comma separated trackIds. If unspecified, indexes all available tracks",
          "name": "tracks",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target": {
          "description": "Path to config file in JB2 installation directory to read from.",
          "name": "target",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "out": {
          "description": "Synonym for target",
          "name": "out",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "attributes": {
          "description": "Comma separated list of attributes to index",
          "name": "attributes",
          "default": "Name,ID",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "assemblies": {
          "char": "a",
          "description": "Specify the assembl(ies) to create an index for. If unspecified, creates an index for each assembly in the config",
          "name": "assemblies",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "force": {
          "description": "Overwrite previously existing indexes",
          "name": "force",
          "allowNo": false,
          "type": "boolean"
        },
        "quiet": {
          "char": "q",
          "description": "Hide the progress bars",
          "name": "quiet",
          "allowNo": false,
          "type": "boolean"
        },
        "perTrack": {
          "description": "If set, creates an index per track",
          "name": "perTrack",
          "allowNo": false,
          "type": "boolean"
        },
        "exclude": {
          "description": "Adds gene type to list of excluded types",
          "name": "exclude",
          "default": "CDS,exon",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "prefixSize": {
          "description": "Specify the prefix size for the ixx index. We attempt to automatically calculate this, but you can manually specify this too. If many genes have similar gene IDs e.g. Z000000001, Z000000002 the prefix size should be larger so that they get split into different bins",
          "name": "prefixSize",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "file": {
          "description": "File or files to index (can be used to create trix indexes for embedded component use cases not using a config.json for example)",
          "name": "file",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "fileId": {
          "description": "Set the trackId used for the indexes generated with the --file argument",
          "name": "fileId",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "dryrun": {
          "description": "Just print out tracks that will be indexed by the process, without doing any indexing",
          "name": "dryrun",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "text-index",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "text-index.js"
      ]
    },
    "upgrade": {
      "aliases": [],
      "args": {
        "localPath": {
          "default": ".",
          "description": "Location where JBrowse 2 is installed",
          "name": "localPath",
          "required": false
        }
      },
      "description": "Upgrades JBrowse 2 to latest version",
      "examples": [
        "# Upgrades current directory to latest jbrowse release",
        "$ jbrowse upgrade",
        "",
        "# Upgrade jbrowse instance at a specific filesystem path",
        "$ jbrowse upgrade /path/to/jbrowse2/installation",
        "",
        "# Upgrade to a specific tag",
        "$ jbrowse upgrade /path/to/jbrowse2/installation --tag v1.0.0",
        "",
        "# List versions available on github",
        "$ jbrowse upgrade --listVersions",
        "",
        "# Upgrade from a specific URL",
        "$ jbrowse upgrade --url https://sample.com/jbrowse2.zip",
        "",
        "# Get nightly release from main branch",
        "$ jbrowse upgrade --nightly"
      ],
      "flags": {
        "help": {
          "char": "h",
          "description": "Show CLI help.",
          "name": "help",
          "allowNo": false,
          "type": "boolean"
        },
        "listVersions": {
          "char": "l",
          "description": "Lists out all versions of JBrowse 2",
          "name": "listVersions",
          "allowNo": false,
          "type": "boolean"
        },
        "tag": {
          "char": "t",
          "description": "Version of JBrowse 2 to install. Format is v1.0.0.\nDefaults to latest",
          "name": "tag",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "branch": {
          "description": "Download a development build from a named git branch",
          "name": "branch",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "nightly": {
          "description": "Download the latest development build from the main branch",
          "name": "nightly",
          "allowNo": false,
          "type": "boolean"
        },
        "clean": {
          "description": "Removes old js,map,and LICENSE files in the installation",
          "name": "clean",
          "allowNo": false,
          "type": "boolean"
        },
        "url": {
          "char": "u",
          "description": "A direct URL to a JBrowse 2 release",
          "name": "url",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "upgrade",
      "pluginAlias": "@jbrowse/cli",
      "pluginName": "@jbrowse/cli",
      "pluginType": "core",
      "strict": true,
      "isESM": false,
      "relativePath": [
        "lib",
        "commands",
        "upgrade.js"
      ]
    }
  },
  "version": "3.5.0"
}