Skip to content

Quickstart

This walkthrough creates a tiny agent, deploys version 1, and waits for its first result.

You need:

  • Node.js 20 or newer
  • access to a Magmell account
  • the Magmell CLI built from the current repository package

Until the CLI is published to a package registry, build and link it locally:

Terminal window
cd clients/magmell
npm install
npm run build
npm link

Verify the executable:

Terminal window
magmell --help
Terminal window
magmell login \
--url https://api.magmell.siloga.cloud \
--email you@example.com

The CLI prompts for your password without echoing it and stores the resulting user session in your local Magmell configuration.

Terminal window
mkdir hello-agent

Choose either runtime. Python remains the default:

hello-agent/handler.py
import siloga_agent
def handle(input: dict) -> dict:
name = input.get("name", "world")
siloga_agent.log("creating greeting", name=name)
return {"message": f"Hello, {name}!"}

Magmell supplies the siloga_agent runtime in the execution environment. You do not add it to the deployment requirements.

hello-agent/handler.ts
import { log } from '@siloga/magmell-agent'
export function handle(input: { name?: string }) {
const name = input.name ?? 'world'
log('creating greeting', { name })
return { message: `Hello, ${name}!` }
}

The cloud compiler supplies its protected Agent SDK copy. Public local package installation is not available yet, so omit package.json when following this cloud quickstart. Node creation and dispatch must both be enabled in your environment’s capability response.

Terminal window
magmell deploy ./hello-agent \
--name hello-agent \
--version 1 \
--wait

For the TypeScript handler, select Node explicitly:

Terminal window
magmell deploy ./hello-agent \
--name hello-agent \
--version 1 \
--runtime node-22 \
--wait

--wait follows the asynchronous build and exits only when the deployment is ready or its build fails. A successful command prints the deployment ID and ready.

Terminal window
magmell run hello-agent \
--input '{"name":"Ada"}' \
--wait

The CLI resolves hello-agent to its latest active version, waits for the run, and prints:

{"message":"Hello, Ada!"}

List recent runs to find its number:

Terminal window
magmell runs list --deployment hello-agent

Then inspect the gateway phases and your handler log:

Terminal window
magmell runs events hello-agent#1

You now have an immutable deployment that can serve additional runs without another build.