npx skills add smithery/neversight --skill tavus-cvi-knowledge
tavus-engineering/tavus-skills
tavus-cvi-knowledge
Add knowledge bases and persistent memories to Tavus CVI personas. Use when uploading documents for RAG, enabling personas to reference PDFs/websites, persisting context across conversations, or building personas that remember users.
Installation
npx skills add tavus-engineering/tavus-skills --skill tavus-cvi-knowledge
Similar popular skills
Related neighbors and high-traction skills in the same topics — useful to compare before installing.
Build a knowledge base from web content with Firecrawl. Use for local reference docs, RAG-ready…
31.4K installsIngest public or authenticated knowledge bases and docs portals with Firecrawl browser. Use for…
31.1K installsCombines search results from multiple sources into coherent, deduplicated answers with source a…
6K installsCapture conversations and decisions into structured Notion pages; use when turning chats/notes …
2.8K installsUse this skill when the user explicitly asks to map, document, or onboard into an existing code…
1.8K installsAlso in this package
Other skills from tavus-engineering/tavus-skills.
npx skills add tavus-engineering/tavus-skills
More details
Agent compatibility
Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.
Also listed on
Alternate registries and mirrors of this skill.
Repository health
main
Package contents
Files included with this skill beyond the listing page.
-
skill md
SKILL.md5,234 B -
docs
SUMMARY.md260 B
History
- First seen on skills.sh
- First recorded snapshot · 53 installs
SKILL.md
Tavus CVI Knowledge Base & Memories
Give your personas access to documents and persistent memory.
Knowledge Base (RAG)
Upload documents that personas can reference during conversations.
Step 1: Create Document
curl -X POST https://tavusapi.com/v2/documents \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"document_name": "Product FAQ",
"document_url": "https://example.com/faq.pdf",
"tags": ["support", "faq"]
}'
Response:
{
"document_id": "d1234567890",
"status": "processing"
}
Supported Sources
- PDFs: Direct URL to PDF file
- Text files: Plain text documents
- Websites: Single page or crawled
Website Crawling
Single page (default):
{
"document_name": "Landing Page",
"document_url": "https://example.com/features"
}
Multi-page crawl:
{
"document_name": "Full Docs",
"document_url": "https://docs.example.com",
"crawl_pages": true
}
Step 2: Use in Conversation
By document IDs:
{
"persona_id": "p123",
"replica_id": "r456",
"document_ids": ["d1234567890", "d0987654321"]
}
By tags:
{
"persona_id": "p123",
"replica_id": "r456",
"document_tags": ["support", "faq"]
}
Attach to Persona (Always Available)
Documents available in ALL conversations with this persona:
curl -X POST https://tavusapi.com/v2/personas \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"persona_name": "Support Agent",
"pipeline_mode": "full",
"system_prompt": "You are a helpful support agent...",
"document_ids": ["d1234567890"],
"document_tags": ["support"]
}'
Retrieval Strategy
Optimize search speed vs quality:
{
"persona_id": "p123",
"document_ids": ["d123"],
"retrieval_strategy": "balanced"
}
Options:
speed- Fastest, good for simple lookupsquality- Best results, slowerbalanced- Default, good tradeoff
Manage Documents
# List documents
curl https://tavusapi.com/v2/documents \
-H "x-api-key: YOUR_API_KEY"
# Get document status
curl https://tavusapi.com/v2/documents/{document_id} \
-H "x-api-key: YOUR_API_KEY"
# Delete document
curl -X DELETE https://tavusapi.com/v2/documents/{document_id} \
-H "x-api-key: YOUR_API_KEY"
Memories (Persistent Context)
Remember information across conversations with the same user.
How It Works
- Assign a
memory_storekey to a conversation - Persona forms memories during conversation
- Future conversations with same key access those memories
Create Conversation with Memory
{
"persona_id": "p123",
"replica_id": "r456",
"memory_stores": ["user_alice_persona_sales"]
}
Memory Store Naming
Use consistent, unique identifiers:
user{userid}persona{persona_id}- Per user, per personauser{userid}- Per user across personassession{sessionid}- Per session
Important: Don't use persona names in keys (they might change).
Example: Returning User
First conversation:
{
"persona_id": "p_coach",
"memory_stores": ["user_alice_coaching"]
}
User mentions: "I'm training for a marathon in April."
Second conversation (days later):
{
"persona_id": "p_coach",
"memory_stores": ["user_alice_coaching"]
}
Persona remembers the marathon goal and can reference it.
Multiple Memory Stores
Share memories across contexts:
{
"persona_id": "p123",
"memory_stores": [
"user_alice_global",
"user_alice_sales_specific"
]
}
Use Case: Multi-Persona Memory
User talks to Sales persona, then Support persona:
// Sales conversation
{
"persona_id": "p_sales",
"memory_stores": ["user_alice"]
}
// Support conversation (later)
{
"persona_id": "p_support",
"memory_stores": ["user_alice"]
}
Support persona knows what Sales discussed.
Combining Knowledge + Memories
Full-featured support agent:
# Create persona with knowledge base
curl -X POST https://tavusapi.com/v2/personas \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"persona_name": "Premium Support",
"pipeline_mode": "full",
"system_prompt": "You are a premium support agent. Reference the knowledge base for product info. Remember user preferences and past issues.",
"document_tags": ["support", "product-docs"],
"default_replica_id": "rfe12d8b9597"
}'
# Start conversation with user memory
curl -X POST https://tavusapi.com/v2/conversations \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"persona_id": "p_premium_support",
"memory_stores": ["user_12345_support"],
"document_ids": ["d_urgent_issue_docs"]
}'
Now the persona can:
- Look up product info from documents
- Remember this user's past issues
- Build on previous conversations