Agent skill

Add Node SDK

by gotempsh in gotempsh/temps

Integrate the Temps Node.js SDKs for server-side platform access, KV storage, and Blob storage.

Apache-2.0Auto-check passedBackend & APIs

Install Add Node SDK

skills CLI
$ npx skills add gotempsh/temps --skill add-node-sdk -a claude-code

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

GitHub CLI
$ gh skill install gotempsh/temps add-node-sdk --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/gotempsh/temps.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/add-node-sdk .claude/skills/add-node-sdk && 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
add-node-sdk
GitHub stars
822
Token cost
~2.2k tokens
SKILL.md length
522 words
Files
1
Skills in repo
15
Repo updated
First seen
Licence
Apache-2.0

At a glance

Integrate the Temps Node.js SDKs for server-side platform access, KV storage, and Blob storage.

  • Works in 5 steps: Never hardcode keys/tokens — read from… → Check error on TempsClient calls before… → Catch KVError / BlobError around storage… → …
  • The user wants to:
  • SKILL.md covers The three real packages, Platform API client —…, Server-side error tracking —… and KV storage — @temps-sdk/kv, plus 3 more sections
  • Calls npm; needs TEMPS_TOKEN and TEMPS_API_KEY

What it does

Add Node SDK is an agent skill from gotempsh/temps. Integrate the Temps Node.js SDKs for server-side platform access, KV storage, and Blob storage. Use when the user wants to: (1) Call the Temps platform API from Node.js (deployments, projects, analytics, session replay, etc.), (2) Use Temps KV (key-value) storage, (3) Use Temps Blob storage for files, (4) Server-side integration with a Temps project, (5) Backend access to Temps resources. Triggers: "temps node sdk", "temps kv", "temps blob", "backend integration", "node.js temps", "@temps-sdk/node-sdk".

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Backend & APIs, covering File uploads and storage, Backend development and Deployment. It works with Node.js, Azure Blob Storage, Sentry and Vercel. The repository describes itself as: AI-native open-source alternative to Vercel + Sentry + PostHog + Pingdom + Resend + E2B. 440+ CLI operations with drop-in skills for Claude Code, Codex & OpenCode — deployments… The licence is Apache-2.0.

When your agent uses it

  • The user wants to:
  • Call the Temps platform API from Node.js (deployments
  • Use Temps KV (key-value) storage
  • Use Temps Blob storage for files

Example prompts

  • “temps node sdk”
  • “temps kv”
  • “temps blob”
  • “/add-node-sdk”

Requirements

  • Node.js
  • A credential in TEMPS_API_KEY
  • A credential in TEMPS_TOKEN

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Never hardcode keys/tokens — read from environment variables.
  2. Check error on TempsClient calls before using data (hey-api result shape).
  3. Catch KVError / BlobError around storage calls.
  4. Initialize ErrorTracking.init() once at startup, before code that can throw.
  5. Confirm method names from the generated .d.ts — the platform client surface is generated from OpenAPI and evolves with the API.

What it can do on your machine

Read from SKILL.md and the folder at commit 80aff9a. 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:

    • npm

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

  • Network

    No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.

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

  • Credentials

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

    • TEMPS_TOKEN
    • TEMPS_API_KEY

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

Context cost

Add Node SDK loads about 2.2k tokens when it runs. Until then it costs about 130 tokens; SKILL.md has 522 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~130
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k

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 passed

The automated check found no risky patterns in SKILL.md.

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 gotempsh/temps at commit 80aff9a, republished under its Apache-2.0 licence (© gotempsh). 522 words, ~2,213 tokens.

Download SKILL.mdSave it as .claude/skills/add-node-sdk/SKILL.md (or your agent's skills folder).
name
add-node-sdk
description
Integrate the Temps Node.js SDKs for server-side platform access, KV storage, and Blob storage. Use when the user wants to: (1) Call the Temps platform API from Node.js (deployments, projects, analytics, session replay, etc.), (2) Use Temps KV (key-value) storage, (3) Use Temps Blob storage for files, (4) Server-side integration with a Temps project, (5) Backend access to Temps resources. Triggers: "temps node sdk", "temps kv", "temps blob", "backend integration", "node.js temps", "@temps-sdk/node-sdk".

Add Node.js SDKs

Integrate Temps platform features in Node.js / TypeScript apps.

Verified against the real published packages. A prior version of this skill referenced @temps-sdk/node (which does not exist), new Temps({ apiKey, projectId }), temps.track(), new KV({ apiKey, namespace }), kv.has(), blob.get(), blob.getSignedUrl(), TempsError — none of those exist. Confirm any API before changing it:

bash
npm pack @temps-sdk/node-sdk@latest @temps-sdk/kv@latest @temps-sdk/blob@latest
for t in temps-sdk-*-*.tgz; do tar -xzf "$t"; echo "== $t =="; cat package/dist/index.d.ts | head -60; rm -rf package; done

The three real packages

PackagePurpose
@temps-sdk/node-sdkFull platform API client (generated) + Sentry-style server error tracking
@temps-sdk/kvVercel-KV-style key/value store
@temps-sdk/blobVercel-Blob-style file store

There is no @temps-sdk/node. The platform client package is @temps-sdk/node-sdk.

bash
npm install @temps-sdk/node-sdk   # platform API + error tracking
npm install @temps-sdk/kv         # optional: KV storage
npm install @temps-sdk/blob       # optional: blob storage

Platform API client — @temps-sdk/node-sdk

TempsClient is a generated client (hey-api) over the Temps OpenAPI surface. Construct it with a baseUrl and apiKey, then call resource sub-namespaces.

typescript
import { TempsClient } from '@temps-sdk/node-sdk';

const temps = new TempsClient({
  baseUrl: process.env.TEMPS_API_URL!,   // e.g. https://app.temps.sh
  apiKey: process.env.TEMPS_API_KEY,     // create under Settings → API Keys
});

// Resource namespaces (each maps to OpenAPI operations):
// temps.projects, temps.deployments, temps.analytics, temps.sessionReplay,
// temps.domains, temps.dns, temps.backups, temps.crons, temps.email,
// temps.externalServices, temps.files, temps.funnels, temps.git, temps.monitoring,
// temps.notifications, temps.performance, temps.platform, temps.proxyLogs,
// temps.repositories, temps.settings, temps.users, temps.apiKeys, temps.auditLogs, …

const projects = await temps.projects /* .list(...) etc. */;

⚠️ The config is { baseUrl, apiKey } (Vercel-style baseUrl), not { apiKey, projectId }. There is no top-level temps.track() / temps.identify() — analytics live under temps.analytics.*. Use editor autocomplete on the namespace, or read package/dist/index.d.ts and client/sdk.gen.d.ts for exact method names and argument shapes (they're generated and may evolve).

Each call resolves to { data, error, request, response } (hey-api result shape) — check error before using data.

Server-side error tracking — @temps-sdk/node-sdk

The node SDK re-exports a Sentry-compatible error-tracking API as the ErrorTracking namespace. It is DSN-based and mirrors @sentry/node.

typescript
import { ErrorTracking } from '@temps-sdk/node-sdk';

ErrorTracking.init({
  dsn: process.env.SENTRY_DSN!,            // Temps DSN, from Error Tracking → DSN & Setup
  environment: process.env.NODE_ENV,
  release: process.env.GIT_SHA,
  tracesSampleRate: 1.0,
});

try {
  doRiskyThing();
} catch (err) {
  ErrorTracking.captureException(err);
}

ErrorTracking.captureMessage('Something notable happened', 'warning');
ErrorTracking.setUser({ id: 'user_123', email: 'user@example.com' });
ErrorTracking.addBreadcrumb({ category: 'auth', message: 'logged in', level: 'info' });
const tx = ErrorTracking.startTransaction({ name: 'checkout', op: 'http.server' });
// … tx.startChild(...), tx.finish()

For most error-tracking work, prefer the dedicated add-error-tracking skill: Temps is Sentry wire-compatible, so the official @sentry/node SDK pointed at a Temps DSN is the recommended path. Use ErrorTracking from @temps-sdk/node-sdk only when you specifically want the bundled implementation (no extra dependency).

KV storage — @temps-sdk/kv

Vercel-KV-style API. Use the default kv instance (env-configured) or construct a KV/createClient.

typescript
import { kv } from '@temps-sdk/kv';
// or: import { KV, createClient } from '@temps-sdk/kv';

// Default instance reads TEMPS_API_URL, TEMPS_TOKEN, TEMPS_PROJECT_ID from env.
await kv.set('user:123', { name: 'John' });
await kv.set('session:abc', { userId: '123' }, { ex: 3600 });  // expire in 3600s
const user = await kv.get<{ name: string }>('user:123');        // typed get; null if missing
await kv.incr('counter');
await kv.expire('user:123', 600);
const ttl = await kv.ttl('user:123');                            // seconds; -2 missing, -1 no-expiry
const removed = await kv.del('user:123', 'session:abc');         // count deleted
const matches = await kv.keys('user:*');                         // pattern match

Explicit client (when you don't want env-based config):

typescript
import { KV } from '@temps-sdk/kv';

const store = new KV({
  apiUrl: process.env.TEMPS_API_URL,
  token: process.env.TEMPS_TOKEN,    // API key or deployment token
  projectId: 42,                     // number; required with API keys, inferred from deployment tokens
});

SetOptions (Redis-style): { ex?: number /* sec */, px?: number /* ms */, nx?: boolean, xx?: boolean }.

⚠️ The config field is token (API key or deployment token) + projectId: number, not apiKey/namespace. There is no kv.has(), kv.list({prefix}), getWithMetadata, or a { ttl } set option — use { ex } / { px }. KV errors throw KVError.

Show full SKILL.md (196 more words)Show less

Blob storage — @temps-sdk/blob

Vercel-Blob-style API. Use the default blob instance or construct BlobClient/createClient.

typescript
import { blob } from '@temps-sdk/blob';
// or: import { BlobClient, createClient } from '@temps-sdk/blob';

// Upload (returns BlobInfo: { url, pathname, contentType, size, ... })
const info = await blob.put('avatars/user-123.png', imageBuffer, {
  contentType: 'image/png',
  addRandomSuffix: false,   // default true — set false to keep the exact pathname
});

// Download (returns a fetch Response — stream or buffer it yourself)
const res = await blob.download(info.url);
const bytes = Buffer.from(await res.arrayBuffer());

// Metadata
const meta = await blob.head(info.url);

// List with pagination
const { blobs, cursor, hasMore } = await blob.list({ prefix: 'avatars/', limit: 100 });

// Copy and delete
await blob.copy(info.url, 'avatars/backup.png');
await blob.del(info.url);            // also accepts string[] of urls/pathnames

Explicit client:

typescript
import { BlobClient } from '@temps-sdk/blob';

const store = new BlobClient({
  apiUrl: process.env.TEMPS_API_URL,
  token: process.env.TEMPS_TOKEN,
  projectId: 42,
});

PutOptions: { contentType?, addRandomSuffix? (default true), cacheControl?, contentEncoding?, contentDisposition? }.

⚠️ Methods are put / del / head / list / download / copy. There is no blob.get(), blob.getStream(), blob.getSignedUrl(), or blob.createUploadUrl() — to read content, call download(url) and consume the Response. Blob errors throw BlobError.

Environment Variables

VariableUsed byNotes
TEMPS_API_URLnode-sdk (baseUrl), kv, blobBase URL of the Temps API, e.g. https://app.temps.sh
TEMPS_API_KEYnode-sdk TempsClientCreate under Settings → API Keys
TEMPS_TOKENkv, blobAPI key or deployment token
TEMPS_PROJECT_IDkv, blobNumeric project id; required with API keys, inferred from deployment tokens
SENTRY_DSNnode-sdk ErrorTrackingTemps DSN from Error Tracking → DSN & Setup

On Temps deployments these may be injected automatically when you link a KV/Blob service to the project — check the project's environment variables before hardcoding.

Best Practices

  1. Never hardcode keys/tokens — read from environment variables.
  2. Check error on TempsClient calls before using data (hey-api result shape).
  3. Catch KVError / BlobError around storage calls.
  4. Initialize ErrorTracking.init() once at startup, before code that can throw.
  5. Confirm method names from the generated .d.ts — the platform client surface is generated from OpenAPI and evolves with the API.

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

Files

Just SKILL.md in skills/add-node-sdk of gotempsh/temps.

Open the folder on GitHubat commit 80aff9a

Compare with similar skills

Add Node SDK 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.

Add Node SDK compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Add Node SDK this skillgotempsh/temps822—~2.2kAutomated safety check: PassApache-2.0
Vercel Functionsvercel/vercel-plugin301—~12kAutomated safety check: NotesCustom licence
Node Backend Development Guidelinesdiet103/claude-code-infrastructure-showcase10k2 repos~2kAutomated safety check: PassMIT
Azure Storage Blob TSmicrosoft/skills3.1k6 repos~3.3kAutomated safety check: PassMIT
Fullstack DevHHU3637kr/skills1453 repos~8.6kAutomated safety check: NotesMIT
Deploy Fullstack Vercelvellum-ai/vellum-assistant1.4k—~2.8kAutomated safety check: PassMIT

Similar skills

  • Vercel Functions

    vercel/vercel-plugin

    Official

    Vercel Functions expert guidance — Node.js/Bun/Python runtimes, Fluid Compute, long-duration (30 min) functions, large functions (5 GB bundles), Docker/OCI container images, plan limits, streaming…

    301 GitHub stars~12k tokensUpdated yesterday
    Backend & APIsAuto-check: notes
  • Node Backend Development Guidelines

    diet103/claude-code-infrastructure-showcase

    Sets layered architecture and coding rules for Node.js, Express and TypeScript microservices, covering routes, controllers, services, repositories, Prisma, Sentry and Zod.

    10k GitHub starsUsed in 2 repos~2k tokens
    Backend & APIsAuto-check passed
  • Azure Storage Blob TS

    microsoft/skills

    Official

    Azure Blob Storage JavaScript/TypeScript SDK (@azure/storage-blob) for blob operations.

    3.1k GitHub starsUsed in 6 repos~3.3k tokens
    Backend & APIsAuto-check passed
  • Fullstack Dev

    HHU3637kr/skills

    Full-stack backend architecture and frontend-backend integration guide.

    145 GitHub starsUsed in 3 repos~8.6k tokens
    Backend & APIsAuto-check: notes
  • Deploy Fullstack Vercel

    vellum-ai/vellum-assistant

    Build and deploy a full-stack app (React frontend + Python/FastAPI backend) or a Vellum app to Vercel as a serverless demo with seeded data

    1.4k GitHub stars~2.8k tokensUpdated 3 days ago
    Backend & APIsAuto-check passed
  • Sentry Node SDK

    getsentry/sentry-for-ai

    Official

    Full Sentry SDK setup for Node.js, Bun, and Deno. An agent skill from getsentry/sentry-for-ai.

    268 GitHub stars~8.4k tokensUpdated today
    Backend & APIsAuto-check passed

More from gotempsh/temps

All 15 skills in this repo
  • Temps

    gotempsh/temps

    Manage, deploy, operate, and instrument applications with Temps.

    822 GitHub stars~1.9k tokensUpdated today
    Auto-check passed
  • Add React Analytics

    gotempsh/temps

    Add Temps analytics to React applications with comprehensive tracking capabilities including page views, custom events, scroll tracking, engagement monitoring, session recording, and Web Vitals…

    822 GitHub stars~2.7k tokensUpdated today
    Auto-check passed
  • Temps Best Practices

    gotempsh/temps

    Best-practices reference for preparing and instrumenting applications on Temps.

    822 GitHub stars~2.9k tokensUpdated today
    Auto-check passed
  • Temps CLI

    gotempsh/temps

    Operate Temps through the pinned @temps-sdk/cli package with bunx or npx.

    822 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Temps Plugin

    gotempsh/temps

    Design, build, test, and distribute external Temps plugins with TypeScript/Bun; provide development and local-testing guidance for existing Rust plugins.

    822 GitHub stars~1.8k tokensUpdated today
    Auto-check passed
  • Add Custom Domain

    gotempsh/temps

    Add a custom domain to a Temps project and provision an automatic SSL/TLS certificate via Let's Encrypt, driven entirely from the @temps-sdk/cli CLI.

    822 GitHub stars~988 tokensUpdated today
    Auto-check passed

Questions about Add Node SDK

What does Add Node SDK do?

Integrate the Temps Node.js SDKs for server-side platform access, KV storage, and Blob storage. Add Node SDK is an agent skill from gotempsh/temps.js SDKs for server-side platform access, KV storage, and Blob storage.

When should I use Add Node SDK?

Add Node SDK fits situations like: the user wants to:; call the Temps platform API from Node.js (deployments; use Temps KV (key-value) storage; use Temps Blob storage for files.

How do I install Add Node SDK in Claude Code?

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

How do I install Add Node SDK in Codex?

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

Can I use Add Node SDK 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 gotempsh/temps --skill add-node-sdk -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/add-node-sdk, .gemini/skills/add-node-sdk, .github/skills/add-node-sdk and .opencode/skills/add-node-sdk in your project.

What does Add Node SDK need to run?

Going by SKILL.md and its folder, Add Node SDK needs the command-line tools its instructions call (npm) and credentials named TEMPS_TOKEN and TEMPS_API_KEY. Our summary lists: Node.js; A credential in TEMPS_API_KEY; A credential in TEMPS_TOKEN.

Does Add Node SDK access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Add Node SDK safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Add Node SDK use?

Add Node SDK is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Add Node SDK use?

About 2.2k tokens (SKILL.md is roughly 8.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Add Node SDK?

Skills that share tags, products or a category with Add Node SDK: Vercel Functions (vercel/vercel-plugin, 301 stars), Node Backend Development Guidelines (diet103/claude-code-infrastructure-showcase, 10k stars), Azure Storage Blob TS (microsoft/skills, 3.1k stars) and Fullstack Dev (HHU3637kr/skills, 145 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Add Node SDK?

gotempsh (a GitHub organization) maintains it in gotempsh/temps, which has 822 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on October 7, 2026.

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