Upgrade to Pro — share decks privately, control downloads, hide ads and more …

GitHub Copilot Angular Days Berlin 2025

GitHub Copilot Angular Days Berlin 2025

Avatar for Daniel Sogl

Daniel Sogl

October 20, 2025
Tweet

More Decks by Daniel Sogl

Other Decks in Programming

Transcript

  1. Daniel Sogl • Software architect @ Thinktecture AG • MVP

    – Developer & Web Technologies • Focus: Angular and Generative AI • Socials: https://linktr.ee/daniel_sogl Integrating AI Assistants into Modern Software Engineering Practices About me AI-Assisted Software Development
  2. • You understand the basics of Generative AI • You

    know what AI tools for software development are useful • You learn how to integrate AI coding tools into your existing workflows • You understand the possibilities and limits of AI assisted coding • You learn how to use GitHub Copilot various features and APIs AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Goals of the workshop
  3. • Generative AI basics • AI Coding – a critical

    perspective • AI tools for non developers • How to choose the right LLM • GitHub Copilot features, setup and workflows • MCP Server • Outlook AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Contents
  4. • Visual Studio Code (recommended) • GitHub Copilot (Pro or

    Enterprise recommended) • Git AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Setup
  5. Foundation & Reality Check • You learn the fundamentals of

    LLMs and Generative AI • You understand the differences between LLMs and traditional AI • You learn what makes LLMs “intelligent” using agents and tooling • You understand the risks when working with AI, especially when it comes to generating code AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Generative AI
  6. • Generative AI refers to systems that can create content

    such as text, images, videos, music or code • It uses large language models (LLMs) trained on vast datasets • In software development, it can write code, generate documentation, create tests, and more AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices What Is Generative AI?
  7. AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering

    Practices How a Large Language Model (LLM) Works An LLM is a neural network that predicts the most likely next token in a sequence by analyzing the context of all preceding tokens
  8. Tokenize first → split text into sub-word tokens and map

    each to an integer ID Embed IDs → look up a dense vector for every token (e.g., 768 floating-point numbers) Semantic geometry → similar meanings sit close together in this high-dimensional space GPU-friendly math → vectors make every step pure matrix multiplication, which modern hardware can parallelize across billions of parameters Self-attention = vector similarity → the model computes dot-products between token-vectors to decide which earlier words matter right now Softmax output → final vector is transformed into a probability distribution; the highest-probability token becomes the models “next word” AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Why LLMs Turn Words into Vectors
  9. AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering

    Practices How Large Language Models Are Trained Stage What Happens 1. Data Collection & Cleaning Web pages, code repos, books, papers → deduplicated, filtered, token-balanced 2. Tokenization Raw text → sub-word tokens (e.g. Byte-Pair Encoding) 3. Self-Supervised Pre-Training Transformer learns to predict next token on 100 B+ tokens across thousands of GPUs 4. Alignment & Fine-Tuning Turns raw predictor into a helpful, policy-aligned assistant 5. Evaluation & Benchmarking Benchmarks (MMLU, HumanEval, SWE-bench) + adversarial tests 6. Deployment & Continuous Refresh Prompt filters, safety layers, telemetry for quality & drift
  10. @Daniel Sogl 12 Stage What Happens 1. Data Collection &

    Cleaning Web pages, code repos, books, papers → deduplicated, filtered, token-balanced 2. Tokenization Raw text → sub-word tokens (e.g. Byte-Pair Encoding) 3. Self-Supervised Pre-Training Transformer learns to predict next token on 100 B+ tokens across thousands of GPUs 4. Alignment & Fine-Tuning Turns raw predictor into a helpful, policy-aligned assistant 5. Evaluation & Benchmarking Benchmarks (MMLU, HumanEval, SWE-bench) + adversarial tests 6. Deployment & Continuous Refresh Prompt filters, safety layers, telemetry for quality & drift How Large Language Models Are Trained
  11. Traditional AI Generative AI Classifies / predicts Generates new content

    Rule-based / ML models Foundation models (LLMs) Needs structured inputs Handles natural language prompts Specific tasks Flexible, general-purpose AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Generative AI vs Traditional AI
  12. • AI reduces critical thinking and problem-solving skills in the

    long term • Danger of cognitive laziness - “automation bias” • Blind trust in AI results increases the risk of errors AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Cognitive offloading
  13. Study Setup: • Controlled Study: 16 Experienced Developers, 246 Real

    Tasks • Tool used: Cursor with Claude Sonnet 3.5 Results: • Actual performance: 19% SLOWER with AI tools • Developer perception: Believed they were 20% faster • Perception gap: 40 percentage points difference AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Reality Check – The METR Study
  14. • GitClear Analysis: 153-211 Million Lines of Code • Code

    churn: Projected to double in 2025 • Copy-pasted code: 8.3% → 12.3% (+48%) • Code refactoring: 25% → <10% (-60%) AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Code Quality Catastrophe
  15. • Veracode 2025 Study: AI Code Security Failures • 45%

    of AI-generated code fails security tests • Java security failure rate: 72% • Secret leakage: 40% higher in Copilot repos AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Security Nightmare
  16. • Generative AI creates new content • LLMs like GPT

    or Claude can assist in real-world development • Opportunities: faster coding, better quality, automation • Risks: always validate and stay in control Next: Let’s explore the tools that make this possible AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Summary: Key Takeaways
  17. • PoC & Rapid Prototyping: Bolt.new, Lovable.dev, v0.dev, Firebase Studio,

    GitHub Spark • AI-Powered IDEs & Plugins: Cursor, Windsurf, GitHub Copilot, Kilo, Cline, Roo Code • Terminal-Based AI Assistants: Claude Code, Codex, GitHub Copilot CLI, Gemini CLI • General-Purpose Assistants (Desktop Apps): ChatGPT Desktop, Claude Desktop AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Overview - AI Development Tools Landscape
  18. • Create full applications with just a few prompts •

    Connect to external APIs using cloud services like Supabase • No local setup needed – everything runs in the browser Important: Generated code should not be seen as production-ready code AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices AI Prototyping Tools – In a nutshell
  19. • A conversational, no-code AI for quickly generating web app

    prototypes • React only code Key Features • Conversational interface • frontend and backend prototyping using Supabase • Integrated visual editor & 3rd Party integrations like Stripe or OpenAI AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Lovable.dev – Build Apps by Chatting
  20. • Vibe coding platform integrated into GitHub.com Key Features •

    Uses your GitHub Copilot subscription (Pro+ or Enterprise) • Build on top of VS Code IDE • Includes all GitHub Copilot models, storage and compute AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices GitHub Spark - Dream it. See it. Ship it.
  21. • AI-prototyping tools can be used without technical backgrounds •

    Prototypes can be built with simple prompts in a few minutes instead of days or weeks • Existing design systems can be integrated using Figma or screenshots • Full-stack development using Supabase or Google Cloud • Generated code – most of the time react based – should not be shipped to production • Vendor lock-in because of strict architectures AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Conclusion
  22. VS Code-based IDE with deeply integrated AI that understands project-wide

    context for code generation, refactoring, and documentation. Key Features • AI-powered inline code generation and refactoring • Multi-file, context-aware edits • Agent Mode with background capabilities • Support for various AI models (GPT, Claude, Gemini, DeepSeek) • Vectorize external documentations AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Cursor – The AI-First Code Editor
  23. Advanced AI IDE featuring agentic coding via Cascade AI, automating

    multi-step coding tasks across files seamlessly. Key Features: • Cascade AI: autonomous multi-file coding • In-Browser styling • Memory database • Web deployments from the IDE • Cascade is also available for JetBrains • Self hosted infrastructure AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Windsurf – AI-Agentic IDE by Windsurf Inc.
  24. Seamlessly integrated coding assistant providing inline code completions, documentation, testing,

    and debugging suggestions directly within your IDE. Key Features: • Inline code suggestions • Copilot Chat for real-time code help • Automation of routine coding tasks (unit tests, docs) • Deep integration with GitHub • Available for multiple editors (JetBrains, Xcode etc.) AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices GitHub Copilot – Your AI Pair Programmer
  25. IDE / Tool.- Pricing Cursor • Free trial available •

    Pro version starts at $20 per month • Individual pricing for extra token usage Windsurf • Free trial available • Pro version starts at $15 • Individual pricing for extra token usage • Some models like DeepSeek can be used for free GitHub Copilot • Free version available • Pro version starts at $10 • Pro version includes unlimited GTP-4.1, GPT-4o and GPT- 5-mini requests • Individual pricing for extra token usage AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Pricing comparison
  26. • Integrated as VS Code or JetBrains extension • Open-Source

    • On-device processing • Optimizes cost efficiency with model switching (e.g., o3 for planning, Claude 4.5 Sonnet for coding) • Offers Plan/Act modes for controlled AI execution AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Cline – The Collaborative AI Coder
  27. Tool Purpose: AI assistant in your terminal that understands and

    edits codebases Key Features: • Uses full repo context • Safe-mode execution, file editing, test generation • Sub agents • Supports Plugins Setup: npm install -g @anthropic-ai/claude-code AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Claude Code
  28. Tool Purpose: Developer assistant using Gemini 2.5 in the terminal

    Key Features: • 1M token context window • Google Cloud and CI/CD integration • Agentic capabilities: clone repo, generate code, deploy Setup: Homebrew or Linux package + Gemini token AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Gemini CLI
  29. Tool Purpose: Terminal-based AI coding assistant using GitHub Copilots APIs

    Key Features: • Out of the box GitHub integration • Supports various LLMs • Agentic capabilities like with the Copilot Agent mode • MCP support Setup: npm install -g @github/copilot AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices GitHub Copilot CLI
  30. • Supports macOS and Windows • Access to all Anthropic

    models • Adjustable response styles • Research/Reasoning mode and web search • Computer use for agentic computer controls (mouse, browser, keyboard, screenshots) • MCP Server support • 3rd party plugin support for Slack, Atlassian, Zappier and more AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Claude Desktop
  31. • Many developers attend to overhype new released tools and

    services • Evaluate, if you can avoid vendor lock ins and opinionated tools • Compare prices (pay for tokens vs actions vs commands) • Focus on one tool first to learn, how to use AI tools the right way AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices How to choose the right tool?
  32. • Not all LLMs are equal: Performance varies widely •

    Understand reasoning vs. non-reasoning models • Context size matters greatly in coding scenarios • Benchmarks help guide practical model choice AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Choosing the Right LLM for Your Tasks
  33. Model Provider Context Window SWE-Bench $ 1M I/O Token Claude

    4.1 Opus Anthropic 200k tokens 74.5 % $15 / $75 Claude Sonnet 4.5 Anthropic 200k tokens 77.2 % $3 / $15 GPT-5 (high) OpenAI 1m tokens 74.9 % $1.25 / $10 GPT-5 Codex OpenAI 400k tokens 74.5 % $1.25 / $10 Gemini 2.5 Pro Google 1m tokens 63 % $1.25 / $10 Grok 4 xAI 128k tokens 69 % $3 / $15 Grok Code Fast 1 xAI 256k tokens 70.8 % $0.2 / $1.50 AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Popular LLMs for Software Development
  34. • AMD tested 20+ local models — only a few

    are reliable for coding tasks • RAM is the real bottleneck — determines which model tier you can run • GGUF (Windows/Linux/Mac) vs MLX (Mac) – choose your model format wisely • Smaller models (<30B) fail at tool use, code reasoning & autonomy AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Local LLMs Source: https://cline.bot/blog/local-models-amd
  35. Which LLM Should You Choose? Use Claude or GPT-5 for

    high-quality coding tasks Use Gemini 2.5 Pro for large context + Google ecosystem Use reasoning models when debugging, planning, or testing Pay attention to context size for repo-scale automation Always refer to benchmarks for grounded comparison Compare prices ad premium request counters AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Practical Recommendations
  36. • Inline completions & Next-Edit prediction • Copilot Chat: context

    tricks & slash commands • Edit / Code-brush mode for refactors • Agents • Custom instructions & MCP Server Hands-on exercise → personalize Copilot for your repo AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices GitHub Copilot Deep-Dive · Agenda
  37. • You will learn the fundamental features of GitHub Copilot

    • You understand which features can be used for which use cases • You understand the limits of GitHub Copilot without further configurations You will learn how to setup a Copilot environment, write better prompts and setup custom workflows in the next chapter, including practical exercises AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices GitHub Copilot – Chapter Overview
  38. Promised as: GitHub Copilot is an AI pair programmer that

    helps you write code faster and with fewer errors. Key Features: • Integrated into a vast of IDEs like VS Code, Xcode, JetBrains, NeoVim or Eclipse • Includes smart code edits, auto suggestions, chat- , edit- and agent-modes • Works together with GitHub APIs • Best price for value package, compared with the other tools demonstrated before AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices GitHub Copilot: Introduction
  39. Free: $0 • 50 premium requests per month • 2.000

    completions per month Pro: $10 • Unlimited GTP-5-mini usage • Unlimited code completions • Free for students • 300 premium requests per month Pro+: $39 • Access to all LLMs like Sonnet 4.5 • 1.500 premium requests per month Business: $19 per user • Same features as Pro version • User management and metrics • Data privacy Enterprise: $39 per user • Same features as Pro+ version AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices GitHub Copilot: Pricing
  40. • GTP models run only in GitHub-owned Azure tenants •

    Contracts signed with Amazon for Sonnet and Google for Gemini models to prevent collected data from being used for training • Editor plugins: prompts not retained for training; discarded after suggestion returned • Chat on Web / CLI / Mobile: prompts & responses kept only for conversation history, not for model training • Copilot is trained on public GitHub repositories and prompts users input when asking questions Important: Suggestions based on public code can be disabled AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices GitHub Copilot: Data Protection
  41. • Copilot settings can be managed on https://github.com/settings/copilot/features • License

    and premium requests can be managed • Many features are hidden behind feature flags • New models must be enabled manually • GitHub Copilot settings are independent from GitHub Copilot plugin settings AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices GitHub Copilot: Settings
  42. • Plugin Settings can be configured inside your chosen IDE

    • Experimental features are behind feature flags or only available in Visual Studio Code Insiders • Copilot Settings can be shared across projects by including the settings.json in the Git history • VS Code Plugin changelog should be reviewed from time to time to oversee new settings → https://github.com/microsoft/vscode-copilot-chat AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Copilot Plugin Settings
  43. Feature Type: Inline / Ghost Text Suggestions Environment: All IDEs

    (VS Code, JetBrains, Neovim, etc.) Functionality: • Suggests lines of code or entire functions as you type • Based on file contents, neighboring code, and comments • Accept with Tab or continue typing to ignore AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Inline Code Completions
  44. • Be explicit: What should be built, how, and why.

    • Provide context: Use file references, comments, or open files. • Specify frameworks, libraries, and languages. • Use examples: Show input/output samples. • Split complex tasks into step-by-step prompts Bad: Create a function Good: Create a TypeScript function named formatDate that converts a timestamp to 'YYYY-MM-DD' format. AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Effective Prompting – General Principles
  45. Feature Type: Predictive Completion Environment: Visual Studio Code Functionality: •

    Copilot predicts what you’re likely to do next • Offers suggestions like function renaming, adding missing parameters Benefits: • Reduces repetitive edits • Keeps momentum during refactors AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Next Edit Suggestions (NES)
  46. • Accept suggestion: TAB key • Reject suggestion: Esc key

    • Partially accepting: ⌘ + → • Individual shortcuts can be added to jump between suggestions Suggestions can be configured for each file type AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Inline Code Completions: Shortcuts & Settings
  47. Feature Type: Interactive Chat Interface Environment: VS Code, JetBrains, GitHub.com

    Functionality: • Ask Copilot natural language questions about your code • Get explanations, suggestions, refactors, and examples Context Awareness: • Reference files using #filename • Use #codebase to include the entire project • Attach screenshots AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Copilot Chat / Ask-Mode
  48. • Copilot Chat is context aware and can access your

    code base • Files, Folders, Prompts and Tools can be tagged using the #-Command • Chat mode can be used for questions or research • Inline-Chat mode can be opened with Command + I • Use shortcuts: /doc, /edit/, /explain, /fix, /generate, /tests • More on custom slash commands later • Execute tool prompts: /mcp.lighthouse.optimize-resources AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Chat: Tips
  49. Feature Type: Multi-file refactoring Environment: VS Code Functionality: • Manually

    add files Copilot may edit • Copilot can’t add files by itself Use Case Examples: • Add new API route • Update all affected types/interfaces AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Multi-File Edit Mode
  50. Feature Type: Autonomous Agent Execution Environment: VS Code, GitHub.com Functionality:

    • Assign a task like "Implement password reset" • Agent determines necessary code changes • Makes edits and creates a Pull Request automatically Benefits: • Executes multi-step dev tasks autonomously • Ideal for repetitive or boilerplate-heavy tasks AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Copilot Agent
  51. • Select LLMs based on the task (GPT-5-mini for simple

    tasks, Sonnet 4.5 for advanced tasks) • Provide clear context and specific goals to get better results from GitHub Copilot, especially in agent mode. • Equip agent mode with the right tools and custom instructions to match your coding style. • Use MCP integrations to extend agent mode’s capabilities for your specific workflows. • Always review and validate the generated code - stay in the pilot’s seat. AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Copilot Agent: Best practices
  52. • github.copilot.chat.localeOverride – your preferred language • github.copilot.chat.commitMessageGeneration.instructions – instructions

    to auto generate your commit messages • github.copilot.chat.agent.thinkingTool – enables thinking mode • chat.agent.thinkingStyle – configures the display of thinking output • github.copilot.chat.reviewSelection.enabled – enables inline code reviews • chat.mcp.gallery.enabled – enables MCP marketplace AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Copilot Settings (VS-Code)
  53. • You will learn how to customize GitHub Copilot •

    You understand why custom instructions are the key for qualitative LLM responses • You will create your own instructions based on your projects Share your learnings and instructions at the end of the self study chapter AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Custom Instructions – Chapter Overview
  54. • LLMs were trained on older data • LLMs don’t

    understand your architecture without help • LLMs don’t know your company domains • LLMs don’t know your coding standards • Developers don’t write prompts describing every edge case or needed context to solve tasks • Different tasks with different context AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices LLMs don’t understand your projects
  55. • We can define so called custom instructions to provide

    extra context to all Copilot actions • A custom instruction is a markdown file with rules, instructions and guidelines defined by developers • Custom instructions can be added fine granular to specific file types and tasks • Custom instructions are part of a project and can be shared with all other developers • This pattern can also be used with Cursor, Windsurf, Claude Code or Gemini CLI • Supported by Copilot Plugin in VS-Code, VS, JetBrains AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices How to solve that problem?
  56. Copilot knows two types of instruction files • Global instructions:

    copilot-instructions.md • Fine tuned instructions: custom.instructions.md • Instructions can be scoped to be included for defined file types like *.ts, *.html, *.css • Instructions can also be scoped for Copilot specific tasks like generating commit messages, generating tests or reviewing code Tip: Keep your instructions short. Each condition will be part of your context window AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Custom Instructions hierarchy
  57. • Keep instructions short and self-contained • Use one simple

    statement per instruction • Avoid references to external resources • Split instructions into multiple files by topic or task • Store instructions in files to share and version them easily • Use applyTo to target specific files or folders • Reference instructions in prompts to keep them clean and avoid duplication AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Custom Instructions: Best Practices
  58. • Define the language and tone of responses • Configure

    the level of the Copilot to act like a Senior Developer, Architect or PO • Reduce the clutter of example code shown in the chat • Try to make the AI judgy • Focus on framework and language agnostic rules • Define rules for code comments – LLMs often create code comments for the simplest lines of code – reducing the output tokens • Less is More – LLMs were trained on best practices so you only must define the rules for edge cases where they fail AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices
  59. • Make sure to define rules for typing's – LLMS

    like to “just finish” the current tasks, ignoring type safety • Define which ECMS/TS-Version you like to target • Handle edge cases • Define your architecture and file/folder structure to avoid the need of moving files after generation • Scope your rules to TypeScript only to avoid conflicts with other languages or files AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Custom Instruction - TypeScript
  60. Problem: each tool uses its own Instruction file format •

    AGENTS.md is supported by nearly all Tools • Can be used to reference commands and other instructions, configured for specific tools • Reduces the work of keeping instructions up-to- date with your project setup AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices AGENTS.md – Unified file for all AI Coding Tools
  61. • Use your favorite AI coding tool to review your

    project architecture, common patterns and existing instructions • Reference existing instructions • Use platforms like codingrules.ai • Share instructions within your team and update them when you notice the AI is not following your instructions AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices How to generate instructions?
  62. AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering

    Practices Self-Study: Create your own instructions Open any of your projects with VS Code Create a global instructions file .github/copilot-instructions.md or AGENTS.md Define rules that can be used in all your Copilot requests Create one or multiple instruction files for specific file types like TypeScript or Angular Tip: Ask Copilot to generate rules based on your codebase with #codebase or by fetching online resources using #fetch or #web
  63. Prompt files are reusable prompts for tasks like code generation

    or code reviews • The content is defined in Markdown files • Prompt files are standalone and can be run directly in the chat • Example: A security review prompt file references general security practices and adds specific instructions on how to report findings Two scope types in VS Code: • Workspace prompt files: Available only within the workspace, stored in .github/prompts • User prompt files: Available across multiple workspaces, stored in the current VS Code profile Tip: Prompt files can use instruction files to reuse common guidelines and add task-specific instructions AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Prompt Files / Custom Slash Commands
  64. • A prompt file is a Markdown file with the

    .prompt.md suffix • It contains two main sections: • Header with metadata: • mode: Defines the chat mode (ask, edit, or agent, default is ask) • tools: Lists tools or toolsets for agent mode (ignored if unavailable) • description: Short explanation of the prompt • Body: Contains the actual prompt content • The body supports natural language instructions, additional context, and links to other prompt files • Reference other files (workspace, prompt, or instruction files) using Markdown links and relative paths AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Prompt Files: Definition
  65. • Limit the tools that should be used while running

    the prompt • Select a model that fits your workflow – reasoning vs non-reasoning • Link existing resources and documents to force the Copilot to use them as context • Force copilot to ask questions if not all needed requirements to run the prompt are defined by the developer Tipp: you can also run the prompts as custom slash commands in the Copilot CLI AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Best practices
  66. • Code Refactoring • Code Optimization • Code Documentation •

    Debugging • Architecture decisions • Audits AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Custom Workflows
  67. • Open any of your projects with VS Code •

    Create a reusable prompt file • Define a prompt for a day-to-day task you like to automate (write a unit test, document a feature) Tip: Investigate the example repo: https://github.com/github/awesome-copilot AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Self-Study: Create your own reusable prompt
  68. • Chat modes are predefined configurations that adjust the AI

    chat behavior and personality for different tasks in VS Code • Switch chat modes anytime in the Chat view, depending on your task • Built-in chat modes: • Ask: For general questions and answers • Edit: To make code changes • Agent: For autonomous coding tasks You can create custom chat modes for specific scenarios like feature planning or technical research AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Copilot Custom Chat Modes
  69. • description: A brief description of the chat mode •

    tools: A list of tool or tool set names that are available for this chat mod • body: provide specific prompts or guidelines. Instructions or other markdown files can be referenced Tip: Custom modes can be synced like custom prompts or custom instructions with your VS Code settings AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Copilot Custom Modes: Structure
  70. • Review Mode – gives constructive feedback to your code

    changes made on the given branch • Mentor Mode – no access to edit tools, only allowed to answer questions with limited code examples to help junior developers finding the solutions • Plan Mode – acts as an architect or PO to define the code of your feature before generating actual code • Refactoring Mode – helps to migrate existing code to new APIs or architectures AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Custom Mode Examples
  71. • Open any of your projects with VS Code •

    Create a custom mode file e.g .github/chatmodes/mentor.chatmode.md • Define a custom mode for a refactoring, migration or refinement task • Play around with the available models Tip: Investigate the example repo: https://github.com/github/awesome-copilot AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Self-Study: Create your own custom mode
  72. 1. Single: Focus on one well-defined task at a time

    2. Specific: Provide explicit and detailed instructions 3. Short: Write concise prompts that avoid unnecessary details 4. Surround: Provide relevant context and clarify the intended use or audience for the prompt AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Core Principles - The 4 S's Framework
  73. Context: Project background, constraints Objective: Specific goals, success criteria Style:

    Coding patterns, conventions Tone: Collaborative, step-by-step Audience: Experience level, domain Response: Format, structure requirements AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices CO-STAR Framework
  74. • Thanks to the defined custom instructions, prompts and chat

    modes, only the specific context and objective needs to be defined • For each new task open a new chat session to clear the context • Use the “next tab” feature of copilot to automatically include open files as context into your prompts • Tag required files or tools in your prompt, so copilot does not need to search for the needed context AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices How to improve your prompts using GitHub Copilot Settings
  75. File-Level Context • Keep related functions together • Use consistent

    naming conventions • Maintain clear file organization • Include relevant imports at the top • Use descriptive filenames for better context Project-Level Context (Neighboring Tabs) • GitHub Copilot processes all open files in your IDE • Open relevant files and close irrelevant ones • Follow established patterns across your codebase • Use existing utility functions • Match the codebase style and reference shared constants AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Advanced Context Optimization Strategies
  76. Apply the 4 S's : Single, Specific, Short, Surround CO-STAR:

    specify the Context and Objective Provide Examples: Show expected input/output Set Context: Include relevant background and use neighboring tabs Use Good Names: Descriptive variables and functions Iterate: Refine prompts based on results Stay Consistent: Follow established patterns AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Best Practices Summary
  77. • What are Tools in the context of LLMs •

    What MCP is & why context ≠ long prompts • Using built-in MCP servers with Copilot • Live demo register resource + tool in 5 minutes • Example custom server (TypeScript SDK) AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Model Context Protocol (MCP) - Agenda
  78. • Tool Calling lets LLMs use external functions - LLMs

    generate structured requests to execute specific tools when they need capabilities beyond their training • Extends capabilities - Enables real-time data access, performing actions, and running computations the LLM can't do alone • Common examples - Web search, calculators, APIs, databases, code execution, email, and calendar systems • Makes LLMs current and actionable - No longer limited to training data; can fetch live information and complete multi-step tasks AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Excursion – Tool/Function Calling
  79. • Open-source protocol to integrate AI tools with external sources

    • Developed by Anthropic • Client-Server architecture: AI applications (clients) request context from external services (servers) • Security: secure data handling on your own infrastructure • MCP Server transport: local standard input/output (stdio), server-sent events (sse), and streamable HTTP (http) for MCP server transport AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices What is MCP?
  80. • Microsoft verified MCP Servers for Agent Mode: https://code.visualstudio.com/mcp •

    MCP GitHub Repo: https://github.com/modelcontextprotocol/servers • Awesome MCP Server: https://github.com/punkpeye/awesome-mcp-servers • MCP Collection: https://glama.ai/mcp • Official provider websites like Atlassian, GitHub or PayPal AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices How to find MCP Servers?
  81. • Design-to-Code with Figma MCP Server • Database Development with

    PostgreSQL/MySQL MCP Server • Code Review Automation with GitHub MCP Server • Slack Integration for Development Updates • Documentation Management with File System MCP Server • Start with read-only operations to build confidence • Always review AI-generated outputs before committing • Create workflow templates for your most common tasks • Combine multiple MCP servers for powerful compound workflows AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices MCP Workflows
  82. • Open any of your projects with VS Code •

    Add MCP Server to your project or globally • Define a tool set to for different tasks Tip: Investigate the official Agent Mode MCP overview https://code.visualstudio.com/mcp or https://glama.ai/mcp AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Self-Study: Add MCP tools to VS Code
  83. • Workspace settings: add a .vscode/mcp.json file in your workspace

    to configure MCP servers for a workspace and share configurations with team members • User settings: specify the server in your user settings to enable the MCP server across all workspaces • Automatic discovery: enable auto discovery of MCP servers defined in other tools, such as Claude Desktop • Tool executions have to bee confirmed and can be auto confirmed if wanted AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Using MCP in GitHub Copilot
  84. • As shown in the GitClear report, AI coding tools

    create duplicated lines of code • Developers often feel more productive, instead the time from code to production increases • The DORA report from Google shows a quality decrease of 8% when shipping AI generated code to production AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Why is it important?
  85. • Developers who experience fewer than 20% hallucinations are 2.5x

    more likely to merge code without reviewing it • High-confidence engineers are 1.3x more likely to say AI makes their job more enjoyable • Using AI-Coding tools often results into non function code thanks to missed context • Even boilerplate code lacks quality AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices State of Code Quality 2025 – AI Code Focused https://www.qodo.ai/reports/state-of-ai-code-quality
  86. Cyclomatic Complexity: measures how complex a code is based on

    the number of decision points Code Churn: measures the code added, modified, or deleted over time Code Coverage: quantifies the percentage of your codebase covered by automated tests Code Security: measures how resistant the code is to attacks and risks Code Documentation: measures the amount and quality of the documentation accompanying the code Code Duplication: measures the amount of code repeated or copied in different parts of the codebase Code Bug Issues: measures the number of bugs or defects found in the code per unit of code size AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Code Quality Metrics
  87. • Adding static code analyses can track your code quality

    without adding more complexity to your project • Tools prevent adding complex, buggy or duplicated code into your existing code base on each commit or pull request • Many tools are free to use for public projects • Most tools support all common programming languages • Quality gates can be configured company wide AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Static Code Analyses
  88. • Language specific: ESLint, SonarLint, pylint, Qodana • Language agnostic:

    SonarQube (Cloud), Codacy • Security: Snyk, Veracode AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Tools
  89. • GitHub Copilot, Google Gemini and Claude Code can be

    used to review your Pull Requests • Based on your defined custom instructions, GitHub Copilot will review your code • Custom Agents can be executed locally or as CI- Action to review your code • Coplot: Each review costs one Premium Request AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices AI Code Reviews
  90. • AI assistants (Copilot, Claude, Gemini) will be as standard

    as Git & CI/CD • Boiler-plate work shrinks → focus shifts to architecture, design & product insight • New responsibilities: AI coach, safety reviewer, data-governance advocate • Human strengths remain irreplaceable: creativity - context - empathy AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices The Developer Role Is Evolving
  91. • Teams using AI code ≈ 20 % faster; ignoring

    the shift means falling behind • Build your toolkit: prompt craft - LLM APIs - MCP integrations - green AI practices • Combine AI with your domain expertise & critical thinking to deliver 10× value • Treat AI as your power-tool, not a threat: the dev + AI beats dev or AI alone AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Engage Now — AI Skills Will Define Your Future
  92. Your 4-step roadmap 1. Use AI daily: make it a

    default, measurable habit 2. Keep learning: follow model updates & best practices 3. Review & refine: human oversight ensures quality and ethics 4. Share knowledge: lift your whole team, shape responsible adoption AI-Assisted Software Development Integrating AI Assistants into Modern Software Engineering Practices Embrace Change, Stay Human, Build the Future