本文へスキップ

SAP システム全体を
Claude Code の中で

対話で設計し、自動で実装してみてください

対応プラットフォーム
3 ECC 6.0 · S/4HANA On-Premise · S/4HANA Cloud
MCP ツール
150+ ABAP ADT ベース
専門エージェント
25 Core 10 · Basis 1 · Module 14
ワークフロースキル
17 setup · create-program · analyze-code · team ···

AI に SAP 開発を任せると必ず詰まるところ

汎用 AI は SAP に直接つながらないので、コードを推測し、すでにあるものをまた作ってしまいます

汎用 AI に任せると

  • 実際のソースを開けないため それらしい ABAP を作り出します
  • 既存の Z オブジェクトを知らないまま 同じ機能をまた作ります
  • 業種と国のルールが抜けたまま 標準オブジェクトを誤って選びます
  • 本番データをどこまで読んでよいかの 境界がありません

SC4SAP をつなぐと

  • ADT 経由で 実際のソースを読み、修正し、有効化まで行います
  • analyze-cbo-obj でインベントリを先に確認し 再利用を提案します
  • 14 業種と 16 カ国のリファレンスを 必須で読み込みます
  • PII · 給与 · 銀行テーブルは 4 層の防御で遮断します

圧倒的な性能と効率を体験してください

Web・モバイル・CLI、どの環境からでも

GETTING STARTED

始めるまで 3 ステップ

インストールから最初の作業まで、別途サーバーを立てたり設定ファイルを触る必要はありません。Claude Code の中でそのまま続きます

インストール

Claude Code にカスタムマーケットプレイスを追加してプラグインを導入します

/plugin install sc4sap

接続

SAP バージョン、業種、国に一度答えるだけで MCP サーバーと権限フックまで登録されます

/sc4sap:setup

作業

リバースエンジニアリング、コードレビュー、プログラム生成を 25 のエージェントが分担します

/sc4sap:team

12 の機能

全 12 件

各項目を開くと、実際のコマンド、生成物、動作の仕組みを確認できます

#01 🔧

Auto MCP Install

/sc4sap:setup

SAP開発環境を整えようとすると、MCPサーバーのインストール・認証情報の分離・権限フックの登録・SPROキャッシュの生成まで、 半日が消えてしまいます。SC4SAPはこのプロセスを「質問1つにつき1つの回答」へと分解し、セットアップウィザードの中で完結させます

  • 1
    MCPサーバーの自動インストール - abap-mcp-adt-powerupをクローン・ビルド・登録します claude_desktop_config.jsonを直接編集する必要はありません
  • 2
    .sc4sap/sap.env の自動生成 - URL・クライアント・アカウント・認証方式を一行ずつ尋ねて保存します パスワードはマスキングし、sap.env.bakへバックアップします
  • 3
    バージョン・業種・国の同期 - SAPバージョン・ABAPリリース・業種・国を .sc4sap/config.jsonに記録します すべてのエージェントが同じコンテキストを共有します
  • 4
    データ抽出ブロックリストフックの登録 - BNKAスモークテストで permissionDecision: denyが正常に動作するか検証します
結果 - SAPシステム情報に一度答えるだけで、MCPサーバーのインストールから権限の検証、ブロックリストフックの登録までが一括で完了します。 チームメンバーが同じ環境を再びセットアップする際も、sap.envという1つのファイルを共有するだけで済みます

#02 🧠

Specialist Agents

25 agents · 役割別の専門協働

分析・設計・実装・レビュー・デバッグが役割別の専門エージェントに委任されます。
各自が自分の分野だけで答え、「それらしいSAP知識」で答えをでっち上げる経路そのものが構造的に塞がれています

CORE · 10

設計・実装・レビュー

analyst · architect · planner · executor · code-reviewer
critic · debugger · qa-tester · doc-specialist · writer

BASIS · 1

システム・トランスポート

sap-bc-consultant
トランスポート戦略・ダンプ・性能チューニング専任

MODULES · 14

モジュールコンサルタント

SD · MM · FI · CO · PP · PS · PM · QM · WM · TM · TR
HCM · BW · Ariba

Basis & Module Consultants

sap-bc-consultant SD MM FI CO PP PS PM QM WM TM TR HCM BW Ariba

並列協働 - /sc4sap:team

  • 複数のエージェントが同じタスクリストを共有して並列で作業します - R/W権限とコンテキストは隔離されます
  • モジュール判断が必要になると、"## Module Consultation Needed"ブロックで該当コンサルタントへ自動委任します
  • システムレベルの課題(トランスポート・権限・性能)はBCコンサルタントへ別途エスカレーションします

#03 🔍

Program Analyze

/sc4sap:program-to-spec

レガシーABAPを機能/技術仕様書へ - リバースエンジニアリングを分単位で

3,000行のレポートでも、Selection screenの画像・ALVカラムレイアウト・Process flowchart・CBO/Enhancementの依存関係まで自動で抽出します
Audience / Format / Depth / Languageの4軸Socratic質問で深さを調整し、「すべてを文書化する」という罠を回避します

運用引き継ぎ・監査対応・システム移行直前のレガシー整理 - 人が逐一コードを読みながら作成していた仕様書を分単位に圧縮し、Excel/Markdownの2フォーマットで同時に出力します

STEP 1SourceロードGetProgFullCode
Includes · Forms · Classes
STEP 2構造抽出Selection · ALV
Logic · CBO · Enhancement
STEP 3可視化レンダリングSelection PNG · ALV PNG
Process Flowchart
STEP 45-Sheet XLSXCover · Inputs · Logic
CBO · Warnings
📒 ZSDR0142_spec.xlsx 5 sheets + warnings
  • 01
    Cover

    プログラムID · 作成者 · 最終更新 · 4軸メタ

  • 02
    Selection

    Selection screenのPNG埋め込み + パラメータ表

  • 03
    Inputs / Screens

    ALVカラムレイアウトPNG · フィールド説明 · 長さ

  • 04
    Process Logic

    Process Flowchartを自動レンダリング(ボックス · 判定 · 終了 + ↓)

  • 05
    CBO / Enhancement

    Zオブジェクト依存ツリー · BAdI · CMOD · APPEND

  • Warnings

    パース不可 · 危険パターン · 未解決項目

#04 🧪

Analyze Code

/sc4sap:analyze-code

Clean ABAP · 性能 · セキュリティ · 現代化 - severity-rankedな静的レビュー

プロジェクトのABAP_RELEASE / SAP versionコンテキストを反映し、適用可能なパターンのみを推奨します
OOP / Proceduralのパラダイムを自動で認識し、Where-usedグラフで影響度まで併せて提示します。行番号・呼び出し経路・即座に適用できるfix snippetを1つのまとまりとして返します

セキュリティカテゴリは、SQL Injection・AUTHORITY-CHECK漏れ・動的コード実行といったOWASPパターンを静的解析で検出し
性能カテゴリは、ネストしたLOOP・SELECTをsorted/hashed tableのlook-upへとリファクタリングする具体的なパッチコードまで添付します

CLEAN ABAP
  • 命名 · 単一責任
  • マジックナンバー · 大域変数
  • OOP / Proceduralの一貫性
PERFORMANCE
  • SELECT · インデックス
  • ネストLOOP · INTO TABLE
  • sorted / hashedの使用
SECURITY
  • SQL Injection
  • AUTHORITY-CHECK漏れ
  • 動的コードのsanitize
MODERNIZATION
  • VALUE / REDUCE / COND
  • FILTER · ラムダ式
  • 新syntaxの導入
CRITICAL
SQL Injectionの可能性動的WHERE句にユーザー入力が直接結合されています (line 412)。WHERE (lv_where) → escaped bindingへ置換
CRITICAL
AUTHORITY-CHECK漏れBUKRSベースの照会後、権限検証なしで出力しています (line 78)。F_BKPF_BUK権限オブジェクトのチェック追加が必要です
MAJOR
SELECT … ENDSELECTループINTO TABLE + LOOP ATへ変更すると約70%の性能改善が見込まれます

#05 ⚖️

Compare Programs

/sc4sap:compare-programs

同じことをするプログラムが、なぜ2つも3つも稼働しているのか

/sc4sap:compare-programs - 2〜5個のABAPプログラムを同時にロードし、 10の次元で構造的に比較します
「コピーして直したプログラム」と「本当に別物のプログラム」を区別し、統合・廃止・共通化を判断する根拠を作ります

/sc4sap:compare-programs · ZSDR0142 · ZSDR0188
A ZSDR0142 SD · 2019
  • ●目的・範囲未収金レポート
  • ◐選択画面P_BUKRS · S_KUNNR
  • ●データソースBSID + KNA1
  • ○出力構造List (WRITE)
  • ◐メッセージ処理MESSAGE I999
B ZSDR0188 SD · 2023
  • ●目的・範囲未収金レポート
  • ◐選択画面+ S_BLDAT 追加
  • ●データソースBSID + KNA1
  • ○出力構造CL_GUI_ALV_GRID
  • ◐メッセージ処理BAL_LOG
● 同一 ◐ 差異 ○ 相反 10次元のうち5つを表示 · 実際のレポートは 目的・範囲 / 選択画面 / データソース / ビジネスロジック / 出力 / UI / メッセージ / 性能 / Text Element / CBO·Enhancement の全次元を比較します
VERDICT 何年もの間「似ているけど少し違う」3つのZレポートが漂っていたプロジェクトでも、 10次元比較レポート1つで、統合・廃止・標準化の決定を一度に下せます
AIが「新しく作ろう」と提案する前に、すでにあるプログラムを先に見るという原則が、 この機能によって運用にまで拡張されます

#06 🩺

Maintenance Diagnosis

/sc4sap:analyze-symptom

ダンプIDを渡すだけでSAP Note候補まで、Claudeの中で一次分析を完了

ST22 · SM02 · /IWFND/ERROR_LOG · SATプロファイラをMCPツールで直接引き寄せて分析します。sap-debugger / sap-bc-consultantへ自動委任され、未知の領域まで安全に拡張します

単なるスタックトレースの出力ではなく、呼び出しチェーン・変数ダンプ・メモリ状態を統合して仮説を提示し、後続アクション(Note適用・コード修正・権限追加)を選択肢として返します
運用引き継ぎ直後に初めて見るダンプでも、一次分析を終えてBCチームへ的確な質問として引き渡せます

STEP 1ダンプ収集RuntimeListDumps
RuntimeAnalyzeDump
STEP 2スタック分析呼び出しチェーン · Source位置 · 変数ダンプ
STEP 3原因仮説Lock · Memory · Auth · DB · Network
STEP 4SAP Note候補検索キーワード + アクション選択肢
ST22 Runtime Dumps SM02 System Msgs /IWFND/ERROR_LOG SAT Profiler SU53 Auth Check SM12 Lock Entries

#07 🔒

Fit to System

運用現場が本当に求める3つ - 文書化 · 障害対応 · データ保護

生成機能だけでは、実務のSAP運用環境に完全に適用させることは困難です
sc4sapは新規開発に加えて、 レガシーの文書化、障害の一次分析、エンタープライズ級のデータ保護まで1つのパッケージの中で提供します

📄

Reverse Engineering

レガシーを仕様へと戻す
/sc4sap:analyze-code · /sc4sap:program-to-spec

  • Clean ABAP · 性能 · セキュリティのカテゴリ別レビューレポート
  • 機能/技術仕様書(MarkdownまたはExcel)を自動生成
  • Socraticなスコープ調整で「すべてを文書化する」罠を回避
  • 何年も先送りされてきたレガシー文書化作業を分単位に圧縮
🩺

Operational Triage

Claudeの中で完結する障害分析
/sc4sap:analyze-symptom

  • ST22ダンプ - RuntimeListDumps / RuntimeAnalyzeDump
  • SM02システムメッセージ - RuntimeListSystemMessages
  • /IWFND/ERROR_LOG Gatewayエラー - RuntimeGetGatewayErrorLog
  • SATプロファイラ - RuntimeAnalyzeProfilerTrace
  • スタックトレース分析 → SAP Note候補 → 原因仮説 → アクション選択肢
🔒

Data Protection

4重防御 + acknowledge_risk HARD RULE
PII · 給与 · バンキング · 取引財務の行単位の流出を根本から遮断

  • L1 エージェント指示文 - カテゴリ別の拒否 + 代替案の提示
  • L2 グローバルCLAUDE.md - すべてのセッションに自動注入
  • L3 PreToolUseフック - 呼び出しを遮断 (deny)
  • L4 MCPサーバー内部ガード - opt-inのサーバーレベル遮断

4重防御レイヤー構造

Layer位置役割
L1エージェント指示文カテゴリ別の拒否 + 代替案の提示 (PII / HR / Banking / Transactional Finance ···)
L2CLAUDE.md グローバルすべてのセッションに自動注入されるData Extraction Policy
L3Claude Code PreToolUse フックpermissionDecision: denyで実際のMCP呼び出しを遮断
L4MCPサーバー内部ガードサーバーレベルでopt-in遮断 - 他のクライアントからの呼び出しも封鎖

ブロックリストプロファイル - 環境に合わせてスコープを選択

strict

PII + クレデンシャル + HR + 取引財務 + 監査ログ + ワークフロー。デフォルト

standard

PII + クレデンシャル + HR + 取引財務。一般プロジェクトのデフォルト

minimal

PII + クレデンシャル + HR + Tax。業務テーブルの照会は許可

custom

.sc4sap/blocklist-custom.txtにユーザー指定リスト

HARD RULE

acknowledge_risk - per-call · per-table · per-session の明示的な承認

GetTableContents / GetSqlQueryで機密テーブルにアクセスするには、 ユーザーが明示的な肯定キーワードで許可する必要があります

認められる表現: yes 승인 authorize approve proceed confirmed

認められない表現(曖昧な命令): 뽑아봐 try it my mistake 해봐

承認は呼び出し単位・テーブル単位・セッション単位でのみ有効であり、次のリクエストへは引き継がれません 「AIが誤って機密テーブルを抽出する経路」そのものをなくすことが設計目標です

ゲート体験 - キーワードをクリックしてみてください
acknowledge_risk
→ 上記のキーワードのいずれかをクリックして、ゲートの動作を確認してください

#08 🗃️

Reusability · CBO Reuse

/sc4sap:analyze-cbo-obj

すでにあるZオブジェクトを、AIが作り直さないように

何年も使い込んできたSAPシステムほど、ZCL_* · ZFM_* · Z*_DE · カスタム構造体・テーブルタイプが 数百個と積み重なっています。この資産を知らないままAIに開発を任せると
同じ機能のZオブジェクトをまた作ることが繰り返されますが、SC4SAPはこの問題をパイプラインの前段で遮断します

🧷
CMOD
User Exits

Enhancement Project · FM Exit · Screen Exit

⚖️
GGB1 · GGB2
Substitution / Validation

財務・物流の置換・検証ルール

🔌
BAdI
Business Add-In

Classic / Kernel / Enhancement Spot
実装クラス

➕
APPEND
Structure Append

標準テーブル・構造体のCI/ZZフィールド + BAPI EXTENSION

REUSE FIRST

すでにある資産を
先に提案します

/sc4sap:analyze-cbo-obj
  • create-programがプラン段階でインベントリをロード
  • すべてのCreate*呼び出しは再利用ゲートの通過が必須
  • 1回スキャン → 数週間にわたり同じインベントリを共有
「新しいCBOを作るべきか」は、常に最後の質問です sc4sapはuser-exit · 置換/検証 · BAdI実装 · APPEND構造体までインベントリに含め、ブラウンフィールドの「重複Z」事故を構造的に遮断します

#09 🏭

Industry Context

14業種に対する汎用ビジネスコンテキストがエージェントの中に搭載されます

リテールのArticleと、ファッションのStyle × Color × Sizeでは、マスターデータの構造そのものが異なります
自動車のJIT/JISスケジューリング、製薬のGMP · Serialization、鉄鋼のCharacteristic Inventory · Coil · Heatトラッキングのように、同じERPの上で異なる業務ルールが動いています

config.jsonのindustry値に応じて、Analyst · Critic · Plannerが該当業種のリファレンスをmandatoryとしてロードした上で作業を開始し
各ファイルはBusiness Characteristics / Key Processes / Master Data / Pitfallsの4セクションに整理され、モジュールコンサルタントと自動で相互検証されます

「リテールプロジェクトに自動車式のBOMを持ち込む」事故が、構造的かつ根本的に遮断されます

  • Retail Article·POS
  • Fashion Style×Color×Size
  • Cosmetics Batch·Shelf
  • Tire OE/RE·Mold
  • Automotive JIT/JIS·PPAP
  • Pharma GMP·Serial
  • F&B Catch Wt·FEFO
  • Chemical Process·DG
  • Electronics VC/AVC·RMA
  • Construction POC·Sub
  • Steel Coil·Heat
  • Utilities IS-U·FI-CA
  • Banking FS-CD·BP
  • Public Funds·Grants

#10 🌏

Country / Localization

韓国では税金計算書、イタリアではSDI FatturaPA、メキシコではCFDI - 同じFI伝票でも、出力様式と法定要件は国ごとに完全に異なります

出力様式だけでなく、e-Invoicingの義務適用時期、銀行通信プロトコル、税務申告の周期、データ保存期間まで、ある国の会計フローをそのまま別の国へ移せる部分はほとんどありません
SC4SAPは16カ国のリファレンスをTax · e-Invoicing · Banking · Statutory Reportingの4つの基準点に整理しておきます

config.jsonのcountry値に応じて、Analyst · Critic · Plannerが該当ファイルをmandatoryとしてロードした上で作業を開始します
その後のマルチカントリーロールアウトでは、インターカンパニー · EU域内VAT · 移転価格といった交差接点を自動でフラグし、単一コードベースの上で国別の分岐を一度に追跡できるよう支援します

  • KRKorea電子税金計算書(NTS) · 事業者登録番号 · 住民番号 PII
  • JPJapanQualified Invoice · Zengin · 法人番号
  • CNChinaGolden Tax · e-fapiao · SAFE FX
  • USUSASales & Use Tax · EIN · 1099 · ACH · Nexus
  • DEGermanyUSt · ELSTER · XRechnung/ZUGFeRD · SEPA
  • UKUKVAT + MTD · BACS/FPS/CHAPS · GB vs XI
  • FRFranceTVA · FEC · Factur-X 2026
  • ITItalyIVA · FatturaPA/SDI · Split Payment
  • ESSpainIVA · SII リアルタイム報告 · TicketBAI
  • NLNetherlandsBTW · Peppol · XAF · G-rekening
  • BRBrazilNF-e · SPED · CFOP · ICMS/IPI/PIS/COFINS
  • MXMexicoCFDI 4.0 · SAT · Complementos · SPEI
  • INIndiaGST · IRN e-invoice · e-Way Bill · TDS
  • AUAustraliaGST · ABN · STP Phase 2 · BAS
  • SGSingaporeGST · UEN · InvoiceNow(Peppol) · PayNow
  • EUEU CommonVIES · INTRASTAT · ESL · OSS/IOSS · SEPA · GDPR
動作の仕組み
  • .sc4sap/config.json → industry / countryの値が、セッション開始時に自動ロードされます
  • Analyst · Critic · PlannerはCountry Contextブロックをmandatoryとしてロードした上で作業を開始します
  • マルチカントリーロールアウトでは、該当ファイルをすべてロードし、インターカンパニー · EU域内VAT · 移転価格といった交差接点を自動でフラグします

#11 🎯

Active-Module Awareness

モジュールの組み合わせに応じて、標準オブジェクトを使い分けます

同じ「原価分析」でも、プロジェクトがMM + PSならWBS基準、SD + COならCO-PAセグメント基準へと変わります
config.jsonのactiveModulesリストを根拠に、エージェントが組み合わせ別のStandardオブジェクトとBAPIを自動選択し、交差接点をフラグします

FI + TRが有効化されると、支払提案 → 資金管理 → House Bank振替までの経路が設計され、QM + PPなら製造オーダーの段階別にin-process検査lotが自動生成されるよう流れを組み立てます

MM+PS⇒WBSコスト

WBS要素にコストを直接集計。BANFN · EBELNのPS_PSP_PNRキーでプロジェクトに帰属させます

SD+CO⇒CO-PA

受注 · 請求基準のセグメントチャネルで伝票を転記。数量・金額をCE1 / CE4へ分解します

FI+TR⇒資金・ハウスバンク

支払提案 → TR資金管理 → House Bank振替。FEBAN · FF7Aの連携経路を自動認識します

QM+PP⇒検査lot

製造オーダーの段階別にin-process検査lotを生成。受入検査・最終検査の時点を自動で分岐します

MM+PP⇒所要量 · 調達

MRP実行が購買依頼と計画オーダーに分岐。EBAN · PLAFを調達タイプとリードタイム基準で自動配分します

CO+PP⇒製造原価差異

生産オーダーの実績を目標原価と突き合わせて差異を分解。AUFK · COSSで数量 · 価格 · 操業度差異を算出します

#12 🏗️

Formatted Auto Program Maker

/sc4sap:create-program

最初のコミットが、すでにコンベンションを守っているプログラム

/sc4sap:create-programは、アイデア一行から有効化されたABAPオブジェクトまでつながる8段階のパイプラインです
成果物は「動きはする下書き」ではなく、sc4sapコーディングコンベンションを厳格に守った最終コードとして出力されます

PHASE 3

仕様作成 + 承認ゲート

ユーザーが승인 / approveを
明示するまでは先へ進みません

PHASE 4

並列Include生成 + 一括有効化

Main + 条件付きIncludeを並列生成した後、単一のSemantic Analysis + バッチ有効化。個別ループと比べて約40〜60%短縮

PHASE 6

4バケット並列コンベンションレビュー

ALV+UI · Logic · Structure+Naming · PlatformをSonnetで並列レビュー MAJOR発見時のみ
Opusへエスカレーション

PHASE 8

完了レポート (PASSゲート)

Phase 6 PASSを条件とする完了レポート。state.jsonのタイミングテーブルで
C-2再開をサポート

→ 結果として、レビュアーの仕事は「コンベンションの補正」ではなく「ビジネスロジックの判断」に費やされます
最初から通過するコードを作るため、人はこのプログラムが正しいことをしているかだけを見れば済みます

Welcome Contributors!

プロジェクトにご関心のある方、貢献をお考えの方は、
下の Connect の連絡先までお問い合わせください