Vault Digests
NewUpdated
Vault digests are AI-generated narratives that analyze DeFi vaults — covering performance, allocations, TVL, risks, and APY trends. Each digest is a structured summary you can display directly in your application.
In this guide you'll learn how to:
- List all available vault digests
- Retrieve a specific vault's analysis
- Display digest sections in your app
List Available Vaults
Start by fetching the list of vaults that have AI-generated digests.
import { Chaos } from '@chaoslabs/ai-sdk';
const chaos = new Chaos({ apiKey: process.env.CHAOS_API_KEY! });
const { data: vaults } = await chaos.vaults.list(20);
for (const v of vaults) {
const name = v.vault.vault_name ?? v.vault.vault_address ?? 'Unknown';
const apy = v.current_apy_pct != null ? `${v.current_apy_pct.toFixed(1)}%` : 'N/A';
console.log(`${name} — APY: ${apy} (${v.apy_trend ?? 'unknown'})`);
}Copy code
Open in Cursor
Open in VS Code
Open in v0
Open in Claude
Open in ChatGPT
Read a Vault Digest
Fetch the full narrative for a specific vault. You can look up by name or on-chain address.
const { data: digest } = await chaos.vaults.digest({ vault_name: 'Morpho WETH' });
if (!digest) {
console.log('No digest available for this vault');
} else {
console.log('=== Opening ===');
console.log(digest.opening_summary);
console.log('\n=== Performance ===');
console.log(digest.performance_summary);
console.log('\n=== Allocations ===');
console.log(digest.allocations_summary);
console.log('\n=== Risks ===');
console.log(digest.risks_summary);
console.log(`\nOverall: ${digest.overall_assessment}`);
console.log(`Generated: ${digest.generation_timestamp}`);
}Copy code
Open in Cursor
Open in VS Code
Open in v0
Open in Claude
Open in ChatGPT
Display Structured Blocks
Digests include a blocks array with structured data (charts, tables, metrics) that you can render in your UI.
if (digest) {
for (const block of digest.blocks) {
console.log(`Block type: ${(block as any).type ?? 'unknown'}`);
// Render each block based on its type
}
if (digest.sources?.length) {
console.log('\nSources:');
for (const src of digest.sources) {
console.log(` - ${src}`);
}
}
}Copy code
Open in Cursor
Open in VS Code
Open in v0
Open in Claude
Open in ChatGPT
Was this helpful?