activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
Crawler Summary
Agentic portfolio rebalancing: CVXPY convex optimization, CrewAI multi-agent orchestration, XGBoost/SHAP/LIME explainability, and a three-regime backtest against calendar rebalancing. Autonomous Portfolio Rebalancing Agent A multi-agent portfolio rebalancing system combining CVXPY convex optimization with CrewAI LLM orchestration and XGBoost/SHAP/LIME explainability reporting. The optimizer solves a quadratic program minimizing tracking error (w − w\_target)ᵀ Σ (w − w\_target) subject to simplex, long-only, and L1 turnover constraints, using OSQP with ECOS fallback. Three sequential CrewAI agents Capability contract not published. No trust telemetry is available yet. Last updated 10/9/2026.
Freshness
Last checked 10/9/2026
Best For
Portfolio_Rebalancing_Agent is best for crewai, multi-agent workflows where OpenClaw compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, GITHUB REPOS, runtime-metrics, public facts pack
Agentic portfolio rebalancing: CVXPY convex optimization, CrewAI multi-agent orchestration, XGBoost/SHAP/LIME explainability, and a three-regime backtest against calendar rebalancing. Autonomous Portfolio Rebalancing Agent A multi-agent portfolio rebalancing system combining CVXPY convex optimization with CrewAI LLM orchestration and XGBoost/SHAP/LIME explainability reporting. The optimizer solves a quadratic program minimizing tracking error (w − w\_target)ᵀ Σ (w − w\_target) subject to simplex, long-only, and L1 turnover constraints, using OSQP with ECOS fallback. Three sequential CrewAI agents
Public facts
4
Change events
1
Artifacts
0
Freshness
Oct 9, 2026
Capability contract not published. No trust telemetry is available yet. Last updated 10/9/2026.
Trust score
Unknown
Compatibility
OpenClaw
Freshness
Oct 9, 2026
Vendor
Satvikj01
Artifacts
0
Benchmarks
0
Last release
Unpublished
Key links, install path, and a quick operational read before the deeper crawl record.
Summary
Capability contract not published. No trust telemetry is available yet. Last updated 10/9/2026.
Setup snapshot
Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.
Vendor
Satvikj01
Protocol compatibility
OpenClaw
Handshake status
UNKNOWN
Crawlable docs
6 indexed pages on the official domain
Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.
Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.
Extracted files
0
Examples
6
Snippets
0
Languages
python
mermaid
graph TD
MD[Market Data] --> DC[Drift Calculator<br/>vectorised pandas]
CP[Client Portfolios<br/>50k × 5 risk categories] --> DC
DC --> TE[Trigger Evaluator<br/>threshold / calendar / event]
TE --> KS{Kill-Switch<br/>VIX > 40}
KS -->|Halt| HE[Human Advisor<br/>Escalation]
KS -->|Safe| CREW
subgraph CREW [CrewAI Sequential Pipeline]
A1[Portfolio Analyst] --> A2[Quant Optimizer]
A2 --> A3[Compliance Officer]
end
OPT[CVXPY Engine<br/>QP: min tracking error<br/>s.t. turnover · long-only] <--> A2
TAX[HIFO Tax-Lot Manager<br/>wash-sale blocking] <--> A2
XAI[XGBoost Surrogate<br/>SHAP + LIME] <--> A3
A3 --> OUT[Trade List +<br/>Audit Report]text
Portfolio_Rebalancing_Agent/ ├── src/ │ ├── engine/ # Drift calculation and trigger evaluation │ │ ├── drift_calculator.py # Vectorised pandas RMSD/SAD drift scoring │ │ ├── triggers.py # Threshold, calendar, and event triggers │ │ ├── threshold_manager.py # Risk-category drift bands from config │ │ └── drift_monitor.py # Batch drift monitoring service │ ├── optimiser/ # Constrained trade generation │ │ ├── portfolio_optimiser.py # CVXPY QP solver (OSQP / ECOS fallback) │ │ ├── constraint_manager.py # Turnover and liquidity limits from thresholds.yaml │ │ ├── tax_lot_manager.py # HIFO tax-lot accounting │ │ ├── tax_optimiser.py # Wash-sale blocking and tax impact calculation │ │ ├── tax_harvesting_scanner.py # Proactive tax-loss harvesting identification │ │ ├── cost_estimator.py # Brokerage + STT cost model │ │ ├── liquidity_scorer.py # ADV-based liquidity constraints │ │ └── trade_list_generator.py # Weight-to-share conversion │ ├── orchestration/ # CrewAI multi-agent pipeline │ │ ├── crew_definition.py # 3 sequential agents: Analyst, Optimizer, Compliance │ │ ├── agent_tools.py # @tool wrappers exposing engines to LLM agents │ │ ├── orchestrator.py # Top-level orchestration logic │ │ ├── pipeline_runner.py # End-to-end pipeline execution │ │ └── workflow_state.py # Pipeline state management │ ├── explainability/ # Audit and compliance reporting │ │ ├── surrogate_model.py # XGBoost classifier (rebalance / no-rebalance) │ │ ├── shap_lime_explainer.py # SHAP attributions + LIME counterfactuals │ │ ├── generators.py # Markdown report generation via LLM │ │ ├── templates.py # Report templates by audience level │ │ └── qa_checker.py
bash
git clone https://github.com/SatvikJ01/Portfolio_Rebalancing_Agent.git cd Portfolio_Rebalancing_Agent python -m venv venv && source venv/bin/activate pip install -r requirements.txt cp .env.example .env # Add your OPENAI_API_KEY to .env (required for CrewAI agent execution)
bash
python benchmark_drift.py
bash
python run_real_backtest.py
bash
pytest tests/ -v
Full documentation captured from public sources, including the complete README when available.
Docs source
GITHUB REPOS
Editorial quality
ready
Agentic portfolio rebalancing: CVXPY convex optimization, CrewAI multi-agent orchestration, XGBoost/SHAP/LIME explainability, and a three-regime backtest against calendar rebalancing. Autonomous Portfolio Rebalancing Agent A multi-agent portfolio rebalancing system combining CVXPY convex optimization with CrewAI LLM orchestration and XGBoost/SHAP/LIME explainability reporting. The optimizer solves a quadratic program minimizing tracking error (w − w\_target)ᵀ Σ (w − w\_target) subject to simplex, long-only, and L1 turnover constraints, using OSQP with ECOS fallback. Three sequential CrewAI agents
A multi-agent portfolio rebalancing system combining CVXPY convex optimization with CrewAI LLM orchestration and XGBoost/SHAP/LIME explainability reporting.
The optimizer solves a quadratic program minimizing tracking error (w − w_target)ᵀ Σ (w − w_target) subject to simplex, long-only, and L1 turnover constraints, using OSQP with ECOS fallback. Three sequential CrewAI agents handle drift analysis, constrained trade generation, and compliance reporting. A 5-tier intervention ladder with a VIX > 40 kill-switch escalates high-risk conditions to human advisors. An XGBoost surrogate model generates SHAP feature attributions and LIME counterfactuals for audit reports. HIFO tax-lot accounting and wash-sale blocking provide tax-aware trade execution.
All numbers below are reproducible by running the scripts in this repository.
Drift scoring throughput — benchmark_drift.py, seeded (rng(42)) and deterministic:
| Portfolios | Time (median of 3 runs) | Throughput | |---|---|---| | 50,000 | ~38–41 ms across multiple runs | ~1.2–1.3M portfolios/sec |
Exact timing is hardware-dependent. Run benchmark_drift.py to measure on a given machine.
Real-data backtest — run_real_backtest.py, SPY/AGG/GLD/BIL via yfinance, 15 bps transaction costs, Balanced-profile targets (50/30/12/8):
| Window | Events (Calendar → Optimizer) | Event Reduction | Turnover Reduction | Sharpe (Cal / Opt) | |---|---|---|---|---| | 2015–2019 | 19 → 5 | 73.7% | 39.0% | 1.14 / 1.13 | | 2018–2022 | 19 → 9 | 52.6% | 38.5% | 0.52 / 0.50 | | 2021–2024 | 15 → 6 | 60.0% | 13.0% | 0.79 / 0.81 |
Rebalancing events reduced 53–74% across all three windows at comparable risk-adjusted returns. Turnover reduction of up to 39% (39.0% and 38.5% in two of three windows; 13.0% in the third). The 2021–2024 window shows weaker turnover improvement because the 2022 drawdown followed by a narrow equity rally produced fewer opportunities for the drift-triggered optimizer to improve on calendar rebalancing.
graph TD
MD[Market Data] --> DC[Drift Calculator<br/>vectorised pandas]
CP[Client Portfolios<br/>50k × 5 risk categories] --> DC
DC --> TE[Trigger Evaluator<br/>threshold / calendar / event]
TE --> KS{Kill-Switch<br/>VIX > 40}
KS -->|Halt| HE[Human Advisor<br/>Escalation]
KS -->|Safe| CREW
subgraph CREW [CrewAI Sequential Pipeline]
A1[Portfolio Analyst] --> A2[Quant Optimizer]
A2 --> A3[Compliance Officer]
end
OPT[CVXPY Engine<br/>QP: min tracking error<br/>s.t. turnover · long-only] <--> A2
TAX[HIFO Tax-Lot Manager<br/>wash-sale blocking] <--> A2
XAI[XGBoost Surrogate<br/>SHAP + LIME] <--> A3
A3 --> OUT[Trade List +<br/>Audit Report]
Portfolio_Rebalancing_Agent/
├── src/
│ ├── engine/ # Drift calculation and trigger evaluation
│ │ ├── drift_calculator.py # Vectorised pandas RMSD/SAD drift scoring
│ │ ├── triggers.py # Threshold, calendar, and event triggers
│ │ ├── threshold_manager.py # Risk-category drift bands from config
│ │ └── drift_monitor.py # Batch drift monitoring service
│ ├── optimiser/ # Constrained trade generation
│ │ ├── portfolio_optimiser.py # CVXPY QP solver (OSQP / ECOS fallback)
│ │ ├── constraint_manager.py # Turnover and liquidity limits from thresholds.yaml
│ │ ├── tax_lot_manager.py # HIFO tax-lot accounting
│ │ ├── tax_optimiser.py # Wash-sale blocking and tax impact calculation
│ │ ├── tax_harvesting_scanner.py # Proactive tax-loss harvesting identification
│ │ ├── cost_estimator.py # Brokerage + STT cost model
│ │ ├── liquidity_scorer.py # ADV-based liquidity constraints
│ │ └── trade_list_generator.py # Weight-to-share conversion
│ ├── orchestration/ # CrewAI multi-agent pipeline
│ │ ├── crew_definition.py # 3 sequential agents: Analyst, Optimizer, Compliance
│ │ ├── agent_tools.py # @tool wrappers exposing engines to LLM agents
│ │ ├── orchestrator.py # Top-level orchestration logic
│ │ ├── pipeline_runner.py # End-to-end pipeline execution
│ │ └── workflow_state.py # Pipeline state management
│ ├── explainability/ # Audit and compliance reporting
│ │ ├── surrogate_model.py # XGBoost classifier (rebalance / no-rebalance)
│ │ ├── shap_lime_explainer.py # SHAP attributions + LIME counterfactuals
│ │ ├── generators.py # Markdown report generation via LLM
│ │ ├── templates.py # Report templates by audience level
│ │ └── qa_checker.py # Numerical consistency validation
│ ├── human_in_loop/ # Intervention and kill-switch logic
│ │ ├── intervention_classifier.py # 5-tier ladder + VIX kill-switch
│ │ └── override_capture.py # Advisor override logging with audit trail
│ ├── compliance/ # Regulatory audit modules
│ │ ├── compliance_auditor.py # Automated quarterly audit sampling
│ │ └── regulatory_reporter.py # SEBI-compliant report generation
│ ├── dashboard/ # Streamlit UI (5 views)
│ │ ├── app.py # Portfolio Overview, Activity, Analytics, Explainability, Health
│ │ └── mock_data_generator.py # Demonstration data for the dashboard
│ ├── backtesting/ # Strategy comparison framework
│ │ ├── backtest_engine.py # Historical replay engine
│ │ ├── strategy_comparator.py # Multi-strategy comparison runner
│ │ └── performance_analyser.py # Sharpe, drawdown, turnover metrics
│ ├── simulation/ # Market scenario simulation
│ │ └── scenario_runner.py # Extreme-scenario stress tests
│ └── data/ # Data models and generators
│ ├── models.py # Pydantic: Portfolio, TaxLot, ClientProfile, etc.
│ └── portfolio_generator.py # Synthetic portfolio generation (50k portfolios)
├── config/
│ ├── thresholds.yaml # Turnover, cost, tax, and liquidity parameters
│ ├── risk_categories.yaml # 5 risk profiles with target allocations and drift bands
│ └── default.yaml # Logging and simulation settings
├── tests/ # Pytest suite covering all modules
├── reports/
│ └── backtests/ # Backtest output reports
├── benchmark_drift.py # Reproducible drift throughput benchmark
├── run_real_backtest.py # Three-window real-data backtest (yfinance)
├── generate_report.py # Report generation entry point
├── requirements.txt
├── .env.example # Placeholder keys only
└── .github/workflows/ci.yml # CI workflow (pytest + scenario runner)
git clone https://github.com/SatvikJ01/Portfolio_Rebalancing_Agent.git
cd Portfolio_Rebalancing_Agent
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
# Add your OPENAI_API_KEY to .env (required for CrewAI agent execution)
python benchmark_drift.py
Scores 50,000 portfolios across 5 risk categories. Output reports median time and throughput. The RNG seed is fixed at 42 for deterministic portfolio generation.
python run_real_backtest.py
Downloads SPY/AGG/GLD/BIL daily close prices from yfinance and runs buy-and-hold, calendar (quarterly), and CVXPY-optimizer strategies across three windows: 2015–2019, 2018–2022, and 2021–2024. Requires an internet connection for the initial data download.
pytest tests/ -v
streamlit run src/dashboard/app.py
The dashboard displays 5 views: Portfolio Overview (drift heatmap), Rebalancing Activity, Performance Analytics, Explainability Centre, and System Health. It uses mock data generators for demonstration.
The optimizer (src/optimiser/portfolio_optimiser.py) solves a quadratic program using CVXPY:
Objective — minimize tracking error:
min (w - w_target)ᵀ Σ (w - w_target)
where w is the decision variable (new portfolio weights), w_target is the strategic target allocation, and Σ is the asset return covariance matrix.
Constraints:
| Constraint | Formulation | Source |
|---|---|---|
| Fully invested (simplex) | sum(w) = 1.0 | Hard constraint |
| Long-only | w >= 0 | Hard constraint |
| Turnover limit | 0.5 * \|\|w - w_current\|\|₁ <= 0.20 | config/thresholds.yaml → constraints.max_turnover |
| Liquidity (optional) | \|w_i - w_current_i\| <= max_weight_change_i | ADV-based bounds from ConstraintManager |
The 20% turnover constraint caps one-way portfolio turnover: at most 20% of portfolio value can change sides in a single rebalancing event.
Solver strategy: OSQP (first-order QP solver, fast for moderate-size problems) with automatic fallback to ECOS if OSQP fails to converge. Post-solve, weights are clipped to non-negative and renormalized.
Design rationale (ADR 2): CVXPY provides mathematically guaranteed optimal solutions for convex problems. Heuristic or gradient-descent approaches cannot guarantee constraint satisfaction, which is critical for a system that must enforce regulatory turnover limits.
</details> <details> <summary>Agent Pipeline (CrewAI)</summary>The system uses three sequential CrewAI agents (src/orchestration/crew_definition.py), each with a narrow scope and dedicated tools:
| Agent | Role | Tool | Scope |
|---|---|---|---|
| Portfolio Analyst | Evaluate drift and determine if rebalancing is needed | calculate_drift_tool | Read-only: outputs "Proceed" or "Stop" |
| Quantitative Optimizer | Generate constraint-satisfying trade list | generate_optimized_trades_tool | Calls CVXPY engine; cannot execute trades |
| Compliance Officer | Produce audit-ready explanation report | generate_explanations_tool | Calls XGBoost/SHAP/LIME engine |
Why three agents instead of one: Each agent receives a strict prompt scoped to a single task. If the Optimizer agent produces an infeasible trade suggestion, the CVXPY tool returns an error rather than executing a bad trade — the agent must retry with corrected inputs. This architecture converts LLM hallucination from a silent failure mode into an explicit, recoverable error.
Sequential processing (Process.sequential): The output of each agent becomes input to the next. There is no parallel execution or dynamic delegation — the pipeline is deterministic in structure, even though individual agent responses are non-deterministic.
Design rationale (ADR 1): CrewAI was chosen over raw LangChain prompt chaining because it natively supports role-based agent definitions and sequential task handoff with less boilerplate. The LLM model is configurable via the llm_model parameter in RebalancingCrew (default: gpt-4o-mini).
The explainability pipeline (src/explainability/) provides regulator-grade decision audit reports:
XGBoost surrogate model (surrogate_model.py): A gradient-boosted classifier that predicts rebalance/no-rebalance decisions from five features:
drift_magnitude_pct — current portfolio driftvix_level — market volatility indexdays_since_last_rebalance — time since last rebalancing eventclient_risk_score — client risk category (1–5)sector_concentration_pct — maximum sector weightThe surrogate is currently trained on synthetic data generated via a logistic function that approximates the agent's triggering logic. This enables SHAP/LIME analysis without requiring a large corpus of actual agent decisions.
SHAP (shap_lime_explainer.py): Tree SHAP values computed via shap.TreeExplainer provide global feature importance — the exact additive contribution of each feature to a given decision. Waterfall plots are saved to reports/plots/.
LIME (shap_lime_explainer.py): Local Interpretable Model-agnostic Explanations generate counterfactual statements for individual decisions (e.g., "If drift magnitude had been below 3.2% instead of 4.7%, the agent would not have triggered a rebalance").
Design rationale (ADR 3): The SHAP/LIME hybrid provides both structural global importance (required for aggregate audit) and local counterfactuals (required for individual decision justification). This combination addresses both SEC/SEBI regulatory audit requirements: "why does this system behave this way in general" and "why did it make this specific trade."
</details> <details> <summary>Backtest Methodology</summary>The real-data backtest (run_real_backtest.py) compares three strategies on historical ETF prices:
Strategies:
| Strategy | Rebalance trigger | Trade target | |---|---|---| | Buy-and-hold | Never | — | | Calendar | Every 63 trading days (~quarterly) | Reset to target weights | | CVXPY optimizer | When max single-asset drift exceeds 3% band | CVXPY-optimized weights using 60-day trailing covariance |
Parameters:
| Parameter | Value | Source |
|---|---|---|
| Tickers | SPY, AGG, GLD, BIL | Mapped to Equity, Fixed Income, Alternatives, Cash |
| Target allocation | 50/30/12/8 | Balanced profile from config/risk_categories.yaml |
| Drift band | 3% | Balanced profile drift band |
| Transaction cost | 15 bps flat | config/thresholds.yaml: brokerage (5 bps) + STT (10 bps) |
| Covariance lookback | 60 trading days | Annualized (×252) sample covariance |
| Calendar interval | 63 trading days | ~1 calendar quarter |
Three-window design: The backtest runs across three overlapping windows — 2015–2019 (steady bull market), 2018–2022 (includes COVID crash and recovery), and 2021–2024 (rate-hiking cycle and 2022 drawdown). The multi-window design tests whether findings hold across different market regimes rather than reflecting a single favorable period.
Cost model limitation: The 15 bps flat cost does not include market impact. The config/thresholds.yaml file defines a market_impact_coefficient used by src/optimiser/cost_estimator.py, but the backtest script uses the flat cost for simplicity and reproducibility.
The tax module (src/optimiser/tax_lot_manager.py, src/optimiser/tax_optimiser.py) provides HIFO lot selection and wash-sale blocking:
HIFO (Highest In, First Out): When selling shares, lots are sorted by cost basis in descending order. Selling the highest-cost lots first minimizes realized capital gains (or maximizes realized losses for tax-loss harvesting).
Wash-sale blocking: The TaxOptimiser tracks realized losses per (portfolio, ticker, date). If a loss was realized within the past 30 days (configurable via config/thresholds.yaml → tax_and_liquidity.wash_sale_window_days), a repurchase of the same security is blocked to avoid IRS wash-sale disallowance.
Tax impact calculation: Distinguishes short-term gains (held < 365 days, taxed at 30%) from long-term gains (held >= 365 days, taxed at 15%). These rates and thresholds are configurable in config/thresholds.yaml.
Integration: The TaxLotManager is available as a tool to the Quant Optimizer agent and can be invoked during trade generation to select tax-optimal lots for each sell order.
The human-in-the-loop module (src/human_in_loop/intervention_classifier.py) implements a 5-tier intervention ladder:
| Level | Meaning | |---|---| | INFORMATIONAL | No action required; logged for audit | | ADVISORY | Advisor is notified but trade proceeds | | APPROVAL_REQUIRED | Trade is held pending advisor approval | | ESCALATION | Briefing document generated for human review | | HALT | All autonomous trading suspended |
Kill-switch: If VIX exceeds 40.0 (configurable via max_vix parameter, also set in .env.example as VIX_KILL_SWITCH_THRESHOLD), the check_kill_switch method returns True, halting all autonomous rebalancing. A secondary trigger halts on system error rate exceeding 1%.
Trade-level classification: The classify_decision method assigns an intervention tier based on proposed turnover as a fraction of portfolio value. Turnover above max_turnover_pct (default 10%) requires approval; turnover above half that threshold triggers an advisory.
market_impact_coefficient is defined in config/thresholds.yaml and used by src/optimiser/cost_estimator.py.src/orchestration/agent_tools.py) use a hardcoded PORTFOLIO_DB dictionary for demonstration. Connecting to a live portfolio database requires replacing this data source.Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
curl -s "https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/snapshot"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/contract"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/trust"
Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.
Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
The Frontend for Agents & Generative UI. React + Angular
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/snapshot",
"contractUrl": "https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/contract",
"trustUrl": "https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/trust"
},
"curlExamples": [
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/snapshot\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/contract\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"OPENCLEW"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_REPOS",
"generatedAt": "2026-10-09T16:15:08.244Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [
{
"key": "OPENCLEW",
"type": "protocol",
"support": "unknown",
"confidenceSource": "profile",
"notes": "Listed on profile"
},
{
"key": "crewai",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "multi-agent",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
}
],
"flattenedTokens": "protocol:OPENCLEW|unknown|profile capability:crewai|supported|profile capability:multi-agent|supported|profile"
}Facts JSON
[
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Satvikj01",
"href": "https://github.com/SatvikJ01/Portfolio_Rebalancing_Agent",
"sourceUrl": "https://github.com/SatvikJ01/Portfolio_Rebalancing_Agent",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-09T12:48:05.455Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-09T12:48:05.455Z",
"isPublic": true
},
{
"factKey": "docs_crawl",
"category": "integration",
"label": "Crawlable docs",
"value": "6 indexed pages on the official domain",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-satvikj01-portfolio-rebalancing-agent/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
]Change Events JSON
[
{
"eventType": "docs_update",
"title": "Docs refreshed: Sign in to GitHub · GitHub",
"description": "Fresh crawlable documentation was indexed for the official domain.",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
}
]Sponsored
Ads related to Portfolio_Rebalancing_Agent and adjacent AI workflows.