StillMade AIDeveloper docs
Browse documentation · SDK 0.1.0

CLI reference

All commands in the downloadable StillMade Block CLI.

Run commands

sh
node packages/block-cli/cli.js <command> <target> [argument] [options]

Run from the SDK folder, or add the extracted SDK to a project with npm install --save-dev <SDK folder> and call stillmade-block from npm scripts. Targets can be authoring folders or packed files, except where a command creates a new target. --help prints this list.

CommandArgumentBehavior
create ./folderA template (create --list shows them); omit for the text recipeWrite a complete folder: manifest, source, fixtures, a README and, where needed, tests/mocks.json and package.json
create-type ./type.jsonNoneWrite an editable connected Project Type example
validate targetOptional --mobileCheck the contract without executing behavior; --mobile adds the 320-pixel phone layout profile to the report
inspect targetNonePrint manifest/runtime or workflow support
test targetOptional --mockExecute fixtures and return the report; --mock (or a tests/mocks.json file) answers hosted calls with stand-ins
run targetOptional input.json, --mock; Blocks also accept --state file and --save-state new-fileExecute once and print the outputs (preview is the same command)
dev folderOptional --port 4800, --build "npm run build", and --live (with --site) to review each saved version in your StillMade accountPreview the interface with hot reload
ready targetNoneRun the Block builder contract readiness check: fixtures, bad input, cancellation, reopen, composition with real catalog Blocks; exits non-zero when FAILED or BLOCKED
pack targetOptional output path; add --original with an output.stillmade-block path for your own original implementationRequire passing tests, then write the file to import
remix targetOptional output pathWrite an editable draft copy with retained license and pinned lineage; nothing is executed

Templates

TemplateRuntimeStarts
reciperecipeClean up text with built-in steps; no code.
imagerecipeThicken the lines of an image with built-in image steps.
javascriptjavascriptCount words with a few lines of sandboxed JavaScript.
statefulrecipeNumber takes with memory saved between runs.
modulemoduleModern JavaScript (ES modules, async, typed arrays) in a Worker.
module-wasmmoduleA module that runs WebAssembly shipped beside its code.
module-hostedmoduleA module that calls hosted text and image generation as tools.
view-reactmoduleA React interface (frame view) on a module Block, bundled with esbuild.
view-htmljavascriptAn interface in plain HTML, CSS and JavaScript; no build step.
textcapabilityHosted text generation (text.generate) on the person's credits.
image-generatecapabilityHosted image generation with any catalog model.
video-generatecapabilityHosted video generation with any catalog model.
speechcapabilityHosted speech (audio.speech) with any catalog voice.
musiccapabilityHosted music generation (audio.music).
sfxcapabilityHosted sound effects (audio.sfx).
transcribecapabilityHosted transcription with word timings (audio.transcribe).
describe-imagecapabilityDescribe or compare up to four images (image.describe).
analyze-mediacapabilityVisual evidence from images or a video (media.analyze).
web-fetchcapabilityAnswer a question from one web page (web.fetch).
web-researchcapabilityResearch a topic with sources (web.research).
timeline-proposalcapabilityPropose Editor timeline edits the person reviews (timeline.propose).
outside-apimoduleCall an outside https API with the person's own key (net.fetch).
connectionmoduleCall a published OpenAPI adapter with the person's sign-in.
storagemoduleRemember values across runs in the project's Block storage.
trigger-mediacapabilityRuns on its own when a video is saved (media.saved trigger).
trigger-webhookjavascriptRuns when another service sends a webhook.
trigger-schedulejavascriptRuns on a schedule with the project's saved inputs.

Exit and output contract

In a terminal, success prints a readable summary and exits with code 0, and failure prints the error (with failed fixtures and a hint) to stderr and exits nonzero. When output is piped (scripts, coding agents) or with --json, success prints the JSON result object and failure prints a JSON object with error, optional code and report; --text forces readable text. create, create-type, pack and --save-state refuse to overwrite existing files.

Examples

sh
node packages/block-cli/cli.js create --list
node packages/block-cli/cli.js create ./outlines image
node packages/block-cli/cli.js test ./outlines
node packages/block-cli/cli.js dev ./outlines
node packages/block-cli/cli.js pack ./outlines outlines-1.0.0.stillmade.json
node packages/block-cli/cli.js create ./narration speech
node packages/block-cli/cli.js test ./narration --mock
node packages/block-cli/cli.js create-type ./workflow.json
node packages/block-cli/cli.js preview ./workflow.json

Importable formats

The CLI emits JSON (and .stillmade-module.json bundles for module Blocks), while StillMade also accepts reviewed ZIP source directories. Files outside the supported manifest, source, and fixture layout are not installed as executable dependencies.