Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Tailor Resume

The Tailor step uses Claude AI to rewrite your resume sections based on the specific JD, with strict guards against hallucination.

Usage

kairos resume tailor --job-id <job-id>

How It Works

flowchart TD
    Base[Base Resume] --> Split[Split into Sections]
    JD[JD Analysis] --> Prompt[Tailoring Prompt]
    Split --> |Tailorable sections only| Prompt
    Prompt --> LLM[Claude AI]
    LLM --> Modified[Modified Sections]
    Modified --> Diff[Side-by-Side Diff]
    Diff --> |User approves| Save[Save Tailored Version]
    Diff --> |User rejects| Discard[Discard]
    Split --> |Protected sections| Merge[Merge]
    Save --> Merge
    Merge --> Final[Complete Tailored Resume]

Anti-Hallucination Guards

The LLM prompt enforces strict rules:

  1. Only rephrase, reorder, or emphasize existing content
  2. Never invent skills, experiences, or achievements
  3. Never modify: Education, dates, company names, contact info
  4. Only modify: Summary, Technologies/Skills, experience bullet points

The system works by:

  1. Sending only tailorable: true sections to Claude
  2. Including the JD analysis (keywords, required skills) as context
  3. Asking Claude to optimize for ATS keyword matching while preserving truthfulness
  4. Setting temperature to 0.3 for controlled creativity

The Diff View

After tailoring, a side-by-side diff is shown for review:

+-- Original ----------------+-- Tailored -------------------+
|                             |                               |
| Experienced software        | Experienced software          |
| developer with expertise    | developer with deep expertise |
| in Rust and Python.         | in Rust, async systems, and   |
|                             | cloud-native Python services. |
|                             |                               |
| - Built CLI tools in Rust   | - Built high-performance CLI  |
|                             |   tools in Rust with async    |
|                             |   I/O and error handling      |
+-----------------------------+-------------------------------+
| [y] Approve  [n] Reject  [e] Edit manually  [r] Retry     |
+------------------------------------------------------------+

Resume Versions

  • Base resume is never modified
  • Tailored versions only store the changed sections
  • Full resume is reconstructed by merging base + tailored sections
  • Export to LaTeX or PDF: kairos resume export --job-id <job-id>