profile-autofill
Paste your CV, LinkedIn export or a short career summary and your agent fills in your daily.dev work history, education, projects and tech stack, so recruiters and feed personalization have something
SKILL.mdplugins/profile-autofill/skills/profile-autofill/SKILL.md
GitHubProfile Autofill
Your daily.dev profile powers Career Mode matching and feed personalization, and most profiles are empty. Profile Autofill fills them from something you already have.
Requirements
One of:
- The daily.dev MCP server (
https://api.daily.dev/mcp) connected with thewritescope, or - A daily.dev personal access token in
DAILY_DEV_TOKEN(https://daily.dev/settings/api). Base URLhttps://api.daily.dev/public/v1, headerAuthorization: Bearer $DAILY_DEV_TOKEN. Never send the token anywhere exceptapi.daily.dev.
Each step lists the MCP tool first and the REST call after it.
Steps
- Read the source the user provides: a CV (PDF, Markdown, text), a LinkedIn data export, a résumé website, or a few sentences. Extract experiences with
type(work,education,project,certification,volunteering,opensource),title, organization,startedAtandendedAt(ISO dates; use the first of the month when only a month is known; omitendedAtfor current roles), a one-paragraphdescription, and for work entriesemploymentType(FULL_TIME,PART_TIME,CONTRACT,INTERNSHIP) andlocationType(REMOTE,OFFICE,HYBRID) when stated. Collect technologies asskillsper role and as a flat list for the stack. - Check what exists.
getProfileExperienceswithlimit50 (GET /profile/experiences?limit=50) andgetProfileStack(GET /profile/stack?limit=100). Skip anything that matches an existing entry by title and organization; propose updates withputProfileExperiencesById(PUT /profile/experiences/{id}) only if the user asks to overwrite. - Show the plan as a table (type, title, organization, dates) plus the stack additions, and ask the user to confirm or edit. Never guess dates or employers that aren't in the source.
- Create experiences.
postProfileExperiencesper entry (POST /profile/experiences). Required:type,title,startedAt. UsecustomCompanyNamefor the organization (andcustomDomainfor its favicon);companyIdonly when the user supplies one. Foropensource, passrepository: { name, url, owner }. Unknown enum names are rejected with a 400, so send only the values listed in step 1. - Update the stack. For each technology,
getProfileStackSearchwithquery(GET /profile/stack/search?query=<name>); if a tool matches,postProfileStackwith its exacttitleandsectionprimary(POST /profile/stack). Report technologies with no matching tool. - Confirm with
getProfileExperiencesand summarize what was created.
Output
The plan table before, then a short list of created entries with their ids, and the technologies that couldn't be matched.
Guardrails
- Never invent or embellish. If the source says "2019 to 2021", don't add months.
- Never delete or overwrite existing entries without an explicit instruction.
- Don't send personal data beyond what the profile fields hold; leave out addresses, phone numbers and references.
- One request per experience and per stack tool, typically 15 to 30 for a full CV.