sap-abap-cds
Comprehensive SAP ABAP CDS (Core Data Services) reference for data modeling, view development, and semantic enrichment. Use when…
SAP HANA Machine Learning Python Client (hana-ml) development skill. Use when: Building ML solutions with SAP HANA's in-database machine learning using Python hana-ml library for PAL/APL algorithms, DataFrame operations, AutoML, model persistence, and visualization. Keywords:
Claude Code
$ npx -y skills add secondsky/sap-skills --skill sap-hana-ml --agent claude-code
Codex
$ npx skills add secondsky/sap-skills --skill sap-hana-ml -a codex -y
Cursor
$ npx skills add secondsky/sap-skills --skill sap-hana-ml -a cursor -y
Gemini CLI
$ npx skills add secondsky/sap-skills --skill sap-hana-ml -a gemini-cli -y
GitHub Copilot
$ npx skills add secondsky/sap-skills --skill sap-hana-ml -a github-copilot -y
OpenCode
$ npx skills add secondsky/sap-skills --skill sap-hana-ml -a opencode -y
Windsurf
$ npx skills add secondsky/sap-skills --skill sap-hana-ml -a windsurf -y
name: sap-hana-ml description: | SAP HANA Machine Learning Python Client (hana-ml) development skill. Use when: Building ML solutions with SAP HANA's in-database machine learning using Python hana-ml library for PAL/APL algorithms, DataFrame operations, AutoML, model persistence, and visualization. Keywords: hana-ml, SAP HANA, machine learning, PAL, APL, predictive analytics, HANA DataFrame, ConnectionContext, classification, regression, clustering, time series, ARIMA, gradient boosting, AutoML, SHAP, model storage license: GPL-3.0 metadata: maintainer: "Eduard Jiglau" maintainer_email: "hello@sap-ai-skills.com" website: "https://sap-ai-skills.com" version: "2.4.1" last_verified: 2025-11-27 package_version: 2.22.241011
Use this skill when building machine learning workflows with the `hana-ml` Python client, using PAL/APL algorithms, querying HANA DataFrames, training or scoring models in-database, using AutoML, visualizing model output, or troubleshooting Python-to-HANA ML connections.
| Issue | First check | |-------|-------------| | Connection fails | Verify HANA host, port, TLS/encryption, user privileges, and network allowlists. | | PAL/APL algorithm missing | Confirm the HANA system has the required AFL/PAL/APL libraries installed and licensed. | | DataFrame collection is slow | Push filtering/projection into HANA and avoid collecting large frames into Python. |
**Package Version**: 2.22.241011 **Last Verified**: 2025-11-27
---
pip install hana-ml
**Requirements**: Python 3.8+, SAP HANA 2.0 SPS03+ or SAP HANA Cloud
---
from hana_ml import ConnectionContext
# Connect
conn = ConnectionContext(
address='<hostname>',
port=443,
user='<username>',
password='<password>',
encrypt=True
)
# Create DataFrame
df = conn.table('MY_TABLE', schema='MY_SCHEMA')
print(f"Shape: {df.shape}")
df.head(10).collect()from hana_ml.algorithms.pal.unified_classification import UnifiedClassification # Train model clf = UnifiedClassification(func='RandomDecisionTree') clf.fit(train_df, features=['F1', 'F2', 'F3'], label='TARGET') # Predict & evaluate predictions = clf.predict(test_df, features=['F1', 'F2', 'F3']) score = clf.score(test_df, features=['F1', 'F2', 'F3'], label='TARGET')
from hana_ml.algorithms.apl.classification import AutoClassifier # Automated classification auto_clf = AutoClassifier() auto_clf.fit(train_df, label='TARGET') predictions = auto_clf.predict(test_df)
from hana_ml.model_storage import ModelStorage ms = ModelStorage(conn) clf.name = 'MY_CLASSIFIER' ms.save_model(model=clf, if_exists='replace')
---
---
from hana_ml.algorithms.pal.partition import train_test_val_split
train, test, val = train_test_val_split(
data=df,
training_percentage=0.7,
testing_percentage=0.2,
validation_percentage=0.1
)# APL models importance = auto_clf.get_feature_importances() # PAL models from hana_ml.algorithms.pal.preprocessing import FeatureSelection fs = FeatureSelection() fs.fit(train_df, features=features, label='TARGET')
from hana_ml.algorithms.pal.pipeline import Pipeline
from hana_ml.algorithms.pal.preprocessing import Imputer, FeatureNormalizer
pipeline = Pipeline([
('imputer', Imputer(strategy='mean')),
('normalizer', FeatureNormalizer()),
('classifier', UnifiedClassification(func='RandomDecisionTree'))
])---
1. **Use lazy evaluation** - Operations build SQL without execution until `collect()` 2. **Leverage in-database processing** - Keep data in HANA for performance 3. **Use Unified interfaces** - Consistent APIs across algorithms 4. **Save models** - Use `ModelStorage` for persistence 5. **Explain predictions** - Use SHAP explainers for interpretability 6. **Monitor AutoML** - Use `PipelineProgressStatusMonitor` for long-running jobs
---
40 SAP development plugins with evidence-tracked verification SAP development plugins for AI coding assistants, with public-source or package-registry verification tracked where available.
Comprehensive SAP ABAP CDS (Core Data Services) reference for data modeling, view development, and semantic enrichment. Use when…
Comprehensive ABAP development skill for SAP systems. Use when writing ABAP code, working with internal tables, structures, ABAP…
Guides development with SAP AI Core and SAP AI Launchpad for enterprise AI/ML workloads on SAP BTP. Use when: deploying…
Evidence-based assessment of whether an SAP API/interface usage scenario aligns with the SAP API Policy (v.4.2026a). Use whenever…
This skill provides comprehensive guidance for documenting SAP APIs following the SAP API Style Guide standards. It should be…
Use when an agent must inspect or operate an authenticated SAP web UI through an in-app Browser, Microsoft Edge CDP, or an…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.