🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

Tamar Resume Tailor

by @evgenyshneyderman

Tailor resumes for specific job applications using the Tamar AI API

Versionv1.4.1
Downloads670
Stars⭐ 1
TERMINAL
clawhub install tamar-resume-tailor

πŸ“– About This Skill


name: tamar-resume-tailor description: Tailor resumes for specific job applications using the Tamar AI API metadata: {"openclaw":{"requires":{"bins":["tamar"],"env":["TAMAR_API_KEY"]},"primaryEnv":"TAMAR_API_KEY","install":[{"id":"npm","kind":"node","package":"tamar-cli","bins":["tamar"],"label":"Install Tamar CLI (npm)"}]}}

Tamar Resume Tailoring

Use the tamar CLI to tailor resumes for specific job applications via the Tamar API.

Triggers

Activate when the user says anything like:

  • "tailor my resume"
  • "customize my resume for"
  • "help me apply for this job"
  • "make a resume for this role"
  • "adapt my resume"
  • "target my resume at"
  • Prerequisites

  • The tamar CLI must be installed by the user before using this skill: npm install -g tamar-cli
  • An API key must be configured. Verify by running tamar status. If it fails with "No API key configured", ask the user to run tamar auth --key (keys are obtained from https://ask-tamar.com β†’ Profile β†’ API Keys)
  • Do NOT read or inspect ~/.tamarrc directly β€” use tamar status to check auth
  • Pipeline

    1. Check if the user has an experience profile

    tamar profile
    

    Shows existing profiles with name, role, seniority, skills, and enrichment depth. If a profile exists, use its ID with tamar tailor --profile for higher-quality output. If none exists, proceed to step 2.

    2. Ensure user has a resume uploaded

    If the user has a resume file and hasn't uploaded one yet:

    tamar upload 
    

    3. Get the job description

    Ask the user for the job description. It can be:

  • A URL (LinkedIn, company careers page, etc.)
  • A file path β€” read the file content first
  • Pasted text
  • 4. Tailor the resume

    IMPORTANT β€” Input safety: Never interpolate user-provided strings directly into shell commands. Always write job descriptions or multi-word arguments to a temporary file and pass the file path, or use the -- separator and single-quote the argument. This prevents shell injection from malicious input.

    # Safe: write JD to a temp file, pass the file
    echo '' > /tmp/jd.txt
    tamar tailor --job /tmp/jd.txt

    Safe: single-quote the argument to prevent shell expansion

    tamar tailor --job 'https://example.com/jobs/12345'

    If the user also provides a resume file and hasn't uploaded before:

    tamar tailor --job /tmp/jd.txt --resume ''
    

    5. Review the output

    The command returns JSON with:

  • id β€” the generated resume ID (stored for later commands)
  • quality β€” "enriched" (has profile) or "basic" (resume-only)
  • analysis β€” job match analysis
  • changes β€” list of changes made
  • Present the analysis summary conversationally. Highlight key matches and gaps.

    6. Handle feedback

    If the user wants changes:

    Write the feedback to a temp file to avoid shell injection:

    echo '' > /tmp/feedback.txt
    tamar feedback "$(cat /tmp/feedback.txt)"
    

    Or for a specific resume:

    tamar feedback "$(cat /tmp/feedback.txt)" --id ''
    

    7. Download the result

    tamar download                    # PDF (default)
    tamar download --format json      # structured JSON
    

    The PDF is saved to the current directory. Tell the user the file path.

    Error Handling

    | Error | Action | |-------|--------| | No API key configured | Guide user to run tamar auth --key | | 401 Invalid or expired | Prompt to re-run tamar auth with a new key | | 422 Could not parse URL | Site blocks scraping (common with LinkedIn). Paste the JD text instead | | 429 Rate limited | Tell user to wait and retry | | 402 Plan limit reached | Direct to https://ask-tamar.com for upgrade | | Network error / timeout | Check connection. AI calls can take 15–60s β€” ensure client timeout is β‰₯120s |

    Quality Notes

  • Enriched quality (user has an experience profile β€” check via tamar profile) = higher quality tailoring
  • Basic quality (resume-only, no profile) = still useful but less nuanced
  • If user has no profile, suggest building one at https://ask-tamar.com via the interactive Q&A, or use the enrichment API flow
  • Example Interaction

    User: Can you tailor my resume for this job? https://linkedin.com/jobs/12345

    Agent: Let me tailor your resume for that role.

    [runs: tamar tailor --job 'https://linkedin.com/jobs/12345']

    Agent: Done! Here's what I found:

  • Quality: enriched (used your experience profile)
  • Key alignments: Python, data pipelines, team leadership
  • Adjusted: Reframed your experience to emphasize data platform work
  • Gaps: Kubernetes β€” no production experience listed
  • Want me to tweak anything? I can also download the PDF for you.

    βš™οΈ Configuration

  • The tamar CLI must be installed by the user before using this skill: npm install -g tamar-cli
  • An API key must be configured. Verify by running tamar status. If it fails with "No API key configured", ask the user to run tamar auth --key (keys are obtained from https://ask-tamar.com β†’ Profile β†’ API Keys)
  • Do NOT read or inspect ~/.tamarrc directly β€” use tamar status to check auth