Skip to main content
ClaudeWave
Skill853 repo starsupdated yesterday

proposal-writer

The proposal-writer skill generates customized service business proposals, quotes, scopes of work, and engagement letters by structuring project understanding, solution overview, deliverables, timeline, pricing, and terms. Use it when a client requests a formal proposal document for web development, consulting, trades, professional services, or creative work, providing the skill with client details, their stated needs, your recommended approach, pricing, and timeline to produce a professional winning document.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/jezweb/claude-skills /tmp/proposal-writer && cp -r /tmp/proposal-writer/plugins/writing/skills/proposal-writer ~/.claude/skills/proposal-writer
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Client Proposal Writer

Produces proposals for service businesses — web development, consulting, trades, professional services, creative agencies. The goal is a document that wins the work by showing you understood the problem, have a clear plan, and are easy to work with.

## Before You Start

Gather these inputs. Ask for anything missing:

1. **Client name and business** — who is this for, what do they do
2. **What they asked for** — the brief, the problem, the conversation summary
3. **What you are proposing** — your recommended solution at a high level
4. **Pricing** — your numbers, or ask for guidance on range
5. **Timeline** — how long, any fixed deadlines
6. **Tone** — match the client relationship (new vs existing, corporate vs casual, local tradie vs enterprise)

If the user has notes from a discovery call or email thread, use those to write the "project understanding" section in the client's own language.

---

## Proposal Structure

Present sections in this order. Every section earns its place — cut any that do not apply.

### 1. Project Understanding

This is the most important section. It proves you listened. Restate the client's problem in their words, not yours. Show you understand what they are trying to achieve, not just what they asked you to build.

**Too corporate:**
> We understand that your organisation is seeking to leverage digital transformation to enhance customer engagement across multiple touchpoints and drive sustainable growth through an integrated online presence.

**Right tone:**
> You have been running the business for 12 years on word-of-mouth alone, and it has worked — you are booked out most weeks. The problem is that when someone searches "plumber Newcastle" you do not show up, and you are losing jobs to competitors with half your experience. You want a website that shows up in local search and makes it easy for people to call or book online.

Rules for this section:
- Use the client's language, not industry jargon
- Reference specific details from the conversation ("you mentioned", "as we discussed")
- State the business problem, not just the technical requirement
- Keep it to 2-3 short paragraphs

### 2. Proposed Solution

High-level description of what you will do and why this approach makes sense for them. This is the "what and why", not the detailed scope.

Connect the solution back to their problem. "Because you need local customers to find you, we will build the site on WordPress with a focus on local SEO structure from day one" is better than "We will build a WordPress website with SEO."

One to two paragraphs. Save the detail for the scope section.

### 3. Scope and Deliverables

Numbered list of specific items the client will receive. Each item should be concrete enough that both parties can agree on whether it was delivered.

**Too vague:**
> - Website design and development
> - SEO optimisation
> - Ongoing support

**Right level of detail:**
> 1. Custom WordPress website — up to 8 pages (Home, About, Services x4, Contact, Blog)
> 2. Mobile-responsive design matching your brand colours and logo
> 3. Local SEO setup — Google Business Profile optimisation, schema markup on all pages, location-based meta titles
> 4. Contact form with email notifications to your nominated address
> 5. Online booking integration with your existing Calendly account
> 6. Basic analytics setup (Google Analytics 4 + Google Search Console)
> 7. 30-minute training session on how to update content yourself
> 8. 30 days of post-launch support for bug fixes and minor adjustments

**What is NOT included** is just as important as what is. Add an exclusions note at the bottom of this section:

> **Not included in this scope:** Ongoing content writing, paid advertising setup or management, additional pages beyond the 8 listed above, custom functionality not described here. These can be quoted separately if needed.

### 4. Timeline

Phases with durations or target dates. Show the client what happens when.

| Phase | Duration | What happens |
|-------|----------|--------------|
| Discovery and planning | Week 1 | Content gathering, sitemap sign-off |
| Design | Weeks 2-3 | Homepage mockup, revision, remaining pages |
| Development | Weeks 3-5 | Build, integrations, internal testing |
| Review and launch | Week 6 | Client review, revisions, go-live |

If there is a fixed deadline (event, season, campaign), state it and work the timeline back from it. Flag any dependencies on the client: "This timeline assumes content and images are provided by [date]."

### 5. Investment

Frame pricing as an investment, not a cost. Present confidently — no hedging, no apologising for the number.

Choose the pricing format that suits the project:

**Single price (simple projects):**
> **Investment: $4,500 + GST**
>
> This covers everything listed in the scope above — design, development, SEO setup, training, and 30 days of post-launch support.

**Good / Better / Best packages (gives the client choice):**

| | Starter | Professional | Premium |
|---|---------|-------------|---------|
| Pages | 5 | 8 | 12 |
| Design | Template-based | Custom design | Custom + brand guide |
| SEO | Basic on-page | Local SEO package | Local SEO + content strategy |
| Support | 14 days | 30 days | 90 days |
| **Investment** | **$2,500** | **$4,500** | **$7,500** |

Package pricing works well when the client is unsure of scope. The middle option is typically where you want them to land — price it as the best value.

**Line items (transparency-focused):**

| Item | Investment |
|------|-----------|
| Design (homepage + 7 inner pages) | $1,800 |
| Development and integrations | $1,500 |
| Local SEO setup | $600 |
| Training and documentation | $300 |
| 30-day post-launch support | $300 |
| **Total** | **$4,500 + GST** |

Line items invite line-item negotiation ("Can we drop the training?"). Use when the client has asked for a breakdown or when transparency builds trust.

**Value-based framing** (optional addition to
cloudflare-apiSkill

Hit the Cloudflare REST API directly for operations that wrangler and MCP can't handle well. Bulk DNS, custom hostnames, email routing, cache purge, WAF rules, redirect rules, zone settings, Worker routes, D1 cross-database queries, R2 bulk operations, KV bulk read/write, Vectorize queries, Queues, and fleet-wide resource audits. Produces curl commands or scripts. Triggers: 'cloudflare api', 'bulk dns', 'custom hostname', 'email routing', 'cache purge', 'waf rule', 'd1 query', 'r2 bucket', 'kv bulk', 'vectorize query', 'audit resources', 'fleet operation'.

cloudflare-worker-builderSkill

Scaffold and deploy Cloudflare Workers with Hono routing, Vite plugin, and Static Assets. Describe project, scaffold structure, configure bindings, deploy. Use whenever the user wants to create a Worker project, set up Hono on Cloudflare, configure D1 / R2 / KV / Queues bindings, or troubleshoot Worker export syntax, API route conflicts, HMR issues, or deployment failures.

d1-drizzle-schemaSkill

Generate Drizzle ORM schemas for Cloudflare D1 databases with correct D1-specific patterns. Produces schema files, migration commands, type exports, and DATABASE_SCHEMA.md documentation. Handles D1 quirks: foreign keys always enforced, no native BOOLEAN/DATETIME types, 100 bound parameter limit, JSON stored as TEXT. Use when creating a new database, adding tables, or scaffolding a D1 data layer.

d1-migrationSkill

Cloudflare D1 migration workflow: generate with Drizzle, inspect SQL for gotchas, apply to local and remote, fix stuck migrations, handle partial failures. Use when running migrations, fixing migration errors, or setting up D1 schemas.

db-seedSkill

Generate database seed scripts with realistic sample data. Reads Drizzle schemas or SQL migrations, respects foreign key ordering, produces idempotent TypeScript or SQL seed files. Handles D1 batch limits, unique constraints, and domain-appropriate data. Use when populating dev/demo/test databases. Triggers: 'seed database', 'seed data', 'sample data', 'populate database', 'db seed', 'test data', 'demo data', 'generate fixtures'.

hono-api-scaffolderSkill

Scaffold Hono API routes for Cloudflare Workers. Produces route files, middleware, typed bindings, Zod validation, error handling, and API_ENDPOINTS.md documentation. Use after a project is set up with cloudflare-worker-builder or vite-flare-starter, when you need to add API routes, create endpoints, or generate API documentation.

tanstack-startSkill

Build a full-stack TanStack Start app on Cloudflare Workers from scratch — SSR, file-based routing, server functions, D1+Drizzle, better-auth, Tailwind v4+shadcn/ui. Use whenever the user mentions TanStack Start, asks to scaffold a full-stack Cloudflare app with SSR, wants an SSR dashboard, or asks for a React 19 + Cloudflare Workers app with file-based routing and server functions — even if they don't name TanStack Start specifically. No template repo — Claude generates every file fresh per project.

vite-flare-starterSkill

Scaffold a full-stack Cloudflare app from the vite-flare-starter template — React 19 + Hono + D1+Drizzle + better-auth + Tailwind v4+shadcn/ui + TanStack Query + R2 + Workers AI. Run setup.sh to clone, configure, and deploy. Use whenever the user wants a batteries-included Cloudflare full-stack app, vite-flare-starter scaffold, or a React + Cloudflare app with auth + database + Workers AI ready to go.