惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Hacker News: Ask HN
Hacker News: Ask HN
IT之家
IT之家
S
SegmentFault 最新的问题
T
Tailwind CSS Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 司徒正美
J
Java Code Geeks
博客园 - 聂微东
雷峰网
雷峰网
阮一峰的网络日志
阮一峰的网络日志
The Cloudflare Blog
博客园_首页
大猫的无限游戏
大猫的无限游戏
博客园 - 三生石上(FineUI控件)
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 【当耐特】
腾讯CDC
Apple Machine Learning Research
Apple Machine Learning Research
酷 壳 – CoolShell
酷 壳 – CoolShell
V
V2EX
宝玉的分享
宝玉的分享
小众软件
小众软件
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Hugging Face - Blog
Hugging Face - Blog
月光博客
月光博客
NISL@THU
NISL@THU
T
The Exploit Database - CXSecurity.com
C
CXSECURITY Database RSS Feed - CXSecurity.com
WordPress大学
WordPress大学
有赞技术团队
有赞技术团队
Blog — PlanetScale
Blog — PlanetScale
aimingoo的专栏
aimingoo的专栏
L
LINUX DO - 热门话题
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
F
Fortinet All Blogs
博客园 - Franky
L
Lohrmann on Cybersecurity
S
Secure Thoughts
量子位
V
Vulnerabilities – Threatpost
Last Week in AI
Last Week in AI
博客园 - 叶小钗
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
L
LINUX DO - 最新话题
I
InfoQ
C
CERT Recently Published Vulnerability Notes
Security Archives - TechRepublic
Security Archives - TechRepublic
P
Proofpoint News Feed
G
GRAHAM CLULEY
Cisco Talos Blog
Cisco Talos Blog

Hacker News - Newest: "AI"

AI can't read an investor deck AI as an attorney? Student uses ChatGPT, Gemini to sue UW over alleged racial discrimination Hacking MCP Servers in AI Systems – The Rug Pull: Tool Changes After Approval GitHub - MeepCastana/KubeezCut: Free Web based video editor GitHub - GenAI-Gurus/awesome-eu-ai-act: Curated tools, official sources, OSS, templates, and guides for EU AI Act compliance. Can AI judge journalism? A Thiel-backed startup says yes, even if it risks chilling whistleblowers Coming soon: 10 Things That Matter in AI Right Now DARPA built an AI to fact-check enemy weapons claims What explains heterogeneity in AI adoption? When AI Meets Muscle: Context-Aware Electrical Stimulation Promises a New Way to Guide Human Movements - Department of Computer Science AI Changed How We Build. It Did Not Change What Matters. Linux rules on using AI-generated code - Copilot is OK, but humans must take 'full responsibility for the… Meta spins up AI version of Mark Zuckerberg to engage with employees Code Mode: Let Your AI Write Programs, Not Just Call Tools | TanStack Blog GitHub - Delavalom/graft: Go framework for building AI agents. Type-safe tools, multi-provider (OpenAI, Anthropic, Gemini, Bedrock), zero vendor SDKs. India's TCS tops estimates, says new AI models did not dent services demand Gen Z's fading AI hype Strong feeling: we are in a folded AI reality GitHub - machinarii/total-recall-catalog: A reference catalog of latest knowledge retrieval, memory & RAG systems GitHub - mensfeld/code-on-incus: Give each AI agent its own isolated machine with root, Docker, and systemd. Active defense detects and stops threats automatically.. Quantization, LoRA, and the 8% Problem: Benchmarking Local LLMs for Production AI Iran war: We spoke to the man making Lego-style AI videos that experts say are powerful propaganda Powell, Bessent discussed Anthropic's Mythos AI cyber threat with major U.S. banks GitHub - immartian/bellamem: Persistent belief-graph memory for AI agents. Retrieves decisive context by importance — not recency, not RAG, not /compact. recursive-mode: The Repo-Native Operating System for AI Engineering After the attack on Sam Altman's home, will AI CEO's go on the offensive? The biggest advance in AI since the LLM Opus 4.6 vs GPT 5.4 One Prompt Unity World Generation Test “AI polls” are fake polls Client Challenge Can AI be a 'child of God'? Inside Anthropic's meeting with Christian leaders How to Switch AI Chatbots and Why You Might Want To GitHub - MattMessinger1/agentic_refund_guardrail: Safe refund policy layer for AI agents — Python + TypeScript. Same behavior, shared tests. Adam/papers/emergent_values_whitepaper.md at master · strangeadvancedmarketing/Adam Ask HN: How do you stop playing 20 questions with your AI coding tools How far can automation and AI support psychotherapy? - @theU GitHub - stagas/rtdiff: realtime git diff gui and AI-assisted commits A Mac Studio for Local AI — 6 Months Later A History of the Early Years of AI at the University of Edinburgh Why AI Coding Tools Still Feel Stuck on Localhost MSN AI Datacenters Are Becoming Strategic Targets twitter.com Penn Researchers Use AI to Surface Unreported GLP-1 Side Effects in Reddit Posts Show HN: MoodSense AI (ML and FastAPI and Gradio, Deployed on Hugging Face) Moodsense Ai - a Hugging Face Space by aman179102 AI models are terrible at betting on soccer—especially xAI Grok GitHub - xialeistudio/echoic GitHub - HimashaHerath/github-dev-wrapped: AI-powered weekly GitHub activity reports deployed to GitHub Pages GitHub - alejandrobalderas/claude-code-from-source: Architecture, patterns & internals of Anthropic's AI coding agent — reverse-engineered from source maps AI and Tech brief: Ireland ascendant GitHub - Titovilal/context0: Context0 - Never Surrender Training for a Marathon with an AI Coach: What Worked and What Didn't Cyber Pulse: Agentic Intel - Apps on Google Play I Built an AI PR Reviewer That Catches Bugs by Not Looking for Bugs Gen Z workers are so fearful AI will take their job they’re intentionally sabotaging their company’s AI rollout | Fortune How AI Is Reimagining the Game of Golf–For Both Players and Courses GitHub - nattergabriel/reseed: A CLI tool for managing and distributing agent skills across projects Is SVG the final frontier? My AI workflow evolved from prompts to a near-autonomous workflow MLSharp Help - 3DGS Viewer & Generator I put my cognitive field based AI's runtime on GitHub Is Numble the first AI-proof game? A3: Kubernetes for autonomous AI agent fleets | Emergent Principles Deepali Vyas ("The Elite Recruiter") GitHub - msmarkgu/RelayFreeLLM: A restful API designed to route user prompts to various AI model providers. Unionized ProPublica staff are on strike over AI, layoffs, and wages Unleashing the Advantage of Quantum AI We're heading for an AI-fueled 'dementia crisis,' brain scientist warns The AI-Assisted Breach of Mexico's Government Infrastructure [pdf] GitHub - stef41/lmscan: 🔍 Detect AI-generated text and fingerprint which LLM wrote it. Open-source GPTZero alternative. Zero dependencies, works offline. MSN GitHub - visionscaper/collabmem: Enabling long-term collaboration with Agentic AI - building up episodic and world model memory over time with in-context awareness We gave an AI a 3 year retail lease in SF and asked it to make a profit | Andon Labs AI Code is Hollowing Out Open Source, and Maintainers are Looking the Other Way What leaked "SteamGPT" files could mean for the PC gaming platform's use of AI AI is the boss at this retail store. What could go wrong? GitHub - Wuzu11517/agentic-proxy: Local proxy meant to help reduce With Drones, Geophysics and ArtificiaI Intelligence, Researchers Prepare to Do Battle Against Land Mines A Single Operator, Two AI Platforms, Nine Government Agencies: The Full Technical Report 在 Steam 上购买 FriedrichAI: Offline AI 立省 10% GitHub - inevolin/resume-cli: Hit Claude usage limits? Resume any AI coding session elsewhere. Switch tools at zero friction. GitHub - atripati/ark: AI Runtime Kernel — a context operating system for AI agents. Eliminates tool bloat, loads only what’s needed, and gives LLMs their reasoning space back. How to Build a Secure AI PR Reviewer with Claude, GitHub Actions, and JavaScript This Startup Wants You to Pay Up to Talk With AI Versions of Human Experts Intel Arc Pro B70 Brings 32GB VRAM to Local AI for $949 WordPress 7.0: The Good, the AI, and the Still Missing AI on the couch: Anthropic gives Claude 20 hours of psychiatry IatroBench: Pre-Registered Evidence of Iatrogenic Harm from AI Safety Measures AI Agents Know About Supabase. They Don't Always Use It Right. The history and future of AI at Google, with Sundar Pichai Inside an AI‑enabled device code phishing campaign How Meta Used AI to Map Tribal Knowledge in Large-Scale Data Pipelines AI for Systems: Using LLMs to Optimize Database Query Execution Forecasting the Economic Effects of AI Introducing Tinker: Play with AI, bring your ideas to life AI sheds light on an ancient gaming mystery People really hate AI but not as much as Iran—or Democrats | Fortune What is an AI Product Engineer? Phoebe Gates wants her $185 million AI startup to succeed with 'no ties to my privilege or my last name': 'I have a chip on my shoulder' | Fortune
GitHub - Gotili/EigenCV
g0tili · 2026-06-25 · via Hacker News - Newest: "AI"

🛡️ EigenCV: Zero-Trust Agentic Resume Pipeline

License: MIT Build Status PRs Welcome

Stop letting ChatGPT hallucinate skills you don't have.
A production-grade Infrastructure-as-Code (IaC) pipeline for generating ATS-perfect, highly tailored LaTeX resumes without sacrificing your integrity.


🤯 Commercial AI Builders vs. EigenCV

The Industry Standard (Commercial AI Builders):
You tell an AI to "optimize my resume for this job." The AI treats your resume as a creative writing exercise. It quietly hallucinates skills, inflates job titles, and paraphrases your engineering achievements into generic HR buzzwords. The result is a PDF that beats the ATS but fails the technical interview because it's full of lies.

The EigenCV Approach (Zero-Trust):
We treat your career history as an immutable database. The AI is strictly an orchestration layer. It does not write your resume; it queries your database to pull the most relevant, pre-verified bullet points.

If the AI attempts to go rogue and hallucinate a missing skill into your profile to artificially boost your ATS score, the Python compiler's Lie Detector intercepts it and hard-crashes the build. Obvious lies never make it into the PDF.


🖼️ Example Output & Gallery

Jane Doe Sample CV Jane Doe Sample Cover Letter

🎨 Total Customization & Control

The sample above is just one configuration. EigenCV puts you in complete control:

  • Dynamic Sections: Not all sections are mandatory. Choose exactly what to include and reorder them instantly (e.g., move 'Education' to the top) by simply editing the comma-separated cvorder variable.
  • Change Layouts: Seamlessly swap between professional LaTeX templates (e.g., Awesome-CV, EigenCV-Modern).
  • Brand Yourself: Inject custom corporate accent colors to match the company you're applying to.- Multilingual: Generate applications in English, German, or any other language using the built-in translation matrix.

🚀 How to Use EigenCV: Choose Your Path

Path 1: The "No-Code" Lifehack (For Non-Coders / ChatGPT Plus)

You don't need to know Python, LaTeX, or Git to use EigenCV. You can run the entire pipeline directly in ChatGPT.

  1. Download this entire repository as a ZIP file.
  2. Build your Master Database: Upload the ZIP to ChatGPT (requires Advanced Data Analysis) or Claude, along with ALL your old resumes. Tell the AI: "Extract all my career facts from these resumes and populate the EigenCV JSON database."
  3. Apply to a Job: Paste the Job Description and tell the AI: "Please apply to this job using the instructions found in docs/AI_CLOUD_PROMPT.md."
  4. Download your PDF: ChatGPT will automatically match your database to the job, generate the JSON, and run the chatgpt_run.py wrapper script. Because we include a dedicated "Cloud-Safe" LaTeX template, ChatGPT will render the PDF directly in its sandbox and give you a download link! (Fallback: If ChatGPT times out, it will still generate the .tex code. You can drag & drop that code into a free Overleaf account for instant rendering (or render the pdf locally using the pdflatex)).

Path 2: The Agentic Developer Route (CLI & IDE)

If you prefer terminal workflows, need maximum build speed, or require strict data privacy, run the pipeline locally.

  1. Prerequisites: You need Python 3.11+ and a LaTeX distribution (e.g., TeX Live or MiKTeX). Alternatively, simply open this repo in VS Code and click "Reopen in Container" to use our pre-built Docker environment!
  2. Install Dependencies: Run pip install -r requirements.txt.
  3. Agent Setup:
    • For Maximum Speed: Open the repository using an Agentic CLI (like Antigravity / Claude Code) or an Agentic IDE (Cursor / Windsurf) connected to their standard cloud APIs.
    • For 100 % Hardcore Privacy: Point your Agentic IDE to a local model (like Ollama or LM Studio) so your data NEVER leaves your machine.
  4. Build the DB: Tell the Agent: "Migrate my old CV. Follow AI_START_HERE.md." to build your Zero-Trust database.
  5. Apply: Paste a Job Description and say: "Apply to this job. Follow AI_START_HERE.md."
  6. Automation: The Agent will automatically route the prompts, generate the strict JSON, and execute the Python scripts locally to render your PDF and calculate your ATS score!

⚙️ Architecture & Workflow

Most AI tools use a "generate and pray" approach. EigenCV uses Agentic Determinism. Here is how we guarantee a flawless, hallucination-free application:

  1. The Immutable Master Database: You don't paste your resume into a chat window. Your career history lives offline as a structured JSON/Markdown database on your hard drive. Every achievement, project, and skill has a mathematically verifiable ID (e.g., proj_aws_migration).
  2. AI Orchestration (The Brain): When applying for a job, the AI reads the Job Description and acts as a strategic orchestrator. Instead of writing text, it executes a precise query against your database, returning only the IDs that maximize your ATS match score. It crafts a hyper-authentic Cover Letter based exclusively on your verified profile data.
  3. Deterministic Compilation (The Muscle): The AI is entirely locked out of the rendering process. The EigenCV Python compiler takes the approved list of IDs, fetches the exact text from your offline database, and deterministically injects it into a stunning, ATS-optimized LaTeX template. Flawless layouts, no hallucinations.
sequenceDiagram
    autonumber
    actor U as 👤 User
    participant LLM as 🧠 Agent
    participant DB as 🗄️ Database
    participant Py as 🐍 Python Tools

    rect rgb(40, 40, 60)
    Note over U,DB: Phase 0: Setup & Privacy
    U->>Py: Run scrub_data.py
    Py->>DB: Wipe private data
    U->>LLM: Upload old CV
    LLM->>DB: Build JSON Database
    end

    rect rgb(20, 40, 20)
    Note over U,Py: Phase 1: Routing
    U->>LLM: Provide Job Description
    LLM->>DB: Query database
    DB-->>LLM: Return valid IDs
    LLM->>LLM: Generate build_config.json
    end
    
    rect rgb(60, 40, 20)
    Note over LLM,Py: Phase 2: Compile
    LLM->>Py: Execute cv_compiler.py
    Note over Py,DB: 🏥 Healer auto-corrects IDs<br>🛡️ Lie Detector prevents hallucinations
    Py->>DB: Fetch verified text
    Py-->>LLM: Render PDF via Jinja2
    end
    
    rect rgb(40, 60, 40)
    Note over LLM,Py: Phase 3: Verification
    LLM->>Py: Execute check_ats_score.py
    Py->>Py: Parse compiled PDF
    Py-->>LLM: Return ATS Score
    LLM-->>U: Present Final PDF & Score!
    end
Loading

🚀 The "Lie Detector" in Action

+----------------------------- EigenCV Compiler ------------------------------+
| Compiling CV from build_config.json...                                      |
+-----------------------------------------------------------------------------+
Using layout template: eigencv_resume.tex.j2, Locale: en
+--------------------------- Zero-Trust Violation ----------------------------+
| Zero-Trust Violation: You declared 'Rust' as a missing skill, but it was    |
| hallucinated into the CV output!                                            |
| You cannot artificially inject skills you do not have into free-text fields.|
+-----------------------------------------------------------------------------+
ValueError: Hallucinated skill detected: Rust

The user removes the hallucinated skill and recompiles:

+----------------------------- EigenCV Compiler ------------------------------+
| Compiling CV from build_config.json...                                      |
+-----------------------------------------------------------------------------+
Successfully compiled CV to CV-Applicant-Google.tex
Auto-compiling PDFs with pdflatex...
Successfully compiled CV-Applicant-Google.pdf

                       ATS Match Score: 85.0 %                        
+-------------------------------------------------------------------+
| Category        | Skills                                          |
|-----------------+-------------------------------------------------|
| Missing (1)     | Rust                                            |
+-------------------------------------------------------------------+
[!] ATS Penalty Applied: 1 critical gap identified.

✨ Core USPs

  • 🛡️ Zero-Trust & The EigenTruth Engine: Your career history lives in a static JSON database. If the LLM attempts to hallucinate a skill you don't have into your profile to artificially boost your ATS score, the compiler's EigenTruth Engine (our Lie Detector) catches it and hard-crashes the build.
  • 🔒 Immutable Database: Your bullet points and skills are strictly IMMUTABLE. You can maintain them yourself or use LLMs to prep them, but within the EigenCV pipeline, the AI is only allowed to select them, never rewrite them.
  • ✍️ Authentic Cover Letters: The AI uses your personal_dossier.md to write hyper-authentic cover letters based only on your real soft skills and hobbies, eliminating corporate fluff.
  • 🎨 Corporate Auto-Coloring: The AI automatically deduces the target company's corporate identity and dynamically injects matching accent colors into the LaTeX output (or you can override it manually).
  • 🧮 Advanced ATS Engine & Reality Checks: The post-compilation Python parser calculates a mathematically honest ATS keyword match score. Meanwhile, the AI Agent acts as a ruthless filter, estimating interview/offer probabilities and salary ranges based strictly on your verified skills, creating a realistic Probability Matrix.
  • 🏥 Self-Healing IDs: If the LLM makes a minor typo when selecting an ID from your database (e.g., aws_mig instead of aws_migration), the compiler's built-in rapidfuzz heuristics will auto-heal the ID, preventing brittle build crashes.
  • 📄 Automated LaTeX Compilation: No more broken LaTeX parsing or missing brackets. The AI generates a strictly typed Pydantic JSON schema, deterministically compiled into beautiful Jinja2 LaTeX templates.
  • 🌍 Multi-Language Support & Auto-Translation (Beta): Applying abroad? The system supports native multi-language CVs with strict language mismatch prevention, and features an experimental auto-translation engine to dynamically localize your database.
  • 🏗️ Dynamic Section Routing: Don't have any open-source projects for a specific application? Simply omit the array in the JSON. The Jinja2 engine will dynamically hide the section and recalculate the LaTeX geometry without leaving awkward whitespace.
  • 🐳 Containerized Reproducibility: Comes with a pre-configured VS Code DevContainer. Boot a fully sandboxed environment to get a full TeX Live distribution inside Docker. (Note: The initial Docker build downloads the 4GB distribution, grab a coffee. After that, compile CVs locally without polluting your host machine.)
  • 🕵️ 100 % Local & Privacy-First (Optional): Your career data never leaves your machine unless you explicitly send it to an LLM via your trusted API or Agent. No web services, no data harvesting.

🔬 Design Decisions (Under the Hood)

EigenCV prioritizes deterministic reliability over trendy AI complexity. For the engineers reading this, here is a transparent look at the core architectural decisions behind the pipeline:

1. "Pseudo-RAG" (Context Window Routing)

We do not use Vector Databases (Chroma, Pinecone) or traditional RAG embeddings. Why? Because an individual's entire career history (even a 20-year veteran's) is only a few kilobytes of text. It easily fits into a modern LLM's context window. Instead of vector search, we use In-Context Semantic Routing. We feed your entire JSON database to the LLM and prompt it to output an array of bullet_ids that semantically match the Job Description. The LLM acts as the retriever, but the actual text insertion is handled deterministically by Python.

2. The EigenTruth Engine (How We Catch Hallucinations)

Is it really "Zero-Trust" if the AI generates the Cover Letter and Profile? Yes, but it's a Constrained Generation Boundary. While your hard facts (experience bullets, projects) are 100 % immutable and fetched via IDs, your Profile and Cover Letter must be dynamically written to address the specific company's mission.

To maintain Zero-Trust here, the Python compiler (cv_compiler.py) intercepts these generated text fields before rendering the LaTeX. When the LLM analyzes the Job Description, it is forced to populate a missing_skills array for any required skills you do not possess.

The compiler performs a strict Regex negative lookahead/lookbehind intersection ((?<!\w)) between your missing_skills list and the AI-generated free-text. If a match is found, the compiler immediately throws an EigenTruthViolationError and aborts. The AI cannot sneak missing skills into your prose to trick the ATS scanner.

Why a Regex engine and not a State-of-the-Art "LLM-as-a-Judge"? Because Pragmatism > Over-engineering. Your CV compiler should run completely offline, deterministically, in <1 second, without requiring an active API key or costing $0.05 per build. Our EigenTruth Engine is O(1), free, and bulletproof for this specific use case.

3. RapidFuzz Healing (Fault Tolerance)

LLMs are notoriously bad at outputting exact string matches. If your database ID is aws_migration_2023, the LLM might output aws_mig_23. Traditional build systems would throw a KeyError and crash. EigenCV uses the rapidfuzz library (C++ optimized Levenshtein distance) to mathematically calculate the closest matching ID in your database. This provides graceful degradation: we tolerate minor AI typos while strictly maintaining data integrity.

4. Pydantic over Prompt Engineering

We do not rely on complex "Prompt Engineering" to format the CV. We force the LLM to output data strictly matching a cv_schema.py Pydantic model. If the LLM violates the schema (e.g., nesting arrays where strings should be), the pipeline rejects it before it ever reaches the LaTeX compiler. Strong typing beats prompt engineering.

5. LaTeX vs HTML-to-PDF (The ATS Text Layer)

Many modern CV builders use web technologies (React/HTML) and use Headless Chrome (Puppeteer) to print to PDF. This is fatal for ATS. Browser engines often render PDFs with fragmented, non-sequential text layers, causing ATS parsers to misread the document. EigenCV uses pdflatex. LaTeX was built from the ground up for print typography. It guarantees a sequential, machine-readable text layer, ensuring the ATS parses your resume exactly from top to bottom.

📖 Advanced Documentation

Looking to customize the LaTeX templates, add your own personal dossier for cultural-fit Cover Letters, or understand the Pydantic schema?

👉 Read the Full User Guide


⚖️ The Philosophy: Resumes as Code

Most commercial AI resume builders optimize for feeling good, not for technical accuracy. By keeping your resume in a database and restricting the AI to basic data retrieval, you keep 100 % control over your facts. You only automate the tedious parts: LaTeX formatting and ATS keyword matching.

Your career is a database. Version control it. Stop maintaining 15 different Word documents. By keeping your career facts in JSON files, you can treat your resume like software. Fork this repo, make it private, and use Git to track your career progression (git commit -m "Promoted to Senior"). When you find a job you like, let the Agent query your database, compile your LaTeX, and land the job.


🙏 Acknowledgements

EigenCV's default LaTeX templates utilize a color palette inspired by the excellent Awesome-CV project created by Byungjin Park (posquit0). We are grateful for their beautiful typographic colors! (Note: The structural layout of EigenCV is entirely custom-built for Jinja2 deterministic rendering and was not derived from Awesome-CV's layout engine).