From sd0x-dev-flow
Provides analysis and recommendations for Portfolio system: position queries via POST /positions, routing strategies, provider integrations in TypeScript REST API with Redis caching.
npx claudepluginhub sd0xdev/sd0x-dev-flow --plugin sd0x-dev-flowThis skill is limited to using the following tools:
- Keywords: Portfolio, portfolio, position, {PRIMARY_PROVIDER}, protocol, lending, staking, liquidity
Queries crypto portfolio balances, holdings, and valuations across Base, Polygon, Ethereum, Unichain, Solana via natural language prompts. For portfolio dashboards, balance checks, multi-chain views.
Tracks crypto portfolios across Solana, Ethereum, Base, BSC, Polygon, Hedera, and Bitcoin via EmblemAI. Provides aggregated USD balances, conditional trade P&L, and DeFi positions via Nansen for balance checks and position reviews.
Retrieves DeFi positions, holdings, and portfolio overview across chains and protocols via onchainos CLI commands, including per-protocol details when no specific DApp named.
Share bugs, ideas, or general feedback.
| Type | File | Purpose |
|---|---|---|
| Controller | src/entity/portfolio/portfolio.controller.ts | REST API |
| Router | src/service/portfolio/source-router/*.service.ts | Routing orchestration |
| Client | src/service/portfolio/providers/{provider}/*.ts | {PRIMARY_PROVIDER} integration |
| Aggregator | src/service/portfolio/aggregation/*.service.ts | Aggregation computation |
| DTO | src/dto/portfolio/position.types.ts | Position model |
Base: /onchain/v1/portfolio
| Endpoint | Method | Purpose |
|---|---|---|
/positions | POST | Get portfolio positions |
/chains | GET | Supported chains list |
/protocols | GET | Supported protocols list |
PortfolioPositionExtractor + register + configure routingProviderClient + AdapterSourceRouterredis-cli keys "portfolio:{provider}:*"
redis-cli get "portfolio:{provider}:positions:0x...:v2:..."
curl -X POST /positions -d '{"isForceRefresh": true, ...}'
references/architecture.md - System architecture + cache strategyreferences/api.md - API reference + data models| Type | Location |
|---|---|
| Unit | test/unit/service/portfolio/ |
| Integration | test/integration/portfolio/ |
Input: How to query portfolio positions?
Action: Explain POST /positions API + routing strategy
Input: How does {PRIMARY_PROVIDER} integration work?
Action: Explain {PRIMARY_PROVIDER}Client + {PRIMARY_PROVIDER}Adapter flow