Skip to content

ABAP Language Model Tools (AI Assistant Features)

Language Model Tools are the built-in capabilities that GitHub Copilot uses automatically when you ask it questions in chat. You don't call these tools yourself — Copilot selects and runs the right tool based on what you ask.

How to open Copilot Chat: Ctrl+Shift+I (new chat) or Ctrl+L (inline chat)

Make sure you are in Agent mode (not Ask or Edit) for full tool access.

How it works

When you type a question, Copilot picks the appropriate tool behind the scenes:

What you ask Tool Copilot uses
"Where is BAPI_USER_GET_DETAIL used?" find_where_used
"Show me the code for ZCL_MY_CLASS" get_abap_object_lines
"Find all classes with 'pricing' in the name" search_abap_objects
"Create a new class ZCL_TEST" create_object_programmatically
"Run ATC on ZTEST_PROG" run_atc_analysis

Available Tools

Search & Navigation

  1. search_abap_objects — Search for objects by name pattern using wildcards (e.g. Z*PRICING*, BAPI_USER*)
  2. get_abap_object_lines — Read source code from any ABAP object. Use methodName to extract a single method (e.g. "Show me the FACTORY method from CL_SALV_TABLE")
  3. search_abap_object_lines — Search for text within source code; supports regex and can list all methods in a class
  4. get_abap_object_info — Get metadata about an object (type, line count, cache status)
  5. get_batch_lines — Read source code from multiple objects in one call
  6. get_object_by_uri — Access an object directly using its ADT URI path
  7. find_where_used — Find all places where an object, method, or symbol is referenced
  8. get_connected_systems — List the SAP system connection IDs currently active in VS Code

Object Management

  1. create_object_programmatically — Create new ABAP objects (classes, reports, function groups, etc.). Note: transport dialogs still appear during creation.
  2. get_abap_object_url — Generate a SAP GUI WebGUI URL for an object (useful for browser automation)
  3. get_abap_object_workspace_uri — Get the VS Code adt:// URI for an object (needed before editing it)
  4. open_object — Open an object in the VS Code editor
  5. abap_activate — Activate ABAP objects after editing (similar to pressing the Activate button in SE80)

Code Quality & Testing

  1. run_unit_tests — Run ABAP unit tests and show results in the Testing panel
  2. create_test_include — Create a unit test class include for an existing class
  3. run_atc_analysis — Run ATC (ABAP Test Cockpit) code quality checks on an object
  4. get_atc_decorations — Read the current ATC warning/error highlights visible in the editor

Transport & Text

  1. manage_transport_requests — Get transport details, list user transports, compare transports. Falls back to direct SQL on older systems.
  2. manage_text_elements — Read, create, or update text elements in programs, classes, or function groups. READ works on all systems; CREATE/UPDATE requires a newer system.

Data & SQL

  1. execute_data_query — Run ABAP SQL queries and display results in an interactive table view
  2. get_abap_sql_syntax — Get ABAP SQL syntax rules (Copilot calls this before writing queries to avoid syntax errors)

Diagrams

  1. create_mermaid_diagram — Generate and display flowcharts, sequence diagrams, ER diagrams, and more
  2. validate_mermaid_syntax — Check Mermaid diagram code for syntax errors
  3. get_mermaid_documentation — Retrieve Mermaid syntax reference for a specific diagram type
  4. detect_mermaid_diagram_type — Auto-detect the type of a Mermaid diagram from its code

Runtime Analysis

  1. analyze_abap_dumps — List and analyze ST22 runtime errors
  2. analyze_abap_traces — Analyze performance traces; detects bottlenecks automatically
  3. get_version_history — View version history, retrieve source code at a past version, or compare two versions of an object

Debugging

  1. abap_debug_session — Start or stop an ABAP debugging session
  2. abap_debug_breakpoint — Set or remove breakpoints (supports conditions)
  3. abap_debug_step — Step over, step into, step return, or continue execution
  4. abap_debug_variable — Inspect variable values and internal table contents during a debug session
  5. abap_debug_stack — View the current call stack
  6. abap_debug_status — Check whether a debug session is active

System & Extension

  1. get_sap_system_info — Get SAP system details: client, release, system type (S/4HANA vs ECC), timezone. Results are cached for 24 hours. Use the Refresh SAP System Info Cache command to clear the cache.
  2. abap_fs_documentation — Search the ABAP FS extension documentation and settings reference
  3. adt_discovery_export — Export the full ADT discovery tree from a connected SAP system to markdown files for API investigation
  4. manage_subagents — Configure AI subagents that delegate tasks to cheaper/faster models to reduce API costs
  5. manage_heartbeat — Control the background heartbeat monitoring service (add monitoring tasks, set reminders, check status)

Documentation

  1. create_test_documentation — Generate a Word document from Playwright test screenshots, organized by scenario