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 for teams and agents: describe a list in plain words ("roofing companies in Columbus, Ohio with their website and phone") and get every matching row, each with the page it came from. You see the price first, you approve a ceiling, and you pay per match. A search that finds nothing costs nothing.
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 four agent skills: `compile` (read the request back), `review-work` (get the price), `approve-work` (approve it) and `continue-work` (read the rows, send them on, keep them current)
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 work free for 30 days, no card.
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 for a list:
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.0",
4
- "description": "SpecStream plugin for OpenCode: adds the SpecStream MCP server and four agent skills, so your agent can ask for a list in plain words and get every matching row with its source.",
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/Specstreamai/specstream-tools.git",
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",
@@ -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
- Suggest requests that work well: local businesses with ratings, companies from registries, grants, tenders, clinical trials, papers, datasets, regulations, vulnerabilities, apps, repositories, packages, podcasts and books. Companies that use a tool, funding and new-executive signals, US nonprofits and UK financial firms by FCA status also work. 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.
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. Rechecks cost half.
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 10 cents, 30 cents or $1 each, plus 10 cents for a person's email and 25 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.
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.