Plugins
Submit a plugin
A listing is one folder in the LayerFS repository, plugins/<id>/, with four files. Your plugin’s code stays in your own repository: the listing describes it and pins it. Not built yet? Start with the build prompt.
you/layerfsadd-plugin
Let your coding agent do it
Paste this into a coding agent running in your plugin’s repository, with git,python3 and the GitHub CLI signed in. It writes the four files, runs the checker, shows you everything and opens the pull request only after your yes.
Prompt for your agentSubmit this plugin to the LayerFS plugin listings for me: generate its listing files and open a pull request to https://github.com/Ephemeral-AI-Lab/layerfs.
1. Read https://github.com/Ephemeral-AI-Lab/layerfs/blob/main/docs/plugins/README.md. It is the guide: every file, field and rule.
2. Gather the facts from this repository: name, a one-line summary, authors, license, the GitHub repository URL (git remote), the version (package.json, Cargo.toml, pyproject.toml or the latest tag), the platforms it runs on, which LayerFS parts it uses, and how to install it (its README). The commit to list is HEAD: check that it is pushed (git status, git log origin/HEAD..HEAD). The LayerFS commit is "commit" in this repository's layerfs.json, the one it was built and tested with; if there is no layerfs.json, ask me for it. Never guess a commit.
3. Fork and clone LayerFS: gh repo fork Ephemeral-AI-Lab/layerfs --clone, then in the clone create a branch named add-plugin-<id>.
4. Copy docs/plugins/template/ to plugins/<id>/ (a–z, 0–9 and dashes). If plugins/<id>/ already exists, this is a new version: add it at the top of versions in its plugin.json and update the other files only where they changed.
5. Fill in the four files from what you gathered, replacing every <…>:
- plugin.json: the fields, 1 to 6 tags, and the version with both commits.
- README.md: the display page, from ## headings down, from this repository's README. Image links must be https:// links to files in this repository at the listed commit.
- install.md: the steps an agent follows to install it, using {{layerfs.commit}}, {{commit}}, {{version}} and {{repository}}; it stops on any error.
- logo.svg or logo.png: this repository's logo if it is square and under 64 KB. Otherwise ask me for one; never keep the template's logo.
6. Run python3 docs/plugins/script/plugin_check.py --online plugins/<id> in the clone and fix every problem it reports until it prints ok. Change nothing outside plugins/<id>/.
7. Show me the four files and the checker's output, and wait for my yes.
8. Then commit with the message "Add plugin: <name>", push the branch to my fork, and open the pull request with gh pr create --repo Ephemeral-AI-Lab/layerfs --title "Add plugin: <name>", its body saying what the plugin does and that plugin_check passes. Give me the pull request's link.
If a step fails, stop and give me the exact error; don't retry it on your own.Or by hand
- 1Fork LayerFS and copy the templateCopy docs/plugins/template/ to plugins/<your-plugin-id>/. The id is the folder’s name and the plugin’s address here.
- 2Fill in the four filesReplace every <…>. Pin exact commits, never branches.
- 3Check itpython3 docs/plugins/script/plugin_check.py --online plugins/<id> prints ok, or names each problem.
- 4Open a pull requestTitled “Add plugin: <name>”, from your fork and under your name. We review it and merge it: you become a LayerFS contributor.
The four files
All four are required. docs/plugins/script/plugin_check.py checks every rule before you open the pull request, and the site refuses a listing that breaks one; the guide lists every field.
plugin.json
About, tags and versions
- ·name, one-line summary, authors, license, repository
- ·1 to 6 tags, lowercase
- ·platforms and what it builds on
- ·versions, newest first: each pins its plugin commit and the LayerFS release and commit it was tested with
README.md
The display page
- ·the plugin’s page here, in Markdown
- ·starts at ## headings: the page shows the name
- ·what it adds, how it works, what it needs, its limits
install.md
The install prompt
- ·what people paste into a coding agent
- ·names {{layerfs.commit}} so it installs the tested LayerFS
- ·{{version}}, {{commit}}, {{repository}} are filled in per version
logo.svg
The logo
- ·square, SVG or PNG
- ·under 64 KB
- ·shown as supplied, never recolored