proposal-generator
SkillDocs & knowledgeCreates 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]'.
Use proposal-generator in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add proposal-generator and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the proposal-generator skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by amazon-quick/amazon-quick-official-catalog in skills/sales/proposal-generator/SKILL.md and read by Ahel’s review.
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
<Definition - Seller Identity Resolution> Resolve in priority order (stop at first match):
- Explicit inputs: If seller_name or seller_company were passed, use them
- Memory: Check long-term memory for previously saved seller identity
- Session user_identity: Read injected user_identity block (name, email, infer company from domain)
- 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:
- Proposal Sent table (for deal-pipeline-manager): Prospect, Amount, Date Sent, Follow-Up Due
- Pending Decision table (for follow-up-cadence): Contact, Company, Proposal Date, Recommended Follow-Up Day </Definition - Skill-Ready Outputs>
<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"]
-
[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.
-
[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?"
-
[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.
-
[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.
-
[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.
-
[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.
-
[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>
<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>
Signals
- GitHub stars
- 50
- Forks
- 3
- Last commit
- Oct 2026
Advanced
- Item type
- skill
- Key
proposal-generator- Source
- github.com/amazon-quick/amazon-quick-official-catalog
github.com/amazon-quick/amazon-quick-official-catalog
Related picks
Skill · axoviq-ai
The pick for Wordhandoff
Skill · mattpocock
More in Docs & knowledgecanvas-design
Skill · anthropics
More in Docs & knowledgedoc-coauthoring
Skill · anthropics
More in Docs & knowledgepopups
Skill · coreyhaines31
More in Docs & knowledgewriting-for-agents
Skill · mattpocock
More in Docs & knowledge