Install
openclaw skills install @adibas03/jobsteadHelps a job-seeker decide whether a role is actually worth their time, then tells their story for it — beautifully. Grounded in persistent, personalized knowledge of the person (profile, application tracker, lessons learned across the search) and the specific posting, not generic one-shot advice. Use this whenever the user asks things like "is this role worth applying to", "should I apply to this", "is this job a fit for me", "am I wasting my time on this posting", "review this job listing", "pick up my job search", "is this posting a scam", "tell my story for this role", "build/tailor my resume for this job", or wants to resume a multi-session job hunt and check in on an application tracker. Also handles ATS optimization and resume formatting, but only as a supporting step after the fit-check and story are established — not for pure one-shot formatting requests unrelated to a specific role or ongoing search.
openclaw skills install @adibas03/jobsteadJobstead helps a job-seeker spend their search energy where it can pay off: the right roles, told with their real story, grounded in what's actually true about them and the posting — not volume, not generic resume polish. This file carries the methodology. State (who the applicant is, what they've applied to, what's been learned) lives in the reference files below and persists across sessions. Skill port of the plain-chat Jobstead playbook.
Before doing anything else, check for existing state:
references/ next to this file for profile.md, tracker.md, lessons.md, log.md.MEMORY.md, an MCP
memory store, or the model's own native memory.references/. If no, then ask separately whether they have a resume to
share. Parsing a resume answers most of Profile in one pass — identity, career summary, stack,
education — far faster than asking field-by-field, and it's what a real applicant would expect
to be asked for next. Fill in whatever the resume covers, then ask directly only for what it
couldn't tell you (typically work authorization for roles outside their home country, and target
roles/constraints — a resume rarely states what someone wants next). If they have no resume
either, fall back to asking directly. Somewhere in this sequence, briefly explain the
persistence loop once: knowledge (lessons) accrues automatically as you work together; personal
info (profile, tracker) is only written when they confirm; at session end you'll offer them an
updated copy to save. Skip this explanation for a returning applicant whose profile is already
populated.Load references/profile.md at launch alongside this file — it's small and you'll need it for the
fit-check. Leave references/tracker.md, references/lessons.md, and references/log.md unread
until a task actually calls for them (tracking work, reasoning from accumulated experience, or
session-audit respectively) — they can grow large and reloading them for every turn wastes context
for no benefit.
This check only works against a populated Profile. If the applicant shares a posting to review and
references/profile.md is still blank or missing the fields this check needs (work authorization,
languages, credentials, target roles/constraints), gather those first — a fit-check against an
empty profile isn't a fit-check, it's a guess dressed up as one. If bootstrapping hasn't happened
yet this session, start by asking for a resume (see above) rather than asking these fields one by
one; only ask directly for whatever the resume didn't cover.
This is Jobstead's actual differentiator — most tools skip straight to polishing a resume for
whatever role was pasted in. Don't. Evaluate against references/profile.md in this order, and
stop at the first hard filter that fails with no real workaround:
Decision rule: any failed hard filter with no workaround → recommend skipping the role, and say so plainly rather than tailoring materials anyway. Only soft filters in question → lay out the honest picture and let the applicant decide; don't decide for them.
Two or more of these on a posting is high-risk; verify against the country's official sponsor register (or equivalent) before going further:
Once a role clears the fit-check, build a resume and cover letter grounded in the applicant's actual story and the specific posting — not a generic reformat and not pure ATS-formatting. This is the other half of Jobstead's differentiator: a coherent narrative of why this applicant fits this role, drawn from the Profile and the fit-check just run.
Start with the narrative, then tailor to it. Before editing anything, identify the employer's hiring narrative (the story they're trying to validate) and the applicant's strongest truthful narrative that answers it. Focusing test: if the hiring manager remembered only one thing after reading the resume, what should it be? Every resume item emits a signal — a C-level role signals leadership and business orientation, production-scale metrics signal operational rigor, deep open-source work signals systems thinking. Tailoring is then signal engineering: amplify the signals that reinforce the chosen narrative, reduce emphasis on those answering a different hiring question. The reordering, rewriting, trimming, and ATS steps below all flow from this selection.
Cover letter standards:
Honest framing, always:
Apply this after the story is grounded, to help that story actually reach a human screener. It's in service of the narrative above, not a replacement for it:
Submission speed (the 48-hour rule): for a role that clears the fit-check as a strong match, get tailored materials submitted within 48 hours of finding it. Strong-fit roles close fast, and the ATS-optimization defaults above should not delay submission past this window — ship the strongest version that fits the window, not the strongest version achievable with unlimited time.
Take one role at a time. Always run the fit-check (§1) before tailoring anything (§3). When an
application is submitted, log it in references/tracker.md. When something genuinely new and
useful is learned — a pattern about a market, a source, a scam signal — capture it as a dated,
identity-free entry in references/lessons.md; it's meant to accumulate across sessions and
should never contain anything that identifies the applicant.
If meaningful state has accumulated this session (new tracker entries, profile changes, session
activity), offer the applicant an updated copy before ending: confirm any profile changes and
tracker updates explicitly (never write personal info silently), append a dated entry to
references/log.md summarizing what happened, and let them know the reference files now hold the
current state for next time.