Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
alsk1992 avatar

Embeddings

  • 15 installs
  • 610 repo stars
  • Updated June 26, 2026
  • alsk1992/cloddsbot

Embeddings is a Claude Code skill that configures embedding providers, vector storage, and semantic search for the clodds agent framework.

About

Embeddings is a skill for the clodds framework that configures embedding providers, manages vector storage, and runs semantic search. A developer uses /embeddings commands or the createEmbeddingsService TypeScript API to pick a provider (OpenAI, Voyage, Cohere, or a local model), generate and store vectors, compare text similarity, and search a collection. It supports caching and batching to reduce cost.

  • Configures embedding providers (OpenAI, Voyage, Cohere, local Transformers.js) and vector storage
  • Generates single and batched embeddings and runs semantic search with score thresholds
  • Caches embeddings to SQLite with hit-rate stats to cut redundant API calls

Embeddings by the numbers

  • 15 all-time installs (skills.sh)
  • Ranked #11,187 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

embeddings capabilities & compatibility

Cloud providers charge per token (e.g. OpenAI $0.02/1M); the local Transformers.js model runs free with no API key.

Capabilities
embeddings · semantic search · vector storage · text similarity
Works with
openai
Use cases
memory · research
Pricing
Bring your own API key
From the docs

What embeddings says it does

Configure embedding providers, manage vector storage, and perform semantic search.
SKILL.md
No API key required - runs locally via @xenova/transformers
SKILL.md
npx skills add https://github.com/alsk1992/cloddsbot --skill embeddings

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs15
repo stars610
Last updatedJune 26, 2026
Repositoryalsk1992/cloddsbot

What it does

Configure embedding providers and vector storage to generate embeddings and run semantic search inside an agent.

Who is it for?

Adding provider-agnostic embeddings, vector storage, and semantic search to an agent.

When should I use this skill?

You need to generate embeddings, store vectors, or run semantic search in an agent.

What you get

Configured embedding providers with batching, caching, similarity scoring, and semantic search over stored collections.

By the numbers

  • 4 providers: OpenAI, Voyage, Cohere, local Transformers.js
  • text-embedding-3-small produces 1536 dimensions

Files

SKILL.mdMarkdownGitHub ↗

Embeddings - Complete API Reference

Configure embedding providers, manage vector storage, and perform semantic search.

---

Chat Commands

View Config

/embeddings                                 Show current settings
/embeddings status                          Provider status
/embeddings stats                           Cache statistics

Configure Provider

/embeddings provider openai                 Use OpenAI embeddings
/embeddings provider voyage                 Use Voyage AI
/embeddings provider local                  Use local model
/embeddings model text-embedding-3-small    Set model

Cache Management

/embeddings cache stats                     View cache stats
/embeddings cache clear                     Clear cache
/embeddings cache size                      Total cache size

Testing

/embeddings test "sample text"              Generate test embedding
/embeddings similarity "text1" "text2"      Compare similarity

---

TypeScript API Reference

Create Embeddings Service

import { createEmbeddingsService } from 'clodds/embeddings';

const embeddings = createEmbeddingsService({
  // Provider
  provider: 'openai',  // 'openai' | 'voyage' | 'local' | 'cohere'
  apiKey: process.env.OPENAI_API_KEY,

  // Model
  model: 'text-embedding-3-small',
  dimensions: 1536,

  // Caching
  cache: true,
  cacheBackend: 'sqlite',
  cachePath: './embeddings-cache.db',

  // Batching
  batchSize: 100,
  maxConcurrent: 5,
});

Generate Embeddings

// Single text
const embedding = await embeddings.embed('Hello world');
console.log(`Dimensions: ${embedding.length}`);

// Multiple texts (batched)
const vectors = await embeddings.embedBatch([
  'First document',
  'Second document',
  'Third document',
]);

Semantic Search

// Search against stored vectors
const results = await embeddings.search({
  query: 'trading strategies',
  collection: 'documents',
  limit: 10,
  threshold: 0.7,
});

for (const result of results) {
  console.log(`${result.text} (score: ${result.score})`);
}

Similarity

// Compare two texts
const score = await embeddings.similarity(
  'The cat sat on the mat',
  'A feline rested on the rug'
);

console.log(`Similarity: ${score}`);  // 0.0 - 1.0

Store Vectors

// Store embedding with metadata
await embeddings.store({
  collection: 'documents',
  id: 'doc-1',
  text: 'Original text',
  embedding: vector,
  metadata: {
    source: 'wiki',
    date: '2024-01-01',
  },
});

// Store batch
await embeddings.storeBatch({
  collection: 'documents',
  items: [
    { id: 'doc-1', text: 'First doc' },
    { id: 'doc-2', text: 'Second doc' },
  ],
});

Cache Management

// Get cache stats
const stats = await embeddings.getCacheStats();
console.log(`Cached: ${stats.count} embeddings`);
console.log(`Size: ${stats.sizeMB} MB`);
console.log(`Hit rate: ${stats.hitRate}%`);

// Clear cache
await embeddings.clearCache();

// Clear specific entries
await embeddings.clearCache({ olderThan: '7d' });

Provider Configuration

// Switch provider
embeddings.setProvider('voyage', {
  apiKey: process.env.VOYAGE_API_KEY,
  model: 'voyage-large-2',
});

// Use local model (Transformers.js)
// No API key required - runs locally via @xenova/transformers
embeddings.setProvider('local', {
  model: 'Xenova/all-MiniLM-L6-v2',  // 384 dimensions
});

---

Providers

ProviderModelsQualitySpeedCost
OpenAItext-embedding-3-small/largeExcellentFast$0.02/1M
Voyagevoyage-large-2ExcellentFast$0.02/1M
Cohereembed-english-v3GoodFast$0.10/1M
Local (Transformers.js)Xenova/all-MiniLM-L6-v2GoodMediumFree

---

Models

OpenAI

ModelDimensionsBest For
text-embedding-3-small1536General use
text-embedding-3-large3072High accuracy

Voyage

ModelDimensionsBest For
voyage-large-21024General use
voyage-code-21536Code search

---

Use Cases

Semantic Memory Search

// Store user memories
await embeddings.store({
  collection: 'memories',
  id: 'mem-1',
  text: 'User prefers conservative trading',
});

// Search memories
const relevant = await embeddings.search({
  query: 'what is user risk preference',
  collection: 'memories',
  limit: 5,
});

Document Similarity

// Find similar documents
const similar = await embeddings.findSimilar({
  text: 'How to trade options',
  collection: 'docs',
  limit: 5,
});

---

Best Practices

1. Use caching — Avoid redundant API calls 2. Batch requests — More efficient than single calls 3. Choose dimensions wisely — Balance quality vs storage 4. Monitor costs — Embeddings can add up 5. Local for development — Use local model to save costs

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.