← ClaudeAtlas

report-skill-builderlisted

Generates a self-contained report skill from a validated governed report contract - materializing the trusted queries, a Statement Execution runner, and a shadcn-styled HTML report whose ECharts code ports to AppKit. Use when the user asks for a skill or slash command that produces a specific report. Not for authoring general-purpose skills, defining the contract, or building a Databricks App.
Paldom/databricks-skill-to-app · ★ 0 · Web & Frontend · score 73
Install: claude install-skill Paldom/databricks-skill-to-app
# Report skill builder Turns a governed report contract into a skill someone can run by typing the report's name. The generated skill is **self-contained as a skill**: it carries a materialized copy of the contract, a hash manifest, a runner, a renderer and the design system, so it keeps working when copied into another repo or installed alone. It never depends on this skill being present. (The rendered page is a different question — its charts come from a pinned CDN.) The model's job in the generated skill is deliberately small — pick parameters, write two-sentence summaries, report failures. The numbers come from the contract. ## When to use - The user wants a repeatable, named report ("a skill that generates the monthly P&L"). - A contract exists (or is about to) and needs a consumer on the skill side. - A generated report reads badly and needs the bundled design system applied. ## When NOT to use - **Authoring a general skill** → `add-skill` in this repo, or `skill-creator`. This one only emits report skills bound to a contract. - **Defining or fixing the contract** → `governed-report-contract`. If the contract does not validate, stop and go there; do not generate around a broken contract. - **Building the interactive app** → `report-to-databricks-app`. - **Ad-hoc "just show me the numbers"** → `databricks-data-discovery`. A skill for a report nobody will run twice is overhead. ## Workflow 1. **Require a valid contract.** The generator refuses otherwise, and