@lagoon-protocol/lagoon-mcp 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +618 -0
- package/dist/cache/index.d.ts +97 -0
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/index.js +106 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/config.d.ts +34 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +40 -0
- package/dist/config.js.map +1 -0
- package/dist/core/cache-adapter.d.ts +73 -0
- package/dist/core/cache-adapter.d.ts.map +1 -0
- package/dist/core/cache-adapter.js +47 -0
- package/dist/core/cache-adapter.js.map +1 -0
- package/dist/core/cache-invalidation.d.ts +72 -0
- package/dist/core/cache-invalidation.d.ts.map +1 -0
- package/dist/core/cache-invalidation.js +114 -0
- package/dist/core/cache-invalidation.js.map +1 -0
- package/dist/core/container.d.ts +34 -0
- package/dist/core/container.d.ts.map +1 -0
- package/dist/core/container.js +75 -0
- package/dist/core/container.js.map +1 -0
- package/dist/graphql/client.d.ts +32 -0
- package/dist/graphql/client.d.ts.map +1 -0
- package/dist/graphql/client.js +49 -0
- package/dist/graphql/client.js.map +1 -0
- package/dist/graphql/fragments/apr-breakdown.fragment.d.ts +64 -0
- package/dist/graphql/fragments/apr-breakdown.fragment.d.ts.map +1 -0
- package/dist/graphql/fragments/apr-breakdown.fragment.js +62 -0
- package/dist/graphql/fragments/apr-breakdown.fragment.js.map +1 -0
- package/dist/graphql/fragments/asset-info.fragment.d.ts +18 -0
- package/dist/graphql/fragments/asset-info.fragment.d.ts.map +1 -0
- package/dist/graphql/fragments/asset-info.fragment.js +36 -0
- package/dist/graphql/fragments/asset-info.fragment.js.map +1 -0
- package/dist/graphql/fragments/chain-info.fragment.d.ts +18 -0
- package/dist/graphql/fragments/chain-info.fragment.d.ts.map +1 -0
- package/dist/graphql/fragments/chain-info.fragment.js +32 -0
- package/dist/graphql/fragments/chain-info.fragment.js.map +1 -0
- package/dist/graphql/fragments/index.d.ts +15 -0
- package/dist/graphql/fragments/index.d.ts.map +1 -0
- package/dist/graphql/fragments/index.js +21 -0
- package/dist/graphql/fragments/index.js.map +1 -0
- package/dist/graphql/fragments/pageinfo.fragment.d.ts +33 -0
- package/dist/graphql/fragments/pageinfo.fragment.d.ts.map +1 -0
- package/dist/graphql/fragments/pageinfo.fragment.js +47 -0
- package/dist/graphql/fragments/pageinfo.fragment.js.map +1 -0
- package/dist/graphql/fragments/transaction-base.fragment.d.ts +19 -0
- package/dist/graphql/fragments/transaction-base.fragment.d.ts.map +1 -0
- package/dist/graphql/fragments/transaction-base.fragment.js +32 -0
- package/dist/graphql/fragments/transaction-base.fragment.js.map +1 -0
- package/dist/graphql/fragments/vault-list.fragment.d.ts +53 -0
- package/dist/graphql/fragments/vault-list.fragment.d.ts.map +1 -0
- package/dist/graphql/fragments/vault-list.fragment.js +51 -0
- package/dist/graphql/fragments/vault-list.fragment.js.map +1 -0
- package/dist/graphql/fragments/vault-summary.fragment.d.ts +68 -0
- package/dist/graphql/fragments/vault-summary.fragment.d.ts.map +1 -0
- package/dist/graphql/fragments/vault-summary.fragment.js +66 -0
- package/dist/graphql/fragments/vault-summary.fragment.js.map +1 -0
- package/dist/graphql/fragments/vault.fragment.d.ts +133 -0
- package/dist/graphql/fragments/vault.fragment.d.ts.map +1 -0
- package/dist/graphql/fragments/vault.fragment.js +119 -0
- package/dist/graphql/fragments/vault.fragment.js.map +1 -0
- package/dist/graphql/fragments.d.ts +183 -0
- package/dist/graphql/fragments.d.ts.map +1 -0
- package/dist/graphql/fragments.js +297 -0
- package/dist/graphql/fragments.js.map +1 -0
- package/dist/graphql/queries/export.queries.d.ts +72 -0
- package/dist/graphql/queries/export.queries.d.ts.map +1 -0
- package/dist/graphql/queries/export.queries.js +202 -0
- package/dist/graphql/queries/export.queries.js.map +1 -0
- package/dist/graphql/queries/index.d.ts +15 -0
- package/dist/graphql/queries/index.d.ts.map +1 -0
- package/dist/graphql/queries/index.js +23 -0
- package/dist/graphql/queries/index.js.map +1 -0
- package/dist/graphql/queries/performance.queries.d.ts +63 -0
- package/dist/graphql/queries/performance.queries.d.ts.map +1 -0
- package/dist/graphql/queries/performance.queries.js +133 -0
- package/dist/graphql/queries/performance.queries.js.map +1 -0
- package/dist/graphql/queries/period-summaries.d.ts +15 -0
- package/dist/graphql/queries/period-summaries.d.ts.map +1 -0
- package/dist/graphql/queries/period-summaries.js +24 -0
- package/dist/graphql/queries/period-summaries.js.map +1 -0
- package/dist/graphql/queries/portfolio.queries.d.ts +78 -0
- package/dist/graphql/queries/portfolio.queries.d.ts.map +1 -0
- package/dist/graphql/queries/portfolio.queries.js +198 -0
- package/dist/graphql/queries/portfolio.queries.js.map +1 -0
- package/dist/graphql/queries/prediction.queries.d.ts +38 -0
- package/dist/graphql/queries/prediction.queries.d.ts.map +1 -0
- package/dist/graphql/queries/prediction.queries.js +100 -0
- package/dist/graphql/queries/prediction.queries.js.map +1 -0
- package/dist/graphql/queries/risk.queries.d.ts +37 -0
- package/dist/graphql/queries/risk.queries.d.ts.map +1 -0
- package/dist/graphql/queries/risk.queries.js +90 -0
- package/dist/graphql/queries/risk.queries.js.map +1 -0
- package/dist/graphql/queries/search.queries.d.ts +61 -0
- package/dist/graphql/queries/search.queries.d.ts.map +1 -0
- package/dist/graphql/queries/search.queries.js +103 -0
- package/dist/graphql/queries/search.queries.js.map +1 -0
- package/dist/graphql/queries/transaction.queries.d.ts +60 -0
- package/dist/graphql/queries/transaction.queries.d.ts.map +1 -0
- package/dist/graphql/queries/transaction.queries.js +252 -0
- package/dist/graphql/queries/transaction.queries.js.map +1 -0
- package/dist/graphql/queries/vault.queries.d.ts +54 -0
- package/dist/graphql/queries/vault.queries.d.ts.map +1 -0
- package/dist/graphql/queries/vault.queries.js +78 -0
- package/dist/graphql/queries/vault.queries.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/competitor-comparison.d.ts +8 -0
- package/dist/prompts/competitor-comparison.d.ts.map +1 -0
- package/dist/prompts/competitor-comparison.js +432 -0
- package/dist/prompts/competitor-comparison.js.map +1 -0
- package/dist/prompts/curator-performance.d.ts +8 -0
- package/dist/prompts/curator-performance.d.ts.map +1 -0
- package/dist/prompts/curator-performance.js +383 -0
- package/dist/prompts/curator-performance.js.map +1 -0
- package/dist/prompts/financial-analysis.d.ts +8 -0
- package/dist/prompts/financial-analysis.d.ts.map +1 -0
- package/dist/prompts/financial-analysis.js +480 -0
- package/dist/prompts/financial-analysis.js.map +1 -0
- package/dist/prompts/index.d.ts +21 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +50 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/onboarding-first-vault.d.ts +8 -0
- package/dist/prompts/onboarding-first-vault.d.ts.map +1 -0
- package/dist/prompts/onboarding-first-vault.js +317 -0
- package/dist/prompts/onboarding-first-vault.js.map +1 -0
- package/dist/prompts/portfolio-optimization.d.ts +8 -0
- package/dist/prompts/portfolio-optimization.d.ts.map +1 -0
- package/dist/prompts/portfolio-optimization.js +412 -0
- package/dist/prompts/portfolio-optimization.js.map +1 -0
- package/dist/prompts/protocol-overview.d.ts +8 -0
- package/dist/prompts/protocol-overview.d.ts.map +1 -0
- package/dist/prompts/protocol-overview.js +398 -0
- package/dist/prompts/protocol-overview.js.map +1 -0
- package/dist/prompts/shared/disclaimers.d.ts +54 -0
- package/dist/prompts/shared/disclaimers.d.ts.map +1 -0
- package/dist/prompts/shared/disclaimers.js +400 -0
- package/dist/prompts/shared/disclaimers.js.map +1 -0
- package/dist/resources/glossary.d.ts +8 -0
- package/dist/resources/glossary.d.ts.map +1 -0
- package/dist/resources/glossary.js +407 -0
- package/dist/resources/glossary.js.map +1 -0
- package/dist/resources/index.d.ts +18 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +29 -0
- package/dist/resources/index.js.map +1 -0
- package/dist/resources/schema.d.ts +22 -0
- package/dist/resources/schema.d.ts.map +1 -0
- package/dist/resources/schema.js +67 -0
- package/dist/resources/schema.js.map +1 -0
- package/dist/schemas/config.schema.d.ts +46 -0
- package/dist/schemas/config.schema.d.ts.map +1 -0
- package/dist/schemas/config.schema.js +48 -0
- package/dist/schemas/config.schema.js.map +1 -0
- package/dist/sdk/__tests__/apr-service.test.d.ts +7 -0
- package/dist/sdk/__tests__/apr-service.test.d.ts.map +1 -0
- package/dist/sdk/__tests__/apr-service.test.js +385 -0
- package/dist/sdk/__tests__/apr-service.test.js.map +1 -0
- package/dist/sdk/__tests__/math-utils.test.d.ts +7 -0
- package/dist/sdk/__tests__/math-utils.test.d.ts.map +1 -0
- package/dist/sdk/__tests__/math-utils.test.js +185 -0
- package/dist/sdk/__tests__/math-utils.test.js.map +1 -0
- package/dist/sdk/__tests__/simulation-service.test.d.ts +5 -0
- package/dist/sdk/__tests__/simulation-service.test.d.ts.map +1 -0
- package/dist/sdk/__tests__/simulation-service.test.js +397 -0
- package/dist/sdk/__tests__/simulation-service.test.js.map +1 -0
- package/dist/sdk/__tests__/vault-utils.test.d.ts +7 -0
- package/dist/sdk/__tests__/vault-utils.test.d.ts.map +1 -0
- package/dist/sdk/__tests__/vault-utils.test.js +189 -0
- package/dist/sdk/__tests__/vault-utils.test.js.map +1 -0
- package/dist/sdk/apr-service.d.ts +101 -0
- package/dist/sdk/apr-service.d.ts.map +1 -0
- package/dist/sdk/apr-service.js +175 -0
- package/dist/sdk/apr-service.js.map +1 -0
- package/dist/sdk/math-utils.d.ts +138 -0
- package/dist/sdk/math-utils.d.ts.map +1 -0
- package/dist/sdk/math-utils.js +218 -0
- package/dist/sdk/math-utils.js.map +1 -0
- package/dist/sdk/simulation-service.d.ts +106 -0
- package/dist/sdk/simulation-service.d.ts.map +1 -0
- package/dist/sdk/simulation-service.js +143 -0
- package/dist/sdk/simulation-service.js.map +1 -0
- package/dist/sdk/vault-utils.d.ts +125 -0
- package/dist/sdk/vault-utils.d.ts.map +1 -0
- package/dist/sdk/vault-utils.js +165 -0
- package/dist/sdk/vault-utils.js.map +1 -0
- package/dist/server.d.ts +21 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +225 -0
- package/dist/server.js.map +1 -0
- package/dist/services/analytics/protocol-overview.service.d.ts +61 -0
- package/dist/services/analytics/protocol-overview.service.d.ts.map +1 -0
- package/dist/services/analytics/protocol-overview.service.js +182 -0
- package/dist/services/analytics/protocol-overview.service.js.map +1 -0
- package/dist/services/analytics/risk.service.d.ts +92 -0
- package/dist/services/analytics/risk.service.d.ts.map +1 -0
- package/dist/services/analytics/risk.service.js +423 -0
- package/dist/services/analytics/risk.service.js.map +1 -0
- package/dist/services/base.service.d.ts +39 -0
- package/dist/services/base.service.d.ts.map +1 -0
- package/dist/services/base.service.js +37 -0
- package/dist/services/base.service.js.map +1 -0
- package/dist/services/index.d.ts +30 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +101 -0
- package/dist/services/index.js.map +1 -0
- package/dist/tools/__tests__/simulate-vault.test.d.ts +5 -0
- package/dist/tools/__tests__/simulate-vault.test.d.ts.map +1 -0
- package/dist/tools/__tests__/simulate-vault.test.js +363 -0
- package/dist/tools/__tests__/simulate-vault.test.js.map +1 -0
- package/dist/tools/analyze-risk.d.ts +34 -0
- package/dist/tools/analyze-risk.d.ts.map +1 -0
- package/dist/tools/analyze-risk.js +100 -0
- package/dist/tools/analyze-risk.js.map +1 -0
- package/dist/tools/compare-vaults.d.ts +29 -0
- package/dist/tools/compare-vaults.d.ts.map +1 -0
- package/dist/tools/compare-vaults.js +285 -0
- package/dist/tools/compare-vaults.js.map +1 -0
- package/dist/tools/export-data.d.ts +34 -0
- package/dist/tools/export-data.d.ts.map +1 -0
- package/dist/tools/export-data.js +309 -0
- package/dist/tools/export-data.js.map +1 -0
- package/dist/tools/get-price-history.d.ts +29 -0
- package/dist/tools/get-price-history.d.ts.map +1 -0
- package/dist/tools/get-price-history.js +236 -0
- package/dist/tools/get-price-history.js.map +1 -0
- package/dist/tools/get-transactions.d.ts +29 -0
- package/dist/tools/get-transactions.d.ts.map +1 -0
- package/dist/tools/get-transactions.js +181 -0
- package/dist/tools/get-transactions.js.map +1 -0
- package/dist/tools/index.d.ts +26 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +32 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/optimize-portfolio.d.ts +37 -0
- package/dist/tools/optimize-portfolio.d.ts.map +1 -0
- package/dist/tools/optimize-portfolio.js +459 -0
- package/dist/tools/optimize-portfolio.js.map +1 -0
- package/dist/tools/predict-yield.d.ts +30 -0
- package/dist/tools/predict-yield.d.ts.map +1 -0
- package/dist/tools/predict-yield.js +248 -0
- package/dist/tools/predict-yield.js.map +1 -0
- package/dist/tools/query-graphql.d.ts +35 -0
- package/dist/tools/query-graphql.d.ts.map +1 -0
- package/dist/tools/query-graphql.js +54 -0
- package/dist/tools/query-graphql.js.map +1 -0
- package/dist/tools/registry.d.ts +42 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js +231 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/tools/search-vaults.d.ts +40 -0
- package/dist/tools/search-vaults.d.ts.map +1 -0
- package/dist/tools/search-vaults.js +184 -0
- package/dist/tools/search-vaults.js.map +1 -0
- package/dist/tools/simulate-vault.d.ts +80 -0
- package/dist/tools/simulate-vault.d.ts.map +1 -0
- package/dist/tools/simulate-vault.js +281 -0
- package/dist/tools/simulate-vault.js.map +1 -0
- package/dist/tools/user-portfolio.d.ts +30 -0
- package/dist/tools/user-portfolio.d.ts.map +1 -0
- package/dist/tools/user-portfolio.js +142 -0
- package/dist/tools/user-portfolio.js.map +1 -0
- package/dist/tools/vault-data.d.ts +23 -0
- package/dist/tools/vault-data.d.ts.map +1 -0
- package/dist/tools/vault-data.js +68 -0
- package/dist/tools/vault-data.js.map +1 -0
- package/dist/tools/vault-performance.d.ts +30 -0
- package/dist/tools/vault-performance.d.ts.map +1 -0
- package/dist/tools/vault-performance.js +275 -0
- package/dist/tools/vault-performance.js.map +1 -0
- package/dist/types/generated.d.ts +1109 -0
- package/dist/types/generated.d.ts.map +1 -0
- package/dist/types/generated.js +2 -0
- package/dist/types/generated.js.map +1 -0
- package/dist/types/index.d.ts +46 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +8 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/comparison-metrics.d.ts +120 -0
- package/dist/utils/comparison-metrics.d.ts.map +1 -0
- package/dist/utils/comparison-metrics.js +215 -0
- package/dist/utils/comparison-metrics.js.map +1 -0
- package/dist/utils/config-loader.d.ts +17 -0
- package/dist/utils/config-loader.d.ts.map +1 -0
- package/dist/utils/config-loader.js +45 -0
- package/dist/utils/config-loader.js.map +1 -0
- package/dist/utils/csv-generator.d.ts +89 -0
- package/dist/utils/csv-generator.d.ts.map +1 -0
- package/dist/utils/csv-generator.js +97 -0
- package/dist/utils/csv-generator.js.map +1 -0
- package/dist/utils/disclaimers.d.ts +70 -0
- package/dist/utils/disclaimers.d.ts.map +1 -0
- package/dist/utils/disclaimers.js +161 -0
- package/dist/utils/disclaimers.js.map +1 -0
- package/dist/utils/errors.d.ts +66 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +86 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/execute-tool-with-cache.d.ts +97 -0
- package/dist/utils/execute-tool-with-cache.d.ts.map +1 -0
- package/dist/utils/execute-tool-with-cache.js +105 -0
- package/dist/utils/execute-tool-with-cache.js.map +1 -0
- package/dist/utils/portfolio-optimization.d.ts +100 -0
- package/dist/utils/portfolio-optimization.d.ts.map +1 -0
- package/dist/utils/portfolio-optimization.js +283 -0
- package/dist/utils/portfolio-optimization.js.map +1 -0
- package/dist/utils/risk-scoring.d.ts +226 -0
- package/dist/utils/risk-scoring.d.ts.map +1 -0
- package/dist/utils/risk-scoring.js +523 -0
- package/dist/utils/risk-scoring.js.map +1 -0
- package/dist/utils/tool-error-handler.d.ts +16 -0
- package/dist/utils/tool-error-handler.d.ts.map +1 -0
- package/dist/utils/tool-error-handler.js +43 -0
- package/dist/utils/tool-error-handler.js.map +1 -0
- package/dist/utils/tool-handler.d.ts +33 -0
- package/dist/utils/tool-handler.d.ts.map +1 -0
- package/dist/utils/tool-handler.js +59 -0
- package/dist/utils/tool-handler.js.map +1 -0
- package/dist/utils/tool-response.d.ts +16 -0
- package/dist/utils/tool-response.d.ts.map +1 -0
- package/dist/utils/tool-response.js +25 -0
- package/dist/utils/tool-response.js.map +1 -0
- package/dist/utils/validators.d.ts +359 -0
- package/dist/utils/validators.d.ts.map +1 -0
- package/dist/utils/validators.js +233 -0
- package/dist/utils/validators.js.map +1 -0
- package/dist/utils/yield-prediction.d.ts +69 -0
- package/dist/utils/yield-prediction.d.ts.map +1 -0
- package/dist/utils/yield-prediction.js +290 -0
- package/dist/utils/yield-prediction.js.map +1 -0
- package/package.json +83 -0
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Onboarding Guide - First Vault Selection Prompt
|
|
3
|
+
*
|
|
4
|
+
* Structured guidance for new users making their first vault deposit with
|
|
5
|
+
* confidence-building and risk-appropriate selection.
|
|
6
|
+
*/
|
|
7
|
+
import { UNIVERSAL_DISCLAIMER, DEFI_SPECIFIC_RISKS, BEGINNER_WARNINGS, DATA_DISCLAIMER, } from './shared/disclaimers.js';
|
|
8
|
+
export function getOnboardingFirstVaultPrompt() {
|
|
9
|
+
return `# Onboarding Guide: Your First Vault Selection
|
|
10
|
+
|
|
11
|
+
${UNIVERSAL_DISCLAIMER}
|
|
12
|
+
|
|
13
|
+
${DEFI_SPECIFIC_RISKS}
|
|
14
|
+
|
|
15
|
+
${BEGINNER_WARNINGS}
|
|
16
|
+
|
|
17
|
+
${DATA_DISCLAIMER}
|
|
18
|
+
|
|
19
|
+
## Your Role
|
|
20
|
+
You are a friendly, knowledgeable DeFi advisor helping new users select their first vault.
|
|
21
|
+
Your goal is to build confidence while ensuring risk-appropriate choices through systematic
|
|
22
|
+
guidance and education.
|
|
23
|
+
|
|
24
|
+
## User Profile Assessment
|
|
25
|
+
|
|
26
|
+
### Quick Assessment Questions (Ask First)
|
|
27
|
+
1. **Risk Tolerance**: "How would you describe your investment approach?"
|
|
28
|
+
- Conservative (capital preservation priority)
|
|
29
|
+
- Moderate (balanced growth)
|
|
30
|
+
- Aggressive (maximum returns, accept volatility)
|
|
31
|
+
|
|
32
|
+
2. **Timeline**: "How long do you plan to keep funds in the vault?"
|
|
33
|
+
- Short-term (1-3 months)
|
|
34
|
+
- Medium-term (3-6 months)
|
|
35
|
+
- Long-term (6+ months)
|
|
36
|
+
|
|
37
|
+
3. **Amount**: "What's your intended deposit amount?"
|
|
38
|
+
- Starter ($500-$2,500)
|
|
39
|
+
- Moderate ($2,500-$10,000)
|
|
40
|
+
- Substantial ($10,000+)
|
|
41
|
+
|
|
42
|
+
4. **Goal**: "What's most important to you?"
|
|
43
|
+
- Safety and predictability
|
|
44
|
+
- Balanced risk and return
|
|
45
|
+
- Learning DeFi with small amount
|
|
46
|
+
- Maximizing yield potential
|
|
47
|
+
|
|
48
|
+
### Profile Mapping
|
|
49
|
+
|
|
50
|
+
**Conservative Profile**:
|
|
51
|
+
- Target APR: 5-12%
|
|
52
|
+
- Vault criteria: TVL >$5M, risk_score <30, established curators
|
|
53
|
+
- Strategy: Pure lending, stablecoin focus
|
|
54
|
+
|
|
55
|
+
**Moderate Profile**:
|
|
56
|
+
- Target APR: 10-20%
|
|
57
|
+
- Vault criteria: TVL >$1M, risk_score 30-60, proven track record
|
|
58
|
+
- Strategy: Leveraged lending, blue chip assets
|
|
59
|
+
|
|
60
|
+
**Aggressive Profile**:
|
|
61
|
+
- Target APR: 20%+
|
|
62
|
+
- Vault criteria: TVL >$500K, risk_score 60-100, innovative strategies
|
|
63
|
+
- Strategy: High leverage, newer opportunities
|
|
64
|
+
|
|
65
|
+
## 5-Step Selection Process
|
|
66
|
+
|
|
67
|
+
### Step 1: Initial Discovery (Tool: search_vaults)
|
|
68
|
+
|
|
69
|
+
**Search Parameters by Profile**:
|
|
70
|
+
\`\`\`typescript
|
|
71
|
+
// Conservative
|
|
72
|
+
{
|
|
73
|
+
strategy_types: ["lend"],
|
|
74
|
+
min_tvl: 5_000_000,
|
|
75
|
+
min_apr: 0.05,
|
|
76
|
+
max_apr: 0.15,
|
|
77
|
+
limit: 5
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
// Moderate
|
|
81
|
+
{
|
|
82
|
+
strategy_types: ["lend", "leverage"],
|
|
83
|
+
min_tvl: 1_000_000,
|
|
84
|
+
min_apr: 0.10,
|
|
85
|
+
max_apr: 0.25,
|
|
86
|
+
limit: 5
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// Aggressive
|
|
90
|
+
{
|
|
91
|
+
strategy_types: ["leverage", "derivatives"],
|
|
92
|
+
min_tvl: 500_000,
|
|
93
|
+
min_apr: 0.20,
|
|
94
|
+
limit: 5
|
|
95
|
+
}
|
|
96
|
+
\`\`\`
|
|
97
|
+
|
|
98
|
+
**Present Results**:
|
|
99
|
+
| Vault Name | APR | TVL | Strategy | Risk | Quick Summary |
|
|
100
|
+
|------------|-----|-----|----------|------|---------------|
|
|
101
|
+
| ... | ... | ... | ... | ... | ... |
|
|
102
|
+
|
|
103
|
+
Ask user to select 2-3 for deeper analysis.
|
|
104
|
+
|
|
105
|
+
### Step 2: Risk Deep Dive (Tool: analyze_risk)
|
|
106
|
+
|
|
107
|
+
For each shortlisted vault, present:
|
|
108
|
+
|
|
109
|
+
\`\`\`
|
|
110
|
+
Vault: [Name]
|
|
111
|
+
Overall Risk Score: [X]/100 - [Category]
|
|
112
|
+
|
|
113
|
+
Factor Breakdown:
|
|
114
|
+
├─ Smart Contract Risk: [X]/100 - [Explanation]
|
|
115
|
+
├─ Market Risk: [X]/100 - [Explanation]
|
|
116
|
+
├─ Liquidity Risk: [X]/100 - [Explanation]
|
|
117
|
+
├─ Curator Risk: [X]/100 - [Explanation]
|
|
118
|
+
└─ Strategy Complexity: [X]/100 - [Explanation]
|
|
119
|
+
|
|
120
|
+
🚦 Signal: [GREEN / YELLOW / RED]
|
|
121
|
+
\`\`\`
|
|
122
|
+
|
|
123
|
+
**Signal Interpretation**:
|
|
124
|
+
- **GREEN** (score <40): Suitable for profile, proceed with confidence
|
|
125
|
+
- **YELLOW** (40-60): Acceptable with awareness, review specific risks
|
|
126
|
+
- **RED** (>60): Risk mismatch, consider alternatives or reduce amount
|
|
127
|
+
|
|
128
|
+
### Step 3: Performance Validation (Tool: vault_performance)
|
|
129
|
+
|
|
130
|
+
**Present Key Metrics**:
|
|
131
|
+
\`\`\`
|
|
132
|
+
30-Day Performance Review
|
|
133
|
+
|
|
134
|
+
APR Trend:
|
|
135
|
+
├─ Current: [X]%
|
|
136
|
+
├─ 30d Average: [X]%
|
|
137
|
+
├─ Volatility (CV): [X] - [Interpretation]
|
|
138
|
+
└─ Trend: [Stable / Increasing / Decreasing]
|
|
139
|
+
|
|
140
|
+
Consistency Score: [X]/10
|
|
141
|
+
Peer Comparison: [Above / In-line / Below] average
|
|
142
|
+
\`\`\`
|
|
143
|
+
|
|
144
|
+
### Step 4: Curator Credibility (Tools: query_graphql + search_vaults)
|
|
145
|
+
|
|
146
|
+
\`\`\`
|
|
147
|
+
Curator: [Name]
|
|
148
|
+
|
|
149
|
+
Experience:
|
|
150
|
+
├─ Active Since: [Date] ([X] months)
|
|
151
|
+
├─ Total Vaults: [X]
|
|
152
|
+
├─ Total AUM: $[X]M
|
|
153
|
+
└─ Performance Rank: Top [X]% of curators
|
|
154
|
+
|
|
155
|
+
Trust Indicators:
|
|
156
|
+
✅ [List positive signals]
|
|
157
|
+
⚠️ [List any concerns]
|
|
158
|
+
|
|
159
|
+
Confidence Level: [HIGH / MEDIUM / LOW]
|
|
160
|
+
\`\`\`
|
|
161
|
+
|
|
162
|
+
### Step 5: Final Projection (Tool: simulate_vault)
|
|
163
|
+
|
|
164
|
+
\`\`\`
|
|
165
|
+
Investment Projection: $[Amount] for [X] days
|
|
166
|
+
|
|
167
|
+
Scenario Analysis:
|
|
168
|
+
├─ Best Case: $[Amount] (+[X]% / [Y]% APR)
|
|
169
|
+
├─ Expected: $[Amount] (+[X]% / [Y]% APR)
|
|
170
|
+
└─ Worst Case: $[Amount] (+[X]% / [Y]% APR)
|
|
171
|
+
|
|
172
|
+
Risk Level: [Assessment]
|
|
173
|
+
Confidence: [HIGH / MEDIUM / LOW]
|
|
174
|
+
|
|
175
|
+
💰 Expected Return: $[X] ([X]%)
|
|
176
|
+
\`\`\`
|
|
177
|
+
|
|
178
|
+
## Decision Framework
|
|
179
|
+
|
|
180
|
+
**Scoring System** (for each shortlisted vault):
|
|
181
|
+
- Risk alignment with profile: ___/10
|
|
182
|
+
- Curator trust: ___/10
|
|
183
|
+
- Performance consistency: ___/10
|
|
184
|
+
- Liquidity comfort: ___/10
|
|
185
|
+
|
|
186
|
+
**Total**: ___/40
|
|
187
|
+
|
|
188
|
+
**Decision Rule**:
|
|
189
|
+
- Score 32+: Strong candidate, proceed with confidence
|
|
190
|
+
- Score 24-31: Acceptable, review any low-scoring areas
|
|
191
|
+
- Score <24: Reconsider or reduce deposit amount
|
|
192
|
+
|
|
193
|
+
## Common Beginner Mistakes to Avoid
|
|
194
|
+
|
|
195
|
+
1. ❌ Chasing highest APR without risk assessment
|
|
196
|
+
2. ❌ Depositing entire portfolio in one vault
|
|
197
|
+
3. ❌ Ignoring liquidity needs (lock-up periods)
|
|
198
|
+
4. ❌ Skipping curator research
|
|
199
|
+
5. ❌ Setting unrealistic return expectations
|
|
200
|
+
|
|
201
|
+
## Best Practices Checklist
|
|
202
|
+
|
|
203
|
+
- ✅ Start with 10-20% of intended total allocation
|
|
204
|
+
- ✅ Choose vault with 30+ day track record
|
|
205
|
+
- ✅ Verify curator has managed >$1M TVL
|
|
206
|
+
- ✅ Ensure liquidity for your timeline
|
|
207
|
+
- ✅ Set calendar reminder to review in 30 days
|
|
208
|
+
|
|
209
|
+
## Communication Guidelines
|
|
210
|
+
|
|
211
|
+
### Tone
|
|
212
|
+
- **Encouraging**: Build confidence, not fear
|
|
213
|
+
- **Educational**: Explain "why" behind recommendations
|
|
214
|
+
- **Practical**: Focus on actionable next steps
|
|
215
|
+
- **Honest**: Don't oversell or hide risks
|
|
216
|
+
|
|
217
|
+
### Key Phrases (Educational Framing Only)
|
|
218
|
+
- "This vault's characteristics match your [profile] parameters because..."
|
|
219
|
+
- "While the APR is attractive, let's analyze the risk factors..."
|
|
220
|
+
- "For educational purposes, consider starting with [X]% of your intended amount to test the workflow..."
|
|
221
|
+
- "Here are key metrics to monitor in your first 30 days..."
|
|
222
|
+
|
|
223
|
+
### Language Standards
|
|
224
|
+
**NEVER use**:
|
|
225
|
+
- "I recommend you invest..."
|
|
226
|
+
- "You should buy/deposit..."
|
|
227
|
+
- "This is a good investment..."
|
|
228
|
+
- "Best choice for you..."
|
|
229
|
+
|
|
230
|
+
**ALWAYS use**:
|
|
231
|
+
- "Historical data shows..."
|
|
232
|
+
- "For educational purposes, consider..."
|
|
233
|
+
- "This vault's characteristics include..."
|
|
234
|
+
- "One approach is..."
|
|
235
|
+
|
|
236
|
+
### Red Flags to Highlight
|
|
237
|
+
|
|
238
|
+
🚨 **Immediately Disqualify**:
|
|
239
|
+
- Unverified or anonymous curator
|
|
240
|
+
- TVL < $100K (insufficient liquidity)
|
|
241
|
+
- Recent security incident or exploit
|
|
242
|
+
- APR >50% without clear yield source
|
|
243
|
+
|
|
244
|
+
⚠️ **Proceed with Caution**:
|
|
245
|
+
- Curator active <90 days (new, unproven)
|
|
246
|
+
- TVL declining >30% in 30 days
|
|
247
|
+
- High APR volatility (CV >0.30)
|
|
248
|
+
- Complex strategy without clear documentation
|
|
249
|
+
|
|
250
|
+
## Post-Selection Guidance
|
|
251
|
+
|
|
252
|
+
### Immediate Next Steps
|
|
253
|
+
1. Bookmark vault for easy access
|
|
254
|
+
2. Set calendar reminder to review in 30 days
|
|
255
|
+
3. Document reasoning for decision
|
|
256
|
+
4. Start with 10-20% of intended amount to test
|
|
257
|
+
|
|
258
|
+
### Monitoring Schedule
|
|
259
|
+
- **Week 1**: Check APR stability, verify deposit confirmed
|
|
260
|
+
- **Week 2**: Review curator updates, check TVL trend
|
|
261
|
+
- **Week 4**: Full performance review, rebalancing decision
|
|
262
|
+
|
|
263
|
+
### Exit Signals
|
|
264
|
+
- Risk score increases >20 points
|
|
265
|
+
- APR drops below user's minimum threshold
|
|
266
|
+
- TVL declines >50%
|
|
267
|
+
- Curator reputation issues emerge
|
|
268
|
+
|
|
269
|
+
## Tool Integration Workflow
|
|
270
|
+
|
|
271
|
+
1. Profile Assessment → Determine search criteria
|
|
272
|
+
2. search_vaults → Initial discovery (5 candidates)
|
|
273
|
+
3. analyze_risk → Risk assessment (2-3 selected)
|
|
274
|
+
4. get_vault_performance → Historical validation
|
|
275
|
+
5. Query curator info → Use query_graphql to fetch curator details, then search_vaults for their vault portfolio
|
|
276
|
+
6. simulate_vault → Forward projection
|
|
277
|
+
7. Decision Support → Scoring and recommendation
|
|
278
|
+
|
|
279
|
+
**Curator Analysis Approach**:
|
|
280
|
+
|
|
281
|
+
# First, get curator info
|
|
282
|
+
query {
|
|
283
|
+
curators {
|
|
284
|
+
items {
|
|
285
|
+
id
|
|
286
|
+
name
|
|
287
|
+
logoUrl
|
|
288
|
+
url
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
Then use search_vaults(curator="curator_id") to aggregate:
|
|
294
|
+
- Total vaults managed
|
|
295
|
+
- Total AUM across vaults
|
|
296
|
+
- Average vault performance
|
|
297
|
+
- Experience (oldest vault creation date)
|
|
298
|
+
|
|
299
|
+
---
|
|
300
|
+
|
|
301
|
+
## Reference Documentation
|
|
302
|
+
|
|
303
|
+
**Complete guide**: [/docs/prompts/onboarding-first-vault.md](../../docs/prompts/onboarding-first-vault.md)
|
|
304
|
+
|
|
305
|
+
**Tool documentation**:
|
|
306
|
+
- [search_vaults](../../docs/tools/search-vaults.md) - For vault discovery and curator filtering
|
|
307
|
+
- [analyze_risk](../../docs/tools/analyze-risk.md) - For risk assessment
|
|
308
|
+
- [get_vault_performance](../../docs/tools/get-vault-performance.md) - For historical validation
|
|
309
|
+
- [query_graphql](../../docs/tools/query-graphql.md) - For curator information
|
|
310
|
+
- [simulate_vault](../../docs/tools/simulate-vault.md) - For projections
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
*This prompt is part of the Lagoon MCP onboarding system*
|
|
315
|
+
`;
|
|
316
|
+
}
|
|
317
|
+
//# sourceMappingURL=onboarding-first-vault.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onboarding-first-vault.js","sourceRoot":"","sources":["../../src/prompts/onboarding-first-vault.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,GAChB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,UAAU,6BAA6B;IAC3C,OAAO;;EAEP,oBAAoB;;EAEpB,mBAAmB;;EAEnB,iBAAiB;;EAEjB,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0ShB,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Portfolio Optimization Engine Prompt
|
|
3
|
+
*
|
|
4
|
+
* AI-powered portfolio optimization based on modern portfolio theory
|
|
5
|
+
* for maximizing risk-adjusted returns.
|
|
6
|
+
*/
|
|
7
|
+
export declare function getPortfolioOptimizationPrompt(): string;
|
|
8
|
+
//# sourceMappingURL=portfolio-optimization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portfolio-optimization.d.ts","sourceRoot":"","sources":["../../src/prompts/portfolio-optimization.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,wBAAgB,8BAA8B,IAAI,MAAM,CAmZvD"}
|