@zhiman_innies/innies-codex 0.122.61 → 0.122.63
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 +19 -0
- package/bin/innies-config.js +37 -9
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -439,6 +439,25 @@ innies app-server # JSON-RPC + WebSocket,供 IDE/系统
|
|
|
439
439
|
- `qwen35_35b` 模型权重**不在本仓库**,使用知满推理服务即受其商务条款约束;客户机房私有化部署的权重交付由知满实施团队处理
|
|
440
440
|
- TUI 品牌字、`Zhiman` 商标属知满科技
|
|
441
441
|
|
|
442
|
+
### 5. 工具默认曝光(设计取舍)
|
|
443
|
+
|
|
444
|
+
3 个 qwen 模型在 catalog 里 `experimental_supported_tools = []`,意味着:
|
|
445
|
+
|
|
446
|
+
- ✅ **默认开**:`shell` / `exec_command` / `apply_patch`(后者需 `features.apply_patch_freeform = true`,模板已开)
|
|
447
|
+
- ❌ **默认禁**:`list_dir`、`read_file` 等独立工具;模型遇到目录/文件读取需求时会自动 fallback 到 `shell ls` / `shell cat`,功能等价但 token 略多
|
|
448
|
+
|
|
449
|
+
如确需 `list_dir` 作为独立工具暴露给模型(例如对延迟敏感的批量目录扫描场景),编辑 `~/.inniescoder/catalog.json`:
|
|
450
|
+
|
|
451
|
+
```jsonc
|
|
452
|
+
{
|
|
453
|
+
"slug": "qwen36_27b",
|
|
454
|
+
// ... 其他字段
|
|
455
|
+
"experimental_supported_tools": ["list_dir"] // 加入想曝光的工具名
|
|
456
|
+
}
|
|
457
|
+
```
|
|
458
|
+
|
|
459
|
+
> 这是**有意保留**的默认取舍 — 既能维持 prompt 简洁、避免 qwen 模型在工具选择上 over-think,又给需要的用户留出 catalog-level 配置开关。
|
|
460
|
+
|
|
442
461
|
---
|
|
443
462
|
|
|
444
463
|
## 文档
|
package/bin/innies-config.js
CHANGED
|
@@ -30,13 +30,24 @@ const INSTALL_SUPERPOWERS_ENV = "INNIES_INSTALL_SUPERPOWERS";
|
|
|
30
30
|
const SUPERPOWERS_MARKER_FILENAME = ".innies-superpowers.marker";
|
|
31
31
|
const ZHIMAN_35B_PROVIDER_HEADER = "[model_providers.zhiman_35b]";
|
|
32
32
|
const ZHIMAN_27B_PROVIDER_HEADER = "[model_providers.zhiman_27b]";
|
|
33
|
+
// N-BUG8 (2026-06-15): the Rust `bailian` factory only recognises the
|
|
34
|
+
// block header `[model_providers.bailian]`. We previously emitted
|
|
35
|
+
// `[model_providers.dashscope]` as a user-facing alias, but the factory
|
|
36
|
+
// resolved its own name (`bailian`) and silently 401'd at api.openai.com
|
|
37
|
+
// when the user relied on the env-var fallback path. The canonical
|
|
38
|
+
// header is now `bailian`; `dashscope` is kept ONLY as a migration
|
|
39
|
+
// source for the rename-and-rewrite logic in `normalizeInniesConfig`.
|
|
33
40
|
const DASHSCOPE_PROVIDER_HEADER = "[model_providers.dashscope]";
|
|
34
|
-
|
|
35
|
-
//
|
|
36
|
-
//
|
|
37
|
-
//
|
|
38
|
-
//
|
|
39
|
-
|
|
41
|
+
const BAILIAN_PROVIDER_HEADER = "[model_providers.bailian]";
|
|
42
|
+
// Default `wire_api` emitted in freshly generated provider blocks. The
|
|
43
|
+
// user's documented production endpoint for both the private vLLM
|
|
44
|
+
// (`/v1/responses`) and DashScope public cloud is the Responses API;
|
|
45
|
+
// vLLM ≥ 0.7 natively serves it, and DashScope's compatible-mode
|
|
46
|
+
// exposes both endpoints. R12 reversed the historical chat_completions
|
|
47
|
+
// default after E2E verification that all 4 paths
|
|
48
|
+
// (ChatCompletions/Responses × 1+1/multi-step) work end-to-end on
|
|
49
|
+
// both providers.
|
|
50
|
+
const DEFAULT_PROVIDER_WIRE_API = "responses";
|
|
40
51
|
const RESERVED_PROVIDER_HEADERS = Object.freeze([
|
|
41
52
|
"[model_providers.openai]",
|
|
42
53
|
"[model_providers.ollama]",
|
|
@@ -470,13 +481,24 @@ function normalizeInniesConfig(contents, catalogPath, state) {
|
|
|
470
481
|
}
|
|
471
482
|
|
|
472
483
|
updated = normalizeManagedProviderBlocks(stripReservedProviderBlocks(updated));
|
|
484
|
+
// N-BUG8 (2026-06-15): migrate the legacy `[model_providers.dashscope]`
|
|
485
|
+
// user-facing alias to the canonical `[model_providers.bailian]`
|
|
486
|
+
// header that the Rust factory recognises. Also rewrite the
|
|
487
|
+
// `model_provider = "dashscope"` value to `"bailian"` so the
|
|
488
|
+
// block lookup in the Rust resolver matches the block key.
|
|
489
|
+
if (updated.includes(DASHSCOPE_PROVIDER_HEADER)) {
|
|
490
|
+
updated = updated.replace(DASHSCOPE_PROVIDER_HEADER, BAILIAN_PROVIDER_HEADER);
|
|
491
|
+
}
|
|
492
|
+
if (/(^|\n)\s*model_provider\s*=\s*"dashscope"/.test(updated)) {
|
|
493
|
+
updated = updated.replace(/(^|\n)(\s*model_provider\s*=\s*)"dashscope"/, '$1$2"bailian"');
|
|
494
|
+
}
|
|
473
495
|
if (!updated.includes(ZHIMAN_35B_PROVIDER_HEADER)) {
|
|
474
496
|
updated = `${updated.trimEnd()}\n\n${defaultZhiman35bProviderBlock()}`;
|
|
475
497
|
}
|
|
476
498
|
if (!updated.includes(ZHIMAN_27B_PROVIDER_HEADER)) {
|
|
477
499
|
updated = `${updated.trimEnd()}\n\n${defaultZhiman27bProviderBlock()}`;
|
|
478
500
|
}
|
|
479
|
-
if (!updated.includes(DASHSCOPE_PROVIDER_HEADER)) {
|
|
501
|
+
if (!updated.includes(BAILIAN_PROVIDER_HEADER) && !updated.includes(DASHSCOPE_PROVIDER_HEADER)) {
|
|
480
502
|
updated = `${updated.trimEnd()}\n\n${defaultDashscopeProviderBlock()}`;
|
|
481
503
|
}
|
|
482
504
|
|
|
@@ -664,8 +686,14 @@ function normalizeManagedProviderBlocks(contents) {
|
|
|
664
686
|
updated = normalizeProviderBlock(updated, {
|
|
665
687
|
providerHeader: ZHIMAN_27B_PROVIDER_HEADER,
|
|
666
688
|
});
|
|
689
|
+
// N-BUG8+R12 (2026-06-15): normalise the BAILIAN block (not the
|
|
690
|
+
// legacy DASHSCOPE alias). After the migration rename, the dashscope
|
|
691
|
+
// header is gone from the file — using DASHSCOPE_PROVIDER_HEADER here
|
|
692
|
+
// left the `wire_api` line in the freshly-rewritten bailian block
|
|
693
|
+
// stale, so it kept whatever the pre-migration value was (typically
|
|
694
|
+
// `chat_completions`) instead of being updated to the new default.
|
|
667
695
|
updated = normalizeProviderBlock(updated, {
|
|
668
|
-
providerHeader:
|
|
696
|
+
providerHeader: BAILIAN_PROVIDER_HEADER,
|
|
669
697
|
});
|
|
670
698
|
// Migration safety net: legacy / typo'd `env_key` names for the
|
|
671
699
|
// dashscope block. If a user has `env_key = "BAILIAN_API_KEY"` (the
|
|
@@ -922,7 +950,7 @@ function defaultDashscopeProviderBlock() {
|
|
|
922
950
|
// `request_body_extras` to inject it if you do not want to set
|
|
923
951
|
// `model_reasoning_effort` at the root.
|
|
924
952
|
return [
|
|
925
|
-
|
|
953
|
+
BAILIAN_PROVIDER_HEADER,
|
|
926
954
|
'name = "bailian"',
|
|
927
955
|
`# base_url = "https://dashscope.aliyuncs.com/compatible-mode/v1" # FILL IN: DashScope OpenAI-compatible endpoint — keep this default if you use the public cloud`,
|
|
928
956
|
`# env_key = "DASHSCOPE_API_KEY" # FILL IN: the env var NAME holding your DashScope API key (NOT the key itself) — see file header`,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhiman_innies/innies-codex",
|
|
3
|
-
"version": "0.122.
|
|
3
|
+
"version": "0.122.63",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"bin": {
|
|
6
6
|
"innies": "bin/innies.js"
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
"postinstall": "node bin/innies-init.js"
|
|
24
24
|
},
|
|
25
25
|
"optionalDependencies": {
|
|
26
|
-
"@zhiman_innies/innies-codex-darwin-x64": "0.122.
|
|
27
|
-
"@zhiman_innies/innies-codex-darwin-arm64": "0.122.
|
|
28
|
-
"@zhiman_innies/innies-codex-win32-x64": "0.122.
|
|
29
|
-
"@zhiman_innies/innies-codex-win32-arm64": "0.122.
|
|
26
|
+
"@zhiman_innies/innies-codex-darwin-x64": "0.122.63-darwin-x64",
|
|
27
|
+
"@zhiman_innies/innies-codex-darwin-arm64": "0.122.63-darwin-arm64",
|
|
28
|
+
"@zhiman_innies/innies-codex-win32-x64": "0.122.63-win32-x64",
|
|
29
|
+
"@zhiman_innies/innies-codex-win32-arm64": "0.122.63-win32-arm64"
|
|
30
30
|
}
|
|
31
31
|
}
|