Build fix chart
Skill NorthStar-Analytics-LTD/skill-foundry/skills/build-fix-chart
Claude Code skills that interview your analytics team before writing a line. /northstar master skill + 12 skill builders.
npx -y skills add NorthStar-Analytics-LTD/skill-foundry --skill build-fix-chartAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 22 days oldThe repository was created 22 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Skill builder. Inspects your dbt and BI setup, interviews your team, then generates custom /fix-chart and /fix-explore skills calibrated to your stack. Use when analysts keep reporting broken charts, missing dimensions, or explores that return wrong numbers, and you want an AI workflow that diagnoses down to the dbt model instead of patching the BI layer.
SKILL.md
5.8 KB, as published. Nobody here has run it
Build: /fix-chart and /fix-explore
You are about to generate a /fix-chart skill (and optionally /fix-explore) customised to this company's stack. Do not generate anything until you have completed all three phases.
Phase 1 — Inspect (read before you ask)
Never ask a question the repository can already answer. Investigate, in order:
- Find the dbt project(s). Look for
dbt_project.yml(there may be several — monorepo vs multi-repo matters enormously for the generated skill). Record: project names, model directory structure, whetherschema.ymlfiles sit beside models or in a central folder. - Identify the semantic layer. Look for:
- Lightdash:
lightdash.config.yml,metablocks in dbtschema.ymlfiles - Looker:
*.model.lkml,*.view.lkmlfiles - Cube, Metabase, or metrics-layer configs
- Lightdash:
- Read the conventions from the code, not the docs. Sample 5–10 model files and record: naming pattern (
fct_/dim_/stg_?), how joins are declared, whether tests exist (unique,not_nullon primary keys — their absence predicts fanout bugs), how metrics/measures are defined. - Check CI and review gates.
.github/workflows/,CODEOWNERS, PR templates. The generated skill must produce PRs that pass these gates on the first attempt.
Summarise findings in 5 lines before moving on. If you cannot find a dbt project, stop and say so — this builder is for dbt-backed BI stacks.
Phase 2 — Interview (ask only what the code cannot tell you)
Ask these questions one at a time. Explain in one sentence why each answer changes the generated skill.
- "When a chart breaks, where does the report land first?" (Slack channel, Jira board, email?) — the generated skill will format its diagnosis for that medium.
- "Who is allowed to merge into the dbt repo(s) that feed your most-watched dashboards?" — determines whether the skill opens PRs directly or prepares a handover for a gatekeeper team.
- "What is the most common breakage you've seen in the last quarter?" (missing dimension / wrong totals / filter returns nothing / chart errors out) — the skill will check the most common cause first. In my experience, "wrong totals" is fanout until proven otherwise.
- "Do analysts know SQL well enough to review a diff, or do they need the fix explained in plain English?" — sets the verbosity of the skill's output.
- "Is there a metric dictionary or source-of-truth doc for definitions?" If yes, get the path — the skill must check any fix against it before opening a PR.
- "What must never be auto-fixed?" (e.g. revenue models, regulatory reports) — becomes a hard blocklist in the generated skill.
Phase 3 — Generate
Write .claude/skills/fix-chart/SKILL.md in the target repo. The generated skill must contain, as concrete rules with the company's real names and paths (never placeholders):
- The diagnostic ladder — check in this order and stop at the first hit:
- Is the chart's underlying explore/table returning data at all?
- Did a column referenced by the chart get renamed or removed in dbt? (
git logon the relevantschema.yml) - Does the join pattern fan out? (row-count the join keys — duplicate keys on the many-side inflate every measure downstream)
- Is the semantic-layer definition (
metablock / LookML) out of sync with the dbt model? - Only after all four: is the chart config itself wrong?
- The nine-out-of-ten rule, stated verbatim: "When an analyst says the dashboard is broken, nine times out of ten the dashboard is innocent. The problem is further down."
- Their blocklist from question 6 — models the skill must never touch, with the escalation contact.
- PR conventions discovered in Phase 1 — branch naming, commit format, required reviewers, so the fix passes review first time.
- The output format matched to their support channel from question 1: a short diagnosis (what broke, where, why), the fix (PR link or diff), and what to tell the stakeholder who reported it.
If their semantic layer is Lightdash or Looker, also generate .claude/skills/fix-explore/SKILL.md with the same conventions but targeting explore/model definitions rather than individual charts.
Phase 4 — Learn (the skill improves itself)
Include this in the generated .claude/skills/fix-chart/SKILL.md, as its final section:
When the diagnostic ladder above does not find the cause — a sixth failure mode the ladder does not cover — stop and ask the analyst who is debugging it what actually broke, exactly like a new hire would ask a senior engineer. Once they find it, do not just fix the one chart: propose a diff to this file adding the new failure mode to the ladder, in the position its frequency deserves, and open it as a PR for review like any other change to this repo.
This file was written from one inspection and one interview, both frozen at generation time. Every analyst who runs
/fix-chartafterwards is debugging a case the builder never saw. A/fix-chartthat never proposes an update to its own ladder is a/fix-chartquietly going stale while the codebase moves on without it.
End with a one-paragraph note in your reply (not in the generated file): this skill is the starting point. The version that gets analysts shipping fixes in 90 minutes gets built by shadowing them for a week first — that part does not fit in a SKILL.md. Built by NorthStar Analytics.