anthropics/job-post-builder
> Builds end-to-end hiring packets — job post, structured interview guide with "help me hire", "we're hiring for", "write a job post", "job description", "JD", "open role", "create a job ad", "interview questions", "scoring rubric", "draft an offer letter", "send an offer", "make a hiring packet", or any request to recruit for a position. When in doubt, trigger — covers the full hiring workflow from job post through DocuSign envelope creation via browser. Does NOT screen or rank applicants.
npx skills add https://github.com/anthropics/knowledge-work-plugins --skill job-post-builder
Produces a complete hiring packet — job post, interview guide, and offer letter
— from a brief conversation about the role. Optionally routes the offer letter
to DocuSign via Claude in Chrome.
Invoke when a user says they need to hire someone or produce any hiring document.
The skill walks a 6-phase workflow: gather context → research the market → write
the job post → draft the interview guide → assemble the offer letter → (optionally)
route to DocuSign.
Example trigger:
> "We're hiring a senior product manager. Can you put together the job post and
> interview questions?"
location, comp, interview process, and offer delivery preference (Word doc vs.
DocuSign). Source: conversation / AskUserQuestion.
and templates; run web search for 3–5 live postings for this role. Sources:
file MCP, web search.
references/job-post-structure.md. Output: [Role]-Job-Post.docx via docx skill.
references/interview-guide-structure.md. Output: [Role]-Interview-Guide.docx
via docx skill.
references/offer-letter-template.md. Output: [Role]-Offer-Letter.docx via
docx skill.
upload the offer letter, configure the envelope, and save a draft. Requires
explicit user approval before the envelope is sent.
This skill performs externally-visible actions in Phase 6. The following rules apply:
and return the URL. The user must review and confirm before Claude clicks Send.
flow fails, draft the fallback email and show it to the user before sending.
board is the user's responsibility.
Phase 6 will not advance past "Save as draft" without the user explicitly confirming
they have reviewed the envelope and want it sent.
Before researching or writing anything, gather enough context to do it well.
Ask the user (via conversation or AskUserQuestion) for:
This is critical — the interview guide will be organized by stage, and each stage
gets its own question set. If the user doesn't know yet, suggest a sensible default
based on the role level and company size, and confirm before proceeding.
Example default for a mid-senior IC role:
| Stage | Interviewer | Focus |
|---|---|---|
| Phone screen | Recruiter | Communication, baseline fit, logistics |
| Hiring manager interview | HM | Scope, ownership, role-specific depth |
| Peer interview | Team member | Collaboration, working style |
| Skills/case exercise | Senior IC | Relevant technical or domain depth |
| Final / culture interview | Skip-level or exec | Values, long-term trajectory |
Capture the delivery preference in Phase 1 so the right Phase 5/6 path is clear
before any writing starts. If the user already indicated a preference (e.g. "send
it to DocuSign"), extract it from their message rather than asking again.
If the user has already provided most of this in their message, extract it and
confirm before moving on rather than asking redundant questions. One focused
clarifying question is better than a long form.
Good job posts are grounded in what the market actually says for this role.
Do both of the following in parallel:
A. Check existing files first
Search Google Drive and Desktop for prior JDs, offer letter templates, or
interview guides the user may already have. Use file search tools with terms like
the role title, "job description", "JD", "offer letter", "interview". If found,
read them and use them as the baseline — preserving any existing language,
structure, or requirements the user has established.
B. Web search for comparable posts
Search for current job postings for this role at comparable companies. Good
sources include LinkedIn, Greenhouse, Lever, Workday, and company career pages.
Look for 3–5 real postings and note:
Use this research to pressure-test the user's requirements (are they missing
something standard? asking for something unusual?) and to make the job post
feel current and market-aware.
Read references/job-post-structure.md for the full recommended structure and
writing guidance.
If an existing job post or JD was found in Phase 2:
Use it as the structural template — mirror its section names, tone, ordering, and
any boilerplate the user has established (e.g. company description, benefits blurb,
how-to-apply language). The user's format is the source of truth.
Compare it against references/job-post-structure.md and surface any missing
components in a single question before writing:
> "Your existing JD has a responsibilities section and requirements list, but I
> didn't see an opening hook or a description of what success looks like in year one.
> Want me to add those, or keep it to your current format?"
Only add the missing components if the user confirms.
If no existing job post was found:
Build from scratch using references/job-post-structure.md as the full template.
Either way:
Save as [Role]-Job-Post.docx using the docx skill.
Read docx/SKILL.md before generating the file.
Read references/interview-guide-structure.md for the full recommended format.
If an existing interview guide was found in Phase 2:
Use the user's existing guide as the structural template — mirror its section names,
ordering, and formatting conventions. The user's format is the source of truth; the
reference file is a checklist, not an override.
After mapping the existing guide's sections against the reference, surface any
components present in the reference but missing from the user's guide. Present
these as a short, friendly question before writing — for example:
> "Your existing guide has a question bank and scoring rubric, but I noticed it
> doesn't include an interview stage map or a debrief guide. Want me to add those,
> or keep it to your current structure?"
Only add the missing components if the user confirms. Don't silently expand their
format without asking.
If no existing guide was found:
Build the guide from scratch using references/interview-guide-structure.md as
the full template. The reference defines the recommended sections, question format,
rubric anchors, and debrief guidance — follow it completely.
Either way, organize the guide by interview stage using the process captured in Phase 1.
Structure the document so each stage is its own section:
Each stage gets its own section with the stage name and interviewer as the heading,
followed by: the focus area this stage assesses, 4-6 behavioral questions specific
to that focus, 2-3 follow-up probes per question, and a 1/3/5 scoring rubric with
anchors for each competency the stage owns.
Key principles for multi-stage guides:
the same thing. If there's overlap, assign different angles.
knows what they're covering.
reviewing it — what to look for, how to score it, follow-up questions.
Save as [Role]-Interview-Guide.docx using the docx skill.
Read references/offer-letter-template.md for the full base template and field
definitions.
If an existing offer letter or template was found in Phase 2:
Use it as the structural template — preserve the user's formatting, clause ordering,
signature blocks, and any legal language they've already established. Their version
is the source of truth.
Compare it against references/offer-letter-template.md and surface any missing
components in a single question before writing:
> "Your existing offer letter has compensation and position details, but I noticed
> it doesn't include an at-will employment clause or a legal review disclaimer.
> Want me to add those, or keep it to your current format?"
Only add the missing components if the user confirms.
If no existing offer letter was found:
Build from scratch using references/offer-letter-template.md as the full template.
Either way:
[BRACKETED] placeholder fields for all candidate-specific valuesSave as [Role]-Offer-Letter.docx using the docx skill.
Then branch based on the delivery preference captured in Phase 1:
Use Claude in Chrome to upload the offer letter into DocuSign and set up the
envelope, so the user doesn't have to touch DocuSign manually.
Step-by-step browser flow:
https://app.docusign.com — the user should already be logged in.If a login screen appears, pause and ask the user to log in, then continue.
button depending on the UI version).
[Role]-Offer-Letter.docx file that was just created.
Ask the user for the candidate's name and email if not already provided.
Set their role to "Signer".
Offer of Employment — [Role Title] at [Company Name]> "Hi [Candidate First Name], we're thrilled to extend this offer and look
> forward to having you join the team. Please review and sign at your
> earliest convenience. Don't hesitate to reach out if you have any questions."
Date Signed field on the candidate acceptance line at the bottom of the letter.
can review before sending.
Tell the user:
> "The DocuSign envelope has been set up with the offer letter and candidate
> details. Here's the draft link: [ENVELOPE URL]. Review the signature placement,
> then confirm here when you're ready to send."
Fallback: If DocuSign is unavailable or the browser flow fails at any step,
fall back to the Gmail draft approach: draft an email via the Gmail MCP with the
offer letter attached and a note to upload it to DocuSign manually. Show the
draft to the user before sending.
Once all three files are created, present them together:
Present a summary listing the three deliverables by role title: the job post
docx (ready to post), the interview guide docx (share with interviewers), and
the offer letter docx (routed to DocuSign draft or ready for manual upload).
Remind the user:
Load these when reaching the relevant phase — don't load all upfront:
| File | Load when |
|---|---|
| references/job-post-structure.md | Phase 3 — before writing the job post |
| references/interview-guide-structure.md | Phase 4 — before writing the interview guide |
| references/offer-letter-template.md | Phase 5 — before writing the offer letter |
| references/gotchas.md | Any phase — non-obvious edge cases |
| references/examples/worked-example.md | For reference on expected output shape |
See tests/triggers.md for must-trigger, must-NOT-trigger, and ambiguous routing cases.
See tests/scenarios.md for end-to-end scenario walkthroughs covering the happy
path, missing connector, and approval gate flows.
Take anthropics/job-post-builder from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.