resumesh-llm
A professional-grade, lightweight, and production-ready Python library powering the intelligent LLM features of the ResuMesh portfolio and CV builder. Architected strictly on SOLID and Domain-Driven Design (DDD) principles, it provides robust, schema-validated, and provider-agnostic abstractions to analyze repositories, optimize resume metrics, and build active career journals.
🎯 The "Aha!" Moment: See it in Action
High-impact resumes need metrics, actions, and structure. Here is how resumesh-llm transforms weak descriptions into Google-style XYZ Formula (Accomplished [X], as measured by [Y], by doing [Z]) statements:
| Before (Weak & Passive) | After resumesh-llm (ATS-Optimized & Action-Oriented) |
|---|---|
| "I was responsible for fixing database bugs." | "Optimized database query performance by 45% (Y) by redesigning indexes and implementing Redis caching (Z) to resolve latency bottlenecks." |
| "I worked on writing unit tests for our APIs." | "Designed and executed a robust unit testing suite, achieving 95% branch coverage (Y) using Pytest and mock clients, ensuring CI/CD reliability." |
| "I built some features on the React frontend." | "Spearheaded the migration of legacy client pages to Vite and React (Z), decreasing first-contentful paint by 1.2s (Y)." |
🌟 Flagship Features
- 🧠 Self-Reflecting Critique Agents: Implements a graph-based state machine (
StateGraph) that orchestrates a multi-step agentic reflection loop to refine work history. - 🚀 Asynchronous RAG Pipeline: Ingests compliance regulations and ATS formatting guidelines, retrieving relevant chunks on the fly without blocking execution.
- 📊 Dynamic Gap Analysis: Gamifies CV-to-Job alignment, detecting missing hard/soft skills and offering suggestions.
- 💾 State Graph Checkpointing: Built-in Memory and Disk checkpointers (
MemoryCheckpointer/FileCheckpointer) to freeze state and resume execution if rate limits or API outages occur. - 🔌 Pluggable Provider Registry: Out-of-the-box support for OpenAI, Groq, Ollama, and Mock clients. Extend or inject custom proprietary LLM models dynamically.
- 🔒 Strict Pydantic V2 Validation: Uses a dedicated
OutputParserlayer to ensure LLM outputs conform exactly to models, triggering auto-retries on validation errors.
⚡ Frictionless Quickstart
Get up and running in under 60 seconds.
Step 1: Install the Package
pip install -e .
Step 2: Configure API Key (Optional)
export OPENAI_API_KEY="your-api-key-here"
Step 3: Run the Code
import asyncio
from resumesh_llm import LLMClientFactory, CVOptimizer
async def main():
# Initialize the client (uses MockClient offline by default)
client = LLMClientFactory.get_client(provider="mock")
optimizer = CVOptimizer(client=client)
# Optimize experience using the Google XYZ formula
result = await optimizer.optimize_bullet_point(
raw_bullet="I worked on fixing bugs and writing tests",
context="Backend Developer"
)
print(f"Original: {result.original}")
print(f"Optimized: {result.optimized}")
print(f"Rationale: {result.explanation}")
asyncio.run(main())
🛠️ Architecture & Workflow Pipeline
We partition domains cleanly using the Facade Pattern to export simplified entry points, avoiding circular imports.
Agentic Workflow & Checkpoint Pipeline
graph TD
User([Client Application]) -->|Triggers run| StateGraph[StateGraph Orchestrator]
StateGraph -->|Loads Checkpoint| Checkpointer[(BaseCheckpointer)]
StateGraph -->|Invokes| RouterAgent[RouterAgent]
RouterAgent -->|Queries| RAG[AsyncRAGPipeline]
RAG -.->|Retrieves Chunks| Regulations[(Regulations & ATS Guidelines)]
RouterAgent -->|Decides route| Decision{Routing Decision}
Decision -->|ats_optimization| ATSNode[ATS Optimization Node]
Decision -->|regulatory_alignment| RegNode[Regulatory Alignment Node]
Decision -->|standard_critique| CritiqueNode[Standard Critique Node]
ATSNode -->|Updates State| Save[Save Checkpoint]
RegNode -->|Updates State| Save
CritiqueNode -->|Updates State| Save
Save -->|Persists state & pointer| Checkpointer
📚 Documentation Map
Delve deeper into the architecture and subdomains of resumesh-llm:
- 📖 Getting Started Guide: Configuration reference, environment setup, and registering custom LLM providers.
- 📐 Architecture Overview: Detailed SOLID design patterns, class structures, and exception hierarchies.
- ✏️ CV Optimizer Reference: XYZ formulations, skill classifiers, and job description alignment analyzer.
- 🐙 GitHub Summarizer Reference: Scraped commit processing, career journals, and repository summarization.
- 🧪 Testing Documentation: Local testing, mock provider verification, and formatting commands.
🤝 Community & Contributing
We welcome issues, feedback, and pull requests! Please read our Contributing Guide and Code of Conduct to get started.
If you find resumesh-llm useful or are using it to build your developer portfolio, support us by leaving a star! ⭐️
resumesh-llm is maintained by the ResuMesh Team.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file resumesh_llm-0.6.0.tar.gz.
File metadata
- Download URL: resumesh_llm-0.6.0.tar.gz
- Upload date:
- Size: 38.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7fa4bf28357e4fd1920ad64a7bedc39e113df3e9945a55e03f6c8899a5a1af92
|
|
| MD5 |
3362969e9a29ab55e9cb13ae00351f34
|
|
| BLAKE2b-256 |
f37a02de46a73f36ef03235abae136ea20e5ea3f531a9a96fc3e6defeb54d691
|
Provenance
The following attestation bundles were made for resumesh_llm-0.6.0.tar.gz:
Publisher:
cd.yml on AtaCanYmc/resumesh-llm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
resumesh_llm-0.6.0.tar.gz -
Subject digest:
7fa4bf28357e4fd1920ad64a7bedc39e113df3e9945a55e03f6c8899a5a1af92 - Sigstore transparency entry: 2269709904
- Sigstore integration time:
-
Permalink:
AtaCanYmc/resumesh-llm@6e8c58068e123a3952b63443fd80934184fd71ee -
Branch / Tag:
refs/heads/main - Owner: https://github.com/AtaCanYmc
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cd.yml@6e8c58068e123a3952b63443fd80934184fd71ee -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file resumesh_llm-0.6.0-py3-none-any.whl.
File metadata
- Download URL: resumesh_llm-0.6.0-py3-none-any.whl
- Upload date:
- Size: 46.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c34a20253cd2122c025d72ed217bac8d96eee254017ef33cafa43e8b7895a027
|
|
| MD5 |
fd26a7167b2bb474724188b4a346a698
|
|
| BLAKE2b-256 |
89f7b321b891fd76411b4a737bccfe81eb401de27dddf2112ec8ebbe9a8b070c
|
Provenance
The following attestation bundles were made for resumesh_llm-0.6.0-py3-none-any.whl:
Publisher:
cd.yml on AtaCanYmc/resumesh-llm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
resumesh_llm-0.6.0-py3-none-any.whl -
Subject digest:
c34a20253cd2122c025d72ed217bac8d96eee254017ef33cafa43e8b7895a027 - Sigstore transparency entry: 2269710285
- Sigstore integration time:
-
Permalink:
AtaCanYmc/resumesh-llm@6e8c58068e123a3952b63443fd80934184fd71ee -
Branch / Tag:
refs/heads/main - Owner: https://github.com/AtaCanYmc
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cd.yml@6e8c58068e123a3952b63443fd80934184fd71ee -
Trigger Event:
workflow_dispatch
-
Statement type: