Documentation

Prompts & Templates

Prompts are the core unit in Promptmark. Each prompt has content, metadata, and optional template variables that make it reusable.

Creating a Prompt

Navigate to New Prompt and fill in:

  • Title — A descriptive name for your prompt
  • Content — The prompt text. Use {{variable}} syntax to create template variables
  • Type — Categorize the prompt (see types below)
  • Tags — Comma-separated labels for organization
  • Notes — Private notes about the prompt’s purpose or usage
  • Collection — Optionally assign to a collection

Prompt Types

Promptmark supports 8 prompt categories:

Type Description Use Case
General Default type Catch-all for uncategorized prompts
System System/instructions AI model system prompts and instructions
Query Questions and searches Research queries, Q&A prompts
Text-to-Image Image generation DALL-E, Midjourney, Stable Diffusion prompts
Text-to-Video Video generation Sora, Runway, Pika prompts
Text-to-Speech Voice synthesis TTS prompts and voice descriptions
Text-to-Code Code generation Programming and code-related prompts
Agent AI agent instructions Autonomous agent system prompts

Templates

Any prompt containing {{variable}} syntax becomes a template. Templates are prompts with fill-in-the-blank variables that make them reusable across contexts.

Review this {{language:enum:Python,JavaScript,Go,Rust}} code for {{focus:enum:bugs,performance,security}}:

{{code:text}}

When you render a template, Promptmark generates a form for each variable. See Template Variables for the complete syntax specification.

Template vs. Prompt

  • is_template = true — Shows in the Templates section, has a “Use Template” flow
  • is_template = false — Regular prompt (may still contain variables)

Visibility and Publishing

Visibility Levels

Setting Who Can See URL Pattern
Private (default) Only you N/A
Public Anyone with the link, shows on your profile /p/{id}
Remixable Public + others can create derivatives /p/{id}

Publishing Flow

When you make a prompt public, Promptmark runs safety scans:

  1. Layer 1 (Local) — Runs on every save. Checks for:

    • PII — Personal identifiable information (emails, phone numbers, SSNs)
    • Injection — Prompt injection patterns
    • Secrets — API keys, tokens, passwords
  2. Layer 2 (API) — Runs on publish if HUGGINGFACE_API_KEY is configured:

    • Violence, harassment, self-harm, dangerous content

Scan Flags

Each scan category uses a trinary flag:

Value Status Meaning
0 Clean No issues detected
1 HAS Active issue — blocks publishing
2 HAD Acknowledged — publishing allowed

To publish, all flags must be 0 (clean) or 2 (acknowledged). You can acknowledge a flag via the prompt detail page or the acknowledge_scan MCP tool.

Remix and Lineage

Remixing creates a private copy of a public prompt in your library with full lineage tracking:

  • Original must have is_remixable = true
  • Remix is a new prompt owned by you with is_remix = true
  • Lineage tracked via remixed_id (original prompt ID) and source_metadata
  • Remixes appear in your Remixes dashboard section

Version History

Promptmark automatically snapshots prompts. You can:

  • View all versions of a prompt
  • Compare versions
  • Restore any previous version (creates a snapshot of current state first)
  • Create explicit major versions with descriptions

Fields Reference

Field Type Default Description
title string (required) Prompt title
prompt string (required) Prompt content
notes string "" Private notes
type_id string "" (General) Prompt type
tags JSON array [] Tag list
collection_id string null Collection assignment
is_public boolean false Public visibility
is_remixable boolean false Allow remixing
is_template boolean false Template flag
is_draft boolean false Draft status
self_rating float 2.5 Self-rating (1-5)
models JSON array [] Designed-for models