Agent skill
gig-proposal-writer
Generates personalized proposals for freelance gigs on Upwork, Freelancer, PeoplePerHour, and Guru.
Filed under Calls, demos and discovery.
From ekatasingh1107/b2b-gtm-skills · 99 skills · 2 · pushed 2026-04-11
What it does when it runs
Generates personalized proposals for freelance gigs on Upwork, Freelancer, PeoplePerHour, and Guru. References specific project requirements and includes relevant case studies.
Read from the skill and the 1 file bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.
- Keys and connectors you must supply
- None found.
- Hosts it reaches
- No third-party host appears in the skill or its bundled files.
- Tool permissions it declares
- No
allowed-toolsin the frontmatter. It only issues instructions, so there is nothing to bound. - Actions present in the files
- None. Instructions only.
Install it
View source on GitHub ↗git clone --depth 1 --filter=blob:none --sparse https://github.com/ekatasingh1107/b2b-gtm-skills.git /tmp/b2b-gtm-skills git -C /tmp/b2b-gtm-skills sparse-checkout set "skills/capabilities/gig-proposal-writer" mkdir -p ~/.claude/skills/gig-proposal-writer cp -R "/tmp/b2b-gtm-skills/skills/capabilities/gig-proposal-writer/." ~/.claude/skills/gig-proposal-writer/
Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗
The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.
The skill
Source on GitHub ↗Reproduced in full from ekatasingh1107/b2b-gtm-skills/blob/eae8dd0bb98da1c8e84abd297066a87015dd860f/skills/capabilities/gig-proposal-writer/SKILL.md, which is licensed MIT (repository). 534 words, 12 headings.
Gig Proposal Writer
Generates tailored proposals for freelance platform gigs. Each proposal references specific requirements from the project brief, includes a relevant case study, and asks an insightful question that proves you read the brief.
Prerequisites
agency.config.jsonpopulated (services, case studies, tone)- Gig details (title, description, budget, platform, URL)
Phase 0: Intake
Read agency.config.json:
agency.name,agency.tagline-- who we arecase_studies-- proof points to referenceoutreach.tone-- writing styleservices-- match gig to relevant service
Gather gig details:
- Platform (Upwork, Freelancer, PeoplePerHour, Guru, Fiverr)
- Project title
- Project description (full text)
- Budget (if specified)
- URL to the gig listing
Phase 1: Analyze the Brief
Read the project description and identify:
- Specific requirements (what they need built/fixed)
- Technology mentions (Shopify, WooCommerce, etc.)
- Timeline urgency signals
- Budget expectations
- Pain points or challenges mentioned
- Questions they asked or decisions they need help with
Phase 2: Match Case Study
Select the most relevant case study from case_studies:
- Match by industry (sports brand -> Kibi Sports)
- Match by service type (CRO -> CRO case study)
- Match by platform (Shopify -> any Shopify case study)
- If no close match, reference expertise without naming clients
Phase 3: Generate Proposal
Platform-Specific Rules
Freelancer:
- Mention milestone-based delivery to build trust
- Include realistic bid amount and timeline
- Under 200 words
PeoplePerHour:
- Be concise and punchy -- PPH rewards brevity
- Under 150 words
- Highlight hourly or fixed-price preference
Upwork:
- Reference specific requirements from the posting
- Include 2-3 bullet points of what you'll deliver
- Ask one smart question
- Under 200 words
Guru:
- Highlight relevant skills and past work
- Include portfolio reference
- Under 200 words
Fiverr:
- Match their request to your gig offering
- Under 100 words
Proposal Structure
- Hook -- Reference something specific from their brief (proves you read it)
- Relevant experience -- 1 sentence connecting your experience to their need
- Case study -- Brief proof point from a similar project
- Approach -- 2-3 sentences on how you'd tackle it
- Question -- One insightful question that shows expertise
- CTA -- Clear next step
Rules
- NEVER start with "I" or "My name is"
- Start with their problem or a specific observation about their project
- Reference at least 2 specific details from their brief
- Include a realistic bid and timeline
- No generic boilerplate
Phase 4: Output
Return JSON:
{
"proposalText": "the full proposal text",
"bidAmount": "$500",
"deliveryDays": 14,
"personalizationPoints": ["referenced their multi-currency requirement", "matched CRO need to Kibi case study"],
"platform": "Freelancer",
"wordCount": 180
}
Generate 2 variants. User picks the best.
Phase 5: Delivery
Based on platform:
- Browser (tools.browser_automation): Navigate to gig page, paste proposal, set bid
- Manual: Display proposal for copy-paste
Log to CRM via crm-writer:
- Add to
crm.tabs.outreach_logwith platform, gig URL, proposal status
Example Usage
Trigger phrases:
- "Write a proposal for this Freelancer gig"
- "Draft an Upwork proposal for [gig URL]"
- "Generate proposals for today's gig finds"
Files bundled with it
These load only when the skill asks for them, so they cost nothing until it runs.
Other skills for the same job
Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.
- sales-proposal by zubair-trabzada · 1,093
- thread-writer by OpenClaudia · 677
- show-hn-writer by Varnan-Tech · 626
- customer-story-writer by zapier · 334
- proposal-generation by shawnpang · 317
- personalization-writer by janskuba · 200
- writer by gtm-skills · 155
- seo-content-writer by thatrebeccarae · 130
Need help setting it up?
This page tells you what gig-proposal-writer does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.
Book a call →The directory stays free. There is nothing gated behind this.