mix raxol. repl
(Raxol v2.8.0)
View Source
Interactive Elixir REPL powered by Raxol's terminal UI.
$ mix raxol.repl
Evaluates Elixir expressions with persistent bindings, IO capture, an AST safety check applied before each evaluation, and per-evaluation resource caps. Variables defined in one expression are available in subsequent ones.
Trust boundary
This evaluates submitted code with the full authority of the node running
it, and Raxol.REPL.Sandbox in front of it is a mitigation rather than a
boundary. Running it here is safe only in the sense that YOU started it in
YOUR terminal: the code runs as you, and you typed it.
That is why this task passes local_operator: true, which
Raxol.Playground.Demos.ReplDemo accepts only at environment: :terminal.
It is also what makes --sandbox and --timeout take effect: a served
launch ignores both. Every other surface, the web gallery, SSH, anything
serving the catalog, needs the deployment to opt in explicitly
(RAXOL_REPL_EXPOSED=true or config :raxol_core, :repl_exposed, true), and
a node that holds signing keys refuses to boot with that set.
Options
--sandbox- Safety level:none,standard,strict(default)--timeout- Positive eval timeout in milliseconds (default: 5000)