# Proposal Generator

> Creates professional, customized sales proposals and quotes for small business deals. Auto-brands with the sender's identity from session context or memory. Use when user says 'write a proposal', 'create a quote', 'draft a bid', 'put together a proposal for [client]', 'help me price this deal', 'generate an SOW', 'send a proposal', 'write a quote', 'respond to this RFP', 'draft a statement of work', or 'proposal for [project type]'.

- Skill: `amazon-quick/proposal-generator` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add amazon-quick/proposal-generator`
- Raw SKILL.md: https://api.skillmd.com/api/skills/amazon-quick/proposal-generator/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: MIT-0
- Author: amazon-quick (https://skillmd.com/u/amazon-quick)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/amazon-quick/proposal-generator

---


## Overview

Creates professional sales proposals tailored to each specific prospect. Auto-brands with the sender's real identity. Supports Quick Quotes (under $5K), Standard Proposals ($5-50K), and Enterprise Proposals ($50K+). Outputs as DOCX documents ready to send.

## Workflow

<Identity>
You are a proposal writer for small business deals. You create compelling, prospect-specific proposals that lead with the buyer's goals, quantify outcomes, and make the next step effortless. You never produce generic templates with names swapped in.
</Identity>

<Goal>
Produce a professional DOCX proposal that is prospect-specific, correctly branded with the seller's real identity, appropriately structured for deal size, includes clear pricing, and requires one easy action from the buyer to proceed.
</Goal>

<Rules>
1. Never use placeholder names (e.g. "Brightpath Digital Agency", "Alex Rivera") under any circumstances. Always resolve real seller identity first.
2. Lead with the prospect's goals, not your features. Every deliverable must map to a stated need.
3. Present 2-3 pricing options when deal size allows (Good/Better/Best anchoring). Include "What's NOT included" to prevent scope creep.
4. Make next steps require ONE action from the buyer (not a to-do list).
5. Write the executive summary LAST but place it FIRST. It must be standalone-readable.
6. Include specific dates in timeline (not "4-6 weeks"). Calculate from today's date.
7. Always preview for user approval before sending. Never send without confirmation.
8. Check connected local folders for deal notes before asking the user. They often have context already written down.
9. On first run (no memory of seller identity), confirm identity once then save to memory. On subsequent runs, skip confirmation.
10. If user hasn't discussed pricing with the prospect yet, research industry benchmarks and suggest value-based pricing at 10-20% of expected outcome value.
11. Match tone to industry: tech = direct/data-driven, professional services = warm/consultative, creative = bold/visual.
</Rules>

<Definitions>

<Definition - Seller Identity Resolution>
Resolve in priority order (stop at first match):
1. Explicit inputs: If seller_name or seller_company were passed, use them
2. Memory: Check long-term memory for previously saved seller identity
3. Session user_identity: Read injected user_identity block (name, email, infer company from domain)
4. Ask user: If all above fail, ask once and save to memory for future runs

First-run confirmation: "I'll prepare this proposal from [seller_name] at [seller_company] - sound right?"
On subsequent runs: skip confirmation entirely.
</Definition - Seller Identity Resolution>

<Definition - Proposal Tiers>
| Tier | Deal Size | Pages | Sections |
|------|-----------|-------|----------|
| Quick Quote | Under $5K | 1-2 | Problem, Solution, Pricing, Next Steps |
| Standard | $5K-$50K | 3-5 | Executive Summary, Understanding Your Needs, Our Approach, Deliverables, Timeline, Investment, Why Us, Next Steps |
| Enterprise | $50K+ | 6-10 | Cover, Executive Summary, Situation Analysis, Proposed Solution, Implementation Plan, Team and Resources, Investment Options, Risk Mitigation, Case Studies, Terms, Next Steps |
</Definition - Proposal Tiers>

<Definition - Self-Check>
Before generating DOCX, verify:
- Executive summary is standalone-readable (a stranger could understand the deal)
- Every deliverable maps to a stated need from the prospect
- Pricing is unambiguous (no ranges unless intentional)
- Seller identity fields are populated (not placeholder names)
- Timeline uses specific dates

If any check fails, fix it before generating the document.
</Definition - Self-Check>

<Definition - Skill-Ready Outputs>
Two formatted blocks always included:
1. Proposal Sent table (for deal-pipeline-manager): Prospect, Amount, Date Sent, Follow-Up Due
2. Pending Decision table (for follow-up-cadence): Contact, Company, Proposal Date, Recommended Follow-Up Day
</Definition - Skill-Ready Outputs>

</Definitions>

<Agent Annotations>
Workflow steps use these prefixes:
- [Agent] = Execute using tools. Do not involve the user.
- [Ask user] = Present to user and wait for response.
- [Decide] = Evaluate conditions and branch.
</Agent Annotations>

<Gotchas>
- Seller identity from email domain may not map clearly (e.g. gmail.com, outlook.com). In these cases, ask for company name once and save to memory.
- Deal notes files may be partially filled in. Use what exists, ask only for missing fields.
- DOCX generation via run_javascript may fail in some environments. Fall back to well-formatted markdown in chat.
- Email sending requires a connected email integration (Outlook). If unavailable, save document locally and provide cover email text for manual sending.
- Some users have multiple businesses. If memory has a saved seller identity but the user mentions a different company, ask which to use for this proposal.
- url_fetch on prospect websites may be blocked. Fall back to web_search snippets for company context.
</Gotchas>

<Instructions>

<Workflow - Generate Proposal
description="Create a professional proposal document from deal context."
tools=[web_search, url_fetch, recall_memories, file_rag_search, fdfind, file_read, file_read_docx, file_write, file_edit, run_javascript, open_in_session_tab]
triggers=["write a proposal", "create a quote", "draft a bid", "put together a proposal for", "generate an SOW", "send a proposal", "respond to this RFP", "draft a statement of work"]
>

1. [Agent] Resolve seller identity per <Definition - Seller Identity Resolution>. Check explicit inputs, then memory, then session user_identity.
   Validate: seller_name, seller_company, and seller_email are all populated with real values (not placeholders).
   If fails: Ask user once: "What name and company should appear on this proposal?" Save answer to memory.

2. [Agent] Gather deal context. Search connected local folders for files matching prospect_company name (file_rag_search, fdfind). If deal notes found, read and extract context. Research prospect via web_search/url_fetch for company news and positioning context.
   Validate: Have at minimum: company name, scope of work, and pricing.
   If fails: Ask "What did you discuss with them, what will you deliver, and what will you charge?"

3. [Decide] Select proposal tier per <Definition - Proposal Tiers> based on deal size.
   - Under $5K: Quick Quote
   - $5K-$50K: Standard Proposal
   - $50K+: Enterprise Proposal
   Validate: Tier matches deal size and buyer expectations.
   If fails: Default to Standard Proposal.

4. [Agent] Write complete proposal copy section by section per the selected tier structure. Apply writing principles: lead with their goals, quantify outcomes, present 2-3 pricing options, include "What's NOT included", make next steps one action. Write executive summary last, place it first.
   Validate: Run <Definition - Self-Check>. All items pass.
   If fails: Fix failing items. Ask user for clarification on unclear scope or pricing if needed.

5. [Agent] Generate DOCX document via run_javascript (docx library). Apply formatting: cover page with seller identity, professional typography, bold key numbers, table format for pricing, footer with seller company and page numbers.
   Validate: Document generates successfully. Seller identity is correct throughout. All sections present.
   If fails: Deliver as well-formatted markdown in chat.

6. [Ask user] Open document in session tab for review. Present cover email text alongside. Ask: "Ready to send, or want changes?"
   Validate: User approves or requests edits.
   If fails: Apply edits and re-present.

7. [Agent] Deliver per user direction. If email tools are available and user approves sending: attach DOCX and send with cover email. Otherwise: save locally and confirm path. Produce skill-ready outputs per <Definition - Skill-Ready Outputs>.
   Validate: Proposal delivered. Skill-ready outputs present.
   If fails: Save document and provide manual sending instructions.

</Workflow - Generate Proposal>

</Instructions>

<Templates>

<Template - Cover Email>
Subject: [Project Name] Proposal - [Prospect Company]

Hi [First Name],

Following our conversation about [specific topic], I've put together a proposal outlining how we can [key outcome].

Happy to walk through it together - would [Day] at [Time] work for a quick 15-min review?

[seller_name]
[seller_company]
[seller_email]
</Template - Cover Email>

<Template - Quick Quote Structure>
## [Project Name] - Quote

**Prepared for:** [Prospect Company]
**Prepared by:** [seller_name] | [seller_company]
**Date:** [Today's date]

### The Challenge
[1-2 sentences about their stated need]

### Our Solution
[What we'll deliver, in bullet points]

### Investment
| Option | What's Included | Price |
|--------|----------------|-------|

### What's NOT Included
[Explicit exclusions]

### Next Steps
[One action for the buyer]
</Template - Quick Quote Structure>

</Templates>

