write-script-deno

Writes Windmill TypeScript scripts that require the Deno runtime and its standard library.

1|Updated Aug 3, 2026
One-click install
npx skills add https://github.com/vpzed-dev/smithy --skill write-script-deno-vpzed-dev
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: write-script-deno
Source: https://github.com/vpzed-dev/smithy/tree/main/windmill/local-dev/.agents/skills/write-script-deno
Command: npx skills add https://github.com/vpzed-dev/smithy --skill write-script-deno-vpzed-dev

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires windmill-client.

What problem does it solve? Writing Windmill scripts that depend on the Deno runtime requires knowing the correct script structure, import conventions, CLI commands, and metadata synchronization steps, and getting any of these wrong produces stale locks, spurious git diffs, or accidental deploys. ## Core Features & Use Cases - Deno-specific script authoring: Produces scripts exporting an async main function, using npm: prefixed imports, Deno standard library URL imports, and the RT namespace for typed Windmill resources. - Correct CLI workflow: Distinguishes wmill script preview for local iteration from wmill script run for deployed versions, and keeps .lock, .script.yaml, and wmill-lock.yaml in sync via wmill generate-metadata after edits. - Full windmill-client SDK reference: Includes the complete API surface for resources, variables, state, S3 object operations, job orchestration, approvals, and workflow-as-code primitives like step, taskScript, and waitForApproval. - Use Case: A user needs a Windmill script that serves HTTP using deno.land/std; this Skill writes the script, previews it locally with sample args, and regenerates metadata so the lockfile and input schema stay consistent. ## Quick Start Write a Deno TypeScript Windmill script that fetches data from an external API and stores the result in S3, then preview it locally.

Frequently Asked Questions about write-script-deno

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

FAQPage Schema
How do I write a Deno TypeScript script for Windmill?▼

Export a single async function named main whose parameters become the script's input arguments. Use npm: prefixed imports for npm packages and deno.land URLs for the Deno standard library, then test locally with wmill script preview before deploying.

When should I use Deno instead of Bun for Windmill scripts?▼

Use Deno only when the script specifically requires the Deno runtime, such as Deno standard library modules or deno.land URL imports with no npm equivalent. For all other TypeScript scripts, Bun is the preferred runtime.

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

wmill script preview executes the local script file without deploying, making it the default for iterating on edits. wmill script run executes the version already deployed in the workspace and should only be used when you explicitly want to test the deployed version.

Why does wmill-lock.yaml show diffs after editing a script?▼

Editing script content, especially adding imports or changing main's arguments, invalidates the stored content hash. Run wmill generate-metadata to regenerate the .lock, .script.yaml input schema, and hash entries so they match the code again.

How do I access Windmill resources and variables from a Deno script?▼

Import the windmill-client package and use wmill.getResource, wmill.getVariable, and wmill.getState, which handle authentication and workspace context automatically. For typed resource parameters, use the RT namespace generated by wmill resource-type generate-namespace.

Can a Deno Windmill script read and write S3 files?▼

Yes, windmill-client provides loadS3File, loadS3FileStream, writeS3File, and deleteS3File operating on the wmill.S3Object type. If no S3 resource path is given, the workspace default storage is used.