Marketplace / Docs / Starter Templates

Starter Templates

Pre-built starter-kit ZIPs for every Singularity package type — download one, edit a few fields, and publish.

Jump to section

Pre-built starter-kit ZIPs for every Singularity package type — download one, edit a few fields, and publish.


Overview

Every starter template includes a pre-configured singularity.json manifest, a README.md, and the type-specific stub files you need to publish. Downloads are generated in your browser — no signup or login required.

If you'd rather scaffold from the command line, see snippbot marketplace init --type <type> in the Publishing Packages guide. The templates here are richer (real example code, opinionated layouts) while init produces a minimal scaffold.


Available Templates

Click any template below to download a ZIP. Each one unpacks into a directory with singularity.json, README.md, and type-specific files.


What's in a Template

Every ZIP contains at minimum:

  • singularity.json — the manifest with your placeholder publisher name, version 1.0.0, the correct type, and the type-specific fields the registry expects (e.g. agent_profile.system_prompt, tool.entrypoint, mcp_server.command).
  • README.md — a per-type readme that explains the layout and how to publish.

Type-specific stubs vary. For example:

  • Agent ProfilePROFILE.md with a worked example persona.
  • Tool — a Python or Node entrypoint plus a manifest describing its inputs.
  • MCP Server — a runnable MCP server scaffold (stdio transport).
  • Workflow — a step definition file with sample sequential stages.
  • Hook — an event handler stub for the supported lifecycle hooks.
  • Scheduled Job — a cron-style task with a runnable example.
  • Full Agent (Suite) — a bundled profile + tools + workflow as one package.
  • Sandbox Preset — a Docker-based environment definition.
  • Shared Asset — a static data package (prompts, datasets, knowledge bases).

Customizing a Template

Once you've unpacked a template:

  1. Edit singularity.json:
    • Replace @your-publisher in name with your actual publisher handle (find it with snippbot marketplace whoami).
    • Update displayName, description, category, and tags.
    • Adjust any type-specific fields the template included.
  2. Edit the type-specific stub files (e.g. fill in PROFILE.md, replace the tool entrypoint with real logic).
  3. Edit README.md to describe what your package does.
  4. From the package directory, run:
    snippbot marketplace login
    snippbot marketplace publish .
    
  5. (Optional but recommended) Sign your package before publishing — see Signing Your Package in the Publishing guide.

Templates vs. marketplace init

Both produce a publishable starting point — pick based on what you're doing:

marketplace init --type <type> Starter Templates (here)
Output Minimal singularity.json + .singularityignore Rich ZIP with manifest, README, type-specific stubs
Use when You know the manifest schema and want a blank slate You want a worked example to copy and edit
Channel type Available (--type channel) Not yet available as a template
Customization Edit one file Edit several files; replace example content

For most first-time publishers, downloading a template is faster. For teams with established patterns and tooling, init is cleaner.