Package Configuration
How package.json tells Kazibee to load and run your plugin.
"name" Your plugin's package name (can be anything, e.g. my-plugin)
"type" Must be "module"
"main" Sandbox entry point: "./src/index.ts"
"command" Optional CLI commands: "./src/command.ts"
"kazibee" Optional config: permissions and setup
Complete example:
{
"name": "my-plugin",
"version": "1.0.0",
"type": "module",
"main": "./src/index.ts",
"command": "./src/command.ts",
"kazibee": {
"permissions": "./permissions.json",
"setup": "./setup.ts"
}
}
Setup scripts
The optional setup field points to a script that runs once at install or link time, before permission prompting.
The script receives an env object and can set key-value pairs that become SYSTEM-level environment variables for the tool.
SYSTEM values have the lowest priority and are overridable by GLOBAL, ENV, and LOCAL sources.
Use setup scripts to provide sensible defaults that users can override.
export default async (env: Record<string, string>) => {
env.DATABASE_URL = "sqlite://local.db";
env.DEFAULT_TIMEOUT = "5000";
};
The setup script runs in the host process (not the sandbox). Existing env values are passed in so the script can modify or extend them on subsequent installs.