Skip to content

Where Cline stores rules, workflows, memory bank, and MCP servers

Cline (the open-source VS Code coding agent) splits its context three ways: version-controlled files in your project, a global folder under your Documents directory, and one JSON file buried deep in VS Code’s own storage that almost nobody finds by browsing. ~ is your home directory; paths starting with .clinerules are relative to a project root.

ArtifactGlobalPer-projectFormat
Rules~/Documents/Cline/Rules/*.md.clinerules/ folder (*.md, *.txt) or a single .clinerules fileMarkdown / plain text
Cross-tool rules~/.agents/AGENTS.mdAGENTS.md (project root)Markdown
Workflows~/Documents/Cline/Workflows/*.md.clinerules/workflows/*.mdMarkdown
MCP serverscline_mcp_settings.json (inside VS Code globalStorage — see below)JSON
Memory bankmemory-bank/*.md (convention, driven by a rules file)Markdown
Ignore file.clineignore (project root)gitignore syntax

Rules: .clinerules and the Documents folder

Section titled “Rules: .clinerules and the Documents folder”

Workspace rules live in a .clinerules/ folder at the project root — Cline combines every .md and .txt file inside it into one rule set, which is what you commit and share with the team. The older convention of a single .clinerules file at the root predates the folder and is still what you’ll find in many repos.

Global rules don’t live in a dotfolder at all: they’re Markdown files in ~/Documents/Cline/Rules/ (Documents\Cline\Rules on Windows). Every rule — global or workspace — has an on/off toggle in the Cline panel (the scale icon), and workspace rules win when they conflict with global ones.

Cline reads the cross-tool AGENTS.md convention: the project-root AGENTS.md plus a global ~/.agents/AGENTS.md. It’s the same file Codex, Cursor, and Claude Code understand — one rules file the whole toolchain shares.

Workflows are step-by-step Markdown playbooks you invoke as slash commands (/deploy.md). Project workflows live in .clinerules/workflows/, global ones in ~/Documents/Cline/Workflows/, and a project workflow shadows a global one with the same name. Note the layering: workflows sit inside the .clinerules folder but are not rules — rules load into every task, workflows only run when you call them.

The file itself is the familiar mcpServers map (command/args/env, or a URL for remote servers), same shape as Claude Desktop’s — and the env block is where API keys end up, so treat it as secret-adjacent.

Cline’s famous memory bank is a convention, not built-in storage: a rules file instructs Cline to maintain a memory-bank/ folder in your project with structured Markdown — projectbrief.md, productContext.md, activeContext.md, systemPatterns.md, techContext.md, progress.md — and to re-read all of it at the start of every task. Because it’s plain Markdown in the repo, it’s greppable, diffable, and portable to any other tool.

A .clineignore file at the project root (gitignore syntax) excludes files from Cline’s context — worth setting up early, since trimming what the agent reads is the cheapest performance and cost win available.

Quartermaster’s scanner indexes every location on this page — both .clinerules shapes, workflows, and the servers parsed out of cline_mcp_settings.json wherever globalStorage puts it — into one searchable registry alongside Claude Code, Cursor, Codex, and 8 more tools. It can convert a .clinerules file to CLAUDE.md or AGENTS.md (and back), and secrets are never indexed — env/header key names kept, values dropped. See the full discovery map or the quickstart.