Install
openclaw skills install secAI-Powered SEC Filing Integration skill. 40+ SEC filing tools. Access 10-K, 10-Q, 8-K, insider trading, beneficial ownership (13D/G), company facts, XBRL data, and more through the SEC's EDGAR database.
openclaw skills install sec40+ SEC filing tools. Access 10-K, 10-Q, 8-K, 13D/G beneficial ownership, insider transactions, company XBRL facts, and institutional holdings.
Please star Github if you like the skill.
Also available for OpenWebUI.
https://github.com/lkcair/sec-finance-ai
Run from the skill directory:
python3 -m venv .venv
.venv/bin/python3 -m pip install -r requirements.txt
Windows: use
.venv\Scripts\python3instead of.venv/bin/python3.
python3 might not use the correct interpreter if the venv is not activated, leading to ModuleNotFoundError./home/openclaw/.openclaw/venv/sec-finance-ai/bin/python3pandas, pydantic, requests, beautifulsoup4) are installed within this specific venv using its associated pip command.After setup, copy the template below into your agent's TOOLS.md.
Replace SKILL_DIR with the absolute path to this skill's directory.
# SEC-AI Skill
## Usage
```bash
cd SKILL_DIR && SKILL_DIR/.venv/bin/python3 -c "
import asyncio, sys
sys.path.insert(0, '.')
from sec_finance_ai import Tools
t = Tools()
async def main():
result = await t.METHOD(ARGS)
print(result)
asyncio.run(main())
" 2>/dev/null
```
Replace METHOD(ARGS) with any call below.
## Common Calls
| Need | Method |
|---|---|
| Annual Report (US) | `get_latest_10k(ticker='AAPL')` |
| Quarterly Report (US) | `get_latest_10q(ticker='AAPL')` |
| Current Report | `get_recent_8k_filings(ticker='AAPL')` |
| Beneficial Ownership | `get_beneficial_ownership(ticker='GME')` |
| Insider Transactions | `get_insider_transactions(ticker='TSLA')` |
| Company Facts | `get_company_facts(ticker='AAPL')` |
| Filing Content | `get_filing_content(ticker='AAPL', get_full_content=True)` |
| Search Filings | `search_filings(query='Apple')` |
| Download Text | `download_filing_text(filing_url='...')` |
## Routing
- "Get 10-K" → `get_latest_10k`
- "Get 10-Q" → `get_latest_10q`
- "Get 8-K" → `get_recent_8k_filings`
- "Beneficial ownership" → `get_beneficial_ownership`
- "Insider trading" → `get_insider_transactions`
- "Financials/Facts" → `get_company_facts`
- "Search SEC" → `search_filings`
- "Download filing" → `download_filing_text`
- "Read full 10-K" → `get_filing_content(ticker='...', filing_type='10-K', get_full_content=True)`
- "Get links only" → `get_company_filings`
By Categories:
get_company_filings, get_latest_10k, get_latest_10q, get_recent_8k_filings, analyze_8k_filing, get_proxy_statementsget_insider_transactions, get_beneficial_ownershipget_company_facts, get_company_concept, get_available_metricsget_filing_content, download_filing_textsearch_filings, get_recent_ipos, get_sec_api_status, run_self_test, get_available_functionsasyncio.run() wrapper handles this.SEC_HEADERS in sec_finance_ai.py with your User-Agent info.