upwork-search
SolidSearch Upwork via Playwright, smart-filter out low-quality and unresponsive clients, rank survivors by fit, and save them to the campaign as recommendations. Never submits a proposal.
AI & Automation 67 stars
17 forks Updated yesterday MIT
Install
Quality Score: 84/100
Stars 20%
Recency 20%
Frontmatter 20%
Documentation 15%
Issue Health 10%
License 10%
Description 5%
Skill Content
# Upwork Job Search & Recommend
Find Upwork jobs the user can win - qualify on fit **and** client quality, drop the junk, and save the keepers to the campaign for review. **Recommend only: never submit a proposal and never spend connects.** The user drafts a proposal (the `upwork-proposal` skill, launched per job from the campaign page) and submits manually.
## Setup
1. Follow `../_shared/setup.md` (`$JOBPILOT_API` is injected by the terminal).
2. Parse and strip the flags; the rest is the free-text query.
- `--board upwork.com` - required.
- `--max-jobs <N>` - cap on results to evaluate. Absent = unlimited (evaluate until results run dry).
- `--campaign <id>` - campaign to save to. The UI passes it; if absent, match the latest `source:"search"`, `status:"in_progress"` campaign on the query, else create one (a `source:"search"` create requires `config.resumeId` - default to the profile's `primaryResumeId`).
3. Resolve the board: `curl -fsS -H "authorization: Bearer $JOBPILOT_API_TOKEN" "$JOBPILOT_API/api/job-boards" | jq '.[] | select(.domain=="upwork.com")'`. No row → abort: "Upwork is not configured. Add it on /boards." If a `--campaign` was given, first command it to `failed` with `POST /api/campaigns/<id>/status {"status":"failed"}`.
## Phase 1: Parse Query
Extract role/skills, keywords, and preferences (hourly vs fixed, budget floor, client country). If vague, ask before searching.
## Phase 2: Search Upwork
1. `browser_navigate` to the board's `searchUrl`...
Details
- Author
- suxrobGM
- Repository
- suxrobGM/jobpilot
- Created
- 5 months ago
- Last Updated
- yesterday
- Language
- TypeScript
- License
- MIT
Integrates with
Similar Skills
Semantically similar based on skill content — not just same category
AI & Automation Solid
search
Search a chosen job board via Playwright, rank results by fit against the user's resume, and save them to the campaign so the user can review.
67 Updated yesterday
suxrobGM AI & Automation Solid
upwork-proposal
Write a short, targeted Upwork proposal from a job description and the user's resume, humanized for natural tone.
67 Updated yesterday
suxrobGM AI & Automation Listed
upwork
Builds an Upwork freelance profile and positioning: specialism, proof points and rate strategy. Use when setting up a profile or repositioning to win better work. Not for individual bids - use upwork-proposal.
1 Updated 5 days ago
prvthmpcypher