Files
admin 875c7f9b91 feat: Complete zCode CLI X with Telegram bot integration
- Add full Telegram bot functionality with Z.AI API integration
- Implement 4 tools: Bash, FileEdit, WebSearch, Git
- Add 3 agents: Code Reviewer, Architect, DevOps Engineer
- Add 6 skills for common coding tasks
- Add systemd service file for 24/7 operation
- Add nginx configuration for HTTPS webhook
- Add comprehensive documentation
- Implement WebSocket server for real-time updates
- Add logging system with Winston
- Add environment validation

🤖 zCode CLI X - Agentic coder with Z.AI + Telegram integration
875c7f9b91 · 2026-05-05 09:01:26 +00:00
History
..

Claude SDK for Google Vertex

NPM version

This library provides convenient access to the Claude API via Google Vertex AI. See the documentation for more details.

For the direct Claude API at api.anthropic.com, see @anthropic-ai/sdk.

Installation

npm install @anthropic-ai/vertex-sdk

Usage

import { AnthropicVertex } from '@anthropic-ai/vertex-sdk';

// Reads from the `CLOUD_ML_REGION` & `ANTHROPIC_VERTEX_PROJECT_ID` environment variables.
// Additionally goes through the standard `google-auth-library` flow.
const client = new AnthropicVertex();

async function main() {
  const result = await client.messages.create({
    messages: [
      {
        role: 'user',
        content: 'Hey Claude!',
      },
    ],
    model: 'claude-3-5-sonnet-v2@20241022',
    max_tokens: 300,
  });
  console.log(JSON.stringify(result, null, 2));
}

main();

For more details on how to use the SDK, see the README.md for the main Claude SDK which this library extends.

Authentication

This library supports multiple authentication methods:

Default authentication

The client automatically uses the default Google Cloud authentication flow:

import { AnthropicVertex } from '@anthropic-ai/vertex-sdk';

// Uses default authentication and environment variables
const client = new AnthropicVertex({
  region: 'us-central1',
  projectId: 'my-project-id',
});

Custom GoogleAuth configuration

You can customize the authentication using the googleAuth option:

import { AnthropicVertex } from '@anthropic-ai/vertex-sdk';
import { GoogleAuth } from 'google-auth-library';

const client = new AnthropicVertex({
  googleAuth: new GoogleAuth({
    scopes: 'https://www.googleapis.com/auth/cloud-platform',
    keyFile: '/path/to/service-account.json',
  }),
  region: 'us-central1',
  projectId: 'my-project-id',
});

Pre-configured AuthClient

For advanced use cases like impersonation, you can provide a pre-configured AuthClient:

import { AnthropicVertex } from '@anthropic-ai/vertex-sdk';
import { GoogleAuth, Impersonated } from 'google-auth-library';

// Create an impersonated credential
const authClient = new Impersonated({
  sourceClient: await new GoogleAuth().getClient(),
  targetPrincipal: 'impersonated-account@projectID.iam.gserviceaccount.com',
  lifetime: 30,
  delegates: [],
  targetScopes: ['https://www.googleapis.com/auth/cloud-platform'],
});

const client = new AnthropicVertex({
  authClient,
  region: 'us-central1',
  projectId: 'my-project-id',
});

Requirements

TypeScript >= 4.5 is supported.

The following runtimes are supported:

  • Node.js 18 LTS or later (non-EOL) versions.
  • Deno v1.28.0 or higher, using import { AnthropicVertex } from "npm:@anthropic-ai/vertex-sdk".
  • Bun 1.0 or later.
  • Cloudflare Workers.
  • Vercel Edge Runtime.
  • Jest 28 or greater with the "node" environment ("jsdom" is not supported at this time).
  • Nitro v2.6 or greater.

Note that React Native is not supported at this time.

If you are interested in other runtime environments, please open or upvote an issue on GitHub.