write-script-snowflake

Write Snowflake SQL scripts with parameter placeholders and S3 streaming for Windmill.

Updated May 28, 2026
One-click install
npx skills add https://github.com/kma-core/windmill --skill write-script-snowflake-kma-core
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: write-script-snowflake
Source: https://github.com/kma-core/windmill/tree/main/system_prompts/auto-generated/skills/write-script-snowflake
Command: npx skills add https://github.com/kma-core/windmill --skill write-script-snowflake-kma-core

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Writing Snowflake queries that run correctly on Windmill requires knowing the platform's parameter binding syntax, S3 integration patterns, and the right CLI commands to preview or deploy scripts without accidentally overwriting deployed versions. ## Core Features & Use Cases - Parameterized Snowflake Queries: Declare named parameters with -- ? name (type) comments and ? placeholders, including default values. - S3 Integration: Receive S3Object parameters parsed via PARSE_JSON and LATERAL FLATTEN, or stream large result sets directly to S3 with the -- s3 directive to bypass the 10000-row return cap. - Safe CLI Workflow: Distinguishes wmill script preview for local iteration from wmill script run and wmill sync push for deployed versions, preventing accidental deploys of untested changes. - Use Case: Write a Snowflake script that accepts an uploaded CSV file from S3, flattens it into rows, and exports a large aggregated result set back to S3 as Parquet. ## Quick Start Write a Snowflake script that queries the users table with a name filter parameter and preview it locally with sample arguments.

Frequently Asked Questions about write-script-snowflake

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a parameterized Snowflake query in Windmill?

Declare parameters with comments before the statement, such as `-- ? name (text)` or `-- ? age (number) = 0`, then use `?` placeholders in the SQL body. Windmill binds the arguments positionally to each placeholder.

How to pass an S3 file as a parameter to a Snowflake script?

Declare the argument with type `(s3object)`, for example `-- ? file (s3object)`. Windmill renders an S3 file picker, downloads the file, and binds it as JSON text, which you parse with PARSE_JSON(?) and LATERAL FLATTEN.

Can Snowflake scripts in Windmill return more than 10000 rows?

Yes, add a `-- s3` directive at the top of the script to stream results to S3 instead of returning rows. You can set prefix, storage, and format (json, parquet, or csv), and the script returns an S3Object reference.

What is the difference between wmill script preview and script run?

script preview runs the local file without deploying, which is the default when iterating on local edits. script run executes the version already deployed in the workspace and should only be used when you explicitly want the deployed version.

When should I run wmill sync push for a Snowflake script?

Only run sync push when you explicitly want to deploy or publish changes to the workspace. Pushing to test a script overwrites the deployed version with untested changes, so use script preview for testing instead.