CLAUDE LABJP
MCP — Support for the 2026-07-28 spec is rolling out across Claude. The protocol moves from bidirectional and stateful to request/response, so MCP servers can now live on serverless and edge infrastructureEXTENSIONS — Three official extensions have landed: MCP Apps for server-rendered UI, Tasks for async and long-running work, and Enterprise Managed Auth for IdP-based org-wide provisioningADOPTION — MCP passed 400 million monthly SDK downloads, roughly 4x growth this year, settling into its role as the standard way to connect agents to applicationsQUOTA — Today, August 19, is the last day of the 50 percent weekly usage boost for Claude Code subscribers. If you have long agent runs queued, this is the windowPRICING — Claude Sonnet 5's introductory rate of $2 per million input tokens and $10 output ends August 31; standard pricing of $3 and $15 takes over on September 1, twelve days outFIX — A bug where MCP v2 connections endlessly reopened subscriptions against servers with fixed timeouts is resolved, and a forward_user_identity setting was added for user attributionMCP — Support for the 2026-07-28 spec is rolling out across Claude. The protocol moves from bidirectional and stateful to request/response, so MCP servers can now live on serverless and edge infrastructureEXTENSIONS — Three official extensions have landed: MCP Apps for server-rendered UI, Tasks for async and long-running work, and Enterprise Managed Auth for IdP-based org-wide provisioningADOPTION — MCP passed 400 million monthly SDK downloads, roughly 4x growth this year, settling into its role as the standard way to connect agents to applicationsQUOTA — Today, August 19, is the last day of the 50 percent weekly usage boost for Claude Code subscribers. If you have long agent runs queued, this is the windowPRICING — Claude Sonnet 5's introductory rate of $2 per million input tokens and $10 output ends August 31; standard pricing of $3 and $15 takes over on September 1, twelve days outFIX — A bug where MCP v2 connections endlessly reopened subscriptions against servers with fixed timeouts is resolved, and a forward_user_identity setting was added for user attribution
Articles/Claude.ai
Claude.ai/2026-05-03Intermediate

Writing Effective Custom Instructions for Claude Projects

A practical guide to writing Claude Projects custom instructions that actually shape Claude's behavior — covering role definition, output constraints, and project-specific context sharing.

Claude Projects2custom instructions2prompt design6productivity18Claude AI7

Custom instructions in Claude Projects are one of those features that immediately feel useful — but when you actually sit down to write them, it's easy to wonder how specific to get or where to start.

I went through a fair bit of trial and error. My early attempts were minimal: "Please answer thoroughly" or "Avoid jargon." Technically valid instructions, but they didn't change much. Claude was already trying to do those things.

What actually made a difference was shifting from vague preferences to structured context. Here's what I've learned from building out custom instructions across several projects.

Why Custom Instructions Matter

Each new Claude conversation starts completely fresh. Claude doesn't know whether you're a developer, a writer, a marketing manager, or a student. It doesn't know your preferred style, your tech stack, or the vocabulary specific to your project.

Custom instructions solve this by providing persistent context tied to a project. Think of them less as commands and more as shared background: "Here's who I am, what I'm working on, and how I'd like us to work together."

That framing matters. Instructions written as commands ("Always do X") tend to feel brittle and are easy to override by accident. Instructions written as context ("You're working with someone who prefers...") tend to stick more reliably.

Three Elements That Actually Work

After testing a lot of variations, three elements consistently make the biggest difference.

1. Role and Context Definition

Tell Claude who it's working with and what the work is for.

Less effective:

You are a professional writer.

More effective:

You're the editorial assistant for a technical blog aimed at indie developers.
Readers are mid-level engineers in their 30s–40s — experienced generalists,
not deep specialists. The goal is to deliver practical know-how in a usable form,
not comprehensive coverage.

The more specific the context, the better Claude can calibrate tone, depth, and assumptions.

2. Output Constraints — Especially What NOT to Do

Specifying what you don't want is surprisingly effective.

Response style:
- No preambles or summaries announcing what you're about to say
- Prefer prose over bullet lists; use lists only when genuinely necessary
- Match length to the question — short answers are fine when appropriate
- Show complete, runnable code examples rather than isolated snippets

The "no preambles" instruction alone makes a noticeable difference. Claude's default behavior includes a lot of "Great question! Here are a few perspectives..." style openings. Removing those streamlines the conversation significantly.

3. Shared Vocabulary and Domain Context

Project-specific terms and assumptions you'd otherwise have to re-explain constantly.

Project terminology:
- "article" = an MDX blog post (mixed code and markdown)
- "push" = the full commit + git push workflow
- "site" = claudelab.net or gemilab.net

Common tools in use: Claude Code, Next.js, Cloudflare Workers, GitHub Actions

This is especially useful for projects with non-obvious constraints. "Cloudflare Workers" tells Claude a lot — no Node.js-specific APIs, limited execution time, specific environment patterns.

A Working Instruction Structure

Here's a template based on what I use for my coding assistant project:

## Your Role
Act as a technical partner for a solo developer — support code, architecture,
and writing tasks.

## Reader/User Profile
- Mid-level engineer working daily with Next.js and TypeScript
- Cloudflare Workers for infrastructure
- Solo developer, so values speed of implementation alongside maintainability

## Response Style
- Japanese preferred, polite but concise
- Prioritize working code over lengthy explanation
- Add a 1–2 sentence "why" for each non-obvious choice
- Skip preambles, summaries, and recaps

## Decision Priorities
1. Correct (type-safe, proper error handling)
2. Simple (avoid over-abstraction)
3. Works on Cloudflare Workers (no Node.js-specific APIs)

## Project Context
- Repo: masakihirokawa/claudelab.net
- Stack: Next.js, TypeScript, Cloudflare Workers, next-intl
- Deploy target: Cloudflare Pages

The "Decision Priorities" section is what I added late — and it made the biggest difference. Explicitly putting "Works on Cloudflare Workers" as criterion #3 almost eliminated suggestions that would break in the edge runtime.

When Instructions Aren't Working

If your instructions don't seem to be taking effect, the issue is usually one of these:

Too long. Once you're past roughly 400–500 characters per section, later instructions tend to fade. Pare down to the 3–5 things that matter most.

Mixing mandatory and contextual behavior. "Show code examples when needed" isn't an instruction — it's a description of what you'd probably do anyway. Reframe: "When code is relevant, always provide a complete, runnable example."

Vague adjectives. "Clear," "concise," "appropriate" — Claude is already optimizing for these. Specific constraints like "three sentences maximum" or "no bullet points" are what actually change behavior.

The Value of Separate Projects

Custom instructions work best when a project has a single, clear purpose. I maintain separate projects for:

  • Article writing: tone, voice, article structure conventions
  • Coding help: tech stack, constraints, code style preferences
  • Idea exploration: instructions that favor divergent thinking over critical analysis

When everything goes into one project, the instructions become a compromise. Focused projects with focused instructions give more consistent results.

Keep Iterating

The best custom instructions aren't written all at once — they're built up gradually as you notice what works and what doesn't.

I revisit each project's instructions roughly every two weeks: trim anything that didn't seem to do much, add new constraints I discovered I cared about. Over time, each project's instructions become a fairly accurate model of how I want to work — and that's when they become genuinely valuable.

Share

Thank You for Reading

Claude Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • Copy-paste ready implementation code
  • New advanced guides published daily
  • $5/mo or $10 for lifetime access
View Membership →

If you found this article helpful, a small tip ($1.50) would mean a lot to us. Your support helps keep this site ad-free and covers server and hosting costs.

Related Articles

Claude.ai2026-03-20
Claude Projects: Streamlining Your Workflow
Master Claude's Projects feature to maintain context across conversations and collaborate more efficiently with AI. Learn how to structure projects, write effective custom instructions, and leverage file uploads.
Claude.ai2026-07-12
Using Claude's Reflect Monthly Review to Tune a Solo Dev Rhythm
How to read Claude's new Reflect monthly review as a planning tool for the month ahead rather than a report card, grounded in the day-to-day rhythm of solo development.
Claude.ai2026-07-06
When Instructions Fade in Long Conversations: Measuring Adherence and Pulling It Back
System-prompt instructions quietly lose their grip as a conversation grows. This piece turns that drift into a number you can track, then fixes it with prompt structure and mid-conversation re-anchoring, backed by runnable code and measured results.
📚RECOMMENDED BOOKS
Build a Large Language Model (From Scratch)
Sebastian Raschka
LLM Dev
Prompt Engineering for LLMs
Berryman & Ziegler
Prompting
AI Engineering
Chip Huyen
AI Eng
* Contains affiliate links
See all →