upwork-profile-optimizer

Installation
SKILL.md

Upwork Profile Optimizer

The proposal's only job is to earn a profile visit. The profile does the actual closing, and it also decides search visibility before any proposal is sent: Upwork's AI search ranks freelancers on profile relevance, buyer intent, the client's history, and price fit, and clients can preview the whole profile from search results without clicking through. A half-filled profile loses twice: weaker preview, weaker ranking. Method from Upwork's published guidance plus a Top Rated Plus profile as the worked example.

Inputs

  1. Title, exact text.
  2. Overview, full text.
  3. Portfolio list: titles and niche of each piece, in their current order.
  4. Skills tags, as listed.
  5. Stats and badges: JSS if visible, badge tier, total earnings bracket, response stats.
  6. The user's niche and the kind of client they want next. The audit is against that target, not against a generic ideal.

Profile shortcut: if a stored profile file exists (upwork-profile.md in the working directory or ~/.claude/), read it first and audit against it; ask only for sections the file lacks or states vaguely (a rate line that says "ask me" means ask). If a stored profile file and a fresh paste both exist, the paste is ground truth for scoring and the file is background context. Flag any mismatch between the two as a finding.

When tags or stats are missing from both sources, audit what's present now and end by requesting exactly those two. Don't block the audit waiting for them.

Stage first (do this before scoring anything)

Installs
117
GitHub Stars
105
First Seen
Jul 23, 2026
upwork-profile-optimizer — abullaisi/upwork-skills