Skip to content

ruiribeiro04/Kariomi-Mini

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kariomi-Mini

Kariomi-Mini

A multi-agent AI system that helps users tailor their resumes and cover letters to specific job requirements.

Python 3.11 MIT License LangGraph Streamlit

Demo

Kariomi-Mini Demo

Why Kariomi-Mini?

Applying to jobs often means sending the same generic resume to dozens of listings. Kariomi-Mini solves that by analyzing both your profile and each job description, then automatically generating a tailored resume and cover letter that aligns with the role's requirements. It uses eight specialized AI agents working together — from parsing job postings to scoring fit, crafting content, and iterating until quality thresholds are met — so you can apply confidently without manual rewriting for every application.

Key Features

  • Multi-Agent Pipeline — Eight specialized agents collaborate (Profile Extractor, Job Analyzer, Fit Analyzer, Resume Tailor, Cover Letter Crafter, Reviewer, Refinement Loop, PDF Generator)
  • Quality-Driven Refinement — Automatic iterations until 70% quality threshold is met
  • Multi-Language Support — Matches job description language for generation
  • Flexible Honesty System — 15% keyword weight, 30% narrative weight, allows "related to" phrasing
  • Page Count Management — Optional constraints with intelligent condensation
  • Manual Review Mode — Skip auto PDF generation for manual editing
  • Multi-Modal Output — Generates both PDF and XML formats
  • LangGraph Orchestration — State-managed workflows with Pydantic validation

Quick Start

1. Install UV

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows (PowerShell)
irm https://astral.sh/uv/install.ps1 | iex

2. Set Up the Project

# Create virtual environment with Python 3.11
uv venv --python 3.11

# Activate (macOS/Linux)
source .venv/bin/activate

# Activate (Windows)
.venv\Scripts\activate

# Install dependencies
uv sync

3. Configure Environment

# Copy the environment template
cp .env.example .env

# Edit .env and add your SiliconFlow API key
# Get your API key from https://siliconflow.com/

4. Run the Application

streamlit run src/ui/app.py

Architecture Overview

Kariomi-Mini uses a multi-agent pipeline architecture where specialized agents collaborate:

Kariomi-Mini Architecture

  1. Profile Extractor — Extracts key information from user resumes
  2. Job Analyzer — Parses job descriptions and requirements
  3. Fit Analyzer — Scores resume-job fit (0.0-1.0)
  4. Resume Tailor — Optimizes resume content for the role
  5. Cover Letter Crafter — Generates personalized cover letters
  6. Reviewer — Validates quality with 4-factor scoring (ATS, keywords, narrative, honesty)
  7. Refinement Loop — Manages iterative improvement (max 3 iterations until 70% quality threshold)
  8. PDF Generator — Generates PDF and XML output files

The workflow is orchestrated using LangGraph with state management via Pydantic models. Profile and job analysis run in parallel, followed by sequential generation with conditional refinement.

Technology Stack

Layer Technology
UI Streamlit
Agent Orchestration LangGraph
Data Validation Pydantic
PDF Generation WeasyPrint
Template Rendering Jinja2

Configuration

Copy .env.example to .env and edit the following variables:

Variable Description
SILICONFLOW_API_KEY Your API key from SiliconFlow
FLASH_MODEL Flash LLM model to use (default: deepseek-ai/DeepSeek-V4-Flash)
PRO_THINKING_MODEL Pro/Thinking LLM model to use (default: deepseek-ai/DeepSeek-V4-Pro)

Contributing

Contributions are welcome! Please read our contributing guidelines.

License

MIT License — see LICENSE for details.

About

A multi-agent AI system that helps users tailor their resumes and cover letters to specific job requirements.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors