PrepGenAICerts
Courses/Claude Certified Developer – Foundations (CCDV-F) Full Course/2.6 Matching Instructions to the Interface in Use
Domain 2: Applications and IntegrationLesson 10 of 32

2.6 Matching Instructions to the Interface in Use

2.6.1 Four Interfaces, Four Different Authoring Surfaces

Claude is reached through several genuinely distinct surfaces, and how instructions are interpreted differs by surface. This isn't a stylistic variation of the same underlying mechanism -- each row below is a different authoring model with its own conventions.

InterfacePrimary useInstruction mechanism
API / SDKsProgrammatic integrationsystem param + messages, tools, params
claude.aiWeb chat / ProjectsChat + Project instructions & knowledge
Claude DesktopDesktop app, local MCPChat + connected MCP servers
Claude CodeAgentic CLI in a repoCLAUDE.md + settings.json + slash commands

Four interfaces, four distinct instruction-authoring mechanisms. Match the mechanism to the surface actually in play.

2.6.2 The API Surface

Programmatic integration through the API or an SDK has exactly the instruction channels covered in 2.3: the top-level system parameter, the messages you construct, any tools you define, and request parameters like temperature. There is no repository memory, no Project knowledge base, no local MCP connection implied by this surface on its own -- whatever instructions the model receives are exactly what you put in system and messages, nothing more.

ℹ️

The one idea to hold onto

A raw Messages API call has no concept of a CLAUDE.md file, a claude.ai Project, or a locally connected MCP server. Its only instruction channels are the system parameter and the message content you construct yourself.

2.6.3 claude.ai and Claude Desktop

claude.ai layers Project-level instructions and a Project knowledge base on top of ordinary chat -- a Project's custom instructions shape every conversation started inside it, and documents added to the Project's knowledge become available context, neither of which has anything to do with a system parameter on an API call. Claude Desktop is a chat surface too, but its distinguishing instruction mechanism is locally connected MCP servers: tools and resources a user has explicitly connected to the desktop app, which become available inside that chat.

Neither surface reads a CLAUDE.md file or a settings.json, and neither is configured through a system parameter the way an API integration is. Describing a claude.ai Project's setup in terms of "the system prompt" or describing an API integration in terms of "Project knowledge" is mixing up the mechanism with the surface.

2.6.4 Claude Code: CLAUDE.md, settings.json, Slash Commands

Claude Code is an agentic CLI operating inside a repository, and its instruction mechanism is built for that context: a CLAUDE.md file holds project/repo memory and instructions that shape how Claude Code behaves in that repo, settings.json configures permissions/hooks/tool allow-deny lists/environment, and slash commands trigger specific predefined actions. None of these three has a direct equivalent on a raw API call -- a CLAUDE.md file sitting in a repository does nothing at all to a Messages API request sent from a completely separate service.

Instructions don't transfer verbatim across surfacesClaude CodeCLAUDE.md shapes behavior hereRaw Messages API callhas no concept of CLAUDE.mdOnly channel there:system param + messages

A CLAUDE.md shapes Claude Code; it does not configure a raw Messages API call. Each surface has its own instruction channel.

⚠️

Exam trap

"Set up a CLAUDE.md for the customer-facing API chatbot" is a mismatched-mechanism trap: CLAUDE.md is Claude Code's memory file and has no effect on a Messages API integration. Always match the instruction mechanism to the specific interface actually in play.

2.6.5 Diagnosing a Mismatched-Mechanism Scenario

A recurring scenario shape on this task statement describes a design decision and asks you to spot where the wrong instruction mechanism got applied to the wrong surface. The tell is almost always a mismatch between the noun (which surface is actually being built) and the verb (which mechanism the described solution reaches for).

  • "We'll add a CLAUDE.md to guide our customer-facing chat widget" -- the widget is presumably an API integration; CLAUDE.md has no effect there. The mismatch: Claude Code's mechanism applied to an API surface.
  • "We'll configure a system prompt for our claude.ai Project" -- claude.ai Projects use Project-level instructions and knowledge, not a system parameter you set on a request; there's no request being constructed by the end user at all.
  • "We'll write a slash command so our Messages API backend can access the internal ticketing tool" -- slash commands are a Claude Code mechanism; an API backend reaches tools through the tools parameter, not a slash command.

In each case, the fix isn't a small tweak -- it's recognizing that the entire mechanism named in the proposal doesn't exist on the surface being described, and substituting the mechanism that actually applies to that surface: the system parameter and tools array for an API integration, Project instructions and knowledge for claude.ai, connected MCP servers for Claude Desktop, or CLAUDE.md/settings.json/slash commands for Claude Code.

Key Takeaways

  • API/SDKs use the system parameter plus messages, tools, and params as their instruction mechanism -- nothing more.
  • claude.ai uses chat plus Project-level instructions and knowledge; Claude Desktop uses chat plus connected local MCP servers.
  • Claude Code uses CLAUDE.md (repo memory), settings.json (permissions/hooks/tool lists/environment), and slash commands.
  • Instructions authored for one surface do not transfer verbatim to another -- a CLAUDE.md shapes Claude Code but does nothing to a raw Messages API call.
  • Treat each interface as a genuinely distinct authoring surface, not a stylistic variant of one universal instruction channel.

Check Your Understanding

Test what you learned in this lesson.

Q1.A team writes a detailed CLAUDE.md file and expects it to shape the behavior of their production Messages API integration running as a separate backend service. What's wrong?

Q2.Which instruction mechanism is specific to Claude Desktop, distinguishing it from claude.ai's Project-based chat?

Q3.Which set of instruction mechanisms belongs to Claude Code specifically?

Q4.Why does the exam treat 'API/SDKs', 'claude.ai', 'Claude Desktop', and 'Claude Code' as four distinct authoring surfaces rather than four names for the same thing?

Practice This Lesson

PrepGenAICerts.com is an independent third-party exam-prep platform for the Claude Certified Architect (CCA-F) certification. We are not affiliated with, endorsed by, or acting on behalf of Anthropic PBC.

Note: New premium upgrades are temporarily paused while we resolve an issue with our payment provider. Existing premium members retain full access.