Modules
AshLua exposes Ash actions to Lua scripts evaluated through the lua
Elixir package, ensuring a consistent actor / tenant / context are propagated into every Ash call.
Generates Lua-side API documentation suitable for an MCP search_docs / get_docs
surface (notably for ash_ai).
Extension that exposes an Ash domain's resources to Lua scripts evaluated through AshLua.eval!/2.
Introspection helpers for AshLua.Domain.
Conversions between Elixir/Ash values and the plain shapes that :luerl (via the :lua package)
can encode as Lua tables.
Protocol for rendering Ash errors into the Lua-side error shape.
An error raised during field-selection parsing / validation, carrying the user-facing message, stable code, and any field names + interpolation context the throw site knew about.
Resource extension that synthesizes :eval and :docs generic actions for
driving an LLM agent against a scoped Lua surface.
Internal struct backing one resource Mod, actions: [...] entry inside an
eval_actions do ... end block.
Introspection helpers for the AshLua.EvalActions extension.
Implementation backing the synthesized :docs action.
Implementation backing the synthesized :eval action.
Manifest-driven field selection for Lua-side queries.
Extension that exposes a single Ash resource's public actions to Lua scripts.
Introspection helpers for AshLua.Resource.
Builds a Lua VM with Ash action bindings derived from Ash.Info.Manifest.generate/1 and
dispatches calls through to Ash with consistent actor / tenant / context plumbing.
Extends an Ash type with Lua-facing metadata.
Mix Tasks
Installs AshLua. Should be run with mix igniter.install ash_lua