Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add harshitagarwal2/StockResearchAgents --skill stock-research-agentsgit clone --depth 1 https://github.com/harshitagarwal2/StockResearchAgentsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/harshitagarwal2/stockresearchagents/stock-research-agents)<a href="https://agentmods.dev/skills/harshitagarwal2/stockresearchagents/stock-research-agents"><img src="https://agentmods.dev/badge/skills/harshitagarwal2/stockresearchagents/stock-research-agents/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/harshitagarwal2/stockresearchagents/stock-research-agents"><img src="https://agentmods.dev/badge/skills/harshitagarwal2/stockresearchagents/stock-research-agents.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00089 | $0.03580 |
| Opus 5 | $0.00044 | $0.01790 |
| Sonnet 5 | $0.00018 | $0.00716 |
| Haiku 4.5 | $0.00009 | $0.00358 |
Grade A, and why
stock-research-agents scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 141 lines — stays where its author put it; the contents beside it link to each section on GitHub.
StockResearchAgents
Use company-analytics.v1 as the primary profile. Treat StockResearchAgents as a contract, analytics, publication, and read-model capability—not as the model or data provider.
Keep these authorities separate:
- Let the active harness own web/browser/provider retrieval, model reasoning, native agents, authentication, entitlements, and hard interruption.
- Let StockResearchAgents own the 26-stage workflow contract, strict point-in-time and terminal validation, deterministic calculations, research-quality records, atomic completed publication, and completed-only projection. The caller runtime attests intermediate completion criteria; StockResearchAgents records opaque nonterminal envelopes as committed, not independently verified content.
- Never put an API key, token, cookie, authorization value, provider configuration, raw source body, unrestricted tool argument, or broker/order instruction into a StockResearchAgents call.
Run company analytics
- Resolve the exact instrument identity. Do not guess an exchange, share class, fund, or crypto asset from an ambiguous symbol.
- Set
requested_atandcutoff_atto exact timezone-aware instants. Use the current instant as the cutoff for a current-research request unless the user asks for a historical replay. - Declare a truthful
research_mode:liveonly after live retrieval;fixturefor synthetic test data;historical_replayfor retained as-of evidence. - Call
discover_capability, thenprepare_company_analyticswith a schema-valid company request, execution mode, and the most suitable research pack. Default toinitiating-coverage.v1for a complete company picture andsequentialwhen the runtime lacks native subagents; usenativefor a caller-managed multi-agent run andimportonly when submitting an already completed bundle. Execute the returnedstage-instructions.v1roles, objectives, completion criteria, dependencies, capabilities, and output refs; exact prompt wording remains caller-owned. The returnedcompany-analytics-submission.v1schema is self-contained and includes typed analytics records; use the strict Python contracts as authoritative for cross-field semantics. - Execute dependency-ready stages in parallel only for a stateless plan. In a durable
nativerun, commit exactly the current first-incomplete stage, accept the returned next stage, and preserve that order even if tools gathered supporting evidence concurrently. Do not omit stages merely because the harness lacks subagents. - Execute the source-portfolio plan below with caller-owned web, browser, connector, or research-data tools. Do not stop after the first successful provider when more explicit routes are configured: use
SourcePortfolioCollectorfor same-capability fan-out, retain itsSourcePortfolioReceipt, and carry the receipt's ordered route-qualifiedsource_batch_idsinto the run card and source-lineage crosswalk. GDELT and search results are discovery evidence only: open the underlying issuer, regulator, exchange, macro authority, or attributable publisher page before treating a claim as verified. Normalize only bounded evidence, locators, hashes, timestamps, and permitted extracts into the terminal contracts. Preserve SourceBatch/observation identity, digest scope, dossier document ID, analytics source/license receipt, and entitlement translation in the versioned source-lineage crosswalk. - Produce deterministic analytics for fundamentals, ratios, valuation, consensus, positioning, catalysts, and declared experiments. Preserve input IDs, units, periods, rounding, assumptions, implementation digests, and point-in-time dataset receipts.
- Issue falsifiable hypotheses and explicit forecasts only when their target, horizon, resolution rule, evidence, and cutoff are defined. Namespace every
forecast_idglobally with the exact<quality_run_id>.prefix. Never reinterpret confidence, rating strength, or risk severity as a forecast probability. - Assemble one complete
company-analytics-submission.v1wrapper containing thecompany-research-submission.v1request/dossier plus analytics, source-lineage crosswalk, run card, hypothesis ledger, research iterations, quality receipt, and forecast set. The run card must bind the shipped workflow digest, selected execution mode, and exact ordered 26-stage receipt set. - Prefer
create_company_analytics_runfor a durable run. Use the shared start, receipt, stage-commit, pause/resume, cancellation, event, and finalize controls with the latest optimistic revision across all 26 stages. Thesequentialrunner reportsexecutor_requireduntil the caller supplies aLifecycleStageExecutor; it does not provide model reasoning or retrieval. Resume from the first incomplete stage and replay interrupted in-flight caller work. Treat nonterminal stage events as durable commitments, not proof that StockResearchAgents read caller-owned content. The final stage must contain the complete analytics payload and pass strict schema plus coordinator-commitment validation. Treat the publishedCompanyAnalyticsResultV1as canonical: it retains the exactCompanyAnalyticsSubmissionV1and seven authoritative artifacts. The durable lifecycle ID remains the control handle; after completion, resolve the canonical result throughcontrol.result_run_id. The quality outcome index is recoverable derived state, not part of a distributed transaction. - After a successful
finalize_runorimport_company_analytics, inspect itspresentationreceipt. Whenstatusisready, return or open its run-specificurl; in Codex App, show that local URL as the completed end product. Whenstatusispath_only, renderget_run_viewinline. Whenstatusisunavailable, keep the completed research result and retry presentation withlaunch_research_report. Never launch one page per company, never open a browser before completion, and never present private partial-stage material as a completed result. Useimport_company_analyticsonly when the caller already has one complete analytics payload and does not need lifecycle checkpoints. - After a forecast resolves, append a typed observation with
record_research_outcome; inspect reproducible records withget_research_quality. Corrections must supersede earlier observations rather than overwrite history.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 11d ago First seen · 141 lines · 89 tokens per session scan A 266c9ed9e514
stock-research-agents is a skill published in the GitHub repository harshitagarwal2/StockResearchAgents (1 stars, last pushed 2d ago), licensed Apache-2.0. It adds 89 tokens to every session and 3,580 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
agentrisk
Pre-trade risk guardrails. Use before submitting, placing, changing, or canceling any trade or order through Robinhood MCP, Alpaca MCP, a broker API, or any custom execution tool. Every proposed trade goes through an AgentRisk risk check, and execution is gated on the verdict.
competitor-benchmarking
Benchmark a set of companies against each other on hard financials - a detailed per-year data table for each company (revenue, gross profit, EBITDA, EBIT, net income), plus a cross-company summary of size, growth and profitability, with every derived figure footnoted to its formula and inputs and every line attributed…
company-at-a-glance
Produce a rigorous, fully-sourced data snapshot of a single company - a detailed multi-year financial table (revenue, gross profit, EBITDA, EBIT, net income per year), computed margins and growth with every derived figure footnoted to its formula and inputs, plus web-sourced profile facts (founded, CEO, ownership…
agent-trading-predictor
Agent skill for trading-predictor - invoke with $agent-trading-predictor.
dd-synthesis
Synthesize findings from multiple specialist agents into a coherent investment recommendation. Use when combining reports from 9+ specialist agents into a single decision document.
dividend-analysis
Comprehensive capital allocation analysis: dividends, buybacks, M&A, debt management, and FCF deployment.