fundamental-ngx: Skill for Claude Code

.claude/skills/build-table/SKILL.md

build-table is a skill for Claude Code from SAP/fundamental-ngx. It costs 29 tokens per session (2,570 once invoked), scanned A, original, Apache-2.0.

A procedure for building a Fundamental NGX data table with columns, data, and common controls. Fundamental NGX is an Angular component library, and the table can support sorting, filtering, pagination, and row selection.

In plain words
What is it for?
Use it to create tables for static, observable, or HTTP-loaded data, including sortable columns, filters, page navigation, selectable rows, and toolbars.
Why use it?
It turns an incomplete table request into the required data model, component choice, data source, and feature decisions before implementation.

Skill for Claude Code ✓ vendor

Written for Claude Code: allowed-tools in frontmatter. Also seen: agent in frontmatter.

This is SAP/fundamental-ngx's own configuration. It tells Claude Code how to work on fundamental-ngx itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything fundamental-ngx configures →

About the project

Fundamental Library for Angular is an SAP-maintained Angular component library implementing SAP's design system and wrapping UI5 Web Components. Angular developers use its typed UI components and higher-level composites to build SAP-style web interfaces. Catalogue entries provide skills, agents, instructions, and a rule for working with the library.

SAP/fundamental-ngx · 294 stars · on GitHub · sap.github.io

Reuse

Borrowing it

Nothing to install: this file belongs to SAP/fundamental-ngx. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/SAP/fundamental-ngx/main/.claude/skills/build-table/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/SAP/fundamental-ngx

Made for: Claude Code.

Wrote 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.

agentmods badge for build-table

README.md
[![agentmods](https://agentmods.dev/badge/skills/sap/fundamental-ngx/build-table/github.svg)](https://agentmods.dev/skills/sap/fundamental-ngx/build-table)
Your own site
<a href="https://agentmods.dev/skills/sap/fundamental-ngx/build-table"><img src="https://agentmods.dev/badge/skills/sap/fundamental-ngx/build-table/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.

agentmods 80×15 button for build-table

Your own site · 80×15
<a href="https://agentmods.dev/skills/sap/fundamental-ngx/build-table"><img src="https://agentmods.dev/badge/skills/sap/fundamental-ngx/build-table.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 29 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,570 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 1 finding, up to medium

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • medium Prompt Injection · line 159
    Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.
    Fix: Remove the large whitespace padding (blank-line blocks or long space runs) and review any content hidden below or to the right of it. Keep skill files compact and reviewable so no instructions can be
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00029 $0.02570
Opus 5 $0.00015 $0.01285
Sonnet 5 $0.00006 $0.00514
Haiku 4.5 $0.00003 $0.00257

Measured 9d ago against content hash c12d3a122a77, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

Grade A, and why

build-table scanned grade A with 1 finding 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 9d 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.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

| HTTP (lazy, server-side sort/filter) | Implement `TableDataSource<T>` interface — override `fetch(tableState)` |
.claude/skills/build-table/SKILL.md · 227 lines

How it starts

The opening of the file, as written. The whole thing — 227 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Build Table: $ARGUMENTS

If $ARGUMENTS is empty, ask: (1) what data the table displays, (2) which features are needed.

Phase 1: Determine Scope

Parse from $ARGUMENTS or ask:

  • Table name (PascalCase, e.g., Users, Orders)
  • Data model: field names + TypeScript types (used for column definitions and the data interface). If not provided in $ARGUMENTS, ask explicitly: "What columns should the table have? Please list field name and type, e.g.: id:number, customerName:string, status:string"
  • Base component: fdp-table (platform, feature-rich — default) | fd-table (core, markup-level, use only for purely presentational tables)
  • Features (check all that apply):
    • sort — sortable column headers
    • filter — per-column or global search filter
    • paginate — page size picker + page navigation
    • select — row selection (single | multiple)
    • toolbar — title bar with action buttons
  • Data source: static array | observable | HTTP service (lazy)

Default to fdp-table with sort + paginate unless the user specifies otherwise.

Phase 2: Gather Component Context

Call the @fundamental-ngx/mcp MCP server:

  1. get_usage_guide('table') — DataSource patterns, variant decision tree, pitfalls
  2. get_component_api('fdp-table') — all inputs/outputs, selection mode options, page size inputs
  3. If filter requested: get_component_api('fdp-table-toolbar') for filter toolbar wiring
  4. If custom cell rendering needed: look for fdpTableCell template directive API

If MCP is unavailable, read libs/mcp-server/src/data/usage-guides.ts.

Phase 3: Present Plan

Output this summary before writing any code:

## Table Plan: [TableName]

**Component:** fdp-table
**DataSource type:** FdpTableDataSource (wraps observable)
**Features:** sort ✓ | filter ✓ | paginate ✓ | select(multiple) ✓

| Column key | Label | Type | Sortable | Filterable | Width |
|------------|-------|------|----------|------------|-------|
| name | Name | string | yes | yes | auto |
| status | Status | string | yes | yes | 120px |
| createdAt | Created | date | yes | no | 160px |

**Toolbar actions:** Add, Delete selected

Read the full file on GitHub · 227 lines

Changes

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.

  1. 9d ago First seen · 227 lines · 29 tokens per session scan A c12d3a122a77

Subscribe to this mod's changes

build-table is a skill published in the GitHub repository SAP/fundamental-ngx (294 stars, last pushed 4d ago), licensed Apache-2.0. It adds 29 tokens to every session and 2,570 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

angular-best-practices

Official Angular v22 coding best practices — signals, standalone, native control flow, zoneless, host bindings, Signal Forms, inject(), and accessibility (WCAG AA / AXE). Use whenever writing, generating, or reviewing Angular/TypeScript code in this repo.

anousss007/ng-blatui · 60 tokens

ng-blatui

Use the ng-blatui Angular UI library in an app — install, import components (bui-prefixed, signal-based, zoneless, SSR-safe), theme with Tailwind v4 + oklch tokens, localize dates/numbers/labels, and discover the full catalog via the registry, api.json, llms.txt or the ng-blatui-mcp MCP server. Invoke when building…

anousss007/ng-blatui · 108 tokens

neuralng-angular

Build or update Angular 22+ interfaces with NeuralNg when exact component selection, imports, forms, accessibility, SSR, icons, or theming guidance is needed.

hasanaydin7/NeuralTech · 38 tokens

igniteui-angular-figma-to-app

Translate Figma app screens designed using the Indigo.Design UI Kits into production Angular applications with Ignite UI for Angular. The Indigo.Design UI Kits are Figma component libraries available in four design-system variants — Material, Fluent, Bootstrap, and Indigo — each with light and dark themes. Designers…

IgniteUI/igniteui-angular · 210 tokens

igniteui-angular-generate-from-image-design

Implement Angular application views from design images using Ignite UI Angular components. Uses MCP servers (igniteui-cli, igniteui-theming, angular-cli) to discover components, generate themes, and follow best practices. Triggers when the user provides a design image (screenshot, mockup, wireframe) and wants it built…

IgniteUI/igniteui-angular · 124 tokens

igniteui-angular-theming

Generates and customizes Ignite UI for Angular themes including color palettes, typography, elevations, and component-level styles using the Sass theming system and the igniteui-theming MCP server. Use when users ask to theme, restyle, or style Ignite UI components, change colors or the color palette, switch between…

IgniteUI/igniteui-angular · 130 tokens