Rank
65
LangChain/LangGraph tools for AI agent x402 payments on X1
Traction
No public download signal
Freshness
Updated 4mo ago
Xpersona Agent
Multi agent financial analysis system using CrewAI, FastAPI, and GPT-4o-mini. Features technical analysis and adversarial risk auditing. ποΈ Multi-Agent Financial Intelligence Committee (NSE/BSE) $1 $1 $1 $1 An autonomous investment-research assistant for Indian (NSE/BSE) stocks. A crew of three specialized AI agents performs technical and news-driven analysis, a Chief Risk Officer agent audits their findings, and the result is scored by an automated evaluation layer and traced in Langfuse. A Streamlit dashboard presents live prices, fundamentals, an
git clone https://github.com/merchantkevin/agentic-finance-explorer.gitOverall rank
#37
Adoption
No public adoption signal
Trust
Unknown
Freshness
May 31, 2026
Freshness
Last checked May 31, 2026
Best For
agentic-finance-explorer 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 OPENCLEW, runtime-metrics, public facts pack
Key links, install path, reliability highlights, and the shortest practical read before diving into the crawl record.
Overview
Multi agent financial analysis system using CrewAI, FastAPI, and GPT-4o-mini. Features technical analysis and adversarial risk auditing. ποΈ Multi-Agent Financial Intelligence Committee (NSE/BSE) $1 $1 $1 $1 An autonomous investment-research assistant for Indian (NSE/BSE) stocks. A crew of three specialized AI agents performs technical and news-driven analysis, a Chief Risk Officer agent audits their findings, and the result is scored by an automated evaluation layer and traced in Langfuse. A Streamlit dashboard presents live prices, fundamentals, an Capability contract not published. No trust telemetry is available yet. Last updated 5/31/2026.
Trust score
Unknown
Compatibility
OpenClaw
Freshness
May 31, 2026
Vendor
Merchantkevin
Artifacts
0
Benchmarks
0
Last release
Unpublished
Install & run
git clone https://github.com/merchantkevin/agentic-finance-explorer.gitSetup 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.
Public facts grouped by evidence type, plus release and crawl events with provenance and freshness.
Public facts
Vendor
Merchantkevin
Protocol compatibility
OpenClaw
Handshake status
UNKNOWN
Events
Parameters, dependencies, examples, extracted files, editorial overview, and the complete README when available.
Captured outputs
Extracted files
0
Examples
4
Snippets
0
Languages
python
bash
git clone https://github.com/merchantkevin/agentic-finance-explorer.git cd agentic-finance-explorer uv sync
bash
# Required OPENAI_API_KEY=sk-... SERPER_API_KEY=... # Optional β Langfuse observability (tracing/scoring still runs without keys but won't be persisted) LANGFUSE_PUBLIC_KEY=pk-lf-... LANGFUSE_SECRET_KEY=sk-lf-... LANGFUSE_HOST=https://cloud.langfuse.com # Optional β restrict CORS to your frontend (comma-separated) ALLOWED_ORIGINS=http://localhost:8501
bash
uv run uvicorn app:app --reload --port 8000
bash
uv run streamlit run frontend.py
Editorial read
Docs source
GITHUB OPENCLEW
Editorial quality
ready
Multi agent financial analysis system using CrewAI, FastAPI, and GPT-4o-mini. Features technical analysis and adversarial risk auditing. ποΈ Multi-Agent Financial Intelligence Committee (NSE/BSE) $1 $1 $1 $1 An autonomous investment-research assistant for Indian (NSE/BSE) stocks. A crew of three specialized AI agents performs technical and news-driven analysis, a Chief Risk Officer agent audits their findings, and the result is scored by an automated evaluation layer and traced in Langfuse. A Streamlit dashboard presents live prices, fundamentals, an
An autonomous investment-research assistant for Indian (NSE/BSE) stocks. A crew of three specialized AI agents performs technical and news-driven analysis, a Chief Risk Officer agent audits their findings, and the result is scored by an automated evaluation layer and traced in Langfuse. A Streamlit dashboard presents live prices, fundamentals, an interactive chart, and the committee's verdict.
π Live Dashboard | π API Documentation
The system uses a decoupled pattern that separates the reasoning engine from the presentation layer:
app.py): A FastAPI server that orchestrates the CrewAI agents in a background task, caches results in SQLite, exposes fundamentals, and traces every run in Langfuse.main.py): Three CrewAI agents wired with deterministic and search tools, producing a Pydantic-validated JSON report.evaluator.py): A rule-based consistency check plus an LLM-as-judge that scores each report; scores are pushed to Langfuse.frontend.py): A Streamlit dashboard with a multi-source live-price engine, fundamentals snapshot, and interactive Plotly chart.tools.py): A CrewAI tool that computes RSI and the 20-day moving average from yfinance data.POSTs a ticker to /analyze./status/{job_id} (up to 25 times, every 5s).Defined in main.py, all running on openai/gpt-4o-mini (temperature 0):
stock_price_analyzer tool (tools.py) to fetch price, RSI(14), and MA20 from yfinance + pandas_ta. Deterministic, not LLM guesswork.SerperDevTool (Serper Google-search API) to gather recent news and sentiment. (Its prompt directs it toward Moneycontrol / Economic Times / LiveMint, but search is performed via Serper, not direct scraping.)The final report conforms to the FinancialAnalysisOutput Pydantic schema:
| Field | Type | Meaning |
| :--- | :--- | :--- |
| ticker | str | Ticker analyzed |
| technical_signal | str | Bullish / Bearish / Neutral |
| sentiment_score | float | 1.0 (extreme fear) β 10.0 (extreme greed) |
| key_catalysts | list[str] | 3 bullets of upside drivers |
| risk_summary | list[str] | 3 bullets of critical risks |
After each analysis (evaluator.py), two evaluators score the report and the results are attached to the Langfuse trace:
technical_signal and sentiment_score agree (e.g. a Bullish call should have a score > 5.5). No LLM, no cost.gpt-4o-mini): Scores risk_specificity (1β5), catalyst_specificity (1β5), and overall_quality (1β10), penalizing generic boilerplate. Falls back to neutral scores on failure so it never blocks the user's result.| Method | Path | Description |
| :--- | :--- | :--- |
| GET | / | Health check ({"status": "AI Agents Online", "version": "2.0"}) |
| GET | /fundamentals/{ticker} | Market cap, P/E, 52w high/low, EPS, book value, dividend yield, ROCE, ROE, D/E β derived in 3 layers from yfinance fast_info, get_info(), and financial statements, with NSEβBSE fallback |
| POST | /analyze | Body {"ticker": "..."}. Returns cached result or {"job_id", "status": "started"} |
| GET | /status/{job_id} | Poll job status: pending / completed / failed / not_found |
get_current_price): Tries Groww's live-price API first, then scrapes Google Finance, then falls back to yfinance history. Auto-routes NSE vs BSE based on the ticker suffix./fundamentals endpoint (cached 30 min) into a collapsible panel.| Layer | Technology |
| :--- | :--- |
| Agent Framework | CrewAI + crewai-tools (SerperDevTool) |
| LLM | GPT-4o-mini (OpenAI), used by both the crew and the judge |
| Backend | FastAPI + Uvicorn |
| Frontend | Streamlit + Plotly |
| Data | yfinance, pandas, pandas-ta, BeautifulSoup |
| Validation | Pydantic |
| Observability | Langfuse |
| Persistence | SQLite (market_data.db) |
| Cloud | Render (API), Streamlit Cloud (UI) |
json_dict, the backend builds a fallback report instead of crashing (app.py).BackgroundTasks run the long (~45s+) agentic loop without blocking the request.ALLOWED_ORIGINS env var (default: the Streamlit app URL), limited to GET/POST and the Content-Type header. To allow another frontend, set ALLOWED_ORIGINS to a comma-separated list.uv)git clone https://github.com/merchantkevin/agentic-finance-explorer.git
cd agentic-finance-explorer
uv sync
Create a .env file in the project root:
# Required
OPENAI_API_KEY=sk-...
SERPER_API_KEY=...
# Optional β Langfuse observability (tracing/scoring still runs without keys but won't be persisted)
LANGFUSE_PUBLIC_KEY=pk-lf-...
LANGFUSE_SECRET_KEY=sk-lf-...
LANGFUSE_HOST=https://cloud.langfuse.com
# Optional β restrict CORS to your frontend (comma-separated)
ALLOWED_ORIGINS=http://localhost:8501
uv run uvicorn app:app --reload --port 8000
API docs are then available at http://localhost:8000/docs.
uv run streamlit run frontend.py
Note:
frontend.pycurrently points itsbackend_urlat the hosted Render API (https://agentic-finance-explorer.onrender.com). To use your local backend, update those URLs infrontend.py.
render.yml (uvicorn app:app). It declares OPENAI_API_KEY and SERPER_API_KEY; add the Langfuse keys in the Render dashboard if you want tracing in production. The build command expects a requirements.txt β generate one with uv export --no-hashes -o requirements.txt (the repo ships pyproject.toml / uv.lock).frontend.py.Disclaimer: This application uses Large Language Models to synthesize public financial data for informational purposes only. It is not financial advice.
Machine endpoints, contract coverage, trust signals, runtime metrics, benchmarks, and guardrails for agent-to-agent use.
Machine interfaces
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-merchantkevin-agentic-finance-explorer/snapshot"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-merchantkevin-agentic-finance-explorer/contract"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-merchantkevin-agentic-finance-explorer/trust"
Operational fit
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
Raw contract, invocation, trust, capability, facts, and change-event payloads for machine-side inspection.
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-merchantkevin-agentic-finance-explorer/snapshot",
"contractUrl": "https://www.xpersona.co/api/v1/agents/crewai-merchantkevin-agentic-finance-explorer/contract",
"trustUrl": "https://www.xpersona.co/api/v1/agents/crewai-merchantkevin-agentic-finance-explorer/trust"
},
"curlExamples": [
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-merchantkevin-agentic-finance-explorer/snapshot\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-merchantkevin-agentic-finance-explorer/contract\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-merchantkevin-agentic-finance-explorer/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"OPENCLEW"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_OPENCLEW",
"generatedAt": "2026-10-08T22:21:03.519Z"
}
},
"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",
"label": "Vendor",
"value": "Merchantkevin",
"category": "vendor",
"href": "https://github.com/merchantkevin/agentic-finance-explorer",
"sourceUrl": "https://github.com/merchantkevin/agentic-finance-explorer",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-05-23T06:54:10.925Z",
"isPublic": true,
"metadata": {}
},
{
"factKey": "protocols",
"label": "Protocol compatibility",
"value": "OpenClaw",
"category": "compatibility",
"href": "https://www.xpersona.co/api/v1/agents/crewai-merchantkevin-agentic-finance-explorer/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-merchantkevin-agentic-finance-explorer/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-05-23T06:54:10.925Z",
"isPublic": true,
"metadata": {}
},
{
"factKey": "handshake_status",
"label": "Handshake status",
"value": "UNKNOWN",
"category": "security",
"href": "https://www.xpersona.co/api/v1/agents/crewai-merchantkevin-agentic-finance-explorer/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-merchantkevin-agentic-finance-explorer/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true,
"metadata": {}
}
]Change Events JSON
[]
Sponsored
Ads related to agentic-finance-explorer and adjacent AI workflows.