← ClaudeAtlas

attribute-creationlisted

Guides you step-by-step through defining a calculated attribute (dimension) on a Honeydew entity. Covers SQL expression building and pushes to Honeydew via the MCP tools.
honeydew-ai/honeydew-ai-coding-agents-plugins · ★ 39 · API & Backend · score 80
Install: claude install-skill honeydew-ai/honeydew-ai-coding-agents-plugins
## Prerequisites Before creating attributes, ensure you are on the correct workspace and branch. Use `get_session_workspace_and_branch` to check the current session context. For development work, create a branch with `create_workspace_branch` (the session switches automatically). See the `workspace-branch` skill for the full workspace/branch tool reference. --- ## Overview A Honeydew **calculated attribute** is a virtual, per-row column defined on an entity — analogous to an expression in a SQL `SELECT` clause. It is evaluated once per row, not aggregated. In BI tools it surfaces as a **dimension** users can group, filter, and slice by. Use a calculated attribute when: - You need a reusable, governed column that doesn't exist verbatim in the source table (e.g. `net_price`, `customer_tier`, `order_month`) - The value should be consistent everywhere it's consumed, not recalculated ad-hoc in each dashboard - You want to expose a clean, business-friendly label for a raw or encoded column Do **not** use a calculated attribute for aggregations across rows — use a metric instead. --- ## Building the SQL Expression ### Core Rules - **Use simple expressions** — easy to understand - **Use the SQL dialect of the connected data warehouse** (Snowflake, Databricks, or BigQuery) - **Use `entity.field` format** for all attribute/metric references - **No joins or subqueries** — simple expressions only (window functions allowed) - **Use fully qualified column names** — `orders.amoun