Agents Knowledge Store
Interfaces
Interfaces
KnowledgeMetadata
Metadata for a knowledge item
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
createdAt | string | Yes | When this knowledge was created |
updatedAt | string | Yes | When this knowledge was last updated |
source | string | Yes | Who or what created this knowledge |
priority | KnowledgePriority | Yes | Priority level |
confidence | number | Yes | Confidence level (0.0-1.0) |
tags | string[] | Yes | Tags for categorization |
relatedTasks | string[] | undefined | No | Related task IDs |
relatedProjects | string[] | undefined | No | Related project IDs |
accessCount | number | undefined | No | Number of times this knowledge was accessed |
lastAccessedAt | string | undefined | No | Last time this knowledge was accessed |
KnowledgeItem
A single knowledge item stored in Redis
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
id | string | Yes | Unique identifier |
type | KnowledgeType | Yes | Type of knowledge |
namespace | string | Yes | Namespace for organization (e.g., project-123) |
title | string | Yes | Title or brief summary |
content | string | Yes | Full content of the knowledge item |
metadata | KnowledgeMetadata | Yes | Metadata about the knowledge |
embedding | number[] | undefined | No | Optional: Vector embedding for semantic search |
ttl | number | undefined | No | Optional: TTL in seconds (time-to-live) |
SearchFilter
Search filter options
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
type | KnowledgeType | KnowledgeType[] | undefined | No | Filter by knowledge type |
namespace | string | undefined | No | Filter by namespace |
tags | string[] | undefined | No | Filter by tags (any match) |
priority | KnowledgePriority | KnowledgePriority[] | undefined | No | Filter by priority |
minConfidence | number | undefined | No | Filter by minimum confidence |
relatedTasks | string[] | undefined | No | Filter by related task IDs |
relatedProjects | string[] | undefined | No | Filter by related project IDs |
createdAfter | string | undefined | No | Filter by creation date range |
createdBefore | string | undefined | No | |
updatedAfter | string | undefined | No | Filter by update date range |
updatedBefore | string | undefined | No |
SearchOptions
Search options for querying knowledge
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
query | string | undefined | No | Text query for content search |
filter | SearchFilter | undefined | No | Filters to apply |
limit | number | undefined | No | Maximum number of results |
offset | number | undefined | No | Offset for pagination |
sortBy | "createdAt" | "updatedAt" | "priority" | "confidence" | "accessCount" | undefined | No | Sort field |
sortOrder | "asc" | "desc" | undefined | No | Sort order |
includeEmbedding | boolean | undefined | No | Include embedding vectors in results |
SemanticSearchOptions
Semantic search options
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
embedding | number[] | Yes | Query embedding vector |
threshold | number | undefined | No | Similarity threshold (0.0-1.0) |
metric | "cosine" | "euclidean" | "dot_product" | undefined | No | Distance metric |
SearchResult
Search result with similarity score
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
item | T | Yes | The knowledge item |
score | number | undefined | No | Similarity score (0.0-1.0, higher is better) |
rank | number | undefined | No | Rank in search results (1-based) |
SearchResults
Paginated search results
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
results | SearchResult<T>[] | Yes | Results for this page |
total | number | Yes | Total number of results matching query |
offset | number | Yes | Current page offset |
limit | number | Yes | Page size limit |
hasMore | boolean | Yes | Whether there are more results |
RedisConfig
Redis connection configuration
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
host | string | undefined | No | Redis host |
port | number | undefined | No | Redis port |
password | string | undefined | No | Redis password |
db | number | undefined | No | Redis database number |
keyPrefix | string | undefined | No | Redis key prefix for all keys |
connectTimeout | number | undefined | No | Connection timeout in ms |
tls | boolean | undefined | No | Enable TLS/SSL |
EmbeddingConfig
Embedding provider configuration
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
provider | string | undefined | No | Embedding provider (e.g., 'openai', 'anthropic', 'custom') |
apiKey | string | undefined | No | API key for embedding provider |
model | string | undefined | No | Model name for embeddings |
dimension | number | undefined | No | Embedding dimension |
embedFn | ((text: string) => Promise<number[]>) | undefined | No | Custom embedding function |
KnowledgeStoreConfig
Knowledge store client configuration
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
redis | RedisConfig | Yes | Redis configuration |
embedding | EmbeddingConfig | undefined | No | Optional embedding configuration |
defaultNamespace | string | undefined | No | Default namespace |
debug | boolean | undefined | No | Enable debug logging |
defaultTTL | number | undefined | No | Default TTL for knowledge items (in seconds) |
trackAccess | boolean | undefined | No | Auto-increment access count on retrieval |
OperationResult
Result of a knowledge operation
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
success | boolean | Yes | Whether the operation succeeded |
data | T | undefined | No | Result data if successful |
error | string | undefined | No | Error message if failed |
metadata | { [key: string]: any; duration?: number; affected?: number; keys?: string[]; } | undefined | No | Additional metadata about the operation |
BatchOperationResult
Batch operation result
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
success | boolean | Yes | Whether all operations succeeded |
succeeded | OperationResult<T>[] | Yes | Successful results |
failed | OperationResult<T>[] | Yes | Failed results |
total | number | Yes | Total number of operations |
successCount | number | Yes | Number of successful operations |
failureCount | number | Yes | Number of failed operations |
KnowledgeStats
Statistics about knowledge store usage
Properties:
| Property | Type | Required | Description |
|---|---|---|---|
totalItems | number | Yes | Total number of knowledge items |
byType | Record<KnowledgeType, number> | Yes | Items by type |
byNamespace | Record<string, number> | Yes | Items by namespace |
byPriority | Record<KnowledgePriority, number> | Yes | Items by priority |
avgConfidence | number | Yes | Average confidence score |
topAccessed | { id: string; accessCount: number; }[] | undefined | No | Most accessed items |
recentlyCreated | string[] | undefined | No | Recently created items |
recentlyUpdated | string[] | undefined | No | Recently updated items |
storageSize | number | undefined | No | Total storage size in bytes |