velt-node-sdk-best-practices
Velt Node SDK (`@veltdev/node`) implementation patterns for Node.js / TypeScript backends.
Skill by velt
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/velt-js-velt-node-sdk-best-practices
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: frontend, backend, cloud, security
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/velt-node-sdk-best-practices
What's inside
- Skill name
velt-node-sdk-best-practices- Description
- Velt Node SDK (`@veltdev/node`) implementation patterns for Node.js / TypeScript backends. Use whenever the user is writing server-side code that integrates with Velt — initializing `VeltSDK`, calling `sdk.api.*` (REST API services like Organizations, Documents, Comment Annotations, etc.) or `sdk.selfHosting.*` (MongoDB+S3 self-hosted services like Comments, Reactions, Attachments), generating JWT auth tokens for the frontend SDK from Node, configuring MongoDB or AWS S3 for self-hosting, handling the SDK's typed error classes (`VeltSDKError`, `VeltDatabaseError`, `VeltValidationError`, `VeltTokenError`, `VeltApiError`), debugging response-envelope mismatches between the two backends, or shipping Node code that talks to Velt in any way. Triggers on any mention of `@veltdev/node`, `VeltSDK`, `sdk.api`, `sdk.selfHosting`, Velt server-side Node.js, MongoDB-backed Velt storage, or env-var auth (`VELT_API_KEY` / `VELT_AUTH_TOKEN`) — even if the user doesn't say "Node SDK" explicitly.
- License
- MIT
- Metadata
- author: velt · version: 0.2.0
- Instructions
- 60 lines in SKILL.md · view on GitHub
Files (12)
- AGENTS.full.md
- AGENTS.md
- SKILL.md
- metadata.json
- _sections.md · rules/shared/
- _template.md · rules/shared/
- api-envelope-and-services.md · rules/shared/api/
- init-dual-mode.md · rules/shared/init/
- models-comment-annotation.md · rules/shared/models/
- pitfalls-token-and-envelopes.md · rules/shared/pitfalls/
- selfhost-attachments-positional.md · rules/shared/selfhost/
- selfhost-lazy-load-and-services.md · rules/shared/selfhost/
SKILL.md (first lines)
# Velt Node SDK Best Practices
Implementation guide for `@veltdev/node`. The SDK has two independent backends that share the same `VeltSDK` instance but differ in initialization requirements, lazy-load patterns, and response shapes — most bugs stem from blurring that line.
## When to Apply
- Initializing `VeltSDK.initialize(...)` in a Node service
- Calling any method under `sdk.api.*` or `sdk.selfHosting.*`
- Generating Velt auth tokens server-side (`getToken`) for the frontend
- Configuring MongoDB or AWS S3 for self-hosting
- Catching and discriminating SDK errors
- Debugging "result.success is undefined" / "is not a function" / "cannot find module mongodb" symptoms
## The two-backend mental model
`sdk.api.*` is a thin typed wrapper over the Velt REST API. No database needed; service instances are available synchronously after init.
`sdk.selfHosting.*` is a server-side persistence layer that requires `database` config; service instances are lazy-loaded via `await sdk.selfHosting.getXxx()` and cached.
The two return **different response envelopes** — that's the single highest-impact thing to internalize:
| Backend | Success envelope | Failure |
|---|---|---|
| `sdk.api.*` | `{ result: { status: 'success', message, data, ... } }` | Throws `VeltApiError` |
| `sdk.selfHosting.*` | `{ success: true, statusCode: 200, data }` | `{ success: false, statusCode, error, errorCode }` (or throws `VeltSDKError` subclass) |
## Rule Categories
| Priority | Category | Impact | Prefix |
|---|---|---|---|
| 1 | Initialization & lifecycle | CRITICAL | `init-` |
| 2 | sdk.api.* (REST backend) | HIGH | `api-` |
| 3 | sdk.selfHosting.* (MongoDB + S3) | HIGH | `selfhost-` |
| 4 | Cross-cutting pitfalls | MEDIUM | `pitfalls-` |
## Quick Reference
### 1. Initialization & lifecycle
- `init-dual-mode` — Pick the right `VeltSDK.initialize` shape (REST-only vs self-hosting) and wire `await sdk.close()` on shutdown
### 2. sdk.api.* (REST backend)
- `api-envelope-and-services` — Use the `{ result: { status, data } }` envelope; service-by-service method index for all 17 namespaces; `organizationId` is required on every method
### 3. sdk.selfHosting.* (MongoDB + S3)
- `selfhost-lazy-load-and-services` — Lazy-load with `await sdk.selfHosting.getXxx()`; flat envelope with `success` + `errorCode`; per-service method index for all 7 services
- `selfhost-attachments-positional` — `saveAttachment(request, fileBuffer?, fileName?, mimeType?)` mixes a request object with positional file args; `getAttachment(orgId, attachmentId)` is purely positional
### 4. Cross-cutting pitfalls
- `pitfalls-token-and-envelopes` — `getToken` is positional on both backends; `sdk.selfHosting.token` is a sync property (no `getToken` loader); error classes (`VeltSDKError` + 4 subclasses) discriminate via `instanceof`
## How to Use
Read the relevant rule based on what you're writing. The `pitfalls-token-and-envelopes` rule is worth reading even for unfamiliar tasks — it captures the highest-density "things that silently do the wrong thing".
## Compiled Documents
- `AGENTS.md` — Compressed index of all rules (start here)
- `AGENTS.full.md` — Full verbose guideFrom velt-js/velt-plugin-claude, MIT.
More from velt-js/velt-plugin-claude
- 0.474score
velt-rest-apis-best-practices
velt
Velt REST API v2 and webhook best practices for server-side integration.
SkillCFreshness: CClaude Code +9 - 0.474score
velt-notifications-best-practices
velt
Velt Notifications implementation patterns and best practices for React, Next.js, and web applications.
SkillCFreshness: CClaude Code +9 - 0.474score
velt-presence-best-practices
velt
Velt Presence implementation patterns and best practices for React, Next.js, and web applications.
SkillCFreshness: CClaude Code +9 - 0.474score
velt-proxy-server-best-practices
velt
Velt proxy server setup and configuration best practices for routing Velt SDK traffic through your own reverse proxy (nginx or Cloudflare Workers).
SkillCFreshness: CClaude Code +9 - 0.474score
velt-recorder-best-practices
velt
Velt Recorder implementation patterns and best practices for React, Next.js, and web applications.
SkillCFreshness: CClaude Code +9 - 0.474score
velt-area-best-practices
velt
Best practices for Velt Area Comments — the rectangle area-annotation feature that lets users draw a region on the page and attach a comment thread to it…
SkillCFreshness: CClaude Code +9 - 0.474score
velt-arrows-best-practices
velt
Best practices for Velt Arrows — the directional arrow annotation feature that lets users draw arrows pinned to DOM elements for visual feedback, design…
SkillCFreshness: CClaude Code +9 - 0.474score
velt-chat-sdk-adapter-best-practices
velt
Velt Chat SDK Adapter implementation patterns and best practices for building bots that integrate with Velt comment threads.
SkillCFreshness: CClaude Code +9 - 0.474score
velt-comments-best-practices
velt
Velt Comments implementation patterns and best practices for React, Next.js, and web applications.
SkillCFreshness: CClaude Code +9 - 0.474score
velt-crdt-best-practices
velt
Velt CRDT (Yjs) collaborative editing best practices for real-time applications.
SkillCFreshness: CClaude Code +9 - 0.474score
velt-activity-best-practices
velt
Velt Activity Logs implementation patterns and best practices for React, Next.js, and web applications.
SkillCFreshness: CClaude Code +9 - 0.474score
velt-huddle-best-practices
velt
Velt Huddle implementation patterns and best practices for React, Next.js, and web applications.
SkillCFreshness: CClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Jun 8, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 0.2.0
- License
- MIT
- Repository
- github.com/velt-js/velt-plugin-claude
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from velt
- 0.474score
velt-activity-best-practices
velt
Velt Activity Logs implementation patterns and best practices for React, Next.js, and web applications.
SkillCFreshness: CClaude Code +9 - 0.474score
velt-area-best-practices
velt
Best practices for Velt Area Comments — the rectangle area-annotation feature that lets users draw a region on the page and attach a comment thread to it…
SkillCFreshness: CClaude Code +9 - 0.474score
velt-arrows-best-practices
velt
Best practices for Velt Arrows — the directional arrow annotation feature that lets users draw arrows pinned to DOM elements for visual feedback, design…
SkillCFreshness: CClaude Code +9 - 0.474score
velt-chat-sdk-adapter-best-practices
velt
Velt Chat SDK Adapter implementation patterns and best practices for building bots that integrate with Velt comment threads.
SkillCFreshness: CClaude Code +9 - 0.474score
velt-comments-best-practices
velt
Velt Comments implementation patterns and best practices for React, Next.js, and web applications.
SkillCFreshness: CClaude Code +9 - 0.474score
velt-crdt-best-practices
velt
Velt CRDT (Yjs) collaborative editing best practices for real-time applications.
SkillCFreshness: CClaude Code +9
Cite this page
velt-node-sdk-best-practices skill. Agent Mart. https://agentmart.dev/skills/velt-js-velt-node-sdk-best-practices (last updated 2026-10-24)