{"skill":{"slug":"naver-news","displayName":"Naver news Search","summary":"Search Korean news articles using Naver Search API. Use when searching for Korean news, getting latest news updates, finding news about specific topics, or preparing daily news summaries. Supports relevance and date-based sorting.","description":"---\r\nname: naver-news\r\ndescription: Search Korean news articles using Naver Search API. Use when searching for Korean news, getting latest news updates, finding news about specific topics, or preparing daily news summaries. Supports relevance and date-based sorting.\r\nhomepage: https://developers.naver.com/docs/serviceapi/search/news/news.md\r\nmetadata: {\"openclaw\":{\"emoji\":\"📰\",\"requires\":{\"bins\":[\"python3\"],\"env\":[\"NAVER_CLIENT_ID\",\"NAVER_CLIENT_SECRET\"]}}}\r\n---\r\n\r\n# Naver News Search\r\n\r\nSearch Korean news articles using the Naver Search API.\r\n\r\n## Quick Start\r\n\r\nUse the provided script to search news:\r\n\r\n```bash\r\npython scripts/search_news.py \"검색어\" --display 10 --sort date\r\n```\r\n\r\nOptions:\r\n- `--display N`: Number of results per page (1-100, default: 10)\r\n- `--start N`: Start position for pagination (1-1000, default: 1)\r\n- `--sort sim|date`: Sort by relevance (sim) or date (date, default: date)\r\n- `--after DATETIME`: Only show news published after this time (ISO 8601 format, e.g., `2026-01-29T09:00:00+09:00`)\r\n- `--min-results N`: Minimum number of results to fetch (enables auto-pagination)\r\n- `--max-pages N`: Maximum number of pages to try when auto-paginating (default: 5)\r\n- `--json`: Output raw JSON instead of formatted text\r\n\r\n## Setup\r\n\r\n### Environment Variables\r\n\r\nRequired credentials from https://developers.naver.com/:\r\n\r\n```bash\r\nNAVER_CLIENT_ID=your_client_id\r\nNAVER_CLIENT_SECRET=your_client_secret\r\n```\r\n\r\n**Configuration locations:**\r\n- **Sandbox (default):** Add to `agents.defaults.sandbox.docker.env` in OpenClaw config\r\n- **Host:** Add to `env.vars` in OpenClaw config\r\n\r\n### Getting API Credentials\r\n\r\n1. Visit https://developers.naver.com/\r\n2. Register an application\r\n3. Enable \"검색\" (Search) API\r\n4. Copy Client ID and Client Secret\r\n5. Add credentials to appropriate config section (see above)\r\n\r\n## Common Use Cases\r\n\r\n### Latest news on a topic\r\n\r\n```bash\r\npython scripts/search_news.py \"AI 인공지능\" --display 20 --sort date\r\n```\r\n\r\n### Search with relevance ranking\r\n\r\n```bash\r\npython scripts/search_news.py \"삼성전자\" --sort sim\r\n```\r\n\r\n### Filter by time (only recent news)\r\n\r\n```bash\r\n# News published after 9 AM today\r\npython scripts/search_news.py \"경제\" --display 50 --sort sim --after \"2026-01-29T09:00:00+09:00\"\r\n\r\n# News from the last hour (programmatic use)\r\npython scripts/search_news.py \"속보\" --after \"$(date -u -d '1 hour ago' '+%Y-%m-%dT%H:%M:%S%z')\"\r\n```\r\n\r\n### Auto-pagination for guaranteed minimum results\r\n\r\n```bash\r\n# Fetch at least 30 results (automatically requests multiple pages if needed)\r\npython scripts/search_news.py \"AI\" --sort sim --after \"2026-01-29T09:00:00+09:00\" --min-results 30 --display 50\r\n\r\n# Limit to 3 pages maximum\r\npython scripts/search_news.py \"게임\" --min-results 50 --max-pages 3\r\n```\r\n\r\n**How auto-pagination works:**\r\n1. Fetches first page (e.g., 50 results)\r\n2. Applies date filter (e.g., 10 results remain)\r\n3. If below `--min-results`, automatically fetches next page\r\n4. Stops when minimum is reached or `--max-pages` limit hit\r\n\r\n### Pagination for more results\r\n\r\n```bash\r\n# First 10 results\r\npython scripts/search_news.py \"경제\" --display 10 --start 1\r\n\r\n# Next 10 results\r\npython scripts/search_news.py \"경제\" --display 10 --start 11\r\n```\r\n\r\n## Using in Python Code\r\n\r\nImport and use the search function directly:\r\n\r\n```python\r\nfrom scripts.search_news import search_news\r\n\r\nresult = search_news(\r\n    query=\"경제 뉴스\",\r\n    display=10,\r\n    sort=\"date\"\r\n)\r\n\r\nfor item in result[\"items\"]:\r\n    print(item[\"title\"])\r\n    print(item[\"description\"])\r\n    print(item[\"link\"])\r\n```\r\n\r\n## API Details\r\n\r\nFor complete API reference including response structure, error codes, and rate limits, see:\r\n\r\n**[references/api.md](references/api.md)**\r\n\r\n## Notes\r\n\r\n- Search queries must be UTF-8 encoded\r\n- Results include `<b>` tags around search term matches (strip them for clean text)\r\n- Daily limit: 25,000 API calls per application\r\n- `link` field may point to Naver News or original source depending on availability\r\n","tags":{"latest":"1.0.2"},"stats":{"comments":0,"downloads":3328,"installsAllTime":6,"installsCurrent":6,"stars":3,"versions":3},"createdAt":1769699280291,"updatedAt":1778485868789},"latestVersion":{"version":"1.0.2","createdAt":1769876205471,"changelog":"- Added a README.md file with documentation and usage instructions for human.\n- Added an example output file: examples/daily-summary.md.","license":null},"metadata":{"setup":[{"key":"NAVER_CLIENT_ID","required":true},{"key":"NAVER_CLIENT_SECRET","required":true}],"os":null,"systems":null},"owner":{"handle":"steamb23","userId":"s170071d7zjqqgqpges21v7fzd83jtn2","displayName":"Choi Jiheon","image":"https://avatars.githubusercontent.com/u/6805899?v=4"},"moderation":null}