Yahoo finance
Полная коллекция скиллов Kimi (267 built-in + 7 plugin skills), выгруженная из сандбокса агента
npx -y skills add serejaris/kimi-skills --skill yahoo_financeAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 19 days oldThe repository was created 19 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Yahoo Finance provides stock information for a given ticker symbol, including stock price and trading information, company information, financial metrics, earnings and revenue, margins and returns, dividends, balance sheet data, ownership, analyst coverage, and risk metrics.
SKILL.md
3.4 KB, as published. Nobody here has run it
Yahoo Finance
Use this skill to answer questions that require Yahoo Finance data for a ticker symbol.
Setup
Check whether the agent-gw Python SDK is available in the current Python environment, and install it only if the check fails:
python3 -c "import agent_gw" || python3 -m pip install "$(curl -s https://cdn.kimi.com/agentgw/pysdk/manifest.json | python3 -c "import json,sys; print(json.load(sys.stdin)['latest']['url'])")"
The SDK needs an API key from api_key=..., KIMI_API_KEY, or
~/.kimi/agent-gw.json.
Workflow
- Run
python3 scripts/yahoo_finance_tool.py describefrom the plugin directory to callget_data_source_desc({"name": "yahoo_finance"}). - Read the returned Markdown carefully. It contains the overall data source rules, ticker formats, coverage, global constraints, and each API's description, required parameters, optional parameters, defaults, and allowed values.
- Select the API that best matches the user's question.
- Build
paramsexactly from the Markdown requirements. Pay attention to ticker symbol, exchange suffix, date range, statement type, reporting period, currency, and metric definitions. - Use
python3 scripts/yahoo_finance_tool.py callto callcall_data_source_tool. - If the call fails, explain the failure reason from the response.
- If the call succeeds, save any returned files first, then answer using
resp.result.assistant; ignoreresp.result.userunless display content is specifically needed.
Common Use Cases
- Stock price and trading information for a ticker.
- Company information and profile data.
- Financial metrics, earnings, revenue, margins, returns, and risk metrics.
- Balance sheet data and other supported statement details.
- Dividends, ownership, holder information, and analyst coverage.
Script
Use the bundled script from the plugin directory:
python3 scripts/yahoo_finance_tool.py describe
After reading the Markdown and selecting an API:
python3 scripts/yahoo_finance_tool.py call \
--api-name "<api name from markdown>" \
--params-json '{"required_param":"value"}'
For larger params, write a JSON object and pass
--params-file path/to/params.json.
The script:
- sends
{"name": "yahoo_finance"}toget_data_source_desc - sends
{"data_source_name": "yahoo_finance", "api_name": ..., "params": ...}tocall_data_source_tool - prints failure messages from
error.userorerror.assistant - saves returned files to each
files[].namepath returned by the data source - prints the joined
result.assistanttexts on success
Expected call_data_source_tool response shape:
{
"is_success": bool,
"result": {"user": list[str], "assistant": list[str]} | None,
"error": {"user": list[str], "assistant": list[str]} | None,
"files": [{"name": str, "content": str}],
}
When files are returned, name is the file path or name to write. The path is
usually dictated by the selected API's params in the Markdown docs. If an API
does not need files, the response normally has no files to save.