* feat(applications): schedule interviews and view them on a calendar Interviews (screening, technical, behavioral, onsite, other) are stored as "interview" entries on an application's activity timeline, so an application can have any number of them and they show in its timeline without a migration. Each interview has a start date-time (timezone-aware), duration, and optional location and notes. - schema: interview timeline entry type, interviewDetailsSchema, INTERVIEW_KINDS - api: addInterview / updateInterview procedures (delete via timeline entry); generic timeline updates now only edit text on note entries - web: Calendar view on the Applications page (month grid, type legend, upcoming list grouped by day, schedule button with application picker, per-day "+" and "+N more" popover), Interviews section and interview dialog in the application detail panel, interview rows in the timeline and CSV export - mcp: add_application_interview / update_application_interview tools - i18n: extract new strings into all locale catalogs (English fallback) - docs: MCP tool table, scheduling guide section, resume-builder skill Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * fix(applications): keep interview dates in local time and guard generic timeline edits - Format the timeline date chip for interview entries in the viewer's local timezone so it matches the interview's date-time label; stage and note entries still render in UTC. - Reject interview entries in the generic updateTimelineEntry path. A day-granular date edit kept the UTC time of day and could move an interview to the wrong local day; callers are pointed to updateInterview (update_application_interview). The MCP tool description now says so, and a service test covers the rejection. - Associate each interview dialog label with its control via useId/htmlFor. - Drop the duplicate onInput handler on the date-time input; onChange covers controlled inputs. - Give the calendar's per-day schedule button an accessible name that includes the date, and update the extracted locale catalogs for the new message. * [autofix.ci] apply automated fixes --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Amruth Pillai <im.amruth@gmail.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
5.8 KiB
name, description
| name | description |
|---|---|
| resume-builder | Generate professional resumes that conform to the Reactive Resume schema. Use when the user wants to create, build, or generate a resume through conversational AI, or asks about resume structure, sections, or content. This skill guides the agent to ask clarifying questions, avoid hallucination, and produce valid JSON output for https://rxresu.me. |
Resume Builder for Reactive Resume
Build professional resumes through conversational AI for Reactive Resume, a free and open-source resume builder.
Core Principles
- Never hallucinate - Only include information explicitly provided by the user
- Ask questions - When information is missing or unclear, ask before assuming
- Be concise - Use clear, direct language; avoid filler words
- Validate output - Ensure all generated JSON conforms to the schema
Workflow
MCP Application Tracking
Reactive Resume MCP can manage job applications as well as resumes. When the user wants to track applications through an agent, use the application tools instead of asking them to open the web UI.
- Use
list_applicationsbefore changing existing records. - Use
create_applicationfor one new opportunity orimport_applicationsfor spreadsheet/CSV rows. - Use
update_applicationto move stages, archive/unarchive, edit contacts, set follow-ups, link a resume, or update job details. - Use
add_application_noteto log timeline activity. - Use
add_application_interview/update_application_interviewto schedule or reschedule interviews (they appear on the timeline and calendar); delete them withdelete_application_timeline_entry. - Use
attach_application_documentandremove_application_documentfor sent resume or cover-letter PDFs. - Use
score_application_match,tailor_resume_for_application, anddraft_application_messagefor Application Copilot workflows after a linked resume and job description exist. - Review AI-generated cover letters and follow-ups before sending them.
Step 1: Gather Basic Information
Ask for essential details first, unless the user has already provided them:
- Full name
- Professional headline/title
- Email address
- Phone number
- Location (city, state/country)
- Website (optional)
Step 2: Collect Section Content
For each section the user wants to include, gather specific details. Never invent dates, company names, or achievements.
Experience: company, position, location, period (e.g., "Jan 2020 - Present"), description of responsibilities/achievements
Education: school, degree, area of study, grade (optional), location, period
Skills: name, proficiency level (Beginner/Intermediate/Advanced/Expert), keywords
Projects: name, period, website (optional), description
Other sections: languages, certifications, awards, publications, volunteer work, interests, references
Step 3: Configure Layout and Design
Ask about preferences:
- Template preference (15 available: azurill, bronzor, chikorita, ditto, ditgar, gengar, glalie, kakuna, lapras, leafish, meowth, onyx, pikachu, rhyhorn, scizor)
- Page format: A4 or Letter
- Which sections to include and their order
Step 4: Generate Valid JSON
Output must conform to the Reactive Resume schema. See references/schema.md for the complete schema structure.
Key requirements:
- All item
idfields must be valid UUIDs - Description fields accept HTML-formatted strings
- Website fields require both
urlandlabelproperties - Colors use
rgba(r, g, b, a)format - Fonts must be available on Google Fonts
Resume Writing Tips
Share these tips when helping users craft their resume content:
Content Guidelines
- Lead with impact: Start bullet points with action verbs (Led, Developed, Increased, Managed)
- Quantify achievements: Use numbers when possible ("Increased sales by 25%", "Managed team of 8")
- Tailor to the role: Emphasize relevant experience for the target position
- Be specific: Replace vague terms with concrete examples
- Keep it concise: 1-2 pages maximum for most professionals
Section Order Recommendations
For most professionals:
- Summary (if experienced)
- Experience
- Education
- Skills
- Projects (if relevant)
- Certifications/Awards
For students/recent graduates:
- Education
- Projects
- Skills
- Experience (if any)
- Activities/Volunteer
Common Mistakes to Avoid
- Including personal pronouns ("I", "my")
- Using passive voice
- Listing job duties instead of achievements
- Including irrelevant personal information
- Inconsistent date formatting
Output Format
When generating the resume, output a complete JSON object that conforms to the Reactive Resume schema. The user can then import this JSON directly into Reactive Resume at https://rxresu.me.
Example minimal structure:
{
"picture": { "hidden": true, "url": "", "size": 80, "rotation": 0, "aspectRatio": 1, "borderRadius": 0, "borderColor": "rgba(0, 0, 0, 0.5)", "borderWidth": 0, "shadowColor": "rgba(0, 0, 0, 0.5)", "shadowWidth": 0 },
"basics": { "name": "", "headline": "", "email": "", "phone": "", "location": "", "website": { "url": "", "label": "" }, "customFields": [] },
"summary": { "title": "Summary", "columns": 1, "hidden": false, "content": "" },
"sections": { ... },
"customSections": [],
"metadata": { "template": "onyx", "layout": { ... }, ... }
}
For the complete schema, see references/schema.md.
Asking Good Questions
When information is missing, ask specific questions:
- "What was your job title at [Company]?"
- "What dates did you work there? (e.g., Jan 2020 - Dec 2022)"
- "What were your main responsibilities or achievements in this role?"
- "Do you have a specific target role or industry in mind?"
Avoid compound questions. Ask one thing at a time for clarity.