Use the tamar CLI to tailor resumes for specific job applications via the Tamar API.
Activate when the user says anything like:
tamar CLI must be installed by the user before using this skill: npm install -g tamar-clitamar 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)~/.tamarrc directly — use tamar status to check authtamar 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.
If the user has a resume file and hasn't uploaded one yet:
tamar upload <resume-file>
Ask the user for the job description. It can be:
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 '<job description text>' > /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 '<resume-file>'
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 analysischanges — list of changes madePresent the analysis summary conversationally. Highlight key matches and gaps.
If the user wants changes:
Write the feedback to a temp file to avoid shell injection:
echo '<feedback text>' > /tmp/feedback.txt
tamar feedback "$(cat /tmp/feedback.txt)"
Or for a specific resume:
tamar feedback "$(cat /tmp/feedback.txt)" --id '<resume-id>'
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 | 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 |
tamar profile) = higher quality tailoringUser: 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.
共 1 个版本