/embeddings
Vector embeddings configuration and semantic search
$ npx -y skills add alsk1992/CloddsBot --skill embeddings --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition โ
- You can call itInvoke it directly when you want it.
- Slash command
/embeddings
Context preview
The summary Claude sees to decide when to auto-load this skill.
Vector embeddings configuration and semantic search
SKILL.md
embeddings.SKILL.mdname: embeddings
description: "Vector embeddings configuration and semantic search"
emoji: "๐งฌ"
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.0Store 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
| Provider | Models | Quality | Speed | Cost | |----------|--------|---------|-------|------| | **OpenAI** | text-embedding-3-small/large | Excellent | Fast | $0.02/1M | | **Voyage** | voyage-large-2 | Excellent | Fast | $0.02/1M | | **Cohere** | embed-english-v3 | Good | Fast | $0.10/1M | | **Local (Transformers.js)** | Xenova/all-MiniLM-L6-v2 | Good | Medium | Free |
---
Models
OpenAI
| Model | Dimensions | Best For | |-------|------------|----------| | `text-embedding-3-small` | 1536 | General use | | `text-embedding-3-large` | 3072 | High accuracy |
Voyage
| Model | Dimensions | Best For | |-------|------------|----------| | `voyage-large-2` | 1024 | General use | | `voyage-code-2` | 1536 | Code 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
Read more
name: embeddings description: "Vector embeddings configuration and semantic search" emoji: "๐งฌ"
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.0Store 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
| Provider | Models | Quality | Speed | Cost | |----------|--------|---------|-------|------| | **OpenAI** | text-embedding-3-small/large | Excellent | Fast | $0.02/1M | | **Voyage** | voyage-large-2 | Excellent | Fast | $0.02/1M | | **Cohere** | embed-english-v3 | Good | Fast | $0.10/1M | | **Local (Transformers.js)** | Xenova/all-MiniLM-L6-v2 | Good | Medium | Free |
---
Models
OpenAI
| Model | Dimensions | Best For | |-------|------------|----------| | `text-embedding-3-small` | 1536 | General use | | `text-embedding-3-large` | 3072 | High accuracy |
Voyage
| Model | Dimensions | Best For | |-------|------------|----------| | `voyage-large-2` | 1024 | General use | | `voyage-code-2` | 1536 | Code 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
Open Source AI trading agent that operates autonomously across 1000+ markets - Polymarket, Kalshi, Binance, Hyperliquid, Solana DEXs, 5 EVM chains. Scans for edge, executes instantly, manages risk while you sleep. Agent commerce protocol for machine-to-machine payments. Self-hosted. Built on Claude.
Repo: alsk1992/CloddsBot
Other skills on cloddsbot.
- /acp
Enable agent-to-agent commerce with on-chain escrow, cryptographic agreements, and service discovery.
Open skill - /agentbets
AgentBets - AI-native prediction markets on Solana
Open skill - /ai-strategy
AI Strategy - natural language to trades
Open skill - /alerts
Create and manage price alerts for prediction markets
Open skill - /analytics
Performance attribution, trade analytics, and strategy optimization
Open skill - /arbitrage
Automated cross-platform arbitrage detection and monitoring
Open skill

