Install
$ agentstack add skill-lavidrori0702-tableau-dashboard-creator-skill-tableau-init ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
tableau-init
The first step of the tableau-dashboard-plugin workflow. Running it in a project directory scaffolds a complete starting skeleton and writes the STATE.md manifest that every downstream skill reads to know where the analyst is.
This skill is step 1 of 8. It has no upstream dependencies — it is what creates the workflow state in the first place.
| | | |---|---| | Reads | — (nothing; this step bootstraps the project) | | Writes | STATE.md + a scaffold/ folder of demo examples: scaffold/EXAMPLE-DASHBOARD-REQUEST.md, scaffold/EXAMPLE-datasources.json, scaffold/.env.example, scaffold/branding/EXAMPLE-branding.md, scaffold/sample-data/*.csv | | STATE.md update | Creates the manifest with init = approved and steps 2–8 = pending; records target_tableau_version, data_mode: csv, current_version: v_1 | | Next step | tableau-intake (or tableau-data if the analyst skips intake) |
scaffold/ examples vs. production inputs
Everything init writes under scaffold/ is a demo example so the analyst can trial the whole workflow before owning any real inputs. Every downstream skill prefers the production input at the project root and only falls back to the scaffold/ example when the production file is absent:
| production input (preferred) | scaffold/ demo fallback | |------------------------------|-------------------------| | DASHBOARD-REQUEST.md | scaffold/EXAMPLE-DASHBOARD-REQUEST.md | | datasources.json + .env (published-ds route) | scaffold/EXAMPLE-datasources.json + scaffold/.env.example | | branding/branding.md | scaffold/branding/EXAMPLE-branding.md | | data/*.csv (csv route) | scaffold/sample-data/*.csv |
init deliberately creates only the scaffold/ examples (and STATE.md), never the production files — their absence is exactly what tells the analyst (and the model) which real inputs are still owed. See CONTRACT.md §3 for the canonical rule.
How to run
- Determine the project directory. Default to the current working directory.
This is where the skeleton and STATE.md will be written.
- Ask for the target Tableau Desktop version — unless the user already stated
it. This is recorded once, here, and drives tableau-build later (it is never re-asked downstream). Offer exactly the two allowed values:
2024.2-2025.x— the broad-compatibility target (no rounded corners, no
`` in the workbook).
2026.1+— the newest target (enablesborder-radiusand newer XML).
If unsure, recommend 2024.2-2025.x for the widest compatibility.
- Run the scaffolder, passing the chosen version:
``bash python "${CLAUDE_SKILL_DIR}/scripts/init.py" --target-version "" "" ``
(Use python3 if python is unavailable.) The script copies this skill's skeleton/ templates into the project's scaffold/ folder and writes a schema-valid STATE.md. It is non-destructive: any file that already exists — including an existing STATE.md — is preserved, never overwritten, so re-running on an established project keeps the analyst's edits and pipeline progress.
- Relay the scaffolder's summary to the analyst: what was created, what was
preserved, and the one input to act on now — create their real DASHBOARD-REQUEST.md at the project root (copy scaffold/'s example, or just paste the request when running tableau-intake). Then tell them to open a fresh conversation and run the next step (tableau-intake to structure the request, or skip straight to tableau-data if they prefer). Suggest tableau-route if they want the router to confirm the next step.
Don't walk the analyst through data acquisition or branding here. Those decisions belong to the skills that own them — tableau-data explains the two data routes (real CSVs in data/, or a published data source queried via the VizQL Data Service, with the scaffold/sample-data/ demo as fallback) when the analyst reaches that step, and tableau-brand handles branding. Init only lays the examples down; it does not pre-explain how to fill them.
Notes
- The
scaffold/examples (includingscaffold/sample-data/*.csv) let the project
run a full demo immediately. How the analyst swaps in real data — into data/ — is tableau-data's topic, not init's; don't describe acquisition modes here.
target_tableau_versionis the one decision captured at init time. Everything
else (the request, the data, branding) is filled in by the later steps that own those concerns.
> The full STATE.md schema and the ordering / staleness / versioning rules live > in CONTRACT.md at the repo root. This skill restates only its own slice; > init.py is the executable mirror of the schema it writes.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: laviDrori0702
- Source: laviDrori0702/tableau-dashboard-creator-skill
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.