Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add rules/hamzaamjad/cursor-rules/206-dbt-analytics-engineeringgit clone --depth 1 https://github.com/hamzaamjad/cursor-rulesWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00000 | $0.00642 |
| Opus 5 | $0.00000 | $0.00321 |
| Sonnet 5 | $0.00000 | $0.00128 |
| Haiku 4.5 | $0.00000 | $0.00064 |
Grade A, and why
206-dbt-analytics-engineering scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
dbt-analytics-engineering
Purpose: Establish a robust, scalable, and maintainable analytics engineering workflow using dbt.
1. Project Structure & Naming
- Organize models into folders:
staging/for raw table transformationsmarts/subdivided intocore/,operational/,analytics/
- Prefix folders and models using
stg_,src_,dim_,fct_ - Use snake_case and singular nouns for model names
2. Documentation & Lineage
- Document all sources and models with YAML docs (
description,meta,tags) - Generate and version the docs site via
dbt docs generatein CI - Tag models for lineage grouping (e.g.,
business_domain,data_source)
3. Testing & Quality
- Define schema tests:
unique,not_null,accepted_values,relationships - Create custom generic tests for domain-specific rules (e.g.,
same_day_orders) - Use snapshots for Slowly Changing Dimensions (SCD1/SCD2)
- Integrate
pre-commit-dbtand require tests in PR checks
4. Performance & Materializations
- Materialize models strategically:
viewfor lightweight transformstablefor heavy or reused resultsincrementalwithunique_keyand expliciton_schema_change
- Partition and cluster large tables where supported (e.g., by date)
- Avoid expensive operations (cross-joins, cartesian products)
- Leverage warehouse-specific optimizations (e.g., Snowflake clustering)
5. Reusability & Macros
- Centralize reusable logic in
macros/(e.g.,watermark,safe_cast) - Use the
dbt_utilspackage for common operations (surrogate_key, pivot) - Abstract environment-specific configs in
dbt_project.ymlviavars
6. Metrics & Semantic Layer
- Define metrics in
metrics/files and build a centralized semantic layer - Leverage
exposuresfor BI tool integration and lineage tracking - Validate metric definitions with endpoint tests
7. CI/CD & Versioning
- Pin dbt core and package versions in
packages.ymllockfile - Automate pipelines:
dbt deps,dbt run,dbt test,dbt docs generate - Promote between environments via Git branches and release tags
- Monitor run history and alert on failures or freshness threshold breaches
8. Observability & Monitoring
- Configure
sources.ymlfreshness thresholds and enforce via CI - Log run metadata (timing, row counts) to the
run_resultstable - Integrate data observability frameworks (e.g., Great Expectations, Monte Carlo)
References: Consolidated from dbt Labs guides ("Analytics engineering: Six best practices", "Data quality best practices") and community standards.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 57 lines · 0 tokens per session scan A 9f77cb04f3d7
206-dbt-analytics-engineering is a cursor rule published in the GitHub repository hamzaamjad/cursor-rules (2 stars, last pushed 1y ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 642 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other cursor rules, from other repositories
angular-20
This rule provides comprehensive best practices and coding standards for Angular development, focusing on modern TypeScript, standalone components, signals, and performance optimizations.
dev-standard
Apache Superset development standards and guidelines for Cursor IDE.
cli-error-handling
CLI command error handling patterns.
prefer-direct-imports-over-module-mocks
Prefer extracting a testable core over vi.mock / vi.resetModules when unit tests need to reach production logic entangled with config, env, or singletons.
control-plane-descriptors
Control plane descriptor and instance implementation patterns.
family-instance-domain-actions
Family instance domain action implementation patterns.