Borrowing it
Nothing to install: this file belongs to SAP-samples/cap-agentic-engineered. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/SAP-samples/cap-agentic-engineered/main/.claude/skills/sap-fiori/SKILL.mdgit clone --depth 1 https://github.com/SAP-samples/cap-agentic-engineeredWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/sap-samples/cap-agentic-engineered/sap-fiori)<a href="https://agentmods.dev/skills/sap-samples/cap-agentic-engineered/sap-fiori"><img src="https://agentmods.dev/badge/skills/sap-samples/cap-agentic-engineered/sap-fiori/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/sap-samples/cap-agentic-engineered/sap-fiori"><img src="https://agentmods.dev/badge/skills/sap-samples/cap-agentic-engineered/sap-fiori.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00039 | $0.00595 |
| Opus 5.5 | $0.00016 | $0.00238 |
| Sonnet 5.5 | $0.00008 | $0.00119 |
| Haiku 4.5 | $0.00004 | $0.00060 |
Grade A, and why
sap-fiori scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 48 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Fiori MCP-First Development
Before writing, modifying, debugging, or fixing CDS annotations, Fiori Elements page configuration, or manifest.json, you MUST query the Fiori MCP server and apply its guidance.
Tools
Use mcp__fiori__* tools — primarily mcp__fiori__search_docs, mcp__fiori__list_functionality,
mcp__fiori__get_functionality_details, and mcp__fiori__execute_functionality.
Workflow
- Query before coding — call
mcp__fiori__search_docsfor annotation patterns, floorplan config, or manifest structure - Trust MCP over training knowledge — if guidance conflicts with what you know, follow MCP
- Use Fiori MCP tooling for modifications — before manually editing manifest.json or annotations, check if
mcp__fiori__list_functionalityprovides an automated function - Prefer the simplest pattern when MCP returns multiple valid approaches
Scope
This skill covers:
- CDS annotations:
@UI,@Common,@Capabilities,@Communication - Fiori Elements floorplans: List Report, Object Page, Analytical List Page
manifest.jsonconfiguration: routing, data sources, control configuration- Custom actions in manifest (
controlConfiguration.actions)
Fiori Elements App Rules
When creating or modifying SAP Fiori Elements applications:
- The application typically starts with a List Report page showing the base entity in a table. Row details are shown in an ObjectPage based on the same entity.
- An ObjectPage can contain table sections based on to-many associations. Row details in a table section can open another ObjectPage based on the association's target entity.
- The data model must have one main entity with navigation properties to related entities.
- Each property must have a proper datatype.
- For all entities, provide primary keys of type UUID.
- When creating sample data in CSV files, all primary keys and foreign keys MUST be in UUID format (e.g.,
550e8400-e29b-41d4-a716-446655440001). - When modifying the application (e.g., adding columns), do not use screen personalization — modify the project code. Always check whether
mcp__fiori__list_functionalityprovides a suitable function first. - When previewing, use the most specific
npm run watch-*script for the app inpackage.json.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 48 lines · 39 tokens per session scan A 2d369b5b0bab
sap-fiori is a skill published in the GitHub repository SAP-samples/cap-agentic-engineered (14 stars, last pushed 5mo ago), licensed Apache-2.0. It adds 39 tokens to every session and 595 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
sap-fiori-add-visual-filter
Add visual filters (chart-based) to SAP Fiori Elements filter bar or value help using CAP or ABAP RAP. Use when asked to add chart filters, bar chart selectors, or visual filter bars to a Fiori Elements application.
sap-fiori-opa5-test-development
Skill "sap-fiori-opa5-test-development" from SAP/open-ux-tools, covering sap fiori opa5 development skill, prerequisites, step 1: locate the project root, step 2: detect odata version and primary check: manifest.json.
linkedin-post
You take a YouTube video transcript and produce a single LinkedIn post draft.
ox-cli-attest
Publish a frozen Attest run to SageOx with ox attest publish --from --out . Read BEFORE publishing an Attest report, regenerating a report from a checkout, or debugging a failed or interrupted publish — ox publishes the frozen export only and never reconstructs a report from current files.
ox-cli-pr-header
Emit and paste the SageOx credit line at the TOP of a pull-request description — the human-facing counterpart to the machine SageOx-Session: trailer. Run ox pr header at PR-creation time; it renders a thin, on-brand, dark/light-aware single line linking the session(s), plan(s), and discussion(s) that produced the…
agr-cli
Install, share, sync, and create AI agent skills across coding tools (Claude Code, Cursor, Codex, OpenCode, Copilot, Pi) using the agr CLI. Use whenever the user mentions agr, agr.toml, agr.lock, agrx, or asks to: add a skill ("install the pdf skill", "agr add ..."), sync agent resources across tools, share skills…