Skip to content

Thenolypus/claude-code-cv-wiki

Repository files navigation

Claude Code CV Wiki

Andrej Karpathy's LLM Wiki pattern has recently gained significant attention for building a "second brain" or a small, targeted knowledge base. If you’re like me, you don't need a second brain because your first isn't even fully utilized yet (sigh).

While job hunting, I found that cherry-picking past projects and experiences consumes most of the time spent on applications. I tried describing my projects with high level descriptions into memory markdown files so that the LLM could tailor my CV better, but it tends to hallucinate on what I did. Wouldn't it be great if you could maintain a Wiki of your professional profile, add a job description, and let an LLM select the most relevant directed bullet points for your template? You simply review the LLM's entries and apply the final touches such as determining which experiences/projects gets more details and which maintains a more generalized description.

Have fun approving entries about yourself :) Feel free to improve upon what's here.

This is how my profile currently looks in Obsidian's graph view:

My example

Requirements

I built this for Obsidian and Claude Code. But you can use anything else. Just modify the CLAUDE.md to what you use. Feel free to make PRs that would add other platform supports as well.

The premise: stop re-deriving your career story on every application. Build a structured, interlinked wiki once (incrementally, over time), and let CV generation become a selection problem instead of a composition problem.

Some smaller notes:

  • I personally use frontier models such as Opus to run the skill and handle wiki ingestions. I tested this with a local model such as Qwen3.5-9B Q8 from unsloth with about 131072 context length to perform the codebase wiki creation and while it worked, the output was rather high-level when doing side-by-side comparison against frontier models (Opus 4.7 in my case).
  • If you do want to try local models and have the hardware to do so, I believe models with high long-context comprehension, instruction following and tool-use scores would perform well. Look for maybe LongBench v2, IFEval and SWE-bench?

Quickstart

Step 1: Clone repository.

git clone https://github.com/Thenolypus/claude-code-cv-wiki my-career-wiki
cd my-career-wiki
claude

On first run, ask Claude to bootstrap the wiki. There are two paths to do so:

  • Path A — CV-seeded (recommended).
  • Path B — Cold start.

See Wiki Setup below for a more detailed explanation.

Step 2: Install the skills for Claude. Make sure you are in Claude Code before writing this.

/plugin marketplace add Thenolypus/claude-code-cv-wiki
/plugin install claude-code-cv-wiki@claude-code-cv-wiki

To verify, run /plugin and confirm claude-code-cv-wiki appears as installed.

Step 3: Add information about yourself in the raw/ folder (see Skill usage if you are a programmer with codebases as projects) and let the knowledge base grow! :D

Wiki Setup

Path A — CV-seeded (recommended). Drop your most recent CV (PDF / .docx / .md / .tex) into raw/ first, then ask Claude to bootstrap. Claude will:

  1. Read the CV fully.
  2. Propose a default languages: based on the CV's language and confirm it with you. This is written into CLAUDE.md's ## Configuration > languages: line and drives the CV-bullets format and the lint checks. See Languages below.
  3. Pre-fill draft answers to the 4 calibration questions (target industries, academic vs industry framing, current seniority, geographic constraint) from what's in the CV, ask you to correct them, save to wiki/career-intel/positioning.md.
  4. Ingest the CV — creating initial projects/, experience/, skills/, and education/ pages, co-authoring ## CV bullets blocks with you per project. By the end of bootstrap you have a meaningfully populated wiki.

Path B — Cold start. If you have no CV yet, ask Claude to bootstrap without a source in raw/. It will set the language config, ask the 4 calibration questions cold, scaffold the folders, then prompt you to drop your first source.

In both paths, replace template/cv.tex with your own CV template (LaTeX, Markdown, Typst — whatever you write CVs in). The wiki workflow treats it as the single source of truth for style; only the content gets rewritten per application.

From there, the workflow is just three operations against the wiki — ingest (drop a source in raw/), target (drop a JD in jd/), query (ask a question). Full schema and conventions live in CLAUDE.md.

What's in this wiki?

This wiki repo serves two purposes that don't conflict:

  1. A clone-to-use template. Clone the repo, point Claude Code at it, and you have a working wiki schema (CLAUDE.md) plus the empty folder skeleton (raw/, wiki/, jd/, applications/, template/). Claude reads CLAUDE.md on every session and follows the conventions defined there.
  2. An installable Claude Code plugin that ships two skills used by the workflow:
    • codebase-wiki — run inside one of your project codebases; produces a single dense, factual markdown file describing the project, ready to drop into your wiki's raw/ for ingestion.
    • lint — walk the wiki for structural drift (missing CV-bullets blocks, single-language variants, missing skill pages, orphan pages, index.md drift, cross-page contradictions).

You can use either half independently — the template works without the plugin, and the plugin works against any wiki built to this schema.

Languages

The wiki supports any number of CV languages. You declare which ones in CLAUDE.md's ## Configuration > languages: line as ISO 639-1 codes:

languages: [en]                # English-only (default)
languages: [en, de]            # English + German (DACH region)
languages: [en, fr]            # English + French (France / Belgium)
languages: [en, es]            # English + Spanish (Spain / LatAm)
languages: [en, nl]            # English + Dutch (Netherlands)
languages: [en, de, fr]        # Trilingual

Every project's ## CV bullets block then carries one bullet per declared language per variant, tagged in uppercase (**EN:**, **DE:**, **FR:**, ...). The lint skill reads this list and flags any variant missing a declared language.

Adding a language later is supported but is a deliberate retrofit (Claude will walk every existing project page and ask you to author the new language for each variant — it never auto-translates). See CLAUDE.md § "Adding a language to an existing wiki".

Skill usage

  • codebase-wikicd into a project directory you want to add to your wiki, start Claude Code, invoke the skill (e.g. "/codebase-wiki. This is a uni team project, around March 2024, check git log for dates, I did all the work on branch "my-branch"). Front-load whatever role context and dates you remember; Claude will only ask for what's missing. Output is one markdown file at the top of the project. Copy it into your wiki's raw/ folder, then ask your wiki Claude to ingest.
  • lintcd into your wiki root (the directory containing CLAUDE.md), start Claude Code, invoke the skill (e.g. "/lint", "lint full" or "lint cv-bullets"). It returns a prioritized list of structural issues; it never fixes anything without your per-issue approval.

Repository layout

.
├── CLAUDE.md                      # the wiki schema — read by Claude on every session
├── KarpathyLLMWiki.md             # vendored reference for the underlying pattern
├── README.md                      # this file
├── template/cv.tex                # CV style template (replace with your own)
├── raw/                           # your immutable career sources (you drop files here)
├── jd/                            # job descriptions you target (you drop files here)
├── applications/                  # generated CVs, one folder per application
├── wiki/                          # the LLM-authored knowledge base
│   ├── projects/
│   ├── experience/
│   ├── skills/
│   ├── education/
│   └── career-intel/
├── log.md                         # chronological log of ingests/targets/queries/lints
├── .claude-plugin/
│   └── marketplace.json           # marketplace catalog (for plugin installation)
└── plugins/
    └── claude-code-cv-wiki/
        ├── .claude-plugin/plugin.json
        └── skills/
            ├── codebase-wiki/SKILL.md
            └── lint/SKILL.md

Credits

About

A local knowledge base to manage your professional profile, generate tailored CVs for specific job descriptions, and identify skill gaps for professional development. Inspired by Karpathy’s LLM Wiki Gist.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages