Claude
Cursor
GitHub Copilot
Skill
preset-embedding
Inspect embedded dashboard configuration, trusted domains, origins, guest-token routing, and embedded RLS routing through direct Superset API calls. Use only for direct API workflows; Do not use for MCP-only work.
Virus-scanned
Reviewed automatically before listing.
Download
preset-io-agent-skills-plugins_preset-api-skills_skills_preset-embedding-73d2674.zip · 3 KB
Install
skills CLI
npx skills add https://github.com/preset-io/agent-skills/tree/master/plugins/preset-api-skills/skills/preset-embedding
Claude Code
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install preset-io-agent-skills@llmmart
Git
git clone https://github.com/preset-io/agent-skills.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole preset-io/agent-skills collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
preset-embedding
Use for embedded dashboard configuration reads and security-sensitive routing.
Always
- Auth and conventions come from
preset-api(JWT exchange, base URLs, Rison); resolve the workspace hostname through the Management API when it is not already known. Consultpreset-supersetonly when permissions drift matters. - Default to embedded configuration reads.
- Route guest-token creation to
preset-guest-tokens. - Route embedded RLS design/review to
preset-embedded-rls. - Require explicit confirmation before embedded config mutations, guest tokens, trusted domain changes, or access-token key changes.
Decision Rules
- Distinguish config reads from trusted-domain mutations, guest-token issuance, and RLS changes.
- Require approval before broadening domains or issuing tokens.
- Route domain, token, and RLS requests to the correct guardrail.
- Avoid mutating embedded configuration.
Workflow Order
- Inspect embedded dashboard configuration.
- Classify domain, token, and RLS request type.
- Prepare approval summary for mutation or token issuance.
- Stop before broadening domains, mutating config, or issuing tokens.
Retrieve
- Embedded dashboard configuration reads: references/embedded-config-reads.md
- Embedded config create/update/delete routing: references/embedded-config-mutations.md
- Trusted domains and origins: references/trusted-domains-and-origins.md
- Guest-token routing: references/guest-tokens.md
- Embedded RLS routing: references/embedded-rls.md
Files (agent-skills)
-
references
-
embedded-config-mutations.md 961 B
# Embedded Configuration Mutations Use this reference when the user wants to create, update, or delete embedded dashboard configuration. Do not run these without explicit confirmation: | Surface | Endpoint | |---|---| | Set embedded config | `POST /api/v1/dashboard/{id_or_slug}/embedded` | | Update embedded config | `PUT /api/v1/dashboard/{id_or_slug}/embedded` | | Delete embedded config | `DELETE /api/v1/dashboard/{id_or_slug}/embedded` | Before mutating embedded configuration, summarize: 1. Workspace hostname. 2. Dashboard ID or slug. 3. Endpoint and HTTP method. 4. Allowed domains and expected origin behavior. 5. Expected embed UUID/configuration change. 6. Rollback path, such as restoring prior allowed domains or deleting the config. Changing embedded configuration can expose dashboards to external applications when paired with valid guest tokens. For token issuance, use `preset-guest-tokens`. For RLS clauses, use `preset-embedded-rls`. -
embedded-config-reads.md 1.1 KB
# Embedded Configuration Reads Use this reference for embedded dashboard configuration reads. Embedding endpoints depend on workspace feature flags and permissions. If embedding is disabled, embedded endpoints can return `404`. ## Dashboard Embedded Configuration ```bash curl -s -H "Authorization: Bearer $TOKEN" \ "https://{workspace_hostname}/api/v1/dashboard/{id_or_slug}/embedded" | jq . ``` ```python embedded = client.workspace( "GET", hostname, f"/dashboard/{dashboard_id_or_slug}/embedded", ) ``` `404` can mean no embedded configuration exists for the dashboard, the feature flag is disabled, or the authenticated user lacks access. ## Embedded Dashboard By UUID ```bash curl -s -H "Authorization: Bearer $TOKEN" \ "https://{workspace_hostname}/api/v1/embedded_dashboard/{uuid}" | jq . ``` ```python embedded = client.workspace("GET", hostname, f"/embedded_dashboard/{embedded_uuid}") ``` Optional query parameters include `uiConfig`, `show_filters`, `expand_filters`, `native_filters_key`, and `permalink_key`. For allowed-domain interpretation, load [trusted-domains-and-origins.md](trusted-domains-and-origins.md). -
embedded-rls.md 671 B
# Embedded RLS Routing Use this reference when an embedding task involves row-level security for external viewers. Embedded RLS clauses are permission controls. Incorrect clauses can leak or hide customer data. Before preparing or approving RLS clauses, use `preset-embedded-rls`. Confirm: 1. Viewer population and tenant/account identity. 2. Dataset IDs and column names the clauses target. 3. The exact `rls_rules` values intended for guest-token claims. 4. Whether the clauses are additive to workspace-level RLS. 5. How the result will be validated without exposing unnecessary data. Do not invent tenant identifiers, filters, dataset columns, or access rules. -
guest-tokens.md 664 B
# Guest Token Routing Use this reference when an embedding task reaches guest-token creation or payload review. Guest tokens are signed credentials for external embedded access. They must be handled by the focused security-sensitive skill. Before guest-token creation, use `preset-guest-tokens`. The guest-token endpoint is: | Goal | Endpoint | |---|---| | Guest token | `POST /api/v1/security/guest_token/` | Do not print signed guest tokens in logs, examples, PR comments, or handoff notes. Do not create a token until the embedded dashboard UUID/resource, user identity claims, RLS clauses, token handling plan, and expiration expectations are explicit. -
trusted-domains-and-origins.md 1.3 KB
# Trusted Domains And Origins Use this reference for allowed-domain and origin behavior in embedded dashboard configuration. Allowed domains are part of embedded dashboard configuration and control where embedded dashboards are expected to be loaded from. They are not a replacement for guest-token authorization or row-level security. ## Review Checklist Before creating or changing trusted domains, confirm: 1. The exact dashboard ID or slug. 2. The application origins that should embed the dashboard. 3. Whether wildcard domains are allowed by policy. 4. Whether staging, production, and other non-production origins should differ. 5. The rollback plan if an origin is too broad or breaks embedding. ## Troubleshooting If embedding fails: | Symptom | Check | |---|---| | `404` from embedded endpoints | Feature flag, dashboard embedded config, permissions | | Browser blocks embed | Origin/domain mismatch, iframe policy, app URL mismatch | | Guest token accepted but data wrong | Use `preset-embedded-rls` to review RLS clauses | | Token missing or rejected | Use `preset-guest-tokens` to review payload and handling | Do not broaden trusted domains without explicit approval. Broad domains can allow unintended applications to host embedded content when paired with valid tokens.
-
-
SKILL.md 1.9 KB
--- name: preset-embedding description: Inspect embedded dashboard configuration, trusted domains, origins, guest-token routing, and embedded RLS routing through direct Superset API calls. Use only for direct API workflows; Do not use for MCP-only work. --- # preset-embedding Use for embedded dashboard configuration reads and security-sensitive routing. ## Always - Auth and conventions come from `preset-api` (JWT exchange, base URLs, Rison); resolve the workspace hostname through the Management API when it is not already known. Consult `preset-superset` only when permissions drift matters. - Default to embedded configuration reads. - Route guest-token creation to `preset-guest-tokens`. - Route embedded RLS design/review to `preset-embedded-rls`. - Require explicit confirmation before embedded config mutations, guest tokens, trusted domain changes, or access-token key changes. ## Decision Rules - Distinguish config reads from trusted-domain mutations, guest-token issuance, and RLS changes. - Require approval before broadening domains or issuing tokens. - Route domain, token, and RLS requests to the correct guardrail. - Avoid mutating embedded configuration. ## Workflow Order 1. Inspect embedded dashboard configuration. 2. Classify domain, token, and RLS request type. 3. Prepare approval summary for mutation or token issuance. 4. Stop before broadening domains, mutating config, or issuing tokens. ## Retrieve - Embedded dashboard configuration reads: [references/embedded-config-reads.md](references/embedded-config-reads.md) - Embedded config create/update/delete routing: [references/embedded-config-mutations.md](references/embedded-config-mutations.md) - Trusted domains and origins: [references/trusted-domains-and-origins.md](references/trusted-domains-and-origins.md) - Guest-token routing: [references/guest-tokens.md](references/guest-tokens.md) - Embedded RLS routing: [references/embedded-rls.md](references/embedded-rls.md)
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.