Official agent skill

Deno Deploy

by denoland in denoland/skills

Guides deploying Deno apps with the deno deploy CLI, including pre-flight checks, environment variables, Deno KV, custom domains and the --tunnel flag for local development.

OfficialMITAuto-check: notesDevOps & Cloud

Install Deno Deploy

skills CLI
$ npx skills add denoland/skills --skill deno-deploy -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install denoland/skills deno-deploy --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/denoland/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/deno-deploy .claude/skills/deno-deploy && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
deno-deploy
GitHub stars
100
Token cost
~5.5k tokens
SKILL.md length
1,826 words
Files
9 (incl. references)
Skills in repo
5
Repo updated
First seen
Licence
MIT

At a glance

Guides deploying Deno apps with the deno deploy CLI, including pre-flight checks, environment variables, Deno KV, custom domains and the --tunnel flag for local development.

  • Works in 4 steps: Locate the App Directory → Pre-Flight Checks → Check for Startup Dependencies → …
  • Deploying a Deno app to production on Deno Deploy
  • SKILL.md covers Scope Boundaries, Important: Use deno deploy,…, When Unsure About CLI Flags and Deployment Workflow, plus 4 more sections
  • Calls deno; needs API_KEY

What it does

The skill applies only to Deno Deploy questions and is strict about scope: questions about other platforms or local scripts get answers with no mention of Deno Deploy. It insists on the built-in deno deploy command, which needs Deno 2.4.2 or newer, rather than deployctl, which belongs to the deprecated Deno Deploy Classic. When a flag is uncertain, the agent runs --help first instead of guessing.

The workflow leads with the core command, deno deploy --prod, then locates the app directory containing deno.json, runs pre-flight checks on the Deno version and existing configuration, and checks for startup dependencies. Reference notes in the folder cover authentication, databases, Deno KV, domains, frameworks, organizations, the runtime and troubleshooting.

When your agent uses it

  • Deploying a Deno app to production on Deno Deploy
  • Configuring environment variables or a custom domain for a Deno Deploy app
  • Using Deno KV from a deployed app
  • Developing locally against Deploy resources with the --tunnel flag

Example prompts

  • “Deploy this Deno app to production on Deno Deploy.”
  • “Add a custom domain to my Deno Deploy project and tell me which DNS records I need.”
  • “What's the right deno deploy command to set environment variables for production?”

Requirements

  • Deno 2.4.2 or newer

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Locate the App Directory
  2. Pre-Flight Checks
  3. Check for Startup Dependencies
  4. Deploy Based on Configuration

What it can do on your machine

Read from SKILL.md and the folder at commit d5f6ace. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • deno

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • docs.deno.com
    • console.deno.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Deno Deploy loads about 5.5k tokens when it runs, and up to ~14k if it reads all its reference files. Until then it costs about 74 tokens; SKILL.md has 1,826 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~74
When it runs · the whole SKILL.md, loaded when a task matches
~5.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~14k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:426
    # Load from .env file (all values treated as secrets by default)
  • NoteMentions a .env fileSKILL.md:427
    deno deploy env load .env.production
  • NoteMentions a .env fileSKILL.md:429
    # Load from .env file, marking specific keys as non-secrets
  • NoteMentions a .env fileSKILL.md:430
    deno deploy env load .env.production --non-secrets PUBLIC_URL APP_NAME
  • NoteMentions a .env fileSKILL.md:596
    | Load variables from .env file (defaults to secret)     |
  • NoteMentions a .env fileSKILL.md:597
    d <file> --non-secrets <keys...>` | Load .env file, marking specific keys as non-secrets   |
  • NoteMentions a .env fileSKILL.md:608
    - Must be set via `deno deploy env`, not .env files

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from denoland/skills at commit d5f6ace, republished under its MIT licence (© denoland). 1,826 words, ~5,549 tokens.

Download SKILL.mdSave it as .claude/skills/deno-deploy/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.
name
deno-deploy
description
Use when deploying Deno apps to production, asking about Deno Deploy, or working with `deno deploy` CLI commands. Covers deployment workflows, environment variables, KV database access, custom domains, the --tunnel flag for local development, and the `deno deploy` command reference.
license
MIT
metadata.author
denoland
metadata.version
1.5

Deno Deploy

This skill provides guidance for deploying applications to Deno Deploy.

Scope Boundaries

This skill applies only to Deno Deploy questions. Follow these rules:

  • If the user asks about AWS Lambda, Vercel, Netlify, Google Cloud Run, Docker, Kubernetes, or any other deployment platform, answer using that platform directly. Do not mention Deno Deploy at all — not as an alternative, not as a comparison, not as a suggestion.
  • If the user asks about running a local Deno script (not deploying), answer the local question directly. Do not mention Deno Deploy, deployment, or the --tunnel flag.
  • Do not include deno deploy commands, Deno KV, or Deno Deploy environment variable configuration in responses about other platforms or local-only scripts.
  • Only discuss Deno Deploy when the user explicitly asks about Deno Deploy or deploying a Deno application to production.

Important: Use deno deploy, NOT deployctl

Always use the deno deploy command. Do NOT use deployctl.

  • deployctl is for Deno Deploy Classic (deprecated)
  • deno deploy is the modern, integrated command built into the Deno CLI
  • Requires Deno >= 2.4.2 - the deno deploy subcommand was introduced in Deno 2.4

When Unsure About CLI Flags

Always run --help before guessing at flags. The deno deploy subcommand has many flags, and they change between versions. When you're unsure what a command accepts:

bash
# See all subcommands
deno deploy --help

# See flags for a specific subcommand
deno deploy create --help
deno deploy env --help
deno deploy database --help

This takes seconds and prevents repeated trial-and-error failures. Never assume a flag exists — check first.

Deployment Workflow

Always show the core deploy command first — then explain diagnostic steps. When a user asks "how do I deploy?", lead with the actual command (deno deploy --prod) before covering pre-flight checks and configuration.

Step 1: Locate the App Directory

Before running any deploy commands, find where the Deno app is located:

bash
# Check if deno.json exists in current directory
if [ -f "deno.json" ] || [ -f "deno.jsonc" ]; then
  echo "APP_DIR: $(pwd)"
else
  # Look for deno.json in immediate subdirectories
  find . -maxdepth 2 -name "deno.json" -o -name "deno.jsonc" 2>/dev/null | head -5
fi

All deploy commands must run from the app directory.

Step 2: Pre-Flight Checks

Check Deno version and existing configuration:

bash
# Check Deno version (must be >= 2.4.2)
deno --version | head -1

# Check for existing deploy config
grep -E '"org"|"app"' deno.json deno.jsonc 2>/dev/null || echo "NO_DEPLOY_CONFIG"
Step 3: Check for Startup Dependencies

Before deploying, check if the app connects to a database or external service at startup (e.g., top-level await initDb() in main.ts). If it does, the deploy will fail during warmup because the database doesn't exist yet.

If the app has startup database dependencies, follow this order:

  1. Create the app with --no-wait so a warmup failure doesn't block you:

    bash
    deno deploy create \
      --org <ORG_NAME> --app <APP_NAME> \
      --source local --runtime-mode dynamic --entrypoint main.ts \
      --build-timeout 5 --build-memory-limit 1024 --region us \
      --no-wait
  2. Provision and assign the database:

    bash
    deno deploy database provision my-db --kind prisma --region us-east-1
    deno deploy database assign my-db --app <APP_NAME>
  3. Redeploy (now the database exists, warmup will succeed):

    bash
    deno deploy --prod

If the app has no startup dependencies, skip this step and deploy normally below.

Step 4: Deploy Based on Configuration

If deploy.org AND deploy.app exist in deno.json:

bash
# Build if needed (Fresh, Astro, etc.)
deno task build

# Deploy to production
deno deploy --prod

If NO deploy config exists:

Apps must be created before they can be deployed to. You cannot run deno deploy --prod until an app exists.

IMPORTANT: Ask the user first - Do they have an existing app on Deno Deploy, or do they need to create a new one?

If they have an existing app, add the config directly to deno.json:

json
{
  "deploy": {
    "org": "<ORG_NAME>",
    "app": "<APP_NAME>"
  }
}

The org name is in the Deno Deploy console URL (e.g., console.deno.com/your-org-name). Once this config is in place, subsequent deploys just need deno deploy --prod.

If they need to create a new app:

The CLI needs an organization name. Find it at https://console.deno.com - the org is in the URL path (e.g., console.deno.com/your-org-name).

Interactive creation (opens a browser — only works when a human is at the keyboard):

bash
deno deploy create --org <ORG_NAME>
# A browser window opens - complete the app creation there

Non-interactive creation (use when an AI agent is performing the deploy, or in CI/CD):

bash
deno deploy create \
  --org <ORG_NAME> \
  --app <APP_NAME> \
  --source local \
  --runtime-mode dynamic \
  --entrypoint main.ts \
  --build-timeout 5 \
  --build-memory-limit 1024 \
  --region us

The create command also does the initial deploy. After it completes, deno.json is updated with deploy.org and deploy.app automatically. From that point on, subsequent deploys only need:

bash
deno deploy --prod

After completion, verify the config was saved:

bash
grep -E '"org"|"app"' deno.json

When an AI agent is performing the deployment, always use the non-interactive flow with explicit flags. The interactive flow requires browser windows and terminal prompts that agents cannot navigate.

Core Commands

Production Deployment
bash
deno deploy --prod
Preview Deployment
bash
deno deploy

Preview deployments create a unique URL for testing without affecting production.

Targeting Specific Apps
bash
deno deploy --org my-org --app my-app --prod
Configuring an Entrypoint

Set the entrypoint in your deno.json (this is used by deno deploy create during app creation):

json
{
  "deploy": {
    "entrypoint": "main.ts"
  }
}

Note: --entrypoint is a flag on deno deploy create, not on deno deploy itself.

Additional Flags

These flags are available on deno deploy create (and apply during the initial deploy):

FlagPurpose
--allow-node-modulesInclude node_modules directory in upload
--no-waitSkip waiting for the build to complete

Creating Apps (Non-Interactive Reference)

When any flag beyond --org is provided, deno deploy create runs in non-interactive mode — all required flags must be specified. This is the recommended approach for AI agents and CI/CD pipelines.

Required Flags
FlagDescription
--org <name>Organization name
--app <name>Application name (becomes your URL: <app>.deno.dev)
--source <local|github>Deploy from local files or a GitHub repo
--build-timeout <minutes>Build timeout: 5, 10, 15, 20, 25, or 30
--build-memory-limit <MB>Memory limit: 1024, 2048, 3072, or 4096
--region <region>Deployment region: us, eu, or global
GitHub Source Flags

When using --source github, you also need:

FlagDescription
--owner <name>GitHub repository owner
--repo <name>GitHub repository name
Build Configuration Flags
FlagDescription
--app-directory <path>Path to app directory (for monorepos)
--framework-preset <preset>Framework preset (see Frameworks)
--install-command <cmd>Custom install command
--build-command <cmd>Custom build command
--pre-deploy-command <cmd>Command to run before deploy
--do-not-use-detected-build-configSkip auto-detection of framework config

The CLI auto-detects your framework and build configuration. If a framework is detected, you can skip --install-command, --build-command, --pre-deploy-command, and --runtime-mode — they'll be inferred from the preset. Use --do-not-use-detected-build-config to override detection. When using this flag, all three build commands (--install-command, --build-command, --pre-deploy-command) plus --runtime-mode become required — omitting any of them causes exit code 2.

Runtime Mode Flags

You must pick a runtime mode with --runtime-mode <dynamic|static> (unless a framework preset handles it).

Dynamic mode (for apps with a server):

FlagDescription
--entrypoint <path>Entry file (required for dynamic mode)
--arguments <args>Arguments passed to entrypoint (repeatable)
--working-directory <cwd>Working directory for the process

Static mode (for static sites):

FlagDescription
--static-dir <dir>Directory to serve static files from (required)
--single-page-appServe index.html for routes that don't match a file
Other Flags
FlagDescription
--dry-runValidate everything without actually creating the app
--no-waitDon't wait for the build to complete
--allow-node-modulesInclude node_modules in the upload
Examples

Simple Deno server:

bash
deno deploy create \
  --org my-org --app my-api \
  --source local \
  --runtime-mode dynamic --entrypoint main.ts \
  --build-timeout 5 --build-memory-limit 1024 --region us

Fresh app (framework auto-detected):

bash
deno deploy create \
  --org my-org --app my-fresh-app \
  --source local \
  --build-timeout 5 --build-memory-limit 1024 --region us

Next.js from GitHub:

bash
deno deploy create \
  --org my-org --app my-next-app \
  --source github --owner my-github-user --repo my-next-repo \
  --framework-preset Next \
  --build-timeout 15 --build-memory-limit 2048 --region us \
  --allow-node-modules

Static site:

bash
deno deploy create \
  --org my-org --app my-static-site \
  --source local \
  --runtime-mode static --static-dir dist --single-page-app \
  --build-command "deno task build" \
  --build-timeout 5 --build-memory-limit 1024 --region us

Environment Variables

Contexts

Deno Deploy has three "contexts" - logical environments where your code runs, each with its own set of variables:

ContextPurpose
ProductionLive traffic on your production URL
DevelopmentPreview deployments and branch URLs
BuildOnly available during the build process

You can set different values for the same variable in each context. For example, you might use a test database URL in Development and the real one in Production.

Show full SKILL.md (736 more words)Show less
Predefined Variables

These are automatically available in your code:

VariableDescription
DENO_DEPLOYAlways 1 when running on Deno Deploy
DENO_DEPLOYMENT_IDUnique ID for the current deployment
DENO_DEPLOY_ORG_IDYour organization's ID
DENO_DEPLOY_APP_IDYour application's ID
CISet to 1 during builds only
Accessing Variables in Code
typescript
const dbUrl = Deno.env.get("DATABASE_URL");
const isDenoDeploy = Deno.env.get("DENO_DEPLOY") === "1";
Managing Variables via CLI
bash
# Add a plain text variable
deno deploy env add DATABASE_URL "postgres://..."

# Add a secret variable (hidden after creation, only readable in code)
deno deploy env add API_KEY "sk-..." --secret

# List all variables
deno deploy env list

# Update just the value (keeps contexts and secret status)
deno deploy env update-value DATABASE_URL "postgres://new-url..."

# Update which contexts a variable applies to
deno deploy env update-contexts DATABASE_URL production development

# Delete a variable
deno deploy env delete DATABASE_URL

# Load from .env file (all values treated as secrets by default)
deno deploy env load .env.production

# Load from .env file, marking specific keys as non-secrets
deno deploy env load .env.production --non-secrets PUBLIC_URL APP_NAME
Variable Types
  • Plain text - Visible in the dashboard, good for feature flags and non-sensitive config
  • Secrets - Hidden after creation, only readable in your code, use for API keys and credentials
Limits
  • Key names: max 128 bytes
  • Values: max 16 KB
  • Keys cannot start with DENO_, LD_, or OTEL_

Viewing Logs

bash
# Stream live logs
deno deploy logs

# Filter by date range
deno deploy logs --start 2026-01-15 --end 2026-01-16

Databases & Storage

Deno Deploy provides built-in database support with automatic environment isolation. Each environment (production, preview, branch) gets its own isolated database automatically.

Available Options
EngineUse Case
Deno KVKey-value storage, simple data, counters, sessions
PostgreSQLRelational data, complex queries, existing Postgres apps
Deno KV Quick Start

No configuration needed - just use the built-in API:

typescript
const kv = await Deno.openKv();

// Store data
await kv.set(["users", "alice"], { name: "Alice", role: "admin" });

// Retrieve data
const user = await kv.get(["users", "alice"]);
console.log(user.value); // { name: "Alice", role: "admin" }

// List by prefix
for await (const entry of kv.list({ prefix: ["users"] })) {
  console.log(entry.key, entry.value);
}

Deno Deploy automatically connects to the correct database based on your environment.

PostgreSQL

For PostgreSQL, Deno Deploy injects environment variables (DATABASE_URL, PGHOST, etc.) that most libraries detect automatically:

typescript
// Recommended: npm:pg (best PostgreSQL driver for Deno Deploy)
import pg from "npm:pg";
const pool = new pg.Pool(); // Reads DATABASE_URL from environment automatically
Provisioning

Use the deno deploy database command to provision and manage databases:

bash
# Provision a Deno KV database
deno deploy database provision my-database --kind denokv

# Provision a Prisma PostgreSQL database
deno deploy database provision my-database --kind prisma --region us-east-1

# Assign to your app
deno deploy database assign my-database --app my-app

For detailed CLI commands, see Databases.

Local Development

Use --tunnel to connect to your hosted development database locally:

bash
deno task --tunnel dev

See Databases and Deno KV for detailed documentation.

Local Development Tunnel

The tunnel feature lets you expose your local development server to the internet. This is useful for:

  • Testing webhooks - Receive webhook callbacks from external services
  • Sharing with teammates - Let others preview your local work
  • Mobile testing - Access your local server from other devices
Basic Usage

Add the --tunnel flag when running your app:

bash
deno run --tunnel -A main.ts

The first time you run this, it will:

  1. Ask you to authenticate with Deno Deploy (opens a browser)
  2. Ask you to select which app to connect the tunnel to
  3. Generate a public URL that forwards requests to your local server
Using with Tasks

You can use --tunnel with your existing tasks in deno.json:

bash
deno task --tunnel dev

This runs your dev task with the tunnel enabled.

What the Tunnel Provides

Beyond just forwarding requests, the tunnel also:

  • Syncs environment variables - Variables set in your Deno Deploy app's "Local" context become available to your local process
  • Sends logs and metrics - OpenTelemetry data goes to the Deno Deploy dashboard (filter with context:local)
  • Connects to databases - Automatically connects to your assigned local development databases
Managing Tunnels
  • View active tunnels in the Deno Deploy dashboard under the "Tunnels" tab
  • Stop a tunnel by terminating the Deno process (Ctrl+C)

Command Reference

CommandPurpose
deno deploy --prodDeploy to production (app must exist first)
deno deployPreview deployment
deno deploy create --org <name>Create new app (interactive)
deno deploy create --org <name> --app <name> ...Create new app (non-interactive, see full flags above)
deno deploy create ... --no-waitCreate app without waiting for build to complete
deno deploy create ... --allow-node-modulesCreate app including node_modules
deno deploy env add <var> <value>Add plain text environment variable
deno deploy env add <var> <value> --secretAdd secret environment variable
deno deploy env listList environment variables
deno deploy env update-value <var> <value>Update variable value (keeps contexts/secret status)
deno deploy env update-contexts <var> <contexts...>Update which contexts a variable applies to
deno deploy env delete <var>Delete environment variable
deno deploy env load <file>Load variables from .env file (defaults to secret)
deno deploy env load <file> --non-secrets <keys...>Load .env file, marking specific keys as non-secrets
deno deploy database provision <name> --kind <type>Provision a new database
deno deploy database assign <name> --app <app>Assign database to an app
deno deploy logsView deployment logs
deno run --tunnel -A <file>Start local tunnel
deno task --tunnel <task>Run task with tunnel

Edge Runtime Notes

Deno Deploy runs in one or many regions (globally distributed). Keep in mind:

  • Environment variables - Must be set via deno deploy env, not .env files at runtime
  • Global distribution - Code runs at the region closest to users
  • Cold starts - First request after idle may be slightly slower

Additional References

Documentation

© denoland, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 8 other files (references) in skills/deno-deploy of denoland/skills.

  • SKILL.md
  • references/AUTHENTICATION.md
  • references/DATABASES.md
  • references/DENO_KV.md
  • references/DOMAINS.md
  • references/FRAMEWORKS.md
  • references/ORGANIZATIONS.md
  • references/RUNTIME.md
  • references/TROUBLESHOOTING.md

Open the folder on GitHubat commit d5f6ace

Compare with similar skills

Deno Deploy next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Deno Deploy compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Deno Deploy this skilldenoland/skills100—~5.5kAutomated safety check: NotesMIT
GreptimeDB Dev Docker ImageGreptimeTeam/greptimedb6.7k—~4kAutomated safety check: NotesApache-2.0
Vercelremotion-dev/remotion62k—~1.2kAutomated safety check: PassCustom licence
AWS Cdk Developmentzxkane/aws-skills3672 repos~2.5kAutomated safety check: PassMIT
Senior DevOps Toolkitmaslennikov-ig/claude-code-orchestrator-kit2606 repos~1.1kAutomated safety check: NotesCustom licence
Nextjs On Cloudflarecloudflare/skills3k2 repos~678Automated safety check: PassApache-2.0

Similar skills

  • GreptimeDB Dev Docker Image

    GreptimeTeam/greptimedb

    Packages a locally built GreptimeDB debug binary into a development-only Docker image for local-cluster testing, with an optional push to a dev registry.

    6.7k GitHub stars~4k tokensUpdated today
    DevOps & CloudAuto-check: notes
  • Vercel

    remotion-dev/remotion

    Official

    Set up a Codex monitor for Vercel deployments and preview URLs.

    62k GitHub stars~1.2k tokensUpdated today
    DevOps & CloudAuto-check passed
  • AWS Cdk Development

    zxkane/aws-skills

    AWS Cloud Development Kit (CDK) expert for building cloud infrastructure with TypeScript/Python.

    367 GitHub starsUsed in 2 repos~2.5k tokens
    DevOps & CloudAuto-check passed
  • Senior DevOps Toolkit

    maslennikov-ig/claude-code-orchestrator-kit

    Comprehensive DevOps skill for CI/CD, infrastructure automation, containerization, and cloud platforms (AWS, GCP, Azure). Includes pipeline setup…

    260 GitHub starsUsed in 6 repos~1.1k tokens
    DevOps & CloudAuto-check: notes
  • Nextjs On Cloudflare

    cloudflare/skills

    Official

    Build, migrate, and deploy Next.js apps on Cloudflare Workers with vinext.

    3k GitHub starsUsed in 2 repos~678 tokens
    DevOps & CloudAuto-check passed
  • LangBot Deployment Guide

    langbot-app/LangBot

    Deploys and configures a LangBot instance with Docker Compose or Kubernetes, covering config.yaml, the Box sandbox runtime, the plugin runtime and the global API key.

    18k GitHub stars~1.2k tokensUpdated today
    DevOps & CloudAuto-check: notes

More from denoland/skills

  • Official

    Guides writing, running and configuring Deno 2.9+ projects: installing npm and JSR dependencies, permissions, config file precedence and the built-in fmt, lint, test and compile toolchain.

    100 GitHub stars~2.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Official

    Chooses between running regular npm frontend frameworks under Deno and building with Fresh, Deno's island-architecture framework, with Fresh 2.x guidance.

    100 GitHub stars~783 tokensUpdated 2 mo ago
    Auto-check passed
  • Deno Sandbox SDK

    denoland/skills

    Official

    Runs untrusted or AI-generated code in isolated Deno Sandbox microVMs using the @deno/sandbox SDK, with lifecycle, process and streaming guidance.

    100 GitHub stars~2.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Migrate to Deno

    denoland/skills

    Official

    Moves a Node.js, npm, Yarn, pnpm or Bun project to Deno in reversible steps, starting with Deno as the package manager and changing no code unless needed.

    100 GitHub stars~2.2k tokensUpdated 2 mo ago
    Auto-check: warnings

Works with

Categories

Questions about Deno Deploy

What does Deno Deploy do?

Guides deploying Deno apps with the deno deploy CLI, including pre-flight checks, environment variables, Deno KV, custom domains and the --tunnel flag for local development. The skill applies only to Deno Deploy questions and is strict about scope: questions about other platforms or local scripts get answers with no mention of Deno Deploy.2 or newer, rather than deployctl, which belongs to the deprecated Deno Deploy Classic.

When should I use Deno Deploy?

Deno Deploy fits situations like: deploying a Deno app to production on Deno Deploy; configuring environment variables or a custom domain for a Deno Deploy app; using Deno KV from a deployed app; developing locally against Deploy resources with the --tunnel flag.

How do I install Deno Deploy in Claude Code?

Run `npx skills add denoland/skills --skill deno-deploy -a claude-code`. Or copy the skill folder (skills/deno-deploy in denoland/skills) into .claude/skills/deno-deploy in your project. Claude Code loads it when a task matches its description.

How do I install Deno Deploy in Codex?

Run `npx skills add denoland/skills --skill deno-deploy -a codex`. Or copy the skill folder (skills/deno-deploy in denoland/skills) into .agents/skills/deno-deploy in your project. Codex loads it when a task matches its description.

Can I use Deno Deploy in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add denoland/skills --skill deno-deploy -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/deno-deploy, .gemini/skills/deno-deploy, .github/skills/deno-deploy and .opencode/skills/deno-deploy in your project.

What does Deno Deploy need to run?

Going by SKILL.md and its folder, Deno Deploy needs the command-line tools its instructions call (deno) and credentials named API_KEY. Our summary lists: Deno 2.4.2 or newer.

Does Deno Deploy access the network?

SKILL.md names 2 domains. As links in the text: docs.deno.com and console.deno.com. This is read from the text; nothing was executed.

Is Deno Deploy safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Deno Deploy use?

Deno Deploy is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Deno Deploy use?

About 5.5k tokens (SKILL.md is roughly 22k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 8k tokens, read only when the agent opens those files.

What are the alternatives to Deno Deploy?

Skills that share tags, products or a category with Deno Deploy: GreptimeDB Dev Docker Image (GreptimeTeam/greptimedb, 6.7k stars), Vercel (remotion-dev/remotion, 62k stars), AWS Cdk Development (zxkane/aws-skills, 367 stars) and Senior DevOps Toolkit (maslennikov-ig/claude-code-orchestrator-kit, 260 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Deno Deploy?

denoland (a GitHub organization, an official publisher) maintains it in denoland/skills, which has 100 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on July 29, 2026.

Source: denoland/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.