Plugins
A folder with a plugin.json that adds something to the IDE — a living wallpaper, a tab of its own, or a mind you can talk to. What they are, how to install one, and what they cannot do.
A plugin is a folder holding a plugin.json. There is no build step, no SDK and no store: you point
Semantix at the folder and it reads the file.
A plugin can add three kinds of thing to the IDE, in any mix:
- A background — a living wallpaper that runs behind one region of the IDE: the header, a side panel, or the main content area.
- A page — an HTML page of its own, opened in a tab like any other, that can ask the IDE for a narrow set of things: the open project, a file write, an image render.
- A mind — a chat and an agent with their own instructions and knowledge, which the plugin's page can open for you.
Where to find them#
Open Settings (Ctrl+,) and choose Plugins, in the App group. Every plugin is a card:
- Its name, version, and a badge — Built-in for what ships with Semantix, Installed for what you added. Declarative means the plugin has no page of its own and runs no host-privileged code.
- What it adds: its Backgrounds, its Tabs, its Panel, and the permissions it was Granted.
- What you can do with it: Pick background, Open tab (or Open followed by a tab's name, when it has several), and Remove for the ones you installed.
A plugin that adds a tab also gets a button in the header, after the Studio's own, so you can open it without going back to Settings.
What ships with Semantix#
Four backgrounds — Aurora, Neural Current, Fireplace and Nebula Drift — and the plugin behind Image Studio. Built-ins cannot be removed.
Installing one#
- Settings → Plugins → Load unpacked…
- Pick the folder that contains
plugin.json.
On success you'll see Installed <name>.; if the folder is wrong, the reason is shown in red and nothing is installed.
Load unpacked links the folder; it does not copy it. The plugin stays where you keep it, and an edit you make there shows up the next time you press Reload. Nothing watches the folder for you: after a change, press Reload (Reloaded from disk.) and every running background and open plugin tab starts again from the new files.
Warning
If a real folder with the same plugin id is already sitting in ~/.semantix/plugins, loading
another copy replaces it. Keep the plugins you write somewhere of your own and load them from
there.
Removing one#
Remove on the card takes the plugin out of the IDE. For a plugin you loaded with Load
unpacked…, that only breaks the link — your folder is left alone. A plugin folder that was
actually copied into ~/.semantix/plugins is deleted.
Anything the plugin saved for itself (see below) is kept, so reinstalling it later picks up where it left off.
What a plugin can and cannot do#
The two kinds of code run in two different cages.
A background can draw and animate, and nothing else. It is told the live theme colours and whether it is on screen. It has no network, no storage, no access to your files or the IDE, and it never receives a click.
A page runs in a sandboxed frame. It can't fetch anything from the network, and it can't see
your API keys or another plugin's data. It may ask the IDE for exactly what its plugin.json
declares — for example read the open project, write a file into it, render an image with
your providers, or store its own small notes. Anything it didn't declare is refused. The Granted
row on its card lists what it declared.
Important
A plugin is code you choose to run, like an editor extension anywhere else. The sandbox keeps it off the network and out of your keys, but a plugin you grant write into the project can write into the project. Install plugins whose source you can read, or that you wrote.
A mind is opened by its plugin's page — there is no menu of plugin chats. A plugin that brings a mind but no page is valid, but nothing in the IDE can open its chat.
Where it is now#
Note
Plugins are new. Installing is from a folder only — there is no plugin store or registry, and none is promised yet. The Tabs region is listed on the Background page but cannot hold a background. Where something on these pages is marked coming, it means exactly that.
The rest of this section#
- Backgrounds — putting a living wallpaper behind any region.
- Writing a plugin —
plugin.json, the two cages, and what a page may ask for.