scoutline 0.7.0 → 0.9.0
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 +11 -3
- package/dist/capabilities/quota.d.ts +11 -0
- package/dist/capabilities/quota.d.ts.map +1 -1
- package/dist/capabilities/quota.js.map +1 -1
- package/dist/capabilities/search.d.ts +11 -1
- package/dist/capabilities/search.d.ts.map +1 -1
- package/dist/commands/crawl.js +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +13 -10
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/map.js +1 -1
- package/dist/commands/quota.d.ts +23 -0
- package/dist/commands/quota.d.ts.map +1 -1
- package/dist/commands/quota.js +21 -4
- package/dist/commands/quota.js.map +1 -1
- package/dist/commands/read.js +1 -1
- package/dist/commands/repo.js +1 -1
- package/dist/commands/research.js +1 -1
- package/dist/commands/search.d.ts +2 -1
- package/dist/commands/search.d.ts.map +1 -1
- package/dist/commands/search.js +21 -12
- package/dist/commands/search.js.map +1 -1
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +35 -4
- package/dist/index.js.map +1 -1
- package/dist/lib/redact.d.ts +2 -2
- package/dist/lib/redact.d.ts.map +1 -1
- package/dist/lib/redact.js +8 -2
- package/dist/lib/redact.js.map +1 -1
- package/dist/providers/brave/adapter.d.ts +42 -0
- package/dist/providers/brave/adapter.d.ts.map +1 -0
- package/dist/providers/brave/adapter.js +504 -0
- package/dist/providers/brave/adapter.js.map +1 -0
- package/dist/providers/brave/client.d.ts +161 -0
- package/dist/providers/brave/client.d.ts.map +1 -0
- package/dist/providers/brave/client.js +297 -0
- package/dist/providers/brave/client.js.map +1 -0
- package/dist/providers/brave/credentials.d.ts +33 -0
- package/dist/providers/brave/credentials.d.ts.map +1 -0
- package/dist/providers/brave/credentials.js +55 -0
- package/dist/providers/brave/credentials.js.map +1 -0
- package/dist/providers/brave/diagnostics.d.ts +46 -0
- package/dist/providers/brave/diagnostics.d.ts.map +1 -0
- package/dist/providers/brave/diagnostics.js +76 -0
- package/dist/providers/brave/diagnostics.js.map +1 -0
- package/dist/providers/brave/quota.d.ts +86 -0
- package/dist/providers/brave/quota.d.ts.map +1 -0
- package/dist/providers/brave/quota.js +247 -0
- package/dist/providers/brave/quota.js.map +1 -0
- package/dist/providers/exa/adapter.d.ts +58 -0
- package/dist/providers/exa/adapter.d.ts.map +1 -0
- package/dist/providers/exa/adapter.js +892 -0
- package/dist/providers/exa/adapter.js.map +1 -0
- package/dist/providers/exa/client.d.ts +143 -0
- package/dist/providers/exa/client.d.ts.map +1 -0
- package/dist/providers/exa/client.js +328 -0
- package/dist/providers/exa/client.js.map +1 -0
- package/dist/providers/exa/credentials.d.ts +34 -0
- package/dist/providers/exa/credentials.d.ts.map +1 -0
- package/dist/providers/exa/credentials.js +56 -0
- package/dist/providers/exa/credentials.js.map +1 -0
- package/dist/providers/exa/diagnostics.d.ts +42 -0
- package/dist/providers/exa/diagnostics.d.ts.map +1 -0
- package/dist/providers/exa/diagnostics.js +69 -0
- package/dist/providers/exa/diagnostics.js.map +1 -0
- package/dist/providers/minimax/adapter.js +1 -1
- package/dist/providers/minimax/adapter.js.map +1 -1
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js +4 -0
- package/dist/providers/registry.js.map +1 -1
- package/dist/providers/tavily/adapter.d.ts.map +1 -1
- package/dist/providers/tavily/adapter.js +5 -0
- package/dist/providers/tavily/adapter.js.map +1 -1
- package/dist/providers/types.d.ts +1 -1
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/providers/types.js +1 -1
- package/dist/providers/types.js.map +1 -1
- package/dist/providers/zai/adapter.d.ts.map +1 -1
- package/dist/providers/zai/adapter.js +7 -1
- package/dist/providers/zai/adapter.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
- **Repo** - Search and read GitHub repository code via ZRead
|
|
22
22
|
- **Tools** - MCP tool discovery, schemas, and raw calls
|
|
23
23
|
- **Code Mode** - TypeScript tool chaining for agent automation
|
|
24
|
-
- **Provider selection** - Run shared capabilities through Z.AI
|
|
24
|
+
- **Provider selection** - Run shared capabilities through Z.AI, MiniMax Token Plan, Tavily, or Brave
|
|
25
25
|
|
|
26
26
|
## Quick Start
|
|
27
27
|
|
|
@@ -42,6 +42,14 @@ export MINIMAX_API_KEY="your-minimax-key"
|
|
|
42
42
|
npx scoutline --provider minimax search "latest LLM benchmarks"
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
+
To use Brave (Search: web, news, video):
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
export BRAVE_SEARCH_API_KEY="your-brave-key"
|
|
49
|
+
npx scoutline --provider brave search "AI policy news" --topic news
|
|
50
|
+
npx scoutline --provider brave search "rust async" --type video
|
|
51
|
+
```
|
|
52
|
+
|
|
45
53
|
## Installation
|
|
46
54
|
|
|
47
55
|
### As an Agent Skill
|
|
@@ -74,9 +82,9 @@ npx scoutline --help
|
|
|
74
82
|
## Provider Selection
|
|
75
83
|
|
|
76
84
|
Shared commands (`search`, `vision`, `quota`, `doctor`, `repo`) accept a global
|
|
77
|
-
`--provider <zai|minimax>` flag. Resolution precedence:
|
|
85
|
+
`--provider <zai|minimax|tavily|brave>` flag. Resolution precedence:
|
|
78
86
|
|
|
79
|
-
1. Explicit `--provider <zai|minimax>` on the command line
|
|
87
|
+
1. Explicit `--provider <zai|minimax|tavily|brave>` on the command line
|
|
80
88
|
2. `SCOUTLINE_PROVIDER` environment variable
|
|
81
89
|
3. Compatibility default `zai`
|
|
82
90
|
|
|
@@ -41,6 +41,17 @@ export interface ProviderQuotaSuccess {
|
|
|
41
41
|
status: "ok";
|
|
42
42
|
plan?: string;
|
|
43
43
|
categories: QuotaCategory[];
|
|
44
|
+
/**
|
|
45
|
+
* Optional provider-authored caveat(s) the quota command surfaces to
|
|
46
|
+
* the user alongside the dashboard. A generic, provider-neutral
|
|
47
|
+
* channel: a Provider that needs to flag a caveat about its quota
|
|
48
|
+
* numbers (e.g. Brave reports a rate-limit window, NOT spend or
|
|
49
|
+
* credits consumed under metered billing) populates this field; the
|
|
50
|
+
* command renders each entry to stderr without branching on provider
|
|
51
|
+
* identity. Additive and backward-compatible — Providers with no
|
|
52
|
+
* caveat simply omit the field.
|
|
53
|
+
*/
|
|
54
|
+
warnings?: readonly string[];
|
|
44
55
|
}
|
|
45
56
|
export interface ProviderQuotaFailure {
|
|
46
57
|
provider: ProviderId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quota.d.ts","sourceRoot":"","sources":["../../src/capabilities/quota.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAM3E,MAAM,WAAW,WAAW;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC5B,OAAO,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,EAAE,IAAI,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,aAAa,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"quota.d.ts","sourceRoot":"","sources":["../../src/capabilities/quota.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAkB,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAM3E,MAAM,WAAW,WAAW;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC5B,OAAO,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,EAAE,IAAI,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE;QAAE,IAAI,EAAE,kBAAkB,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACrE;AAED,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,CAAC,CAAC;IACjB,iBAAiB,EAAE,UAAU,CAAC;IAC9B,SAAS,EAAE,KAAK,CAAC,oBAAoB,GAAG,oBAAoB,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC;CACzC;AAMD;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAkDD;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,WAAW,CAoCvE;AAMD;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,GAAG,oBAAoB,CAahG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quota.js","sourceRoot":"","sources":["../../src/capabilities/quota.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,cAAc,EAA2B,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"quota.js","sourceRoot":"","sources":["../../src/capabilities/quota.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,11 +26,20 @@ export type SearchRecency = "oneDay" | "oneWeek" | "oneMonth" | "oneYear" | "noL
|
|
|
26
26
|
* keyword to the query inside `invoke()`.
|
|
27
27
|
*/
|
|
28
28
|
export type SearchTopic = "general" | "news" | "finance";
|
|
29
|
+
/**
|
|
30
|
+
* Content-type axis. `video` selects video result content. It is a
|
|
31
|
+
* content axis, not an editorial topic axis, so `type` and `topic` are
|
|
32
|
+
* mutually exclusive (enforced at parse time). Brave supports
|
|
33
|
+
* `type:"video"` (routes to its video endpoint); every other adapter
|
|
34
|
+
* rejects `type` with `UNSUPPORTED_OPTION`.
|
|
35
|
+
*/
|
|
36
|
+
export type SearchType = "video";
|
|
29
37
|
/**
|
|
30
38
|
* Provider controls accepted by the Search Capability. Every field is
|
|
31
39
|
* optional. MiniMax rejects `domain`, `recency`, `contentSize`, and
|
|
32
40
|
* `location` with `UNSUPPORTED_OPTION` before any SDK access. `topic`
|
|
33
|
-
* is accepted by all adapters.
|
|
41
|
+
* is accepted by all adapters. `type` is accepted by Brave (`video`)
|
|
42
|
+
* and rejected by Z.AI, MiniMax, and Tavily.
|
|
34
43
|
*/
|
|
35
44
|
export interface SearchControls {
|
|
36
45
|
domain?: string;
|
|
@@ -38,6 +47,7 @@ export interface SearchControls {
|
|
|
38
47
|
contentSize?: "medium" | "high";
|
|
39
48
|
location?: "cn" | "us";
|
|
40
49
|
topic?: SearchTopic;
|
|
50
|
+
type?: SearchType;
|
|
41
51
|
}
|
|
42
52
|
/**
|
|
43
53
|
* A Search request. `query` must contain at least one non-whitespace
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/capabilities/search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAMxD,2DAA2D;AAC3D,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;AAEtF;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAEzD
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/capabilities/search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAMxD,2DAA2D;AAC3D,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;AAEtF;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAEzD;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC;AAEjC;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,WAAW,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAChC,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;CACrC;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAMD;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,YAAY,EAAE,GAAG,IAAI,CAAC;CACxD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC;IAC9B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC1C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,0BAA0B,EAAE,CAAC;CACnE;AAMD;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAEvC;;;;;OAKG;IACH,aAAa,CACX,OAAO,EAAE,aAAa,EACtB,aAAa,CAAC,EAAE;QAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GAChD,mBAAmB,CAAC;IAEvB;;;;OAIG;IACH,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAAC;CAClE"}
|
package/dist/commands/crawl.js
CHANGED
|
@@ -140,7 +140,7 @@ Options:
|
|
|
140
140
|
--no-cache Bypass the response cache for this invocation
|
|
141
141
|
|
|
142
142
|
Common Options:
|
|
143
|
-
--provider <id> Override the active Provider (zai | minimax | tavily)
|
|
143
|
+
--provider <id> Override the active Provider (zai | minimax | tavily | exa)
|
|
144
144
|
--output-format <mode> One of: ${OUTPUT_MODE_LIST} (default: data)
|
|
145
145
|
-O <mode> Alias for --output-format
|
|
146
146
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAEV,iBAAiB,EAElB,MAAM,gCAAgC,CAAC;AAKxC,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAsB,MAAM,uBAAuB,CAAC;AAMhG,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,UAAU,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACpD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC;IAC9B;;;;;;;OAOG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AA6CD;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,iBAAiB,CAAC,CAiC5B;AA4CD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAKhE;AAMD,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACxD;AAED;;;;GAIG;AACH,wBAAsB,MAAM,CAC1B,IAAI,EAAE,yBAAyB,GAC9B,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAO3C;AAED,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAEV,iBAAiB,EAElB,MAAM,gCAAgC,CAAC;AAKxC,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAsB,MAAM,uBAAuB,CAAC;AAMhG,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,UAAU,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACpD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC;IAC9B;;;;;;;OAOG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AA6CD;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,iBAAiB,CAAC,CAiC5B;AA4CD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAKhE;AAMD,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACxD;AAED;;;;GAIG;AACH,wBAAsB,MAAM,CAC1B,IAAI,EAAE,yBAAyB,GAC9B,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAO3C;AAED,eAAO,MAAM,WAAW,QA+DhB,CAAC"}
|
package/dist/commands/doctor.js
CHANGED
|
@@ -142,7 +142,7 @@ Doctor - Provider-aware environment and connectivity diagnostics
|
|
|
142
142
|
Usage: scoutline doctor [options]
|
|
143
143
|
|
|
144
144
|
Reports a schema-version-2 diagnostics report listing every built-in
|
|
145
|
-
Provider (zai, minimax, tavily) with its configured state, declared
|
|
145
|
+
Provider (zai, minimax, tavily, exa) with its configured state, declared
|
|
146
146
|
Capabilities, and connectivity status. The effective Provider (resolved
|
|
147
147
|
from --provider, SCOUTLINE_PROVIDER, or the default zai) is the
|
|
148
148
|
Provider that serves a requested capability. The capabilityMatrix field
|
|
@@ -153,23 +153,26 @@ passed to this command.
|
|
|
153
153
|
Z.AI connectivity is probed through MCP tool discovery; MiniMax
|
|
154
154
|
connectivity through a single raw quota probe that authenticates
|
|
155
155
|
without a generative request; Tavily connectivity through a single
|
|
156
|
-
raw quota probe against the Tavily account endpoint
|
|
156
|
+
raw quota probe against the Tavily account endpoint; Exa connectivity
|
|
157
|
+
through a single lightweight search request.
|
|
157
158
|
|
|
158
159
|
Repository exploration is a Provider Capability. Z.AI descriptor
|
|
159
160
|
metadata advertises repository-exploration and the Z.AI Adapter
|
|
160
|
-
supplies it; MiniMax and
|
|
161
|
+
supplies it; MiniMax, Tavily, and Exa advertise and supply neither. The
|
|
161
162
|
capabilityMatrix field reflects that descriptor state
|
|
162
163
|
(repository-exploration currently lists only Z.AI while MiniMax and
|
|
163
164
|
Tavily lack it).
|
|
164
165
|
|
|
165
|
-
Reader is a Provider Capability. Z.AI and
|
|
166
|
-
|
|
167
|
-
capabilityMatrix field lists
|
|
166
|
+
Reader is a Provider Capability. Z.AI, Tavily, and Exa descriptor
|
|
167
|
+
metadata all advertise reader; MiniMax advertises and supplies
|
|
168
|
+
neither. The capabilityMatrix field lists Z.AI, Tavily, and Exa for
|
|
169
|
+
reader.
|
|
168
170
|
|
|
169
|
-
Crawl
|
|
170
|
-
Z.AI and
|
|
171
|
-
lists Tavily alone for each.
|
|
172
|
-
|
|
171
|
+
Crawl and Map are Provider Capabilities owned by Tavily.
|
|
172
|
+
Z.AI, MiniMax, and Exa do not advertise either; the capabilityMatrix
|
|
173
|
+
lists Tavily alone for each. Research is supplied by Tavily and Exa.
|
|
174
|
+
Selecting Z.AI or MiniMax for crawl, map, or research returns
|
|
175
|
+
UNSUPPORTED_CAPABILITY with no fallback.
|
|
173
176
|
|
|
174
177
|
Public 'repo' and 'read' commands participate in Provider selection.
|
|
175
178
|
They honour --provider / SCOUTLINE_PROVIDER / the default zai, route
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/map.js
CHANGED
|
@@ -100,7 +100,7 @@ Options:
|
|
|
100
100
|
--no-cache Bypass the response cache for this invocation
|
|
101
101
|
|
|
102
102
|
Common Options:
|
|
103
|
-
--provider <id> Override the active Provider (zai | minimax | tavily)
|
|
103
|
+
--provider <id> Override the active Provider (zai | minimax | tavily | exa)
|
|
104
104
|
--output-format <mode> One of: ${OUTPUT_MODE_LIST} (default: data)
|
|
105
105
|
-O <mode> Alias for --output-format
|
|
106
106
|
|
package/dist/commands/quota.d.ts
CHANGED
|
@@ -37,14 +37,37 @@ export interface QuotaOptions {
|
|
|
37
37
|
* Injectable dependencies for the quota command. `buildDashboard`
|
|
38
38
|
* resolves the effective/all-provider dashboard; the command only wraps
|
|
39
39
|
* it for presentation and exit-code selection.
|
|
40
|
+
*
|
|
41
|
+
* `writeStderr` is an OPTIONAL generic stderr sink. When provided, the
|
|
42
|
+
* command collects every `warnings` entry from successful dashboard
|
|
43
|
+
* entries and writes each as a prominent notice — provider-neutral
|
|
44
|
+
* (iterates warnings, never branches on provider name). A Provider that
|
|
45
|
+
* needs to flag a caveat about its quota numbers (e.g. Brave reports a
|
|
46
|
+
* rate-limit window, not spend) populates `warnings`; the command
|
|
47
|
+
* renders it here so the caveat text stays out of the neutral command.
|
|
40
48
|
*/
|
|
41
49
|
export interface QuotaCommandDependencies {
|
|
42
50
|
readonly buildDashboard: () => Promise<QuotaDashboard>;
|
|
51
|
+
readonly writeStderr?: (value: string) => void;
|
|
52
|
+
/**
|
|
53
|
+
* Configured credential values used to redact `warnings` text before
|
|
54
|
+
* it reaches stderr. The `warnings` channel is provider-authored, so a
|
|
55
|
+
* future Provider could put value-derived text there; running each
|
|
56
|
+
* warning through `redactCredentialString` keeps the stderr seam under
|
|
57
|
+
* the same redaction as the dashboard data. Optional — when omitted,
|
|
58
|
+
* only the key/regex-based redaction applies.
|
|
59
|
+
*/
|
|
60
|
+
readonly secrets?: string[];
|
|
43
61
|
}
|
|
44
62
|
/**
|
|
45
63
|
* Run the quota command. Returns the dashboard as base data with a TTY
|
|
46
64
|
* presentation override. Exit code is 1 when any dashboard entry failed
|
|
47
65
|
* (all-provider mode); otherwise 0.
|
|
66
|
+
*
|
|
67
|
+
* Before returning, any `warnings` attached to successful entries are
|
|
68
|
+
* rendered to `writeStderr` (when provided) as prominent notices. This
|
|
69
|
+
* is the provider-neutral caveat channel: it does not branch on
|
|
70
|
+
* provider identity.
|
|
48
71
|
*/
|
|
49
72
|
export declare function quota(deps: QuotaCommandDependencies): Promise<CommandResult<QuotaDashboard>>;
|
|
50
73
|
export declare const QUOTA_HELP: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quota.d.ts","sourceRoot":"","sources":["../../src/commands/quota.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAIV,cAAc,EACf,MAAM,0BAA0B,CAAC;AAIlC,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAS5E,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,EAAE,UAAU,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACpD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC;CAC/B;
|
|
1
|
+
{"version":3,"file":"quota.d.ts","sourceRoot":"","sources":["../../src/commands/quota.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAIV,cAAc,EACf,MAAM,0BAA0B,CAAC;AAIlC,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAS5E,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,EAAE,UAAU,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACpD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC;CAC/B;AAuFD;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,0BAA0B,GAC/B,OAAO,CAAC,cAAc,CAAC,CAEzB;AAMD,MAAM,WAAW,YAAY;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,cAAc,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;IACvD,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C;;;;;;;OAOG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED;;;;;;;;;GASG;AACH,wBAAsB,KAAK,CACzB,IAAI,EAAE,wBAAwB,GAC7B,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAuBxC;AAED,eAAO,MAAM,UAAU,QA2Bf,CAAC"}
|
package/dist/commands/quota.js
CHANGED
|
@@ -17,7 +17,7 @@ import { quotaFailureFromError } from "../capabilities/quota.js";
|
|
|
17
17
|
import { executeProviderOperation } from "../lib/execution.js";
|
|
18
18
|
import { ConfigurationError, UnsupportedCapabilityError } from "../lib/errors.js";
|
|
19
19
|
import { getProviderDescriptor } from "../providers/selection.js";
|
|
20
|
-
import { redactSecrets, configuredSecrets } from "../lib/redact.js";
|
|
20
|
+
import { redactSecrets, configuredSecrets, redactCredentialString } from "../lib/redact.js";
|
|
21
21
|
import { formatQuotaDashboard } from "../lib/tty.js";
|
|
22
22
|
/**
|
|
23
23
|
* Invoke one Provider's quota Capability through shared execution. The
|
|
@@ -42,7 +42,7 @@ async function invokeProviderQuota(descriptor, env, sleep, random) {
|
|
|
42
42
|
async function buildDefaultDashboard(deps) {
|
|
43
43
|
const descriptor = getProviderDescriptor(deps.effectiveProvider, deps.descriptors);
|
|
44
44
|
if (!descriptor.isConfigured(deps.env)) {
|
|
45
|
-
throw new ConfigurationError(`Provider "${deps.effectiveProvider}" is not configured. Set Z_AI_API_KEY or
|
|
45
|
+
throw new ConfigurationError(`Provider "${deps.effectiveProvider}" is not configured. Set its API key (Z_AI_API_KEY, MINIMAX_API_KEY, TAVILY_API_KEY, or BRAVE_SEARCH_API_KEY).`);
|
|
46
46
|
}
|
|
47
47
|
const success = await invokeProviderQuota(descriptor, deps.env, deps.sleep, deps.random);
|
|
48
48
|
return {
|
|
@@ -60,9 +60,9 @@ async function buildDefaultDashboard(deps) {
|
|
|
60
60
|
* success.
|
|
61
61
|
*/
|
|
62
62
|
async function buildAllProvidersDashboard(deps) {
|
|
63
|
-
const configured = deps.descriptors.filter((d) => d.isConfigured(deps.env));
|
|
63
|
+
const configured = deps.descriptors.filter((d) => d.isConfigured(deps.env) && d.capabilities().has("quota"));
|
|
64
64
|
if (configured.length === 0) {
|
|
65
|
-
throw new ConfigurationError("No provider is configured. Set Z_AI_API_KEY
|
|
65
|
+
throw new ConfigurationError("No provider is configured. Set at least one API key (Z_AI_API_KEY, MINIMAX_API_KEY, TAVILY_API_KEY, or BRAVE_SEARCH_API_KEY).");
|
|
66
66
|
}
|
|
67
67
|
const secrets = configuredSecrets(deps.env);
|
|
68
68
|
const settled = await Promise.allSettled(configured.map((d) => invokeProviderQuota(d, deps.env, deps.sleep, deps.random)));
|
|
@@ -91,9 +91,26 @@ export async function buildQuotaDashboard(deps) {
|
|
|
91
91
|
* Run the quota command. Returns the dashboard as base data with a TTY
|
|
92
92
|
* presentation override. Exit code is 1 when any dashboard entry failed
|
|
93
93
|
* (all-provider mode); otherwise 0.
|
|
94
|
+
*
|
|
95
|
+
* Before returning, any `warnings` attached to successful entries are
|
|
96
|
+
* rendered to `writeStderr` (when provided) as prominent notices. This
|
|
97
|
+
* is the provider-neutral caveat channel: it does not branch on
|
|
98
|
+
* provider identity.
|
|
94
99
|
*/
|
|
95
100
|
export async function quota(deps) {
|
|
96
101
|
const dashboard = await deps.buildDashboard();
|
|
102
|
+
const writeStderr = deps.writeStderr;
|
|
103
|
+
if (writeStderr) {
|
|
104
|
+
for (const entry of dashboard.providers) {
|
|
105
|
+
if (entry.status === "ok" && entry.warnings && entry.warnings.length > 0) {
|
|
106
|
+
for (const warning of entry.warnings) {
|
|
107
|
+
// Redact before stderr: warnings are provider-authored and a
|
|
108
|
+
// future Provider could embed value-derived text here.
|
|
109
|
+
writeStderr(redactCredentialString(`⚠️ ${entry.provider}: ${warning}\n`, deps.secrets));
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
97
114
|
const hasFailure = dashboard.providers.some((p) => p.status === "error");
|
|
98
115
|
return {
|
|
99
116
|
kind: "data",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quota.js","sourceRoot":"","sources":["../../src/commands/quota.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AASH,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAElF,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"quota.js","sourceRoot":"","sources":["../../src/commands/quota.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/read.js
CHANGED
|
@@ -255,7 +255,7 @@ Options:
|
|
|
255
255
|
code | links | tables | headings
|
|
256
256
|
|
|
257
257
|
Common Options:
|
|
258
|
-
--provider <id> Override the active Provider (zai | minimax | tavily)
|
|
258
|
+
--provider <id> Override the active Provider (zai | minimax | tavily | exa)
|
|
259
259
|
--output-format <mode> One of: ${OUTPUT_MODE_LIST} (default: data)
|
|
260
260
|
-O <mode> Alias for --output-format
|
|
261
261
|
|
package/dist/commands/repo.js
CHANGED
|
@@ -115,7 +115,7 @@ Read Options:
|
|
|
115
115
|
|
|
116
116
|
Common Options:
|
|
117
117
|
--no-cache Bypass the response cache for this invocation
|
|
118
|
-
--provider <id> Override the active Provider (zai | minimax)
|
|
118
|
+
--provider <id> Override the active Provider (zai | minimax | tavily | exa)
|
|
119
119
|
--output-format <mode> One of: ${OUTPUT_MODE_LIST} (default: data)
|
|
120
120
|
-O <mode> Alias for --output-format
|
|
121
121
|
|
|
@@ -292,7 +292,7 @@ Options:
|
|
|
292
292
|
--no-cache Bypass the response cache for this invocation
|
|
293
293
|
|
|
294
294
|
Common Options:
|
|
295
|
-
--provider <id> Override the active Provider (zai | minimax | tavily)
|
|
295
|
+
--provider <id> Override the active Provider (zai | minimax | tavily | exa)
|
|
296
296
|
--output-format <mode> One of: ${OUTPUT_MODE_LIST} (default: data)
|
|
297
297
|
-O <mode> Alias for --output-format
|
|
298
298
|
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* execution and never enters an Adapter request or cache identity.
|
|
11
11
|
*/
|
|
12
12
|
import type { CommandContext, CommandResult } from "../command-invocation.js";
|
|
13
|
-
import type { SearchCapability, SearchTopic } from "../capabilities/search.js";
|
|
13
|
+
import type { SearchCapability, SearchTopic, SearchType } from "../capabilities/search.js";
|
|
14
14
|
import type { ResponseCache } from "../lib/cache.js";
|
|
15
15
|
import type { RetryPolicy } from "../lib/execution.js";
|
|
16
16
|
type RecencyFilter = "oneDay" | "oneWeek" | "oneMonth" | "oneYear" | "noLimit";
|
|
@@ -21,6 +21,7 @@ export interface SearchOptions {
|
|
|
21
21
|
contentSize?: "medium" | "high";
|
|
22
22
|
location?: "cn" | "us";
|
|
23
23
|
topic?: SearchTopic;
|
|
24
|
+
type?: SearchType;
|
|
24
25
|
maxSummary?: number;
|
|
25
26
|
fields?: string[];
|
|
26
27
|
noCache?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAqB,MAAM,0BAA0B,CAAC;AACjG,OAAO,KAAK,EACV,gBAAgB,EAIhB,WAAW,
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAqB,MAAM,0BAA0B,CAAC;AACjG,OAAO,KAAK,EACV,gBAAgB,EAIhB,WAAW,EACX,UAAU,EACX,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAIvD,KAAK,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;AAE/E,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,WAAW,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAChC,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;CACpC;AA+HD,wBAAsB,MAAM,CAC1B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,aAAa,YAAK,EAC3B,IAAI,EAAE,2BAA2B,EACjC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,aAAa,CAAC,CA2DxB;AAGD,eAAO,MAAM,WAAW,QAmEhB,CAAC"}
|
package/dist/commands/search.js
CHANGED
|
@@ -47,6 +47,8 @@ function buildControls(options) {
|
|
|
47
47
|
controls.location = options.location;
|
|
48
48
|
if (options.topic)
|
|
49
49
|
controls.topic = options.topic;
|
|
50
|
+
if (options.type)
|
|
51
|
+
controls.type = options.type;
|
|
50
52
|
return Object.keys(controls).length > 0 ? controls : undefined;
|
|
51
53
|
}
|
|
52
54
|
/**
|
|
@@ -171,27 +173,34 @@ export async function search(query, options = {}, deps, context) {
|
|
|
171
173
|
}
|
|
172
174
|
// Help text
|
|
173
175
|
export const SEARCH_HELP = `
|
|
174
|
-
Search Command - Real-time web search (Z.AI, MiniMax, or
|
|
176
|
+
Search Command - Real-time web search (Z.AI, MiniMax, Tavily, Exa, or Brave)
|
|
175
177
|
|
|
176
178
|
Usage: scoutline search <query> [options]
|
|
177
179
|
|
|
178
180
|
Provider selection (precedence: explicit flag, then SCOUTLINE_PROVIDER, then zai):
|
|
179
|
-
--provider <zai|minimax|tavily> Select the search provider (default: zai)
|
|
180
|
-
SCOUTLINE_PROVIDER=<id>
|
|
181
|
+
--provider <zai|minimax|tavily|exa|brave> Select the search provider (default: zai)
|
|
182
|
+
SCOUTLINE_PROVIDER=<id> Fallback when --provider is not passed
|
|
181
183
|
|
|
182
|
-
Note:
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
184
|
+
Note: support for the optional controls below varies by provider AND by
|
|
185
|
+
control — a control accepted by one provider may be rejected
|
|
186
|
+
(UNSUPPORTED_OPTION) by another before invocation. Run
|
|
187
|
+
\`scoutline doctor\` for the live per-provider support matrix rather than
|
|
188
|
+
relying on a fixed list here.
|
|
186
189
|
|
|
187
190
|
Options:
|
|
188
191
|
--topic <t> Search topic hint (all providers): general, news, finance
|
|
189
192
|
(default: general). Z.AI/MiniMax append a keyword to the
|
|
190
|
-
query; Tavily passes it natively
|
|
191
|
-
|
|
192
|
-
--
|
|
193
|
-
|
|
194
|
-
--
|
|
193
|
+
query; Tavily passes it natively; Exa maps it to a
|
|
194
|
+
category; Brave uses a news endpoint for \`news\`.
|
|
195
|
+
--type <video> Content-type axis; supported by Brave (\`video\`).
|
|
196
|
+
Mutually exclusive with --topic.
|
|
197
|
+
--domain <d> Limit to specific domain (provider support varies; e.g., github.com)
|
|
198
|
+
--recency <r> Filter by time (provider support varies): oneDay, oneWeek, oneMonth, oneYear, noLimit
|
|
199
|
+
--content-size <s> Depth/size. medium = default. high maps per provider:
|
|
200
|
+
Z.AI content_size; Tavily search_depth=advanced; Exa accepted;
|
|
201
|
+
Brave → LLM Context (extracted passages); MiniMax rejected
|
|
202
|
+
(UNSUPPORTED_OPTION).
|
|
203
|
+
--location <l> Location hint (provider support varies): cn, us
|
|
195
204
|
--count <n> Limit number of results (applied after normalization)
|
|
196
205
|
--max-summary <n> Truncate each result summary to <n> chars (JSON modes only)
|
|
197
206
|
--fields <a,b,c> Field allowlist for JSON output (e.g. title,url)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -31,6 +31,13 @@ export declare function parseAndValidateCount(raw: unknown): number | undefined;
|
|
|
31
31
|
* configuration gates. Exported for testing.
|
|
32
32
|
*/
|
|
33
33
|
export declare function parseAndValidateTopic(raw: unknown): "general" | "news" | "finance" | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Validate the `--type` flag value BEFORE Provider resolution, mirroring
|
|
36
|
+
* `parseAndValidateTopic`. `type` is a content axis (not an editorial
|
|
37
|
+
* topic axis) and is mutually exclusive with `--topic` (checked in
|
|
38
|
+
* `handleSearch`). Exported for testing.
|
|
39
|
+
*/
|
|
40
|
+
export declare function parseAndValidateType(raw: unknown): "video" | undefined;
|
|
34
41
|
export interface MainDependencies {
|
|
35
42
|
readonly invocation: CommandInvocationAdapter;
|
|
36
43
|
readonly env: NodeJS.ProcessEnv;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsCH,OAAO,EAAiB,KAAK,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAI1E,OAAO,KAAK,EAAE,kBAAkB,EAAc,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsCH,OAAO,EAAiB,KAAK,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAI1E,OAAO,KAAK,EAAE,kBAAkB,EAAc,MAAM,sBAAsB,CAAC;AAmb3E;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAuBtE;AAID;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAgB9F;AAID;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAatE;AAg7BD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,EAAE,wBAAwB,CAAC;IAC9C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC7D;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,MAAM,CAAC;IACrC;;;;;;OAMG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,MAAM,CAAC;IACzC;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,MAAM,CAAC;IACrC;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,MAAM,CAAC;IACpC;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,MAAM,CAAC;IAClC;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,MAAM,CAAC;CACxC;AAID,wBAAsB,IAAI,CACxB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,YAAY,EAAE,gBAAgB,GAC7B,OAAO,CAAC,MAAM,CAAC,CAgKjB"}
|
package/dist/index.js
CHANGED
|
@@ -34,7 +34,7 @@ Usage: scoutline <command> [args] [options]
|
|
|
34
34
|
|
|
35
35
|
Commands:
|
|
36
36
|
vision Image and video analysis (Z.AI; MiniMax for interpret-image)
|
|
37
|
-
search Real-time web search (shared: Z.AI + MiniMax + Tavily; --topic
|
|
37
|
+
search Real-time web search (shared: Z.AI + MiniMax + Tavily + Exa + Brave; --topic
|
|
38
38
|
honored by every Provider)
|
|
39
39
|
read Fetch and parse web pages (Provider Capability; Z.AI and Tavily
|
|
40
40
|
supply it, MiniMax returns UNSUPPORTED_CAPABILITY)
|
|
@@ -55,13 +55,14 @@ Commands:
|
|
|
55
55
|
code Execute TypeScript tool chains (Code Mode, Z.AI)
|
|
56
56
|
|
|
57
57
|
Provider selection (precedence: --provider, then SCOUTLINE_PROVIDER, then zai):
|
|
58
|
-
--provider <zai|minimax|tavily> Select the active Provider for shared capabilities
|
|
58
|
+
--provider <zai|minimax|tavily|exa|brave> Select the active Provider for shared capabilities
|
|
59
59
|
SCOUTLINE_PROVIDER=<id> Fallback when --provider is not passed
|
|
60
60
|
|
|
61
61
|
Shared capabilities accept --provider. The 'repo', 'read', 'crawl', 'map',
|
|
62
62
|
and 'research' commands participate in Provider selection: Z.AI
|
|
63
63
|
advertises and supplies repository-exploration and reader; Tavily
|
|
64
|
-
advertises and supplies reader plus crawl, map, and research;
|
|
64
|
+
advertises and supplies reader plus crawl, map, and research; Exa
|
|
65
|
+
advertises and supplies search, reader, and research; MiniMax
|
|
65
66
|
advertises and supplies none of those Provider-only Capabilities. A
|
|
66
67
|
non-supplier returns UNSUPPORTED_CAPABILITY with no fallback. Z.AI-only
|
|
67
68
|
commands (tools, tool, call, code) carry the flag but ignore it.
|
|
@@ -337,6 +338,25 @@ export function parseAndValidateTopic(raw) {
|
|
|
337
338
|
}
|
|
338
339
|
return str;
|
|
339
340
|
}
|
|
341
|
+
const SEARCH_TYPES = ["video"];
|
|
342
|
+
/**
|
|
343
|
+
* Validate the `--type` flag value BEFORE Provider resolution, mirroring
|
|
344
|
+
* `parseAndValidateTopic`. `type` is a content axis (not an editorial
|
|
345
|
+
* topic axis) and is mutually exclusive with `--topic` (checked in
|
|
346
|
+
* `handleSearch`). Exported for testing.
|
|
347
|
+
*/
|
|
348
|
+
export function parseAndValidateType(raw) {
|
|
349
|
+
if (raw === undefined || raw === "")
|
|
350
|
+
return undefined;
|
|
351
|
+
if (raw === true) {
|
|
352
|
+
throw new ValidationError("Type requires a value.", `Use one of: ${SEARCH_TYPES.join(", ")}.`);
|
|
353
|
+
}
|
|
354
|
+
const str = typeof raw === "string" ? raw : String(raw);
|
|
355
|
+
if (!SEARCH_TYPES.includes(str)) {
|
|
356
|
+
throw new ValidationError(`Invalid --type value "${str}": must be one of ${SEARCH_TYPES.join(", ")}`, `Use one of: ${SEARCH_TYPES.join(", ")}.`);
|
|
357
|
+
}
|
|
358
|
+
return str;
|
|
359
|
+
}
|
|
340
360
|
async function handleSearch(args, outputMode, deps) {
|
|
341
361
|
const { flags, positional } = parseArgs(args);
|
|
342
362
|
if (flags.help || flags.h || positional.length === 0) {
|
|
@@ -348,9 +368,17 @@ async function handleSearch(args, outputMode, deps) {
|
|
|
348
368
|
// not depend on whether credentials are present: `search q --count nope`
|
|
349
369
|
// with NO credentials must surface VALIDATION_ERROR (exit 1), not
|
|
350
370
|
// CONFIGURATION_ERROR (exit 3). Order: parse global options -> validate
|
|
351
|
-
// count -> validate topic ->
|
|
371
|
+
// count -> validate topic -> validate type -> reject type+topic combo
|
|
372
|
+
// -> resolve provider -> check configured -> dispatch.
|
|
352
373
|
const count = parseAndValidateCount(flags.count);
|
|
353
374
|
const topic = parseAndValidateTopic(flags.topic);
|
|
375
|
+
const type = parseAndValidateType(flags.type);
|
|
376
|
+
// `type` is a content axis; `topic` is an editorial axis. They are
|
|
377
|
+
// mutually exclusive. Enforced at parse time (before Provider
|
|
378
|
+
// resolution) so the error is VALIDATION_ERROR regardless of provider.
|
|
379
|
+
if (type !== undefined && topic !== undefined) {
|
|
380
|
+
throw new ValidationError("--type and --topic are mutually exclusive (--type has no editorial topic axis).", "Pass either --type or --topic, not both.");
|
|
381
|
+
}
|
|
354
382
|
// Resolve the Provider ONLY inside shared Search (DESIGN.md §6). Other
|
|
355
383
|
// command families carry the parsed flag but never resolve or validate
|
|
356
384
|
// it. An invalid explicit/env value throws VALIDATION_ERROR here, before
|
|
@@ -389,6 +417,7 @@ async function handleSearch(args, outputMode, deps) {
|
|
|
389
417
|
contentSize: flags["content-size"],
|
|
390
418
|
location: flags.location,
|
|
391
419
|
topic,
|
|
420
|
+
type,
|
|
392
421
|
maxSummary: flags["max-summary"]
|
|
393
422
|
? parseInt(flags["max-summary"], 10)
|
|
394
423
|
: undefined,
|
|
@@ -867,6 +896,8 @@ async function handleQuota(args, outputMode, deps) {
|
|
|
867
896
|
sleep: deps.searchSleep,
|
|
868
897
|
random: deps.searchRandom,
|
|
869
898
|
}),
|
|
899
|
+
writeStderr: (value) => deps.invocation.writeStderr(value),
|
|
900
|
+
secrets: deps.secrets,
|
|
870
901
|
}), outputMode, deps.now, deps.secrets);
|
|
871
902
|
}
|
|
872
903
|
async function handleCode(args, outputMode, deps) {
|