<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Wild Goose</title>
    <description>The latest articles on DEV Community by Wild Goose (@wildgoosedevelopers).</description>
    <link>https://dev.to/wildgoosedevelopers</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F12007%2Fc67a0fa1-34cd-45ea-8986-4ec7262119ce.png</url>
      <title>DEV Community: Wild Goose</title>
      <link>https://dev.to/wildgoosedevelopers</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/wildgoosedevelopers"/>
    <language>en</language>
    <item>
      <title>Going beyond autocomplete with AI Agents</title>
      <dc:creator>Jan De Dobbeleer</dc:creator>
      <pubDate>Tue, 09 Dec 2025 09:18:04 +0000</pubDate>
      <link>https://dev.to/wildgoosedevelopers/going-beyond-autocomplete-with-ai-agents-1cee</link>
      <guid>https://dev.to/wildgoosedevelopers/going-beyond-autocomplete-with-ai-agents-1cee</guid>
      <description>&lt;p&gt;Over the past year, I’ve seen many software engineers and teams dive into AI adoption, only to face disappointment when the hype delivers little more than autocomplete tricks or basic unit test generation. The outputs often ignore standards, architecture, and conventions, creating more work instead of reducing it. Rather than abandoning this &lt;strong&gt;inevitable shift&lt;/strong&gt;, we should learn from those who succeed.&lt;/p&gt;

&lt;p&gt;What’s missing for those who struggle with AI adoption? It’s the ability to guide the model with context. Many tools allow you to automatically inject &lt;strong&gt;tailored instructions&lt;/strong&gt; for each task, shaping the output for success. In this post, I’ll demonstrate how to do this with GitHub Copilot and Claude Code, setting you on the path to becoming an AI-native software engineer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why instructions change everything
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;They make implicit team rules explicit and version-controlled.&lt;/li&gt;
&lt;li&gt;They steer the agent’s defaults: style, architecture, naming, testing, commit conventions, security guardrails.&lt;/li&gt;
&lt;li&gt;They raise consistency across the team and reduce review friction.&lt;/li&gt;
&lt;li&gt;They open the door towards more AI automation.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When instructions live in-repo, the agent reads them like any engineer would—then generates code that fits your standards by default.&lt;/p&gt;

&lt;h2&gt;
  
  
  Instruction file types: tool-specific vs. universal
&lt;/h2&gt;

&lt;p&gt;Different AI tools support different instruction file conventions, but the underlying principles remain the same: provide context, enforce standards, and guide behaviour.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GitHub Copilot&lt;/strong&gt; uses &lt;code&gt;.github/copilot-instructions.md&lt;/code&gt; for repository-wide instructions that apply to all requests. For more granular control, you can create path-specific instructions using &lt;code&gt;.github/instructions/*.instructions.md&lt;/code&gt; files with frontmatter scoping. These files can target specific paths, languages, or audiences (IDE vs. CLI), making them highly flexible for monorepos and polyglot projects.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Claude Code&lt;/strong&gt; looks for &lt;code&gt;CLAUDE.md&lt;/code&gt; in your project root. This single file contains all Claude-specific instructions, though you can organize complex guidance using markdown sections and headers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Universal approach&lt;/strong&gt;: Many teams adopt &lt;code&gt;AGENTS.md&lt;/code&gt; as a tool-agnostic convention. Place an &lt;code&gt;AGENTS.md&lt;/code&gt; file at the root or nested in directories, and any agent tool can consume it. This works well when you use multiple AI tools or want a single source of truth that isn't vendor-locked.&lt;/p&gt;

&lt;p&gt;The choice depends on your team's needs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use &lt;code&gt;.github/copilot-instructions.md&lt;/code&gt; for simple, repository-wide Copilot guidance.&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;.github/instructions/*.instructions.md&lt;/code&gt; when you need fine-grained, path-specific control.&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;AGENTS.md&lt;/code&gt; for simplicity and portability across different AI tools.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now let's explore how to architect these instructions for maximum effectiveness.&lt;/p&gt;

&lt;h2&gt;
  
  
  Architecture: layering context so it stays relevant and cheap
&lt;/h2&gt;

&lt;p&gt;Think of context in layers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Global repository instructions&lt;/strong&gt;: High-level standards that apply everywhere (language style, testing baseline, security posture, commit messages, PR checklist).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Local, nested instructions&lt;/strong&gt;: Directory-scoped &lt;code&gt;AGENTS.md&lt;/code&gt; files or GitHub Copilot instruction files that apply to specific domains (e.g., backend/api vs. frontend/ui). These are only loaded when relevant, saving tokens and maintenance.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Task-specific prompt files&lt;/strong&gt;: Small, reusable prompt templates for common jobs (e.g., "add endpoint", "migrate tests", "write changelog"). They eliminate boilerplate prompting and keep users on the happy path.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The result: less noise, lower cost, more accurate outputs.&lt;/p&gt;

&lt;h2&gt;
  
  
  In Practice
&lt;/h2&gt;

&lt;p&gt;Imagine a typical full-stack application: a React frontend talking to a Node.js API, each with distinct patterns. The frontend team enforces accessibility standards and component testing. The backend team requires validated payloads, structured error responses, and integration tests. Without instructions, an AI agent might generate a backend endpoint that returns raw errors or a frontend component missing ARIA labels — creating review friction and rework. Instruction files ensure the agent knows these domain-specific rules and conventions upfront.&lt;/p&gt;

&lt;h3&gt;
  
  
  File structure examples
&lt;/h3&gt;

&lt;p&gt;GitHub Copilot approach with &lt;code&gt;.github/&lt;/code&gt; directory:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;repo/
├── .github/
│   ├── copilot-instructions.md    # Repository-wide Copilot instructions
│   ├── instructions/               # Path-specific instruction files with frontmatter scopes
│   │   ├── backend.md
│   │   ├── frontend.md
│   │   └── security.md
│   └── prompts/                    # Task-specific prompt files (optional)
├── backend/
    └── frontend/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Universal &lt;code&gt;AGENTS.md&lt;/code&gt; approach (tool-agnostic):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;repo/
├── AGENTS.md                       # Repository-wide instructions
├── backend/
│   ├── AGENTS.md                   # Backend-specific instructions
│   └── api/
│       └── AGENTS.md               # API-specific instructions
└── frontend/
    └── AGENTS.md                   # Frontend-specific instructions
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Example instruction files
&lt;/h3&gt;

&lt;p&gt;Repository-wide instructions (applies to entire codebase):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# Repository-wide Instructions&lt;/span&gt;

&lt;span class="gu"&gt;## Commits&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Use Conventional Commits (feat:, fix:, docs:, refactor:, test:, chore:)
&lt;span class="p"&gt;-&lt;/span&gt; Reference issue numbers in commit body (e.g., "Relates to #123")
&lt;span class="p"&gt;-&lt;/span&gt; Keep subject line under 72 characters

&lt;span class="gu"&gt;## Testing&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Require tests for all new features and bug fixes
&lt;span class="p"&gt;-&lt;/span&gt; Maintain minimum 80% code coverage
&lt;span class="p"&gt;-&lt;/span&gt; Run full test suite before submitting PR

&lt;span class="gu"&gt;## Code Review&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Keep PRs focused and under 400 lines when possible
&lt;span class="p"&gt;-&lt;/span&gt; Self-review checklist: tests pass, no secrets, lint clean
&lt;span class="p"&gt;-&lt;/span&gt; Tag at least one reviewer familiar with the domain

&lt;span class="gu"&gt;## Security&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Never commit secrets, API keys, or credentials
&lt;span class="p"&gt;-&lt;/span&gt; Use environment variables for configuration
&lt;span class="p"&gt;-&lt;/span&gt; Run security scanners in CI pipeline
&lt;span class="p"&gt;-&lt;/span&gt; Validate and sanitize all external inputs

&lt;span class="gu"&gt;## Documentation&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Update README when adding new features or changing setup
&lt;span class="p"&gt;-&lt;/span&gt; Document complex algorithms inline
&lt;span class="p"&gt;-&lt;/span&gt; Keep API documentation in sync with code changes

&lt;span class="gu"&gt;## Writing Style&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Always wrap filenames in backticks (e.g., &lt;span class="sb"&gt;`config.json`&lt;/span&gt;, &lt;span class="sb"&gt;`AGENTS.md`&lt;/span&gt;, &lt;span class="sb"&gt;`.github/copilot-instructions.md`&lt;/span&gt;)
&lt;span class="p"&gt;-&lt;/span&gt; Use clear, descriptive variable and function names
&lt;span class="p"&gt;-&lt;/span&gt; Write comments for non-obvious logic, not for self-explanatory code
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Backend-specific instructions:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Backend&lt;/span&gt;
&lt;span class="na"&gt;scope&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;paths&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;backend/**"&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
  &lt;span class="na"&gt;languages&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;js"&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;ts"&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
  &lt;span class="na"&gt;audience&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;ide"&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;cli"&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="gh"&gt;# Backend API Standards&lt;/span&gt;

&lt;span class="gu"&gt;## Goals&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Add/modify API endpoints with proper validation, telemetry, and tests.

&lt;span class="gu"&gt;## Code style&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Follow repo ESLint/Prettier. Prefer functional handlers; avoid singletons.

&lt;span class="gu"&gt;## HTTP/Errors&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Use RFC7807 problem+json. Map domain errors to 4xx with stable codes.

&lt;span class="gu"&gt;## Testing&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; For each handler, add integration tests hitting the router; seed minimal fixtures.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Frontend-specific instructions:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Frontend&lt;/span&gt;
&lt;span class="na"&gt;scope&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;paths&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;frontend/**"&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
  &lt;span class="na"&gt;languages&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;ts"&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;tsx"&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
  &lt;span class="na"&gt;audience&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;ide"&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;cli"&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="gh"&gt;# Frontend Engineering Standards&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Use React + Vite; prefer function components and hooks.
&lt;span class="p"&gt;-&lt;/span&gt; Enforce a11y: labels, roles, keyboard navigation.
&lt;span class="p"&gt;-&lt;/span&gt; Co-locate component tests next to components with &lt;span class="err"&gt;*&lt;/span&gt;.spec.tsx.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Key takeaways
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Keep each instruction file concise; multiple files may apply simultaneously.&lt;/li&gt;
&lt;li&gt;Scope narrowly by paths/languages to avoid conflicts and reduce tokens.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Instruction merging behavior:&lt;/strong&gt; Both GitHub Copilot and &lt;code&gt;AGENTS.md&lt;/code&gt; approaches merge path-specific/scoped instructions with repository-wide files. All applicable instruction files are combined and sent to the model together, enabling layered context that becomes more specific as you navigate deeper into the codebase.&lt;/li&gt;
&lt;li&gt;Frontmatter scoping (shown above) is specific to GitHub Copilot's &lt;code&gt;.github/instructions/&lt;/code&gt; files.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;AGENTS.md&lt;/code&gt; files use directory proximity for scoping instead of frontmatter.&lt;/li&gt;
&lt;li&gt;Both approaches achieve the same goal: context layering that keeps instructions relevant and maintainable.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Task automation: prompt files and sub-agents
&lt;/h2&gt;

&lt;p&gt;Beyond static instructions, both GitHub Copilot and Claude Code support structured, reusable task templates that guide common workflows. These eliminate repetitive prompting and ensure consistent outputs across your team.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prompt files&lt;/strong&gt; (GitHub Copilot) are parameterized markdown templates stored in a &lt;code&gt;prompts/&lt;/code&gt; directory. They define inputs, steps, and constraints for recurring tasks like &lt;em&gt;add API endpoint&lt;/em&gt; or &lt;em&gt;migrate tests&lt;/em&gt;. Users invoke them from the IDE or CLI, supply the parameters, and get guided, standardized results.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sub-agents&lt;/strong&gt; (Claude Code) work similarly but can be more dynamic. Each sub-agent focuses on a specific responsibility (e.g., &lt;em&gt;Security Review&lt;/em&gt;, &lt;em&gt;API Synthesizer&lt;/em&gt;) with its own instruction set. Claude can either route to the appropriate sub-agent automatically based on your task and the sub-agent's description, or you can invoke a specific sub-agent explicitly by name in your prompts.&lt;/p&gt;

&lt;p&gt;Both approaches serve the same purpose: turning common tasks into repeatable, version-controlled workflows.&lt;/p&gt;

&lt;h3&gt;
  
  
  Prompt files (GitHub Copilot)
&lt;/h3&gt;

&lt;p&gt;Create a &lt;code&gt;prompts/&lt;/code&gt; directory (see &lt;a href="https://code.visualstudio.com/docs/copilot/customization/prompt-files" rel="noopener noreferrer"&gt;VS Code Copilot Prompt Files&lt;/a&gt;) with reusable task prompts.&lt;/p&gt;

&lt;p&gt;Prompt files can be stored in two locations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Workspace-level&lt;/strong&gt;: &lt;code&gt;.github/prompts/&lt;/code&gt; (available in current workspace only)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;User-level&lt;/strong&gt;: VS Code profile folder (available across all workspaces, syncable via Settings Sync)
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;prompts/
├── add-endpoint.md
├── migrate-tests.md
└── write-changelog.md
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Example prompt file with frontmatter:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Create an API endpoint with validation, tests, and docs&lt;/span&gt;
&lt;span class="na"&gt;mode&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;agent&lt;/span&gt;
&lt;span class="na"&gt;tools&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;githubRepo'&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;search/codebase'&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
&lt;span class="na"&gt;model&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Claude Sonnet &lt;/span&gt;&lt;span class="m"&gt;4&lt;/span&gt;
&lt;span class="nn"&gt;---&lt;/span&gt;

Use the repository's Backend instructions.
Add ${input:method} ${input:route} with validation and router-level tests.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Usage:&lt;/strong&gt; In VS Code, use the &lt;code&gt;/&lt;/code&gt; command in chat to invoke prompts:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/add-endpoint method=POST route=/api/users
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The prompt file parameters are filled automatically, and Copilot generates code following the template's instructions.&lt;/p&gt;

&lt;h3&gt;
  
  
  Sub-agents (Claude Code)
&lt;/h3&gt;

&lt;p&gt;See &lt;a href="https://code.claude.com/docs/en/sub-agents" rel="noopener noreferrer"&gt;Claude Code: Sub-agents&lt;/a&gt; for detailed configuration. Each sub-agent can have its own focused instruction set and optional scope restrictions.&lt;/p&gt;

&lt;p&gt;Just like prompt files, sub-agents can be stored in two locations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Project-level&lt;/strong&gt;: &lt;code&gt;.claude/agents/&lt;/code&gt; (available in current project only)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;User-level&lt;/strong&gt;: &lt;code&gt;~/.claude/agents/&lt;/code&gt; (available across all projects)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Example sub-agent configuration:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="nn"&gt;---&lt;/span&gt;
&lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;add-endpoint&lt;/span&gt;
&lt;span class="na"&gt;description&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Create API endpoints with validation, tests, and documentation. Use proactively after modifying backend code.&lt;/span&gt;
&lt;span class="na"&gt;tools&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Read, Edit, Bash, Grep, Glob&lt;/span&gt;
&lt;span class="na"&gt;model&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;inherit&lt;/span&gt;
&lt;span class="nn"&gt;---&lt;/span&gt;

Use the repository's Backend instructions.
Add endpoints with validation and router-level tests.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Usage:&lt;/strong&gt; Invoke sub-agents explicitly by mentioning them with &lt;code&gt;@&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@add-endpoint Create a POST /api/users endpoint
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Or let Claude route automatically by describing the task without specifying a sub-agent. Claude will select the appropriate sub-agent based on context and task requirements.&lt;/p&gt;

&lt;h2&gt;
  
  
  Instruction writing and refinement
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Start with generic, widely available best-practice instructions
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Use markdown header for emphasis and agent guidance.&lt;/li&gt;
&lt;li&gt;Keep instructions concise and to the point.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Goal:&lt;/strong&gt; Establish a baseline and understand prompting techniques.&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TIP&lt;/strong&gt; Get inspiration from the &lt;a href="https://github.com/github/awesome-copilot/tree/main/instructions" rel="noopener noreferrer"&gt;awesome-copilot repository&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Meta Prompting → Model driven refinement
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Use your AI tool to generate/refine instructions based on your repository's context.&lt;/li&gt;
&lt;li&gt;Ask the model to remove ambiguity and keep instructions concise.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Goal:&lt;/strong&gt; Generate prompts that are understandable by the AI agent.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Example:&lt;/strong&gt; Generate me Copilot instructions for my blog post content based on the style you find in the current posts inside /content/post*.md. Validate for ambiguity and keep the instructions concise.&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;TIP&lt;/strong&gt; Use Visual Studio Code's built-in &lt;strong&gt;Generate Workspace Instructions File&lt;/strong&gt; to get an out of the box prompt that generates the instructions file based on your repository's context.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Meta + Feedback → Self-analysis &amp;amp; future adjustment
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;After generating output, ask the model to explain deviations from guidelines and adjust its approach for future tasks by modifying the instructions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Goal:&lt;/strong&gt; Build a feedback loop for continuous improvement.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Example:&lt;/strong&gt; Go through our conversation and iterations we made and implement/adjust instructions to avoid these mistakes in the future.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Making agentic AI work for you
&lt;/h2&gt;

&lt;p&gt;The difference between autocomplete on steroids and genuinely transformative AI assistance isn't the model — it's the context you provide. Teams who succeed with AI agents don't just adopt the tools; they codify their implicit knowledge into explicit, version-controlled instructions. They start by inventorying their domain rules and standards, then layer them strategically: repository-wide baselines, domain-specific guidance, and task-focused prompts. They keep these instructions close to the code, maintain them like any other asset, and refine them through feedback loops.&lt;/p&gt;

&lt;p&gt;This isn't optional groundwork for some future state of AI development. It's the necessary first step that transforms AI from a novelty into a reliable engineering partner. Without it, you're asking agents to guess your standards. With it, you're building a foundation for automation that scales across your team and compounds over time.&lt;/p&gt;

&lt;h2&gt;
  
  
  References and further reading
&lt;/h2&gt;

&lt;p&gt;References:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://code.visualstudio.com/docs/copilot/customization/prompt-files" rel="noopener noreferrer"&gt;VS Code Copilot Prompt Files&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://code.claude.com/docs/en/sub-agents" rel="noopener noreferrer"&gt;Claude Code: Sub-agents&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/live/IqWfKj4mUIo?t=737&amp;amp;si=cKd-_sLuis78eY_K" rel="noopener noreferrer"&gt;Lovable prompting techniques&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>prompts</category>
      <category>githubcopilot</category>
      <category>claude</category>
    </item>
  </channel>
</rss>
