Quickstart

From zero to a deployed, running skill in about five minutes — install the CLI, scaffold a skill, deploy it, run it.

This is the fastest path from nothing to a deployed skill you can run. About five minutes, four commands. For the why behind each piece, read building-a-skillpack afterwards.

The whole loop is one skill: scaffold it, deploy it, run it. (When you're ready to ship several skills together as one bundle — a skillpack — that's an advanced step; the single-skill flow below is the default.)

0. Prerequisites

  • A Puras account — signup comes with $10 in free credits, no card needed, which is plenty for this whole guide.
  • Python 3.10+.

1. Install the CLI

bash
pip install puras

One package gives you the puras CLI (deploy / run / logs from your terminal) and the import puras runtime SDK your deployed skills use.

2. Log in

bash
puras login

It opens your dashboard's API-keys page — create a key, paste it, done. (In CI, skip login and set PURAS_API_KEY in the environment instead.)

3. Scaffold a skill

bash
mkdir my-skill && cd my-skill
puras init

init writes puras.yaml (the file binding this directory to its remote deployment) and scaffolds a starter skill:

my-skill/
├── skill.yaml   # the contract: input/output schemas, model, tools
└── SKILL.md     # the agent's system prompt (the entrypoint)
AGENTS.md        # orientation for coding agents working in this directory

Prefer a worked example over a blank slate? puras init --template hello-world scaffolds the full hello-world example instead — an agentic skill, a deterministic skill, a custom tool, and two subagents bundled together. It's what building-a-skillpack builds from scratch.

4. Deploy and run

bash
puras deploy
puras run my-skill -i prompt="Introduce yourself in one short paragraph."

deploy zips the directory and pushes an active deployment — in a single-skill directory the first deploy auto-creates the remote target, so there's no separate create step. run submits a job, waits, and prints the result — including exactly what the run cost. Long-running job? puras run --async returns the job id immediately and puras logs <job_id> streams its events. (To deploy to a specific target, pass --app <id|slug>.)

That's the loop: edit my-skill/, puras deploy, puras run. Every job also appears in your dashboard with outputs, a timeline, and an itemized receipt.

Next steps

  • building-a-skillpack — the full tour: deterministic skills, custom tools, subagents, examples, and bundling several skills into a pack.
  • skill-yaml-reference — every field your skill.yaml can declare.
  • cli-referencedeploy / run / logs / secrets / pull, flag by flag.
  • Working from an agent instead of a terminal? mcp-tools covers the same workflow over MCP.