opencode-specstream 0.1.0 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
# opencode-specstream
|
|
2
2
|
|
|
3
|
-
SpecStream plugin for [OpenCode](https://opencode.ai). SpecStream is the live web data engine
|
|
3
|
+
SpecStream plugin for [OpenCode](https://opencode.ai). SpecStream is the live web data engine. One platform to build, search, extract, enrich, map, and monitor data across the entire web.
|
|
4
|
+
|
|
5
|
+
Ask for any dataset in plain words, and SpecStream builds it from the entire live web: every match found, extracted and enriched into structured records, then monitored for change.
|
|
6
|
+
|
|
7
|
+
- Source URL and read time on every value.
|
|
8
|
+
- You see the price first and approve a ceiling. You pay for each row delivered, and a run that finds nothing costs nothing.
|
|
4
9
|
|
|
5
10
|
The plugin does two things when OpenCode starts:
|
|
6
11
|
|
|
7
12
|
- adds the hosted SpecStream MCP server, `https://api.specstream.ai/mcp`, to your config as `specstream`
|
|
8
|
-
- adds
|
|
13
|
+
- adds six agent skills: `search-web` (Search API), `extract-pages` (Extract API), `compile` (show how SpecStream read the request), `review-work` (get the price), `approve-work` (approve it) and `continue-work` (read the rows, send them on, keep them up to date)
|
|
9
14
|
|
|
10
15
|
## Install
|
|
11
16
|
|
|
@@ -37,7 +42,7 @@ The server uses OAuth, so you do not paste a key. Run:
|
|
|
37
42
|
opencode mcp auth specstream
|
|
38
43
|
```
|
|
39
44
|
|
|
40
|
-
Your browser opens, you sign in to SpecStream, and OpenCode keeps the token. New accounts start with $10 of
|
|
45
|
+
Your browser opens, you sign in to SpecStream, and OpenCode keeps the token. New accounts start with $10 of credit for 30 days, no card.
|
|
41
46
|
|
|
42
47
|
To use an API key instead, for example on a machine with no browser, create one under **Agents & API** in the [workspace](https://specstream.ai/workspace) and set it where OpenCode starts:
|
|
43
48
|
|
|
@@ -49,11 +54,7 @@ With the variable set, the plugin sends it as a bearer header and turns the brow
|
|
|
49
54
|
|
|
50
55
|
## Use it
|
|
51
56
|
|
|
52
|
-
Ask
|
|
53
|
-
|
|
54
|
-
> Find food banks in Texas, with their annual revenue.
|
|
55
|
-
|
|
56
|
-
The agent reads the request back, shows the quoted ceiling, and starts only after you say yes. Rows come back with their source pages, ready to export as CSV, Excel or JSON or to send to Google Sheets, Notion, Airtable, HubSpot or Salesforce.
|
|
57
|
+
Ask in plain words. The agent shows how SpecStream read the request and the quoted ceiling, and starts only after you say yes. Rows come back with their source pages, ready to export as CSV, Excel or JSON or to send to Google Sheets, Notion, Airtable, HubSpot or Salesforce.
|
|
57
58
|
|
|
58
59
|
## Options
|
|
59
60
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "opencode-specstream",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.1.4",
|
|
4
|
+
"description": "The live web data engine. One platform to build, search, extract, enrich, map, and monitor data across the entire web.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.ts",
|
|
7
7
|
"files": [
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"license": "MIT",
|
|
27
27
|
"repository": {
|
|
28
28
|
"type": "git",
|
|
29
|
-
"url": "git+https://github.com/
|
|
29
|
+
"url": "git+https://github.com/specstream/specstream-tools.git",
|
|
30
30
|
"directory": "integrations/opencode"
|
|
31
31
|
},
|
|
32
32
|
"homepage": "https://specstream.ai/docs/mcp",
|
package/skills/compile/SKILL.md
CHANGED
|
@@ -9,6 +9,6 @@ SpecStream is the live web data engine for teams and agents. Use the configured
|
|
|
9
9
|
|
|
10
10
|
Use `compile` to read the person's request. Say back what it found: the kind of thing, the conditions, the details to bring back and the quantity. Separate the conditions that must hold from the details that are nice to have. Use `edit_spec` for a deliberate change. Never drop a hard condition quietly, and never treat missing evidence as a no. Reading a request does not start any work.
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
If someone asks for people by job title, say that results may be few. `list_request_templates` returns requests that already work for each kind.
|
|
13
13
|
|
|
14
14
|
The same saved request can be revised, branched, compared and shared, in the workspace or through this agent. Never ask for an API key in chat. Use the connector's own sign-in.
|
|
@@ -11,7 +11,7 @@ Read `list_find_rows` and follow each `next_cursor` through the `cursor` argumen
|
|
|
11
11
|
|
|
12
12
|
When the person asks, `send_to_destination` sends selected results to Google Sheets, Excel, Notion, Airtable, HubSpot, Salesforce or an Outlook draft. An Outlook draft lands in the person's own Drafts folder and is never sent. `export_find` makes a download link as CSV, Excel, JSON or HTML. Reading, exporting and sharing cost nothing.
|
|
13
13
|
|
|
14
|
-
Finding more, adding facts or rechecking is new work with its own reviewed price.
|
|
14
|
+
Finding more, adding facts or rechecking is new work with its own reviewed price. A recheck costs half the rate for a row that changed and 1 cent for a row that did not.
|
|
15
15
|
|
|
16
16
|
`create_capacity_schedule` sets up a monitor and is a write. It needs a scope, a cadence, a validity period and limits per run and per period. A monitor reruns on its schedule and labels each change: still matches, no longer matches, unresolved or unavailable. Creating one does not fund it. A blocked or missed run is not an unchanged result and is not bought later. Pause or revoke a monitor when the owner says so.
|
|
17
17
|
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: extract-pages
|
|
3
|
+
description: Read the main text of up to 20 web pages, PDFs, Word or Excel files live with the Extract API ($0.80 per 1,000 pages).
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Read pages and documents live
|
|
7
|
+
|
|
8
|
+
SpecStream is the live web data engine for teams and agents. Use the configured MCP server at `https://api.specstream.ai/mcp`.
|
|
9
|
+
|
|
10
|
+
Use `read_pages` with `{"urls": ["<url>", ...]}` (1 to 20 `http` or `https` URLs) to read the clean main text, title and published date of web pages, PDFs, Word documents or Excel spreadsheets. Each page that returns text costs $0.0008 ($0.80 per 1,000 pages) from the account balance, and a page with no text is not charged. No quote or approval is needed.
|
|
@@ -9,6 +9,6 @@ SpecStream is the live web data engine for teams and agents. Use the configured
|
|
|
9
9
|
|
|
10
10
|
Call `quote_capacity_work` with the `ast_hash` from `compile`, the operation, the number of results wanted, the useful minimum, and the original `parent_find_id`, `project_id` or `revision_id` when one applies. Asking for more uses `extend`, adding facts uses `add_facts` and rechecking uses `refresh`.
|
|
11
11
|
|
|
12
|
-
Say the scope, the conditions, the maximum price and the expiry in text. Results cost
|
|
12
|
+
Say the scope, the conditions, the maximum price and the expiry in text. Results cost 5 cents, 15 cents or $1 each, plus 5 cents for a person's email and 15 cents for a phone, and nothing when nothing matches. A price lasts 30 minutes. The price does not spend any balance and does not start a job.
|
|
13
13
|
|
|
14
14
|
Use `get_capacity_balance` to read the balance. A balance is not permission to spend. Do not copy the maximum into an approval unless the person said to, or an existing bounded task already allows it. Plans and top-ups live in the person's account, not in chat.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: search-web
|
|
3
|
+
description: Answer a question from the live web in seconds with the Search API ($5 per 1,000 searches, no quote needed).
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Search the live web
|
|
7
|
+
|
|
8
|
+
SpecStream is the live web data engine for teams and agents. Use the configured MCP server at `https://api.specstream.ai/mcp`.
|
|
9
|
+
|
|
10
|
+
Use `search_web` with `{"q": "<the question>"}` when the person needs one fact, a fast web search with sources, or a quick look at the first rows of a request before pricing a full Deep Search run. Set `"passages": true` when you want the main text passages of the closest pages included in the reply.
|
|
11
|
+
|
|
12
|
+
Each call costs $0.005 ($5 per 1,000 searches) from the account balance and needs no quote or approval. The reply returns `kind` (`fact` or `list`), `answer` (with `value`, `page` and `seen_at`), `rows` and ranked `sources`. When `kind` is `list`, `handoff` gives the estimated size and the `compile` call to price and run the full dataset.
|