agentsclimarketplace

Anth install auth

Skill jeremylongshore/claude-code-plugins-plus-skills/plugins/saas-packs/anthropic-pack/skills/anth-install-auth

'Install and configure Anthropic Claude SDK authentication for Python and TypeScript.From its SKILL.md

Install
npx -y skills add jeremylongshore/claude-code-plugins-plus-skills --skill anth-install-auth

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its file declares

Copied from the file, not written here

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

4.2 KB, 971 tokens by cl100k_base, as published. Nobody here has run it

Anthropic Install & Auth

Overview

Set up the official Anthropic SDK for Python or TypeScript and configure API key authentication. The SDK wraps the Claude Messages API at https://api.anthropic.com/v1/messages.

Prerequisites

  • Node.js 18+ or Python 3.8+
  • Package manager (npm, pnpm, yarn, or pip)
  • Anthropic account with API access at console.anthropic.com
  • API key from Console > API Keys

Instructions

Step 1: Install SDK

# Python
pip install anthropic

# TypeScript / Node.js
npm install @anthropic-ai/sdk

# With pnpm
pnpm add @anthropic-ai/sdk

Step 2: Configure API Key

# Set environment variable (recommended)
export ANTHROPIC_API_KEY="sk-ant-api03-..."

# Or add to .env file
echo 'ANTHROPIC_API_KEY=sk-ant-api03-your-key-here' >> .env

# Verify it's set
echo $ANTHROPIC_API_KEY | head -c 15
# Expected: sk-ant-api03-...

Step 3: Verify Connection (Python)

import anthropic

client = anthropic.Anthropic()  # reads ANTHROPIC_API_KEY from env

message = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=64,
    messages=[{"role": "user", "content": "Say hello in exactly 5 words."}]
)
print(message.content[0].text)
print(f"Model: {message.model}, Tokens: {message.usage.input_tokens}+{message.usage.output_tokens}")

Step 4: Verify Connection (TypeScript)

import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic();  // reads ANTHROPIC_API_KEY from env

const message = await client.messages.create({
  model: 'claude-sonnet-4-20250514',
  max_tokens: 64,
  messages: [{ role: 'user', content: 'Say hello in exactly 5 words.' }],
});

if (message.content[0].type === 'text') {
  console.log(message.content[0].text);
}
console.log(`Stop reason: ${message.stop_reason}`);

Output

  • Installed SDK package (anthropic for Python, @anthropic-ai/sdk for TS)
  • Environment variable ANTHROPIC_API_KEY configured
  • Successful API response confirming authentication works

Error Handling

ErrorHTTP CodeCauseSolution
authentication_error401Invalid or missing API keyVerify key starts with sk-ant-api03-
permission_error403Key lacks required scopeGenerate new key in Console
not_found_error404Invalid API endpointEnsure SDK is latest version
ModuleNotFoundErrorN/ASDK not installedRun pip install anthropic or npm install @anthropic-ai/sdk
connection_errorN/ANetwork/firewall blockingEnsure HTTPS to api.anthropic.com is allowed

Enterprise Configuration

# Custom base URL (for proxied environments)
client = anthropic.Anthropic(
    api_key="sk-ant-...",
    base_url="https://your-proxy.internal.com/v1",
    timeout=60.0,
    max_retries=3
)

# With explicit headers
client = anthropic.Anthropic(
    default_headers={"anthropic-beta": "messages-2024-12-19"}
)

Security Considerations

  • Never commit API keys to source control
  • Use .env files with .gitignore exclusion
  • Rotate keys periodically via Console > API Keys
  • Use separate keys per environment (dev/staging/prod)
  • Consider Anthropic's Workspace feature for team key isolation

Resources

Next Steps

After successful auth, proceed to anth-hello-world for your first Messages API call.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 326,144. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.