brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
arc-1-skillsARC-1 agentic SAP development skills (arc-mcp/arc-1/skills). Reference for ADT tools, code activation, and automated ABAP editing. Covers the 8 arc-1 MCP tools (SAPContext, SAPDiagnose, SAPLint, SAPManage, SAPNavigate, SAPRead, SAPSearch, SAPTransport), the read-edit-activate-transport flow, and arc-1's role as PRIMARY ADT MCP in the routing tree.
Independent GitHub snapshot · Automated classification · Original documentation governs
name: arc-1-skills description: ARC-1 agentic SAP development skills (arc-mcp/arc-1/skills). Reference for ADT tools, code activation, and automated ABAP editing. Covers the 8 arc-1 MCP tools (SAPContext, SAPDiagnose, SAPLint, SAPManage, SAPNavigate, SAPRead, SAPSearch, SAPTransport), the read-edit-activate-transport flow, and arc-1's role as PRIMARY ADT MCP in the routing tree. trigger: keywords: [arc-1, adt tools, sapread, sapmanage, saptransport, code activation, abap editing, adt mcp, object activation, transport request] intent: Using the arc-1 MCP server to read, search, edit, activate, and transport ABAP objects over ADT as the primary development channel prerequisites:
arc-1 is the PRIMARY ADT MCP of this orchestrator. All ADT-class operations (read source,
edit, activate, lint, transport) route to arc-1 first, then aibap (secondary), then
mcp-sap-gui (fallback). See scripts/sap_router.py (SapRouter.get_route()).
| Tool | Use for |
|---|---|
| SAPContext | System/session context — SID, client, user, release. Call first in a new session |
| SAPSearch | Find objects by name/type when you do not know the exact object name |
| SAPNavigate | Jump between related objects — includes, super/subclasses, where-used |
| SAPRead | Read source code and metadata of a known object (class, program, CDS, table) |
| SAPLint | Static checks (syntax, ATC-style) on source BEFORE activation |
| SAPManage | Create / modify / activate / delete objects — all write operations |
| SAPDiagnose | Short dumps (ST22-style), traces, runtime diagnostics after failures |
| SAPTransport | List / create / assign / release transport requests |
Rule of thumb: read-only questions -> SAPSearch/SAPRead/SAPNavigate. Changes -> SAPLint -> SAPManage -> SAPTransport. Failures -> SAPDiagnose.
# Let the router pick arc-1 (ADT-first) for the action:
npm run router -- --action ADT_READ_SOURCE
python scripts/sap_router.py route --action ADT_EDIT_CLASS
# Force GUI fallback only when ADT cannot do it (SPRO, dynpro):
npm run router:gui -- --action SPRO_CONFIG
If arc-1 is down, the TieredFallback engine (scripts/fallback_engine.py) cascades
ADT -> RFC -> GUI -> BDC -> Offline -> Manual. Do not hand-code fallbacks.
SAPContext to confirm system/client (never assume DEV).SAPSearch for the object; SAPNavigate to find the exact include/method.SAPRead to get current source. Edit surgically (Karpathy: touch only what's needed).SAPLint on the modified source. Fix findings before writing.SAPManage to save the change (object goes INACTIVE).SAPManage activate. An inactive object is invisible to runtime.SAPTransport to assign the object to a modifiable request. Release only at gate (npm run abap:review:transport).SAPRead the active version back; SAPDiagnose if execution dumps.# Probe arc-1 (HIGH criticality) + .env completeness:
npm run hc
npm run hc:prompt # interactive fix for missing SAP_HOST/SAP_USER/SAP_PASSWORD
# Feed routing telemetry so self_learn.py keeps arc-1 primary:
npm run learn:mcp -- --mcp arc-1 --latency 245 --success true
npm run learn:route -- --action ADT_EDIT_CLASS --success true
npm run hc:prompt to fill SAP host/user/password; confirm developer role with Basis.SAPLint before SAPManage write; use SAPNavigate where-used to check dependents; SAPDiagnose for details.SAPTransport create/assign a workbench request first, or use $TMP for throwaway objects.npm run hc to confirm; router auto-falls back to aibap then GUI — do not bypass the fallback engine.# 1. arc-1 healthy and env complete:
npm run hc
# 2. Router resolves an ADT action to arc-1 (primary):
python scripts/sap_router.py route --action ADT_READ_SOURCE
# 3. After an edit: SAPRead the object and confirm version = active,
# then gate before release:
npm run abap:review:transport