id = "rizin" name = "Rizin" homepage = "https://rizin.re/" description = "A UNIX-like reverse-engineering framework and command-line toolset." executables = ["rizin", "rz-asm", "rz-bin"] [dotfiles] # The official Rizin Handbook documents ~/.rizinrc as the user startup script. # https://book.rizin.re/src/configuration/intro.html # https://book.rizin.re/src/configuration/initial_scripts.html paths = ["~/.rizinrc"] exclude = [] secret = [] side_effect = false [commands] format = 1 label = "Open a binary" description = "Open a file in Rizin, optionally running commands or a script and quitting for batch analysis. Debugger, remote, project and rz-run options are left out; rz-bin and rz-asm are separate tools." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = false, short_bundles = false } [[commands.source]] id = "man" kind = "manual" url = "https://man.archlinux.org/man/rizin.1.en" revision = "Arch man page 2026-10-27" evidence = """ -a [arch] Set the assembly architecture.(x86, ppc, arm, mips, bf, java, ...) -A Run 'aaa' command before prompt or patch to analyze all referenced code -b [bits] Set the assembly bitness. (16, 32, 64) -c 'cmd..' Execute the specified Rizin command -e k=v Evaluate the specified configuration variable -i [file] Run the commands from the script file -N Disable user settings/projects from ~/.rizinrc, ~/.config/rizin/rizinrc -q Quiet mode, suppresses prompt and quits after script execution -s [addr] Start seeking at this address -w Open in write mode -d Debug the executable 'file' or running process 'pid' """ [[commands.field]] id = "file" label = "File" type = "path" position = 0 path = { kind = "file", role = "input" } sources = ["man"] [[commands.field]] id = "analyze" label = "Analyze all (aaa) on load" type = "boolean" option = ["-A"] sources = ["man"] [[commands.field]] id = "command" label = "Commands to run" description = "Each entry is one Rizin command executed in order, for example 'iI' or 'afl'. Quote entries with spaces." type = "string" option = ["-c"] multiple = true sources = ["man"] [[commands.field]] id = "script" label = "Script file" type = "path" option = ["-i"] path = { kind = "file", role = "input" } sources = ["man"] [[commands.field]] id = "quiet" label = "Quiet (quit after commands)" type = "boolean" option = ["-q"] sources = ["man"] [[commands.field]] id = "arch" label = "Architecture" type = "string" option = ["-a"] suggestions = [{ value = "x86", label = "x86" }, { value = "arm", label = "ARM" }, { value = "ppc", label = "PowerPC" }, { value = "mips", label = "MIPS" }] sources = ["man"] [[commands.field]] id = "bits" label = "Bitness" type = "enum" choices = [{ value = "16", label = "16" }, { value = "32", label = "32" }, { value = "64", label = "64" }] option = ["-b"] sources = ["man"] [[commands.field]] id = "seek" label = "Start address" type = "string" option = ["-s"] sources = ["man"] [[commands.field]] id = "eval" label = "Config variables" description = "One key=value per entry." type = "string" option = ["-e"] multiple = true sources = ["man"] [[commands.field]] id = "write" label = "Open in write mode" type = "boolean" option = ["-w"] effect = "overwrite" sources = ["man"] [[commands.field]] id = "no_rc" label = "Skip ~/.rizinrc" type = "boolean" option = ["-N"] sources = ["man"] [[commands.task]] id = "interactive" label = "Open and analyze" fields = ["file", "analyze"] required = ["file"] [[commands.task]] id = "batch" label = "Run commands and quit" fields = ["file", "analyze", "command", "quiet"] required = ["file", "command"] set = { quiet = [true] } [[commands.group]] id = "basic" label = "Basic" fields = ["file", "analyze", "command", "script", "quiet"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["arch", "bits", "seek", "eval", "write", "no_rc"]