Prompt Runner

A personal sales-workflow prototype that turns structured deal context into a finished prompt a user can inspect, copy, or open in another tool.

Multi-Tool Build Claude → Manus → AMP + Cursor + Claude Code

What this proves

  • Workflow: sales enablement, turning a prompt library into a structured tool a seller can use during deal work.
  • Build judgment: separates the reusable prompt structure from deal-specific inputs and makes the assembled result visible before the user decides where to use it.
  • Technical pattern: structured form-driven prompt assembly with named fields, live preview, history, copy actions, and provider links.
  • Buyer relevance: if your sales, CS, or RevOps team is using AI ad hoc and you want a structured workflow rather than another document to maintain, this prototype shows the pattern.

The Problem

Sales teams often already use tools like ChatGPT Enterprise, Claude for Work, or Gemini Business. The harder part is getting reps to write strong prompts. Most either type something vague or rebuild a good prompt from scratch every time.

Prompt libraries exist in Notion pages and Google Docs, but using them means copy-pasting a template, manually filling in deal context, and then pasting the assembled prompt into another tool. Too many steps, too much friction, and the prompt quality is inconsistent.

The Insight

The strongest sales prompts are structured templates built around deal context, not open-ended chats. A MEDDIC champion development plan needs the rep's read on the deal, the candidate's name, and their role. A competitive displacement email needs the competitor and the pain point. The template does the heavy lifting, but the deal context is what makes the output useful.

The finished prompt also doesn't need to stay inside one product. It can move to whichever tool the user chooses. So this isn't just a chat box. It's a form-based system that assembles a prompt and gives the user several ways to continue.

The Solution

Prompt Runner is a full-stack web app with 100+ prompt templates across 9 sales categories. Users pick a prompt, fill in deal-specific fields, and watch the finished prompt assemble in real time. Then they can open ChatGPT, Claude, or Gemini, or copy the prompt for use elsewhere. The prompts carry the methodology; the rep adds the deal context.

Data note: check the prototype's privacy notice and your organization's rules before entering deal information. Provider links don't verify which account is open or whether it's approved for that data.

How It Works

  1. Step 01

    Pick a prompt

    The rep starts from a structured template instead of trying to remember a strong prompt from scratch.

  2. Step 02

    Fill in deal context

    Named fields collect the exact context the template needs, from competitor details to champion roles.

  3. Step 03

    Preview the finished prompt

    The assembled prompt updates live, so users can see the final wording before it leaves the app.

  4. Step 04

    Copy it or open a provider

    The user can copy the prompt or open ChatGPT, Claude, or Gemini. Which tools and data are permitted remains the organization's decision.

The Product

Architecture

Frontend

React 19 with TypeScript, Tailwind CSS 4, and shadcn/ui, plus Wouter, React Hook Form, and Fuse.js for the interaction layer.

Backend / API

Express 4.21 serves the prompt catalog behind a stateless API with Helmet headers, while history and favorites stay in localStorage.

Database

SQLite via Drizzle and LibSQL/Turso stores the prompt library, field definitions, and category relationships.

Deployment

Vite 7 builds the catalog and prompt-assembly interface for deployment.

How the Prompt Handoff Works

Source
Prompt library Pre-authored templates encode the sales methodology and the field structure.
Rep context The user fills in the deal details that make the prompt relevant to the actual account.
Builder
Prompt assembler Prompt Runner combines the template and the deal inputs into a finished prompt the user can inspect.
Destination
User-chosen AI tool Provider links open ChatGPT, Claude, or Gemini with the prompt pre-filled.
Fallback copy path If the team uses something else, the user can copy the finished prompt anywhere.

Build Process

Prompt Runner came together in three stages. I used Claude to draft and refine the prompt library, covering more than 100 templates across 9 sales categories. Each one was built with named fields, placeholder text, and a template string that assembles the final output.

Manus handled the planning work: data model, API surface, component hierarchy, and routing. From there, I used Amp, Cursor, and Claude Code to build the app itself: React UI, Express API, Drizzle schema, search, and the prompt assembly flow.

Key Design Decisions

  • Visible prompt assembly: The user can inspect the finished prompt before deciding whether to copy it or open another tool.
  • Copy and provider links: The interface offers links to ChatGPT, Claude, and Gemini plus a copy action for other tools. Those are workflow conveniences, not a claim about an organization's security policy.
  • Form-driven assembly over free text: Structured inputs (deal context, competitor name, champion role) produce consistently better prompts than asking reps to write free-form context.
  • Browser history and favorites: localStorage keeps prompt history and favorites on the user's device. That persistence is still part of the data-handling design and needs an explicit retention decision before this pattern is used for sensitive work.
  • Category taxonomy from real sales methodology: The 9 categories (Prospecting, Social Selling, Referral Selling, Discovery, Qualification, Objection Handling, Competitive, Closing, Email Drafting) map to the actual stages of an enterprise sales cycle, not generic AI use cases.

Application Features

  • Category browser: 9 sales categories with prompt cards showing descriptions, field counts, and preview text. Visual hierarchy makes it easy to find the right prompt for the situation.
  • Live prompt preview: As users fill in fields, the complete prompt assembles in real time on the right side of the screen. There's no submit button because the output is always current.
  • Full-text search: Fuse.js indexes prompt titles, descriptions, categories, and field names. Search across the entire library from any screen.
  • One-click copy and routing: Users can copy the finished prompt or send it directly to ChatGPT, Claude, or Gemini.
  • History and favorites: Recently used prompts and starred templates persist locally for quick repeat use.

Tech Stack

Show the tools used on this build
React 19 TypeScript 5.6 Vite 7 Tailwind CSS 4 Framer Motion 12 Wouter 3 React Hook Form 7 TanStack React Query 5 Fuse.js 7 shadcn/ui Radix UI Express 4.21 Drizzle ORM SQLite / Turso Canvas Confetti PostHog

What It Demonstrates

  • Enterprise-safe AI enablement: Gives teams a practical way to use AI without sending client data through the wrong system.
  • Domain expertise encoded in software: Real sales methodology (MEDDIC, Challenger, SPIN, Sandler) baked into structured templates, not generic prompt suggestions.
  • Secure workflow design: The prompt gets built in one tool and executed in the customer's approved model environment.
  • Full-stack application: React frontend, Express API, Drizzle ORM, search indexing, and local persistence in one working product.

Browse more case studies

Want this pattern in your workflow?

Maps to: Workflow Prototype Sprint (1–2 weeks) or Context Audit (2–4 weeks).

If your team has paid AI seats but the prompts still live in Notion, Prompt Runner shows how I would turn that library into a structured tool: methodology in the template, deal context in the form, and a visible prompt the user can copy or open elsewhere. The engagement would start by scoping the highest-leverage prompts, designing the field structure, and mapping which data may go to which tools.