Skip to content

reminix.json

reminix.json customizes a script. A folder publishes without one (Publishing a folder); add it when you want more than the defaults: a form with labels and examples for its inputs, a description and tags, the hosts and secrets it may use, a longer timeout, or how to run and install anything the folder can’t say. It sits beside the code; reminix publish reads it, and reminix init "<command>" writes a first one for you. To publish on every merge, see Publish from GitHub.

{
"slug": "unlock-account",
"name": "Unlock an account",
"description": "Lets a customer sign in again after too many attempts.",
"command": "python unlock.py {email}",
"inputSchema": {
"type": "object",
"required": ["email"],
"properties": {
"email": {
"type": "string",
"title": "Customer email",
"examples": ["jane@example.com"]
}
}
},
"hosts": ["api.yourapp.com"],
"tags": ["support", "accounts"]
}

What the script is called. The first publish creates it; later ones leave these as they are and change them in the app. Without them, the name comes from pyproject.toml or package.json, else the folder’s name.

FieldDescription
slugstring, requiredIts id in URLs and commands: lowercase letters, digits and dashes, unique in the workspace.
namestring, requiredWhat people see in the app.
descriptionstringWhat it does, in a sentence or two.

From the API's Create a script.

How it runs. Every publish uploads these as a new version.

FieldDescription
commandstringWhat a run executes. {name} is an input; [ … ] is left out when its inputs are empty. Run as arguments, never through a shell. Omitted: worked out from the folder, or a 400 saying what to add.
buildstringReplaces the usual install (requirements.txt, else pyproject.toml, into .deps; package.json with npm). Runs in the folder with the package registries reachable.
inputSchemaobjectThe inputs, as JSON Schema. Omitted: a required text input for each {name} in the command (optional inside [ … ]).
outputSchemaobjectA JSON Schema document.
hostsarrayThe only hosts the script may reach (HTTPS). Omitted: no network.
secretsobjectSecrets to attach to requests to some of hosts, by name. In each environment, the secret's value must allow at least one of them.
envarraySecrets the script reads as environment variables (only those whose owner allowed it).
timeoutnumberSeconds a run may take (default 30). Over 30 makes a LONG script: runs answer 202 at once and run durably, with live logs and progress, and can be cancelled.
tagsarrayWhen given, become the script's tags.

From the API's Upload a version.

The CLI fills in the rest: the folder’s files (without installed dependencies, caches or .env files) and the README.md beside reminix.json, which the script’s page shows.