feat: expand to 339+ curated skills (v0.3.0)

- Added 175 new high-quality skills across all categories
- 14 distinct categories: AI, Search, Productivity, Dev, Marketing, Media, Finance, Communication, Smart Home, Memory, Security, Data, Social, Other
- Updated all language READMEs and SKILL.md
- Weekly update by MyClaw.ai
This commit is contained in:
MyClaw AI
2026-03-11 11:54:00 +00:00
parent b90a37f1ea
commit 3e83cee039
1582 changed files with 227506 additions and 248 deletions
@@ -0,0 +1,7 @@
{
"version": 1,
"registry": "https://clawhub.ai",
"slug": "google-search",
"installedVersion": "1.0.0",
"installedAt": 1773229704719
}
+28
View File
@@ -0,0 +1,28 @@
---
name: google-search
description: Search the web using Google Custom Search Engine (PSE). Use this when you need live information, documentation, or to research topics and the built-in web_search is unavailable.
---
# Google Search Skill
This skill allows OpenClaw agents to perform web searches via Google's Custom Search API (PSE).
## Setup
1. **Google Cloud Console:** Create a project and enable the "Custom Search API".
2. **API Key:** Generate an API Key.
3. **Search Engine ID (CX):** Create a Programmable Search Engine at [cse.google.com](https://cse.google.com/cse/all), and get your CX ID.
4. **Environment:** Store your credentials in a `.env` file in your workspace:
```
GOOGLE_API_KEY=your_key_here
GOOGLE_CSE_ID=your_cx_id_here
```
## Workflow
... (rest of file)
## Example Usage
```bash
GOOGLE_API_KEY=xxx GOOGLE_CSE_ID=yyy python3 skills/google-search/scripts/search.py "OpenClaw documentation"
```
+6
View File
@@ -0,0 +1,6 @@
{
"ownerId": "kn7ey18zr9mrrcpfc4zwy1brzd80bwjm",
"slug": "google-search",
"version": "1.0.0",
"publishedAt": 1769909754813
}
+39
View File
@@ -0,0 +1,39 @@
import sys
import json
import requests
import os
def google_search(query, api_key, cse_id, num_results=5):
url = "https://www.googleapis.com/customsearch/v1"
params = {
'q': query,
'key': api_key,
'cx': cse_id,
'num': num_results
}
response = requests.get(url, params=params)
response.raise_for_status()
return response.json()
if __name__ == "__main__":
if len(sys.argv) < 2:
print("Usage: python google_search.py <query> [num_results]")
sys.exit(1)
query = sys.argv[1]
num_results = int(sys.argv[2]) if len(sys.argv) > 2 else 5
# We will pass these via env vars for security
api_key = os.getenv("GOOGLE_API_KEY")
cse_id = os.getenv("GOOGLE_CSE_ID")
if not api_key or not cse_id:
print("Error: GOOGLE_API_KEY and GOOGLE_CSE_ID must be set in environment.")
sys.exit(1)
try:
results = google_search(query, api_key, cse_id, num_results)
print(json.dumps(results, indent=2))
except Exception as e:
print(f"Error: {str(e)}")
sys.exit(1)