Claude Code Windows: Setup, Config, and CCDV-F Exam Guide
Learn how claude code windows setup works via WSL2, and which CCDV-F domains test configuration, MCP, and integration skills for the developer exam.
By Solomon Udoh · AI Architect & Certification Lead

Setting up Claude Code on Windows is the first practical hurdle for developers preparing for the Claude Certified Developer, Foundations (CCDV-F) exam. Claude Code runs as a CLI tool that expects a Unix-like shell; on Windows the supported path is Windows Subsystem for Linux (WSL2). This guide covers installation, the configuration hierarchy that appears in exam scenarios, and how the eight CCDV-F domains map to skills you will practise on a Windows machine.
What is Claude Code and why does it matter for Windows developers?
Claude Code is Anthropic's agentic coding assistant, delivered as an npm package that runs interactively in a terminal or headlessly in CI pipelines. It reads your codebase, edits files, runs shell commands, and calls external tools via the Model Context Protocol (MCP). Because it relies on POSIX shell semantics, the official supported Windows environment is WSL2 running Ubuntu or another Linux distribution.
The CCDV-F exam launched on 12 March 2026. It has 53 items across 120 minutes, costs $125 per attempt, and requires a scaled score of 720 out of 1000 to pass. Domain 3 (Claude Code) carries 3.1% of the exam weight, but that figure understates how broadly the platform reaches: Domain 2 (Applications and Integration, 33.1%) and Domain 8 (Tools and MCPs, 10.6%) both assume hands-on familiarity with Claude Code workflows, including Windows-specific setup patterns.
How do you install Claude Code on Windows?
The installation path has four steps.
- Enable WSL2 via PowerShell (
wsl --install) and reboot. - Install a Linux distribution from the Microsoft Store (Ubuntu 22.04 LTS is the most-tested target).
- Inside the WSL2 shell, install Node.js via
nvmand then install the Claude Code CLI. - Set the
ANTHROPIC_API_KEYenvironment variable in your.bashrcor.zshrc.
# Run inside WSL2curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bashsource ~/.bashrcnvm install --ltsnpm install -g @anthropic-ai/claude-code
# Add to ~/.bashrcexport ANTHROPIC_API_KEY="sk-ant-..."
After installation, run claude in the WSL2 terminal to enter interactive mode. For headless use in CI, pass the -p flag with a prompt string.
One Windows-specific wrinkle is file path conventions. WSL2 mounts the Windows C drive at /mnt/c. Placing your project inside the WSL2 filesystem (for example ~/projects/) rather than under /mnt/c gives significantly better I/O performance and avoids permission edge cases that surface in Claude Code's file-editing tools.
What Windows configuration hierarchy applies to Claude Code?
Claude Code uses a three-level configuration hierarchy: user-level settings in ~/.claude/, project-level CLAUDE.md files, and sub-directory overrides. On Windows via WSL2 this hierarchy lives entirely within the Linux filesystem, which matters for two reasons.
First, the user-level ~ resolves to the WSL2 home directory, not the Windows user profile at C:\Users\<name>. If you install Claude Code in two separate WSL2 distributions, each instance has its own independent user-level config. Exam questions on Claude Code Configuration & Workflows often hinge on which layer takes precedence when two files conflict; the answer is always that the narrowest scope wins.
Second, version control implications differ between a project checked out inside WSL2 and one on the Windows NTFS partition. NTFS does not preserve Linux file permission bits by default, so a CLAUDE.md file edited in Windows Notepad and committed via Windows Git may carry permission metadata that differs from the same file edited inside WSL2. In team environments, the recommended practice is to treat the WSL2 filesystem as the canonical workspace and use a .gitattributes file that enforces LF line endings for markdown files.
Which CCDV-F domains test Claude Code Windows skills most directly?
The CCDV-F exam covers eight domains. Three of them surface Claude Code on Windows knowledge regularly in scenario-based items.
| Domain | Weight | Windows relevance |
|---|---|---|
| Domain 2: Applications and Integration | 33.1% | API key management, environment setup, SDK integration |
| Domain 3: Claude Code | 3.1% | CLI flags, CLAUDE.md hierarchy, headless mode |
| Domain 8: Tools and MCPs | 10.6% | MCP server config, local vs. remote server scoping |
Domain 2 is the dominant weight by a wide margin. Scenarios in this domain test whether candidates can integrate the Claude API into production applications, manage authentication securely, and reason about latency and reliability trade-offs. A Windows developer working through WSL2 will encounter these patterns directly: the API key lives in the Linux environment, SDK calls go out over the WSL2 network stack, and any MCP server configuration must be resolvable from within the WSL2 filesystem.
Domain 8 tests Tool Design & MCP Integration skills. On Windows this typically means configuring a local MCP server that runs as a Node.js process inside WSL2 and is registered in the Claude Code settings.json file. The MCP scoping hierarchy places global MCP servers in ~/.claude/settings.json and project-scoped servers in .claude/settings.json at the repository root. Both files live inside WSL2 on a Windows machine.
How do you configure MCP servers on Windows with Claude Code?
A local MCP server on Windows runs inside WSL2. The minimal configuration in .claude/settings.json looks like this:
{"mcpServers": {"my-tool-server": {"command": "node","args": ["/home/user/projects/my-mcp-server/index.js"],"env": {"DATABASE_URL": "${DATABASE_URL}"}}}}
Notice the ${DATABASE_URL} syntax. Claude Code expands environment variables from the shell context at startup. On WSL2 this means variables must be exported in the shell session or set in .bashrc. The exam tests whether candidates understand that variable expansion happens at configuration-load time, not at tool-call time.
For remote MCP servers, the command field is replaced with a url field pointing to a running SSE or streamable HTTP endpoint. Remote servers are accessible from both Windows and WSL2 equally because the network is shared, but local stdio-based servers must be started from within WSL2.
Each item is scenario-based and tests practical judgment, not recall.
What prompt engineering skills apply to Claude Code on Windows?
Prompt Engineering & Structured Output is Domain 6 of the CCDV-F exam at 11.0%. Within Claude Code the primary prompt engineering surface is the CLAUDE.md file, which injects persistent context into every session in that directory or sub-directory. Candidates are expected to know three things about this file.
Scope: a CLAUDE.md at the repo root applies to all sub-directories; a CLAUDE.md in a sub-directory applies only within that sub-directory and overrides the root file for any conflicting instruction.
Content: the file should specify the project's tech stack, coding conventions, and any prohibited actions. Overly long CLAUDE.md files dilute attention and slow down session initialisation; the exam rewards concise, targeted context.
Import syntax: large teams use @import path/to/shared.md to pull in shared conventions without duplicating content across repositories.
On a Windows team, a common failure mode is editing CLAUDE.md in a Windows text editor that inserts CRLF line endings. Claude Code reads the file from WSL2; CRLF line endings in shell-executable sections can cause silent failures. The fix is to configure core.autocrlf = input in Git alongside a .gitattributes rule that enforces LF line endings for markdown files.
How should Windows developers approach CCDV-F exam preparation?
The CCDV-F is a scenario-based exam with 53 items and a 120-minute time limit. Each item states how many responses to select. Unlike the CCAR-F Architect exam, the CCDV-F has no scenario bank; items are written directly against the skills in each domain.
The practical implication for Windows developers is that hands-on experience matters more than passive reading. We recommend building at least one end-to-end application on your WSL2 environment that exercises each of the following:
- Claude API calls with proper key management from a WSL2 shell.
- A local MCP server registered in
.claude/settings.json. - A
CLAUDE.mdfile that constrains Claude Code's behaviour for the project. - Headless mode invocation via the
-pflag for a simulated CI pipeline step.
Our adaptive study engine at AI Skill Certs tracks mastery per domain using Bayesian Knowledge Tracing with a 0.90 mastery threshold, so you spend revision time on the domains where your score is lowest rather than re-reading material you already know. CCDV-F practice exams mirror the real format: 53 scenario-based questions scored on the 100 to 1000 scale with 720 as the passing bar.
The credential is valid for 12 months from the date it is awarded. The exam is delivered online-proctored or at a Pearson VUE test centre; Windows candidates can sit the online-proctored version directly from their Windows desktop, since the proctoring software runs natively on Windows even though Claude Code itself runs inside WSL2.
What agentic architecture patterns does a Windows environment affect?
Agents and Workflows is Domain 1 of the CCDV-F at 14.7%. Windows developers should understand how Claude Code operates as an orchestrator: it spawns subagents, calls tools, and maintains conversation context across a session. The Agentic Architecture & Orchestration patterns that appear in exam scenarios assume a working local environment with shell access and tool registration.
One Windows-specific concern is process isolation. When Claude Code calls a shell command on WSL2, the command runs inside the Linux process space. If your project uses Docker for local services, those containers need to be accessible from WSL2. Docker Desktop for Windows integrates with WSL2 by default, so the network topology usually works without extra configuration. Exam items that describe a multi-service local environment implicitly assume this setup; understanding it prevents misdiagnosing tool failures as Claude Code bugs.
We also recommend allocating sufficient memory to WSL2 via a .wslconfig file. Claude Code sessions that process large codebases can consume several gigabytes of RAM.
# %USERPROFILE%\.wslconfig[wsl2]memory=8GBprocessors=4
This environment detail never appears in exam questions directly, but it separates candidates who have actually shipped Claude Code integrations from those who have only read about them. As of 3 June 2026, more than 10,000 individuals had earned a Claude certification. Building real experience on a Windows machine is the most direct path to joining that number.
Frequently asked questions
Does Claude Code run natively on Windows without WSL2?
What is the passing score for the CCDV-F exam?
How do I set my Anthropic API key in WSL2 for Claude Code?
Which CCDV-F domain carries the most exam weight?
Is AI Skill Certs affiliated with Anthropic?
How long is the CCDV-F certification valid?
People also ask
How do I install Claude Code on Windows?
Does Claude Code work on Windows 11?
What WSL version does Claude Code need?
Can I take the CCDV-F exam online from a Windows computer?
About the author
AI Architect & Certification Lead
Solomon Udoh is an AI Architect who designs and ships production agent systems on the Claude API and Claude Code. He built AI Skill Certs' adaptive engine and authored its 174-concept knowledge graph, mapping every Claude Certified Architect - Foundations objective to hands-on, exam-aligned practice.
- Designs production multi-agent systems on the Claude API and Agent SDK
- Author of the AI Skill Certs knowledge graph (174 mapped exam concepts)
- Builds with MCP, Claude Code, structured outputs, and agentic loops daily
- Reviews every concept page against the official Anthropic exam guide
You might also like
Ready to put it into practice?
Study every exam concept with an adaptive tutor.