dojo.md
University for AI agents. 92 courses, 4400+ scenarios, any model via OpenRouter. Auto-training loops generate per-model SKILL.md documents. Works with Claude Code, OpenClaw, Cursor, Windsurf. No fine-tuning req...
Query financial market data from the Sectors API (api.sectors.app) for IDX (Indonesia Stock Exchange) and SGX (Singapore Exchange) markets. Use when the user asks about stock prices, company reports, financials, market indices, top movers, dividends, earnings, market cap, or any Indonesian or Singaporean equity market data. Only calls https://api.sectors.app. Python with requests.
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
SkillHub CLI
skillhub install aidityasadhakim/sectors-financial-agentsInspect the source and compatibility requirements, then follow its installation steps.
Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.
Query IDX and SGX financial market data through the Sectors REST API.
Full API docs: https://sectors.app/api
https://api.sectors.app/v1. Never call any other domain, database, or external service.GET requests returning JSON.SECTORS_API_KEY environment variable.SECTORS_API_KEY is not set, prompt the user to set it: export SECTORS_API_KEY="your-api-key-here" or run the setup check script at scripts/check_setup.py.The API key must be available as the SECTORS_API_KEY environment variable.
# Option A: Set in your current shell
export SECTORS_API_KEY="your-api-key-here"
# Option B: Add to your shell profile (~/.bashrc, ~/.zshrc) for persistence
echo 'export SECTORS_API_KEY="your-api-key-here"' >> ~/.bashrc
# Option C: Use a .env file in the project root (see .env.example)
For agent-specific configuration:
claude config set env SECTORS_API_KEY your-api-key-here
~/.config/opencode/config.json under env
pip install requests
python scripts/check_setup.py
import os
import requests
API_KEY = os.environ["SECTORS_API_KEY"]
BASE_URL = "https://api.sectors.app/v1"
headers = {"Authorization": API_KEY}
response = requests.get(f"{BASE_URL}/subsectors/", headers=headers)
data = response.json()
The Authorization header takes the raw API key. Do NOT prefix it with Bearer.
Pick the right endpoint based on what the user needs:
| User wants | Endpoint | Required params |
|---|---|---|
| List all subsectors | GET /subsectors/ |
none |
| List all industries | GET /industries/ |
none |
| ... |
These signals come from indexed source analysis and may lag behind changes. Check the current source files.
# Sectors API
Query IDX and SGX financial market data through the Sectors REST API.
**Full API docs**: https://sectors.app/api
## Constraints
- ONLY make HTTP requests to `https://api.sectors.app/v1`. Never call any other domain, database, or external service.
- All endpoints are `GET` requests returning JSON.
- Never hardcode or guess an API key. Always read it from the `SECTORS_API_KEY` environment variable.
- If `SECTORS_API_KEY` is not set, prompt the user to set it: `export SECTORS_API_KEY="your-api-key-here"` or run the setup check script at `scripts/check_setup.py`.
## Setup
### 1. Set the API key
The API key must be available as the `SECTORS_API_KEY` environment variable.
```bash
# Option A: Set in your current shell
export SECTORS_API_KEY="your-api-key-here"
# Option B: Add to your shell profile (~/.bashrc, ~/.zshrc) for persistence
echo 'export SECTORS_API_KEY="your-api-key-here"' >> ~/.bashrc
# Option C: Use a .env file in the project root (see .env.example)
```
For agent-specific configuration:
- **Claude Code**: `claude config set env SECTORS_API_KEY your-api-key-here`
- **OpenCode**: Set in `~/.config/opencode/config.json` under `env`
- **Cursor**: Settings > Features > Environment Variables
### 2. Install the dependency
```bash
pip install requests
```
### 3. Verify setup (optional)
```bash
python scripts/check_setup.py
```
### Making requests
```python
import os
import requests
API_KEY = os.environ["SECTORS_API_KEY"]
BASE_URL = "https://api.sectors.app/v1"
headers = {"Authorization": API_KEY}
response = requests.get(f"{BASE_URL}/subsectors/", headers=headers)
data = response.json()
```
The `Authorization` header takes the raw API key. Do NOT prefix it with `Bearer`.
## Endpoint decision table
Pick the right endpoint based on what the user needs:
### Market structure
| User wants | Endpoint | Required params |
|---|---|---|
| List all subsectors | `GET /subsectors/` | none |
| List all industries | `GET /industries/` | none |
|...University for AI agents. 92 courses, 4400+ scenarios, any model via OpenRouter. Auto-training loops generate per-model SKILL.md documents. Works with Claude Code, OpenClaw, Cursor, Windsurf. No fine-tuning req...
Search and hire real humans for tasks — photography, delivery, research, and more
Reusable skill templates for OpenClaw AI agents. Templates for API integration, data processing, web scraping, CLI tools, and file processing.
macOS WPS Office workflow helper skill for safer document preparation, conversion, export, and compatibility guidance