Modules
This page documents the module format in detail. For the product-level extension model and ownership boundary, start with the extension model.
The product ships modules/catalog.toml. Each entry is an installable pack:
[[module]]id = "security"version = "0.1.0"kind = "plugin" # plugin | convention | capabilitydescription = "..."path = "modules/security"skills = ["security-scan"]requires = [] # optional dependency idsdefault = false # install on lasso init?Workspace layout after install
Section titled “Workspace layout after install”.lasso/modules/<id>/ copied payloadlasso.lock.toml id → version pinsconventions/ merged from module conventions/plugins/lasso-<id>/ materialized when module/plugin existsMarketplaces (Codex + Claude/Grok) are regenerated to include installed plugin
modules alongside lasso-core.
Module, plugin, and skill
Section titled “Module, plugin, and skill”The Lasso CLI installs and pins modules. A plugin module materializes one
agent-runtime plugin named lasso-<module>. That plugin may contain several
related skills, where each skill describes one triggered workflow and how
to use its native tools.
Use separate modules when users should be able to install or remove the
capabilities independently. Keep related workflows in one plugin instead of
creating a plugin for every command. For example, npm-release contains both
the npm release workflow and the npm package-page maintenance workflow.
Authoring
Section titled “Authoring”modules/<id>/ module.toml conventions/ # optional plugin/ # optional skills + dual manifests scripts/ # optional helpersAdd a [[module]] block to the catalog, then lasso module add <id>.