create-proposal

Create a PandaDoc proposal for a client

6 stars

Best use case

create-proposal is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Create a PandaDoc proposal for a client

Teams using create-proposal should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/create-proposal/SKILL.md --create-dirs "https://raw.githubusercontent.com/Harmeet10000/skills/main/skills/writing-docs/create-proposal/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/create-proposal/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How create-proposal Compares

Feature / Agentcreate-proposalStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Create a PandaDoc proposal for a client

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

## Tool
**Script:** `execution/create_proposal.py`
**Usage:** Automatically generates PandaDoc proposals from structured input

## Process

1. **Gather Information**
   - The user may provide information in one of two formats:
     
     **Option A: Structured Bullet Points** (if user provides organized data)
     - Client First Name
     - Client Last Name
     - Client Email
     - Client Company
     - Project Title
     - 4 Key Problems (brief)
     - 4 Key Benefits (brief)
     - Project Duration
     - Project Value (Total)
     - Platform Costs
     - Investment Breakdown (Month 1, Month 2, Month 3+)
     
     **Option B: Call Transcript** (if user provides a sales call transcript)
     - Extract the following from the transcript:
       - Client information (name, company, email if mentioned)
       - Project context and title
       - 4 main problems/pain points discussed
       - 4 proposed solutions/benefits
       - Any financial terms discussed (duration, value, costs)
     - If any critical information is missing from the transcript, ask the user to provide it
   
   - If information is not already provided in either format, ask the user for the missing details

1b. **Research Client (Optional)**
   - **Goal:** Understand the client's brand voice and current context to personalize the proposal.
   - **Trigger:** If a website URL is provided or can be inferred from the client's email domain (and it's not a generic domain like gmail.com).
   - **Action:**
     - Use `read_url_content` to fetch the client's landing page or "About Us" page.
     - **Analyze**:
       - **Brand Voice:** (e.g., Professional/Corporate, Friendly/Startup, Technical/Niche)
       - **Keywords:** Key terms they use to describe their own value.
       - **Recent Context:** Any recent news or specific focus areas mentioned on the site.
   - **Output:** A brief "Client Research Summary" to be used in the next step.

2. **Generate Content**
   - Using the gathered information **and the Client Research Summary (if available)**, generate the following expanded content:
     - **Problem Expansions**: Expand each of the 4 problems into 1-2 strategic paragraphs (max 50 words each). 
       - **Contextualization:** Use the *Client Research Summary* to mirror their industry terms and brand voice where appropriate.
       - **Tone & Style Guidelines:**
         - Use direct "you" language (not third-person or passive voice)
         - Focus on revenue impact and dollar amounts wherever possible
         - Be specific and actionable rather than abstract
         - Think "revenue ops" mindset - quantify business impact
         - Example: "Right now, your top-of-funnel is converting very poorly to booked meetings. You have no problem generating opportunities; your problem is capitalizing on them. Even a few percentage-point improvement here would lead to many tens of thousands of dollars of additional income"
     - **Benefit Expansions**: Expand each of the 4 benefits into 1-2 implementation-focused paragraphs (max 50 words each).
       - **Tone & Style Guidelines:**
         - Use direct "you" language addressing the client
         - Emphasize ROI, payback period, and financial outcomes
         - Be specific about implementation and expected dollar impact
         - Focus on concrete deliverables and measurable results
     - **Slide Footer**: "Confidential | [Company] Strategic Initiative | [Date]"
     - **Contract Footer Slug**: "[Company]-[ProjectTitle]-[YYYY-MM]"
     - **Created Date**: Current date in YYYY-MM-DD format.

3. **Execute Proposal Creation**
   - **Tool:** `execution/create_proposal.py`
   - **Usage:** Save the JSON to a file and run: `python3 execution/create_proposal.py < input.json`
   - Construct a JSON object with the following structure:
     ```json
     {
       "client": {
         "firstName": "...",
         "lastName": "...",
         "email": "...",
         "company": "..."
       },
       "project": {
         "title": "...",
         "problems": {
           "problem01": "[Expanded Problem 1]",
           "problem02": "[Expanded Problem 2]",
           "problem03": "[Expanded Problem 3]",
           "problem04": "[Expanded Problem 4]"
         },
         "benefits": {
           "benefit01": "[Expanded Benefit 1]",
           "benefit02": "[Expanded Benefit 2]",
           "benefit03": "[Expanded Benefit 3]",
           "benefit04": "[Expanded Benefit 4]"
         },
         "monthOneInvestment": "...",
         "monthTwoInvestment": "...",
         "monthThreeInvestment": "..."
       },
       "generated": {
         "slideFooter": "...",
         "contractFooterSlug": "...",
         "createdDate": "..."
       }
     }
     ```
   - Run the python script:
     ```bash
     # Pass the JSON as a string to the script
     python3 execution/create_proposal.py <<'EOF'
     [JSON_CONTENT]
     EOF
     ```
   - **Note**: Ensure the JSON is valid and properly escaped if necessary.

4. **Send Follow-Up Email**
   - Immediately after proposal creation, send a follow-up email to the client using the template below.
   - Use `gmail.send_email` with `mimeType="text/html"` to send the email in HTML format.
   - **Email Template Structure:**
     - Subject: "Re: [Brief Project Context] Discussion"
     - Opening: Thank them for discussing their challenges/goals
     - Body: Break down the proposed solution into 2-4 numbered sections with clear headers
     - Each section should have:
       - **Bold section header** describing the deliverable (e.g., "1. Tool Consolidation Audit & Migration Plan")
       - Brief description of what it accomplishes
       - "Steps:" subheading followed by bullet points (use `<ul>` and `<li>` HTML tags)
     - Closing: "I'll send you a full proposal for the above shortly. Let me know if you have any questions or want to discuss further."
     - Signature: "Thanks, Nick"
   - **HTML Formatting Requirements:**
     - Use `mimeType="text/html"` parameter
     - Provide both `body` (plain text) and `htmlBody` (HTML version) parameters
     - In HTML: Use `<p>` tags for paragraphs, `<ul>` and `<li>` for bullet lists
     - Bold section headers ONLY using `<strong>` tags (e.g., `<strong>1. Tool Consolidation Audit &amp; Migration Plan</strong>`)
     - Do NOT bold body text or steps - only section headers
     - Avoid RFC 2822 plain text wrapping issues by using HTML format

5. **Notify User**
   - Show the "internalLink" to the user for review and editing in PandaDoc
   - Confirm that the follow-up email was sent successfully

Related Skills

create_PRD

6
from Harmeet10000/skills

Create a Product Requirements Document from conversation

create-auth-skill

6
from Harmeet10000/skills

Skill for creating auth layers in TypeScript/JavaScript apps using Better Auth.

Goal: Build an LLM-based RAG App

6
from Harmeet10000/skills

Here is the MVP Implementation Plan.

You are a professional Landing page designer who is very friendly and supportive.

6
from Harmeet10000/skills

Your task is to guide a beginner through planning and designing a landing page or personal portfolio.

Workflow & Productivity

You are a professional Chief Marketing Officer. Your task is to help a user start and grow their social media presence organically through a series of questions and generate a growthplan.md blueprint.

6
from Harmeet10000/skills

Follow these instructions:

Marketing Strategy

Convert this into a web based slide deck using reveal.js.

6
from Harmeet10000/skills

Use the following brand colour and logo.

technical-article-writer

6
from Harmeet10000/skills

Write compelling technical articles and blog posts for developer audiences. Use this skill whenever the user asks to write a blog post, technical article, or any long-form technical content. Also trigger when the user says 'write about [technical topic]', 'help me draft an article', 'turn this into a blog post', 'write a post about', 'I want to publish something about', or mentions writing for a developer audience. Covers the full pipeline: idea sharpening, hook/title generation, article structure, body drafting, and editing. Even if the user just says 'I want to write about X' without specifying format, use this skill. Do NOT use for platform-specific optimization, newsletter strategy, or ghostwriting voice matching.

substack-ghostwriting

6
from Harmeet10000/skills

Write, optimize, and grow Substack content — both newsletter issues (email-first) and web posts (web-first articles/essays). Covers ghostwriting with voice matching, Substack algorithm optimization, Notes strategy, email formatting, SEO, growth tactics, and monetization planning. Use when the user mentions Substack, newsletters, write a newsletter issue, Substack post, Substack article, web post on Substack, evergreen content, SEO for Substack, newsletter growth, Notes strategy, ghostwrite for, match someone's voice, write in the style of, newsletter monetization, paid subscribers, or any task involving Substack as a platform. Also trigger for general article/newsletter writing even if Substack isn't named explicitly, or when the user wants to adapt existing content (blog post, talk, thread) into newsletter or web post format. Do NOT use for generic blog post writing without a newsletter/Substack context (-> See samber/cc-skills@technical-article-writer skill).

press-release-writer

6
from Harmeet10000/skills

Write professional press releases for any occasion, media type, and country. Use when the user wants to write, draft, or improve a press release, communiqué de presse, media announcement, news release, or PR statement — including product launches, funding rounds, partnerships, crisis communications, earnings, executive hires, events, M&A, open source milestones, and media advisories. Covers all release types, media targets (print, digital/wire, broadcast, social/SMPR, trade press), and region-specific conventions (Western/Eastern Europe, Americas, Middle East, Africa, Asia, Oceania). Also trigger when the user says 'I need to announce something' or 'how do I tell the press about X.'

pdf

6
from Harmeet10000/skills

Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.

linkedin-ghostwriting

6
from Harmeet10000/skills

B2B LinkedIn ghostwriting — strategic interview, hook engineering, and post body. Use when the user wants to write LinkedIn content, create ghostwritten posts, ghostwrite for a founder or executive, develop a B2B social strategy, or needs hooks, post structures, or copywriting frameworks for LinkedIn. Apply when the user shares a story, result, or insight and wants it turned into a post.

docx

6
from Harmeet10000/skills

Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of 'Word doc', 'word document', '.docx', or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a 'report', 'memo', 'letter', 'template', or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.