Project

lex-lex

0.0
No release in over 3 years
Persists extension, runner, and function metadata to the database when LEX gems load
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Development

Runtime

 Project Readme

lex-lex

Extension registry for LegionIO. Persists extension, runner, and function metadata to the database when LEX gems load.

What It Does

When LegionIO loads extensions, it publishes LexRegister messages to RabbitMQ. This extension:

  1. Consumes those messages via a subscription actor
  2. Persists extension/runner/function records to legion-data models
  3. Syncs in-memory extension state with the database on startup

Without lex-lex, the REST API (/api/extensions), MCP tools (legion.list_extensions), and CLI (legion lex list) return empty results.

Runners

Runner Methods Purpose
Extension create, update, get, delete CRUD for extensions
Runner create, update, get, delete CRUD for runners
Function create, update, get, delete, build_args CRUD for functions + arg schema
Register save Persist full extension descriptor
Sync sync Reconcile in-memory state with DB

Requirements

  • Ruby >= 3.4
  • legion-data must be connected (data_required? true)

Development

bundle install
bundle exec rspec
bundle exec rubocop

License

MIT