@d3ara1n/pi-provider-sensenova 1.0.0 → 1.1.1

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.
Files changed (3) hide show
  1. package/README.md +14 -8
  2. package/package.json +3 -2
  3. package/src/index.ts +10 -0
package/README.md CHANGED
@@ -14,21 +14,27 @@ SenseNova (商汤日日新) provider for [Pi Coding Agent](https://pi.dev) — r
14
14
  |---|---|---|---|---|
15
15
  | `sensenova-6.7-flash-lite` | Yes | text, image | 256K | 64K |
16
16
 
17
- `sensenova-6.7-flash-lite` is SenseTime's lightweight multimodal agent model for real-world workflows. It supports:
18
- - **Text + image input** (OpenAI Vision-compatible format)
19
- - **Reasoning** (chain-of-thought via `reasoning` field, controlled by `reasoning_effort`)
20
- - **Tool calling** (`tools` / `tool_choice`)
21
- - **JSON mode** (`response_format: { type: "json_object" }`)
22
- - **Streaming** (SSE, with `usage` in last chunk)
17
+ `sensenova-6.7-flash-lite` is SenseTime's lightweight multimodal agent model for real-world workflows. This provider registers the model with:
18
+
19
+ - **Text + image input**
20
+ - **Reasoning enabled** in pi's model metadata
21
+ - **OpenAI-compatible chat/completions transport** via pi's built-in provider layer
22
+ - **`system` role compatibility** (`supportsDeveloperRole: false`)
23
+
24
+ Other compatibility details such as tool-call streaming quirks, usage chunks, and overflow error text should be re-verified against the live API before changing compat flags; see [`PROVIDER.md`](../../PROVIDER.md).
23
25
 
24
26
  ## Installation
25
27
 
26
- Add the extension path to `~/.pi/agent/settings.json`:
28
+ ```bash
29
+ pi install npm:@d3ara1n/pi-provider-sensenova
30
+ ```
31
+
32
+ Or add to `~/.pi/agent/settings.json`:
27
33
 
28
34
  ```jsonc
29
35
  {
30
36
  "extensions": [
31
- "/path/to/pi-extensions/packages/pi-provider-sensenova"
37
+ "/absolute/path/to/pi-extensions/packages/pi-provider-sensenova"
32
38
  ]
33
39
  }
34
40
  ```
package/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "@d3ara1n/pi-provider-sensenova",
3
- "version": "1.0.0",
3
+ "version": "1.1.1",
4
4
  "type": "module",
5
5
  "description": "SenseNova (商汤日日新) provider for pi — registers sensenova-6.7-flash-lite model via OpenAI-compatible API",
6
6
  "keywords": [
7
7
  "pi-package",
8
- "pi"
8
+ "pi",
9
+ "pi-extension"
9
10
  ],
10
11
  "main": "src/index.ts",
11
12
  "peerDependencies": {
package/src/index.ts CHANGED
@@ -29,8 +29,18 @@ const MODELS = [
29
29
  cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }, // free during beta
30
30
  contextWindow: 262_144,
31
31
  maxTokens: 65_536,
32
+ // sensenova reasons by default (~560 tokens / ~10s, enough to trip scout's
33
+ // 15s side-agent timeout); only reasoning_effort=none actually disables it.
34
+ thinkingLevelMap: {
35
+ off: "none",
36
+ minimal: null, // rejected with HTTP 400 — only low/medium/high/none valid
37
+ low: "low",
38
+ medium: "medium",
39
+ high: "high",
40
+ },
32
41
  compat: {
33
42
  supportsDeveloperRole: false, // uses `system` role, not `developer`
43
+ supportsReasoningEffort: true, // required for thinkingLevelMap to emit reasoning_effort
34
44
  },
35
45
  },
36
46
  ];