@jslee124/forge 0.3.1 → 0.3.2

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/dist/index.js CHANGED
@@ -818,7 +818,7 @@ function safeErrorMessage(error) {
818
818
  }
819
819
 
820
820
  // packages/core/dist/index.js
821
- var FORGE_VERSION = "0.3.1";
821
+ var FORGE_VERSION = "0.3.2";
822
822
 
823
823
  // apps/cli/src/program.ts
824
824
  import { Command } from "commander";
@@ -6985,6 +6985,9 @@ function resolveBuiltinSkillsRoot(moduleUrl) {
6985
6985
  const workspaceCandidate = path15.resolve(directory, "..", "skills");
6986
6986
  if (existsSync2(workspaceCandidate))
6987
6987
  return workspaceCandidate;
6988
+ const packageCandidate = path15.resolve(directory, "..", "resources", "skills");
6989
+ if (existsSync2(packageCandidate))
6990
+ return packageCandidate;
6988
6991
  return path15.resolve(directory, "..", "..", "resources", "skills");
6989
6992
  }
6990
6993
  async function discoverSkillCatalog(options) {
@@ -7314,6 +7317,9 @@ function resolveBuiltinDocsRoot(moduleUrl) {
7314
7317
  const workspaceCandidate = path16.resolve(directory, "..", "docs");
7315
7318
  if (existsSync3(path16.join(workspaceCandidate, "index.json")))
7316
7319
  return workspaceCandidate;
7320
+ const packageCandidate = path16.resolve(directory, "..", "resources", "docs");
7321
+ if (existsSync3(path16.join(packageCandidate, "index.json")))
7322
+ return packageCandidate;
7317
7323
  return path16.resolve(directory, "..", "..", "resources", "docs");
7318
7324
  }
7319
7325
  function preferredForgeDocsLocale(env) {
@@ -7666,6 +7672,9 @@ async function runResourcesCommand(mode, name, dependencies) {
7666
7672
  disabledModelInvocation: loaded.config.resources.disabledModelInvocation
7667
7673
  });
7668
7674
  if (mode === "list") {
7675
+ await createForgeDocsTools({
7676
+ locale: preferredForgeDocsLocale(dependencies.env)
7677
+ });
7669
7678
  dependencies.stdout.write(formatResourceList(catalog));
7670
7679
  return 0;
7671
7680
  }
@@ -7723,6 +7732,9 @@ function formatResourceList(catalog) {
7723
7732
  ` [${diagnostic2.code}/${diagnostic2.source}] ${diagnostic2.message}`
7724
7733
  );
7725
7734
  }
7735
+ lines.push(
7736
+ `Product docs: ${FORGE_VERSION} \xB7 en, zh-CN \xB7 search_forge_docs/read_forge_doc`
7737
+ );
7726
7738
  lines.push("");
7727
7739
  return lines.join("\n");
7728
7740
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jslee124/forge",
3
- "version": "0.3.1",
3
+ "version": "0.3.2",
4
4
  "description": "A safe, observable, and evaluable coding agent",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -47,7 +47,7 @@ pnpm build
47
47
  pnpm forge --version
48
48
  ```
49
49
 
50
- The final command builds the workspace and should print `0.3.1` for the current
50
+ The final command builds the workspace and should print `0.3.2` for the current
51
51
  source release. It does not contact a model provider.
52
52
 
53
53
  During development you can keep using `pnpm forge`. To expose the same checkout
@@ -5,7 +5,7 @@
5
5
 
6
6
  简体中文 · Documentation index
7
7
 
8
- Forge 0.3.1 works without plugins. A plugin is an optional in-process JavaScript
8
+ Forge 0.3.2 works without plugins. A plugin is an optional in-process JavaScript
9
9
  module that can register model-callable tools and explicit local commands,
10
10
  contribute instructions, observe immutable run events, or make policy stricter.
11
11
 
@@ -608,7 +608,7 @@ would require a restricted process or OS sandbox.
608
608
 
609
609
  ## Deliberate limitations
610
610
 
611
- Forge 0.3.1 has no plugin installer, dependency resolver, package registry, hot
611
+ Forge 0.3.2 has no plugin installer, dependency resolver, package registry, hot
612
612
  reload, TypeScript entry compilation, custom interactive UI, provider
613
613
  registration, isolated plugin process, or enforceable filesystem/network
614
614
  capabilities. Plugin commands run only through `forge plugins run`; they do not
@@ -143,7 +143,7 @@ starting an Agent run.
143
143
  ## Project-level `.forge/`
144
144
 
145
145
  The selected workspace root's `.forge/` is reserved for Forge-specific project
146
- customization. The current 0.3.1 layout is:
146
+ customization. The current 0.3.2 layout is:
147
147
 
148
148
  ```text
149
149
  .forge/
@@ -83,7 +83,7 @@ Installed users can check or update explicitly:
83
83
  ```bash
84
84
  forge update check
85
85
  forge update
86
- forge update 0.3.1
86
+ forge update 0.3.2
87
87
  ```
88
88
 
89
89
  Interactive startup refreshes an advisory npm check in the background at most
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "forgeVersion": "0.3.1",
3
+ "forgeVersion": "0.3.2",
4
4
  "documents": [
5
5
  {
6
6
  "id": "getting-started",
@@ -1017,7 +1017,7 @@
1017
1017
  "you"
1018
1018
  ],
1019
1019
  "path": "en/GETTING_STARTED.md",
1020
- "sha256": "04997bbf596b2e26897a9fa7bf85160f9b6fda413eed77e9e3ef10048ab9fdfe"
1020
+ "sha256": "c880f3ab8285e70a1f98b10b99fd2c390e99a6fad4a261027e55335c645f2d4b"
1021
1021
  },
1022
1022
  {
1023
1023
  "id": "configuration",
@@ -4583,7 +4583,7 @@
4583
4583
  "web"
4584
4584
  ],
4585
4585
  "path": "en/PLUGINS.md",
4586
- "sha256": "8484ae7c025fa31d35772d86ef4f2aff44c27d490725fd92c5d6b426d6b4e760"
4586
+ "sha256": "4cf2e6962e68f5f1638edfd0d4275be5620ea854f9e67e26a9ba5e2e28d02268"
4587
4587
  },
4588
4588
  {
4589
4589
  "id": "project-context",
@@ -5291,7 +5291,7 @@
5291
5291
  "user-level"
5292
5292
  ],
5293
5293
  "path": "en/PROJECT_CONTEXT.md",
5294
- "sha256": "3639cd94160127fbcfe73bbe835555af887ad36f2ebf9eb1ce68d68a710016c3"
5294
+ "sha256": "80b70e470895d92bd8981a4f549e9476740c697a0fab61b8bb508c39dafa5390"
5295
5295
  },
5296
5296
  {
5297
5297
  "id": "sessions",
@@ -10568,7 +10568,7 @@
10568
10568
  "user"
10569
10569
  ],
10570
10570
  "path": "en/RELEASING.md",
10571
- "sha256": "d85c4835355a262864acf6f2489e7110f5c5d7438d2c4336a019343a5c3f5c03"
10571
+ "sha256": "1bd2a1ac2e4eecd1580c961557cc2385068461867f5e765792fc94e112058c8a"
10572
10572
  },
10573
10573
  {
10574
10574
  "id": "troubleshooting",
@@ -15934,7 +15934,7 @@
15934
15934
  "通过"
15935
15935
  ],
15936
15936
  "path": "zh-CN/GETTING_STARTED.md",
15937
- "sha256": "1f96744b2c02bea4a132dccf3ac0d6e1e346edd815bb97bcf9c822b67867a3fc"
15937
+ "sha256": "034a552bd789496f8ab0c2ada56b413376bc4f31c925db90694e46191088ea1b"
15938
15938
  },
15939
15939
  {
15940
15940
  "id": "configuration",
@@ -18419,7 +18419,7 @@
18419
18419
  "自定义工具"
18420
18420
  ],
18421
18421
  "path": "zh-CN/PLUGINS.md",
18422
- "sha256": "0af2410c63ba8219592c778347d0f06437d47fca90e156196d32d8014aba9b0b"
18422
+ "sha256": "3f6406b586102226a2ef55b0c898657735f32e2395d1f7cf22b310f2bdd6597e"
18423
18423
  },
18424
18424
  {
18425
18425
  "id": "project-context",
@@ -21408,7 +21408,7 @@
21408
21408
  "首次发布到"
21409
21409
  ],
21410
21410
  "path": "zh-CN/RELEASING.md",
21411
- "sha256": "8c244df5e16edccfd4e8871ff5021afae25c04273d8ba9c41b36d6d31f9810f2"
21411
+ "sha256": "b155bffd6b123e09eeb9400fd005b9ca7a640354e50bb05bb670d5eb54a6971c"
21412
21412
  },
21413
21413
  {
21414
21414
  "id": "troubleshooting",
@@ -38,7 +38,7 @@ pnpm build
38
38
  pnpm forge --version
39
39
  ```
40
40
 
41
- 最后一条命令会构建 workspace;当前源码 release 应输出 `0.3.1`。它不会联系模型 provider。
41
+ 最后一条命令会构建 workspace;当前源码 release 应输出 `0.3.2`。它不会联系模型 provider。
42
42
 
43
43
  开发期间可以一直使用 `pnpm forge`。如果希望直接输入 `forge`:
44
44
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  English · 中文目录
6
6
 
7
- Forge 0.3.1 不依赖插件。插件是可选的进程内 JavaScript module,可以注册模型调用工具和显式本地命令、贡献指令、观察不可变 run event,或让策略更严格。实现中的类型、schema 和 host 才是最终合约:types.ts、schema.ts、host.ts。
7
+ Forge 0.3.2 不依赖插件。插件是可选的进程内 JavaScript module,可以注册模型调用工具和显式本地命令、贡献指令、观察不可变 run event,或让策略更严格。实现中的类型、schema 和 host 才是最终合约:types.ts、schema.ts、host.ts。
8
8
 
9
9
  ## 快速开始
10
10
 
@@ -277,7 +277,7 @@ conversation、把 child 保存为可独立 resume 的 session、在专用 TUI p
277
277
 
278
278
  加载插件会执行拥有 Forge 进程完整权限的本地代码;它可以直接 import Node、读任意文件、启动进程或联网。Forge 只在支持的 API 边界执行:trust 前不 import 项目 entry;校验 manifest/API/capability/name/schema;model 调用的 plugin tool 走 core policy/approval;model/network/process/相关 write 需确认;policy hook 只能更严格;prompt/Skill 有界且带来源;observer input clone/freeze/脱敏。
279
279
 
280
- 这些保证不隔离恶意 trusted entry,强隔离需要受限进程或 OS sandbox。Forge 0.3.1 没有插件安装器、依赖解析器、registry、hot reload、TypeScript entry 编译、custom interactive UI、provider registration、隔离进程或可强制执行的 filesystem/network capability;plugin command 只通过 `forge plugins run` 执行,不自动成为交互 slash command。
280
+ 这些保证不隔离恶意 trusted entry,强隔离需要受限进程或 OS sandbox。Forge 0.3.2 没有插件安装器、依赖解析器、registry、hot reload、TypeScript entry 编译、custom interactive UI、provider registration、隔离进程或可强制执行的 filesystem/network capability;plugin command 只通过 `forge plugins run` 执行,不自动成为交互 slash command。
281
281
 
282
282
  ## Skills 与产品文档属于资源
283
283
 
@@ -77,7 +77,7 @@ git push origin v0.3.0
77
77
  ```bash
78
78
  forge update check
79
79
  forge update
80
- forge update 0.3.1
80
+ forge update 0.3.2
81
81
  ```
82
82
 
83
83
  交互启动最多每 24 小时在后台刷新一次提示性 npm 检查,并在后续启动显示缓存
@@ -1,6 +1,6 @@
1
1
  # Forge plugin API reference
2
2
 
3
- This reference is version-matched to Forge 0.3.1 and plugin API version `"1"`.
3
+ This reference is version-matched to Forge 0.3.2 and plugin API version `"1"`.
4
4
  The runtime schema and types remain authoritative when they are present.
5
5
 
6
6
  ## Manifest