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.
Connection Requirement¶
Most tools require an active SAP connection. When no SAP system is connected, tools are hidden from Copilot to save context tokens. The abapfs_search_documentation tool is always available regardless of connection status — use it to ask about features and setup.
Connect to a SAP system (Ctrl+Shift+P → ABAP FS: Connect to an ABAP system) to enable all available SAP tools.
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?" | abapfs_find_usages |
| "Show me the code for ZCL_MY_CLASS" | abapfs_get_object_source |
| "Find all classes with 'pricing' in the name" | abapfs_search_objects |
| "Create a new class ZCL_TEST" | abapfs_create_object |
| "Run ATC on ZTEST_PROG" | abapfs_run_atc_analysis |
Available Tools¶
Search & Navigation¶
- abapfs_search_objects — Search for objects by name pattern using wildcards (e.g.
Z*PRICING*,BAPI_USER*) - abapfs_get_object_source — Read source code from any ABAP object. Use
methodNameto extract a single method (e.g. "Show me the FACTORY method from CL_SALV_TABLE") - abapfs_search_object_source — Search for text within source code; supports regex and can list all methods in a class
- abapfs_get_object_info — Get metadata about an object (type, line count, cache status)
- abapfs_batch_get_lines — Read source code from multiple objects in one call
- abapfs_get_object_by_uri — Access an object directly using its ADT URI path
- abapfs_find_usages — Find all places where an object, method, or symbol is referenced
- abapfs_get_connected_systems — List the SAP system connection IDs currently active in VS Code
Object Management¶
- abapfs_create_object — Create new ABAP objects (classes, reports, function groups, etc.). Note: transport dialogs still appear during creation.
- abapfs_get_object_url — Generate a SAP GUI WebGUI URL for an object (useful for browser automation)
- abapfs_get_workspace_uri — Get the VS Code
adt://URI for an object (needed before editing it) - abapfs_open_object — Open an object in the VS Code editor
- abapfs_activate_object — Activate ABAP objects after editing (similar to pressing the Activate button in SE80)
Code Quality & Testing¶
- abapfs_run_unit_tests — Run ABAP unit tests and show results in the Testing panel
- abapfs_create_test_include — Create a unit test class include for an existing class
- abapfs_run_atc_analysis — Run ATC (ABAP Test Cockpit) code quality checks on an object
- abapfs_get_atc_highlights — Read the current ATC warning/error highlights visible in the editor
Transport & Text¶
- abapfs_manage_transports — Get transport details, list user transports, compare transports. Falls back to direct SQL on older systems.
- abapfs_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¶
- abapfs_run_sql_query — Run ABAP SQL queries and display results in an interactive table view
- abapfs_get_sql_syntax — Get ABAP SQL syntax rules (Copilot calls this before writing queries to avoid syntax errors)
- abapfs_workbook_cell_settings — Read or set the cell names, system markers and row limits of an SAP Data Workbook (
.sapwb); notebook editing tools cannot set them
Diagrams¶
- abapfs_create_mermaid_diagram — Generate and display flowcharts, sequence diagrams, ER diagrams, and more
- abapfs_validate_mermaid_syntax — Check Mermaid diagram code for syntax errors
- abapfs_get_mermaid_documentation — Retrieve Mermaid syntax reference for a specific diagram type
- abapfs_detect_mermaid_diagram_type — Auto-detect the type of a Mermaid diagram from its code
Runtime Analysis¶
- abapfs_analyze_dumps — List and analyze ST22 runtime errors
- abapfs_analyze_traces — Analyze performance traces; detects bottlenecks automatically
- abapfs_get_version_history — View version history, retrieve source code at a past version, or compare two versions of an object
Debugging¶
- abapfs_manage_debug_session — Start or stop an ABAP debugging session
- abapfs_manage_breakpoints — Set or remove breakpoints (supports conditions)
- abapfs_step_debugger — Step over, step into, step return, or continue execution
- abapfs_inspect_variable — Inspect variable values and internal table contents during a debug session
- abapfs_get_debug_stack — View the current call stack
- abapfs_get_debug_status — Check whether a debug session is active
System & Extension¶
- abapfs_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.
- abapfs_search_documentation — Search the ABAP FS extension documentation and settings reference
- abapfs_export_adt_discovery — Export the full ADT discovery tree from a connected SAP system to markdown files for API investigation
- abapfs_manage_subagents — Configure AI subagents that delegate tasks to cheaper/faster models to reduce API costs
- abapfs_manage_heartbeat — Control the background heartbeat monitoring service (add monitoring tasks, set reminders, check status)
Repository Comparison¶
- abapfs_list_repository_workflows — List persistent repository comparison workflows and their current status
- abapfs_get_repository_workflow — Read selected workflow state, criteria, summaries, or a filtered artifact page
- abapfs_create_repository_workflow — Create a source-to-target comparison between two connected systems
- abapfs_update_repository_workflow_criteria — Update discovery scope and invalidate earlier derived results
- abapfs_run_repository_workflow_step — Run discovery, rebuild inventory comparison, or compare selected source
- abapfs_open_repository_workflow — Open or focus the Repository Comparison Workflow webview
- abapfs_prepare_repository_assisted_apply — Prepare a non-mutating, safety-reviewed assisted-apply plan
See Repository Comparison for the complete workflow and safety boundaries.
Documentation¶
- abapfs_build_test_documentation — Generate a Word document from Playwright test screenshots, organized by scenario