jobs-create-profile

Turn a plain-language self-description (or pasted CV) into a stored candidate profile, and manage existing profiles. Use when the user says "set up my profile", "here's my CV", "update my preferences", "what's in my profile", or "switch profile". The saved profile is what /jobs-evaluate and /jobs-digest score offers against.

solid-company/solid-jobs-skills7 installsMITSynced Aug 22

Works with

Claude CodeCursorCodex CLIGitHub CopilotGemini CLI
---
name: jobs-create-profile
description: Turn a plain-language self-description (or pasted CV) into a stored candidate profile, and manage existing profiles. Use when the user says "set up my profile", "here's my CV", "update my preferences", "what's in my profile", or "switch profile". The saved profile is what /jobs-evaluate and /jobs-digest score offers against.
license: MIT
---

# jobs-create-profile

Capture who the user is and what they want, store it as a profile in the database,
and switch between profiles. Profiles are the input to `/jobs-evaluate` and
`/jobs-digest` — every offer is graded against the active profile.

Resolve `sjctl` in this order: (1) on `PATH`, (2) `~/.solid-jobs-skills/bin/sjctl[.exe]`, (3) `./sjctl[.exe]` in the repo. If none exist, install it and use the printed path:
- macOS/Linux: `curl -fsSL https://raw.githubusercontent.com/solid-company/solid-jobs-skills/v0.6.0/scripts/install-sjctl.sh | bash`
- Windows: `irm https://raw.githubusercontent.com/solid-company/solid-jobs-skills/v0.6.0/scripts/install-sjctl.ps1 | iex`
- Dev fallback (Go, inside repo): `go run ./cmd/sjctl`

Profiles live in the database (the `profiles` table), not in a file — these
commands are the only thing that reads or writes them.

## What a profile contains

Fill these fields — they map one-to-one onto the dimensions `/jobs-evaluate`
scores, so the more concrete they are, the better the grades:

- **Role & seniority** — target roles, seniority, years of experience.
- **Skills** — strong, working, learning/willing.
- **Compensation** — minimum acceptable (monthly, gross), target, contract
  preference (B2B / employment / either).
- **Location & work mode** — base city, remote/hybrid/onsite, relocation.
- **Languages**.
- **Deal-breakers** — hard caps (e.g. below minimum salary, onsite-only). These
  cap an offer's grade in `/jobs-evaluate`, so be explicit.
- **Nice-to-haves**.

The layout to follow is `config/profile.md` in the repo — match its headings.

## Create or update a profile from natural language

1. Gather the fields above from what the user wrote (or pasted CV text). Ask only
   for the missing essentials — at minimum role, seniority, minimum salary, work
   mode, and any deal-breakers.
2. Write the filled markdown to a **temp file** (e.g. the OS temp dir).
3. Save it:
   - New profile: `sjctl profile add <name> --file <tempfile>` (add `--default` if
     it's their first/main profile).
   - Existing profile (replace its content): `sjctl profile import <name> <tempfile>`.
   Check `sjctl profile list --json` first to decide which.
4. Delete the temp file.
5. Show the user a short summary of what was saved and which profile is now default.

## Manage profiles

| Intent | Command |
|--------|---------|
| List profiles (default marked) | `sjctl profile list --json` |
| Show one profile's content | `sjctl profile show [name] --json` |
| Switch the active profile | `sjctl profile set-default <name>` |

Multiple profiles are useful for trying different strategies (e.g. "backend-remote"
vs "anything-that-pays"); `/jobs-evaluate` and `/jobs-digest` use the default unless
called with `--profile <name>`.

## After saving

Tell the user the profile is live: `/jobs-evaluate` will grade offers against it,
and `/jobs-digest` will rank new offers by it. Suggest running a `/jobs-search` and
then evaluating a result to see the profile in action.

More Performance skills

seo-audit

coreyhaines31/marketingskills

When the user wants to audit, review, or diagnose SEO issues on their site. Also use when the user mentions "SEO audit," "technical SEO," "why am I not ranking," "SEO issues," "on-page SEO," "meta tags review," "SEO health check," "my traffic dropped," "lost rankings," "not showing up in Google," "site isn't ranking," "Google update hit me," "page speed," "core web vitals," "crawl errors," or "indexing issues." Use this even if the user just says something vague like "my SEO is bad" or "help with SEO" — start with an audit. For building pages at scale to target keywords, see programmatic-seo. For adding structured data, see schema. For AI search optimization, see ai-seo.

195.1k

competitor-profiling

coreyhaines31/marketingskills

When the user wants to research, profile, or analyze competitors from their URLs. Also use when the user mentions 'competitor profile,' 'competitor research,' 'competitor analysis,' 'profile this competitor,' 'analyze competitor,' 'competitive intelligence,' 'competitor deep dive,' 'who are my competitors,' 'competitor landscape,' 'competitor dossier,' 'competitive audit,' or 'research these competitors.' Input is a list of competitor URLs. Output is structured competitor profile markdown files. For creating comparison/alternative pages from profiles, see competitors. For sales-specific battle cards, see sales-enablement.

65.8k

vercel-optimize

vercel-labs/agent-skills

Use for Vercel cost and performance optimization on deployed projects, especially Next.js, SvelteKit, Nuxt, and limited Astro apps. Collect Vercel metrics, usage, project config, and code scan results first; investigate only metric-backed candidates; produce ranked recommendations grounded in verified files and version-aware Vercel/framework docs. Trigger for Vercel bill reduction, slow or expensive routes, caching opportunities, Function Invocations, Build Minutes, Fast Data Transfer, Core Web Vitals, Bot Management, Fluid compute, or cost breakdown requests.

59.3k

← All Performance skills

Check your AI visibility

One URL in, a 0–100 score and the exact fixes out.

RUN THE CHECK

Browse all the tools

15 tools across six categories
13 of them never send your data anywhere

Free · No signup · No trial clock

SEE THE DIRECTORY