Skip to content

Commit 78fa391

Browse files
authored
Add Claude and OpenAI plugin packaging (#2)
1 parent 4e329f4 commit 78fa391

5 files changed

Lines changed: 131 additions & 25 deletions

File tree

.claude-plugin/plugin.json

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{
2+
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
3+
"name": "search1api",
4+
"displayName": "Search1API",
5+
"version": "1.0.0",
6+
"description": "Search the live web, read pages, find news, discover site links, and explore trending topics.",
7+
"author": {
8+
"name": "Search1API",
9+
"url": "https://www.search1api.com"
10+
},
11+
"homepage": "https://www.search1api.com/docs",
12+
"repository": "https://github.com/superagents-lab/search1api-cli",
13+
"license": "MIT",
14+
"keywords": [
15+
"search",
16+
"research",
17+
"news",
18+
"crawl",
19+
"fetch",
20+
"mcp"
21+
]
22+
}

.codex-plugin/plugin.json

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
{
2+
"name": "search1api",
3+
"version": "1.0.0",
4+
"description": "Search the live web, read pages, find news, discover site links, and explore trending topics.",
5+
"author": {
6+
"name": "Search1API",
7+
"url": "https://www.search1api.com"
8+
},
9+
"homepage": "https://www.search1api.com/docs",
10+
"repository": "https://github.com/superagents-lab/search1api-cli",
11+
"license": "MIT",
12+
"keywords": [
13+
"search",
14+
"research",
15+
"news",
16+
"crawl",
17+
"fetch",
18+
"mcp"
19+
],
20+
"skills": "./skills/",
21+
"mcpServers": "./.mcp.json",
22+
"interface": {
23+
"displayName": "Search1API",
24+
"shortDescription": "Search the web, read pages, and track news",
25+
"longDescription": "Research the live web across multiple search and news sources, extract readable content from URLs, discover site links, and explore trending topics.",
26+
"developerName": "Search1API",
27+
"category": "Productivity",
28+
"capabilities": [
29+
"Web search",
30+
"News search",
31+
"Web page retrieval",
32+
"Sitemap discovery",
33+
"Trending topics"
34+
],
35+
"websiteURL": "https://www.search1api.com",
36+
"privacyPolicyURL": "https://blog.search1api.com/pages/privacy",
37+
"termsOfServiceURL": "https://blog.search1api.com/pages/terms",
38+
"defaultPrompt": [
39+
"Research the latest developments in a topic and cite the sources.",
40+
"Read this URL and summarize the key points.",
41+
"Find current news about a company or technology."
42+
],
43+
"brandColor": "#007BFF"
44+
}
45+
}

.mcp.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"mcpServers": {
3+
"search1api": {
4+
"type": "http",
5+
"url": "https://mcp.search1api.com/mcp"
6+
}
7+
}
8+
}

README.md

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -165,16 +165,25 @@ s1 update
165165
s1 update --force # reinstall even if already on the latest version
166166
```
167167

168-
## Claude Code Skill
168+
## Agent skill and plugins
169169

170-
This repo also includes a [Claude Code](https://claude.com/claude-code) skill that lets Claude automatically use `s1` commands when you ask it to search the web, read URLs, check news, etc.
170+
This repo includes an Agent Skill plus plugin manifests for Claude Code and
171+
ChatGPT/Codex. The plugins connect to Search1API's hosted MCP server and keep
172+
the `s1` CLI as a fallback, so the same research workflow works across hosts.
171173

172-
Install the skill:
174+
Install the standalone skill:
173175

174176
```bash
175177
npx skills add superagents-lab/search1api-cli
176178
```
177179

180+
Developers can validate or test the plugin bundle from a local clone:
181+
182+
```bash
183+
claude plugin validate . --strict
184+
claude --plugin-dir .
185+
```
186+
178187
Once installed, you can ask Claude things like:
179188
- "search for the latest AI news"
180189
- "what does this link say? https://example.com"

skills/search1api/SKILL.md

Lines changed: 44 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,24 @@
11
---
22
name: search1api
33
description: >
4-
Powerful web search, content crawling, news, sitemap, and trending topics via the search1api CLI (s1). This is far more capable than basic fetch or search tools — it supports 13+ search engines (Google, Bing, DuckDuckGo, Reddit, GitHub, YouTube, arXiv, Baidu, X, etc.), adapts to many websites for clean content extraction, and provides news aggregation across multiple sources. Use this skill whenever the user wants to search the web, look something up, research a topic, read or summarize a URL, check news, explore a site's links, see trending topics, or check API balance. Trigger on phrases like "search for", "look up", "find out about", "what's happening with", "any news on", "what does this link say", "read this page", "summarize this URL", "trending on GitHub", or when the user shares a bare URL. Even if the user doesn't say "search" explicitly, use this skill when they clearly need web information.
4+
Live web search, page retrieval, news, sitemap discovery, and trending topics through Search1API. Use this skill whenever the user wants to search the web, look something up, research a topic, read or summarize a URL, check current news, explore a site's links, see trending topics, or check API balance. Trigger on phrases like "search for", "look up", "find out about", "what's happening with", "any news on", "what does this link say", "read this page", "summarize this URL", "trending on GitHub", or when the user shares a bare URL. Prefer the bundled Search1API MCP tools when available and fall back to the search1api CLI (`s1`).
55
metadata: {"openclaw": {"requires": {"bins": ["s1"]}}}
66
---
77

8-
# Search1API CLI
8+
# Search1API
99

10-
Web search and content retrieval via the `s1` command-line tool (`search1api-cli`).
10+
Live web research through the bundled Search1API MCP server or the `s1`
11+
command-line tool.
1112

12-
## Prerequisites
13+
## Choose the available transport
1314

14-
Before using any command, check if `s1` is available. If not, guide the user to install it:
15+
1. Prefer the connected Search1API MCP tools. They may be namespaced by the
16+
host, but their final tool names are `search`, `fetch`, `news`, `crawl`,
17+
`sitemap`, and `trending`.
18+
2. If the MCP tools are unavailable, check whether `s1` is installed and use
19+
the matching CLI command.
20+
3. If neither transport is available, ask the user to connect the bundled MCP
21+
server or install the CLI:
1522

1623
```bash
1724
curl -fsSL https://cli.search1api.com/install.sh | bash
@@ -23,9 +30,15 @@ Or via npm:
2330
npm install -g search1api-cli
2431
```
2532

26-
To update an existing install, the user can run `s1 update`. Only suggest this if a command fails in a way that looks version-related — don't run it as part of a normal search task.
33+
Do not install software or switch transports when a working Search1API tool is
34+
already available. To update an existing CLI install, the user can run
35+
`s1 update`. Only suggest this when a command fails in a version-related way.
2736

28-
Authentication is also required. Prefer browser login:
37+
The remote MCP server handles authentication through the host's connection
38+
flow. If the host reports that authentication is required, ask the user to
39+
connect or re-authenticate Search1API.
40+
41+
For CLI authentication, prefer browser login:
2942

3043
```bash
3144
s1 login
@@ -39,18 +52,20 @@ s1 config set-key <your-api-key>
3952

4053
You can also set the environment variable `SEARCH1API_KEY`.
4154

42-
If a command fails with "command not found" or an auth error, remind the user to install `s1` and run `s1 login` before retrying.
55+
If a CLI command fails with "command not found" or an auth error, remind the
56+
user to install `s1` and run `s1 login` before retrying.
4357

4458
## When to use
4559

46-
| User intent | Command |
47-
|---|---|
48-
| Shares a URL / link → read and summarize | `s1 crawl <url>` |
49-
| Wants to search the web | `s1 search "<query>"` |
50-
| Wants news | `s1 news "<query>"` |
51-
| Wants to explore a site's links | `s1 sitemap <url>` |
52-
| Wants trending topics | `s1 trending <service>` |
53-
| Wants to check remaining credits | `s1 balance` |
60+
| User intent | MCP tool | CLI fallback |
61+
|---|---|---|
62+
| Shares a URL / link → read and summarize | `crawl` | `s1 crawl <url>` |
63+
| Wants to search the web | `search` | `s1 search "<query>"` |
64+
| Wants the full page behind a search result | `fetch` with its result `id` | `s1 crawl <url>` |
65+
| Wants news | `news` | `s1 news "<query>"` |
66+
| Wants to explore a site's links | `sitemap` | `s1 sitemap <url>` |
67+
| Wants trending topics | `trending` | `s1 trending <service>` |
68+
| Wants to check remaining credits | Not exposed | `s1 balance` |
5469

5570
## Dynamic tuning
5671

@@ -62,7 +77,11 @@ Adapt parameters to user intent — don't just use defaults:
6277
- **Recency signals** ("latest", "recent", "this week") → `-t day` or `-t month`
6378
- **Domain-specific** ("search on Reddit", "find GitHub repos") → `-s reddit`, `-s github`, etc.
6479
- **Site-scoped** ("only from arxiv.org") → `--include arxiv.org`
65-
- **Chinese queries** → consider `-s baidu` for better results
80+
- **Chinese queries** → use `google`, `bing`, `wechat`, or `bilibili` according to intent
81+
82+
For MCP calls, map the CLI flags above to their schema equivalents:
83+
`max_results`, `search_service`, `crawl_results`, `include_sites`,
84+
`exclude_sites`, and `time_range`.
6685

6786
## Commands
6887

@@ -130,8 +149,8 @@ Shows remaining API credits.
130149

131150
### Deep research
132151

133-
1. `s1 search "<topic>" -n 15` get broad results
134-
2. `s1 crawl <url>` → crawl the top 3–5 most relevant URLs from results
152+
1. Use `search` (or `s1 search "<topic>" -n 15`) to get broad results
153+
2. Use `fetch` with result IDs (or `s1 crawl <url>`) for the top 3–5 relevant pages
135154
3. Synthesize all gathered content into a coherent answer with source citations
136155

137156
### URL summarization
@@ -147,9 +166,12 @@ Shows remaining API credits.
147166

148167
## Output handling
149168

150-
- By default, commands produce human-readable formatted output
151-
- Add `--json` to any command for raw JSON (useful for programmatic processing)
152-
- After retrieving results, always **summarize and synthesize** the information for the user — don't just dump raw output
169+
- CLI commands produce human-readable output by default; add `--json` for
170+
programmatic processing.
171+
- After retrieving results, summarize and synthesize the information instead
172+
of dumping raw output.
173+
- Preserve source URLs and cite the relevant pages in the final answer.
174+
- Distinguish facts found in sources from your own inference.
153175

154176
## References
155177

0 commit comments

Comments
 (0)