Skip to content

Prompd/prompd-app

Repository files navigation

Prompd

A local-first desktop application for creating, executing, and deploying AI workflows. Build composable prompts with visual editing, a professional code editor, and package-based inheritance.

What is Prompd?

Prompd brings software engineering practices to AI prompt development. Instead of managing prompts as loose text files, Prompd treats them as structured, versioned, composable documents with typed parameters, inheritance, and dependency management.

Everything runs locally. Your API keys, prompts, and data never leave your machine. LLM calls go directly from Prompd to provider APIs with zero intermediaries.

Platform: Pre-built binaries are currently Windows only. Mac and Linux builds are coming soon. You can build from source on any platform today.

Download

Download for Windows | Build from Source

Requirements: Windows 10+ | 4GB RAM | 500MB disk space

Design View

Key Features

  • Visual Workflow Canvas - Drag-and-drop editor with 27 node types: prompts, agents, parallel execution, loops, conditionals, error handling, database queries, MCP tools, and more
  • Dual Code/Design View - Switch between a WYSIWYG design editor and Monaco code editor with IntelliSense, syntax highlighting, and package completions
  • 10 LLM Providers - OpenAI, Anthropic, Google Gemini, Groq, Mistral, Cohere, Together AI, Perplexity, DeepSeek, and local Ollama — plus any OpenAI-compatible endpoint
  • Package Inheritance - Prompts can inherit from and extend other prompts, just like classes in software: inherits: "@prompd/core@1.0.0/prompts/base.prmd"
  • Execution History - Track every run with cost tracking, success rates, timing, and full input/output history
  • MCP Integration - Connect to Model Context Protocol servers for tool discovery and execution
  • Workflow Deployment - Package and deploy workflows as persistent background services with cron scheduling and webhook triggers
  • Registry - Search, install, and publish prompt packages via PrompdHub
  • Offline Support - Full functionality without internet after initial setup
  • Database Nodes - Query MongoDB, PostgreSQL, MySQL, SQLite, and Redis directly from workflows

Screenshots

Workflow Canvas Code View
Workflow Canvas - Visual node editor with parallel branching Code View - Monaco editor with IntelliSense and YAML validation
Execution Package Inheritance
Execution - Run history with cost tracking and output preview Package Inheritance - Versioned prompt dependencies

Quick Start

Prerequisites: Node.js 18+

# Clone the repository
git clone https://github.com/Prompd/prompd-app.git
cd prompd-app

# Build local packages (required before frontend)
cd packages/scheduler && npm install && npm run build
cd ../react && npm install && npm run build

# Launch the desktop app
cd ../../frontend && npm install
npm run electron:dev

The app opens with a setup wizard that walks you through configuring your first API key and creating a prompt.

File Formats

Extension Description Structure
.prmd Prompt files YAML frontmatter + Markdown body
.pdflow Workflow definitions YAML with visual node/edge data
.pdpkg Package archives ZIP bundles with manifest.json

All file references (inherits:, context:, {% include %}) resolve relative to the containing file's directory.

Tech Stack

Component Technology
Frontend React 18 + TypeScript + Vite
Desktop Electron 40
State Zustand with Immer
Code Editor Monaco Editor
Workflow Canvas XYFlow (React Flow)
Prompt Compiler @prompd/cli
Backend (optional) Node.js + Express + MongoDB

Architecture

User Action -> Electron IPC -> Local Execution
                             -> Direct HTTPS to LLM APIs
                             -> @prompd/cli for compilation
                             -> SQLite for deployment state

The backend API is optional and only used for provider/model list updates, registry package search, and cloud sync features. All core operations (compilation, execution, file management, scheduling) run entirely in the Electron main process.

Development

Project Structure

prompd-app/
├── frontend/               # Electron + React application
│   ├── src/modules/        # Components, services, editor
│   ├── src/stores/         # Zustand state management
│   └── electron/           # Main process (IPC, services)
├── packages/
│   ├── react/              # @prompd/react - Chat UI components
│   └── scheduler/          # @prompd/scheduler - Deployment management
├── backend/                # Optional REST API
└── docs/                   # Documentation

Commands

# Frontend
cd frontend
npm run dev              # Vite dev server on :5173
npm run electron:dev     # Desktop app with hot reload
npm run electron:build:win   # Windows installer (NSIS + portable)
npm run electron:build:mac   # macOS (DMG + zip)
npm run electron:build:linux # Linux (AppImage + deb)

# Backend (optional)
cd backend
npm run dev              # Development server on :3010
npm test                 # Jest tests (requires MongoDB)

# Packages
cd packages/react && npm run dev    # Watch mode
cd packages/scheduler && npm run dev # Watch mode

Environment Setup

Copy the example files and configure your values:

cp frontend/.env.example frontend/.env
cp backend/.env.example backend/.env    # Only if using backend

At minimum, you need one LLM provider API key (e.g., Anthropic or OpenAI) configured in ~/.prompd/config.yaml or your workspace .env file.

Documentation

License

Elastic License 2.0 (ELv2) - see LICENSE for details.