@taptap/instant-games-open-mcp 1.24.0 → 1.24.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/README.md CHANGED
@@ -52,8 +52,8 @@ Maker 本地开发按“初始化用 CLI,开发循环用 MCP”拆分。首次
52
52
  npx -y -p @taptap/maker taptap-maker init
53
53
  ```
54
54
 
55
- CLI 负责一次性流程:Git 检查、PAT 保存、TapTap token 换取、app 列表选择、AI dev kit
56
- 准备、Maker Git clone、MCP 配置写入与基础验证。安装或修改 MCP 配置后,Claude Code /
55
+ CLI 负责一次性流程:Git 检查、PAT 保存、TapTap token 换取、app 列表选择、Maker Git
56
+ clone、AI dev kit 准备、MCP 配置写入与基础验证。安装或修改 MCP 配置后,Claude Code /
57
57
  Codex / Cursor 通常需要重启会话、刷新 MCP 或新开窗口才会出现新的 MCP tools;但当前终端
58
58
  里的 CLI 初始化流程可以继续完成到 PAT 鉴权和项目绑定。
59
59
 
@@ -132,9 +132,9 @@ Maker 现在同时内置三个工作流 skill:
132
132
  - `taptap-maker-dev-kit-guide`:介绍 clone 时安装到项目目录的 AI dev kit,明确 `CLAUDE.md`、`examples/`、`templates/`、`urhox-libs/` 的用途。
133
133
  - `update-taptap-mcp`:引导用户更新本地 npx 缓存里的 `@taptap/maker`,并提醒 Maker MCP 推荐安装到 user/global scope。
134
134
 
135
- 初始化流程里,PAT 验证通过、用户选择 app 后,`taptap-maker init` 会自动准备本地 AI dev kit。
135
+ 初始化流程里,PAT 验证通过、用户选择 app 后,`taptap-maker init` 会先完成 Maker Git checkout,再自动准备本地 AI dev kit。
136
136
 
137
- CLI 会根据 `TAPTAP_MCP_ENV` 自动选择下载源:`production`(默认)使用 `https://urhox-demo-platform.spark.xd.com/ai-dev-kit/pd/stable/ai-dev-kit.zip`,`rnd` 使用 `https://urhox-demo-platform.spark.xd.com/ai-dev-kit/rnd/latest/ai-dev-kit.zip`,解压开发环境文档、引擎 API、demo、Lua 工具和本地 AI skills 到当前目录;解压复制完成后会自动运行 `tools/install-skills.sh all`(Linux/macOS)或 `tools/install-skills.ps1 all`(Windows),把 dev kit skills 安装到各 Agent 的发现目录。CLI 会先输出 `AI skills install started: <script>`,完成后输出 `AI skills install result: claude=N, codex=N, cursor=N, gemini=N`;脚本缺失、跳过或失败时也会输出原因,失败会带上平台、脚本、命令、stdout 和 stderr,方便 AI 与用户直接判断安装情况。流程会跳过 ZIP 里的顶层 `scripts` 目录并删除下载 ZIP,避免和 Maker 项目代码冲突。clone 前会先生成 `.gitignore.dev-kit-before-clone` 临时 block,clone 成功后自动合并到远端 `.gitignore`,防止这些本地开发环境文件、Agent skill 目录和 `.maker/` 本地运行状态被提交到 Maker Git。
137
+ CLI 会根据 `TAPTAP_MCP_ENV` 自动选择下载源:`production`(默认)使用 `https://urhox-demo-platform.spark.xd.com/ai-dev-kit/pd/stable/ai-dev-kit.zip`,`rnd` 使用 `https://urhox-demo-platform.spark.xd.com/ai-dev-kit/rnd/latest/ai-dev-kit.zip`,checkout 后解压开发环境文档、引擎 API、demo、Lua 工具和本地 AI skills 到当前目录,并用 dev kit 覆盖同名本地辅助文件;解压复制完成后会自动运行 `tools/install-skills.sh all`(Linux/macOS)或 `tools/install-skills.ps1 all`(Windows),把 dev kit skills 安装到各 Agent 的发现目录。CLI 会先输出 `AI skills install started: <script>`,完成后输出 `AI skills install result: claude=N, codex=N, cursor=N, gemini=N`;脚本缺失、跳过或失败时也会输出原因,失败会带上平台、脚本、命令、stdout 和 stderr,方便 AI 与用户直接判断安装情况。流程会跳过 ZIP 里的顶层 `scripts` 目录并删除下载 ZIP,避免和 Maker 项目代码冲突。dev-kit 准备阶段会生成 `.gitignore.dev-kit-before-clone` 临时 block,准备成功后自动合并到远端 `.gitignore`,防止这些本地开发环境文件、Agent skill 目录和 `.maker/` 本地运行状态被提交到 Maker Git。
138
138
 
139
139
  `maker://status` 和 `maker_status_lite` 会输出已随包内置的 skill 名称和文档路径:`taptap-maker-local`、`taptap-maker-dev-kit-guide` 与 `update-taptap-mcp`。Maker 操作目标是用户当前项目目录;若 MCP 进程 cwd 是临时对话目录,Agent 应把用户当前项目目录作为 `target_dir` 传入,不扫描其他项目。已绑定项目会检查 `CLAUDE.md`、`examples/`、`templates/`、`urhox-libs/`,并输出 `skill_install_status` 和 `skill_install_summary` 说明 `.claude/.codex/.cursor/.gemini` 下的 skill 安装状态;缺失时用 `taptap-maker dev-kit update` 恢复本地 AI dev kit 并刷新 `.gitignore` 管理块。
140
140
 
package/dist/maker.js CHANGED
@@ -28891,7 +28891,7 @@ var DEV_KIT_IGNORE_BEGIN = "# >>> TapTap Maker AI dev kit (local only) >>>";
28891
28891
  var DEV_KIT_IGNORE_END = "# <<< TapTap Maker AI dev kit (local only) <<<";
28892
28892
  var DEV_KIT_GITIGNORE_STAGING_FILE = ".gitignore.dev-kit-before-clone";
28893
28893
  var DEV_KIT_REQUIRED_ENTRIES = ["CLAUDE.md", "examples", "templates", "urhox-libs"];
28894
- var ALWAYS_IGNORED_LOCAL_ENTRIES = [".DS_Store", ".maker"];
28894
+ var ALWAYS_IGNORED_LOCAL_ENTRIES = [".DS_Store", ".maker", ".installer"];
28895
28895
  var DEV_KIT_MANAGED_ENTRY_CANDIDATES = [
28896
28896
  ".claude",
28897
28897
  ".cli",
@@ -31213,7 +31213,7 @@ function compactRuntimeLogEntry(entry) {
31213
31213
  }
31214
31214
 
31215
31215
  // src/maker/server/mcp.ts
31216
- var VERSION = true ? "1.24.0" : "dev";
31216
+ var VERSION = true ? "1.24.2" : "dev";
31217
31217
  var DEFAULT_BUILD_TIMEOUT_MS = 10 * 60 * 1e3;
31218
31218
  var PREVIEW_REFRESH_TIMEOUT_MS = 15 * 1e3;
31219
31219
  var WATCHER_STOP_TIMEOUT_MS = 1500;
@@ -32914,7 +32914,6 @@ async function runInit(parsed, ctx) {
32914
32914
  env,
32915
32915
  selected_app_id: selected.id
32916
32916
  });
32917
- await prepareDevKit(targetDir, ctx);
32918
32917
  const cloneResult = await cloneMakerProject({
32919
32918
  appId: selected.id,
32920
32919
  targetDir,
@@ -32926,6 +32925,10 @@ async function runInit(parsed, ctx) {
32926
32925
  throw appendPatRecoveryUrl(error2, parsed);
32927
32926
  });
32928
32927
  emit(ctx, "clone", "Maker project cloned or fetched", cloneResult);
32928
+ await prepareDevKit(targetDir, ctx, {
32929
+ finalizeGitignore: true,
32930
+ forceInstall: true
32931
+ });
32929
32932
  if (!skipMcpInstall) {
32930
32933
  const ides = parseIdeList(stringOption(parsed, "register_mcp") || "codex,cursor,claude");
32931
32934
  const installResults = installMcpConfigs({
@@ -33342,17 +33345,20 @@ async function resolveProjectSelection(parsed, projects, options) {
33342
33345
  return selected;
33343
33346
  }
33344
33347
  }
33345
- async function prepareDevKit(targetDir, ctx) {
33348
+ async function prepareDevKit(targetDir, ctx, options = {}) {
33346
33349
  const before = inspectAiDevKit(targetDir);
33347
- if (before.ready) {
33348
- writeDevKitStagedGitignore(
33349
- path9.join(targetDir, DEV_KIT_GITIGNORE_STAGING_FILE),
33350
- listPresentDevKitManagedEntries(targetDir)
33351
- );
33350
+ if (before.ready && !options.forceInstall) {
33352
33351
  try {
33353
33352
  const skillInstaller = installAiDevKitSkills(targetDir, {
33354
33353
  onStart: (event) => emitSkillInstallerStart(ctx, event)
33355
33354
  });
33355
+ writeDevKitStagedGitignore(
33356
+ path9.join(targetDir, DEV_KIT_GITIGNORE_STAGING_FILE),
33357
+ listPresentDevKitManagedEntries(targetDir)
33358
+ );
33359
+ if (options.finalizeGitignore) {
33360
+ finalizeStagedDevKitGitignore(targetDir);
33361
+ }
33356
33362
  emit(
33357
33363
  ctx,
33358
33364
  "dev_kit",
@@ -33363,6 +33369,13 @@ async function prepareDevKit(targetDir, ctx) {
33363
33369
  }
33364
33370
  );
33365
33371
  } catch (error2) {
33372
+ writeDevKitStagedGitignore(
33373
+ path9.join(targetDir, DEV_KIT_GITIGNORE_STAGING_FILE),
33374
+ listPresentDevKitManagedEntries(targetDir)
33375
+ );
33376
+ if (options.finalizeGitignore) {
33377
+ finalizeStagedDevKitGitignore(targetDir);
33378
+ }
33366
33379
  const detail = error2 instanceof Error ? error2.message : String(error2);
33367
33380
  emit(ctx, "dev_kit_warning", `AI skills install failed; clone will continue
33368
33381
  ${detail}`, {
@@ -33374,8 +33387,12 @@ ${detail}`, {
33374
33387
  try {
33375
33388
  const result = await installAiDevKit({
33376
33389
  targetDir,
33390
+ preserveExisting: options.preserveExisting,
33377
33391
  onSkillInstallerStart: (event) => emitSkillInstallerStart(ctx, event)
33378
33392
  });
33393
+ if (options.finalizeGitignore) {
33394
+ finalizeStagedDevKitGitignore(targetDir);
33395
+ }
33379
33396
  emit(ctx, "dev_kit", formatDevKitInstallMessage("AI dev kit prepared", result), result);
33380
33397
  emitDevKitSkillInstallerFailure(
33381
33398
  ctx,
package/dist/proxy.js CHANGED
@@ -29137,7 +29137,7 @@ var LogWriter = class {
29137
29137
  };
29138
29138
 
29139
29139
  // src/mcp-proxy/proxy.ts
29140
- var VERSION = true ? "1.24.0" : "dev";
29140
+ var VERSION = true ? "1.24.2" : "dev";
29141
29141
  var LOCAL_PROXY_TAG = "local";
29142
29142
  var TapTapMCPProxy = class {
29143
29143
  constructor(config2) {
package/dist/server.js CHANGED
@@ -6090,7 +6090,7 @@ class MultiplayerManager {
6090
6090
  // 导出
6091
6091
  // export default MultiplayerManager;
6092
6092
  // module.exports = MultiplayerManager;
6093
- // window.MultiplayerManager = MultiplayerManager;`}]}}};var ws;ws="1.24.0";async function FRe(){return Go(Rm,"api_event_relations")}async function BRe(){return Go(Rm,"protocol_template")}async function SD(){return Go(Rm,"complete_example")}async function URe(){return`# TapTap 多人联机集成指南
6093
+ // window.MultiplayerManager = MultiplayerManager;`}]}}};var ws;ws="1.24.2";async function FRe(){return Go(Rm,"api_event_relations")}async function BRe(){return Go(Rm,"protocol_template")}async function SD(){return Go(Rm,"complete_example")}async function URe(){return`# TapTap 多人联机集成指南
6094
6094
 
6095
6095
  ---
6096
6096
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taptap/instant-games-open-mcp",
3
- "version": "1.24.0",
3
+ "version": "1.24.2",
4
4
  "type": "module",
5
5
  "description": "TapTap Open API MCP Server - Documentation and Management APIs for TapTap Minigame and H5 Games (Leaderboard, and more features coming)",
6
6
  "main": "dist/server.js",
@@ -15,8 +15,8 @@ This skill covers:
15
15
 
16
16
  - initialize local Maker development
17
17
  - run the Maker CLI initialization flow
18
- - prepare local AI dev kit before project binding
19
18
  - clone a Maker project
19
+ - prepare local AI dev kit after project checkout
20
20
  - choose a Maker app from the CLI app list
21
21
  - explain PAT, Git, project binding, and editor reloads
22
22
  - inspect local changes
@@ -33,7 +33,7 @@ post-build runtime log polling loop belongs to the local Maker CLI watcher.
33
33
  Keep this split clear:
34
34
 
35
35
  - Skill: user intent, step order, whether to ask the user, friendly explanations, failure recovery.
36
- - CLI: save PAT, fetch app list, prepare dev kit, clone, install MCP config, verify local setup,
36
+ - CLI: save PAT, fetch app list, clone, prepare dev kit, install MCP config, verify local setup,
37
37
  and run the local runtime log watcher.
38
38
  - MCP tools/resources: inspect Maker status, run the combined commit/push/build path, and support
39
39
  one-shot runtime log pulls.
@@ -133,8 +133,10 @@ Keep the user-facing explanation short:
133
133
 
134
134
  ## AI Dev Kit Preparation
135
135
 
136
- `taptap-maker init` prepares local development environment files in the current working directory
137
- before it checks out the Maker project.
136
+ `taptap-maker init` checks out the Maker project before preparing local development environment
137
+ files in the current working directory. Init reinstalls the dev kit after checkout and allows
138
+ dev-kit files to overwrite same-path local helper files; the managed `.gitignore` block keeps
139
+ those files local-only so they are not submitted to Maker Git.
138
140
 
139
141
  `taptap-maker doctor` and `maker://status` check the dev-kit top-level entries for an already bound
140
142
  Maker project. If `CLAUDE.md`, `examples/`, `templates/`, or `urhox-libs/` are missing, run
@@ -161,18 +163,19 @@ resources to the local AI/Agent:
161
163
 
162
164
  The CLI is responsible for deterministic file operations:
163
165
 
164
- - extract the ZIP into the current directory
166
+ - extract the ZIP into the current directory after checkout
165
167
  - skip the ZIP top-level `scripts` directory because it conflicts with Maker project code
166
168
  - delete the downloaded `ai-dev-kit.zip` after extraction
167
169
  - write a temporary `.gitignore.dev-kit-before-clone` block for installed dev-kit entries
168
- - after Maker clone succeeds, merge that block into the checked-out `.gitignore`
170
+ - after dev-kit preparation succeeds, merge that block into the checked-out `.gitignore`
169
171
  - keep the dev-kit files local-only so they are not submitted to Maker Git
170
172
 
171
173
  Do not hand-write a custom download/unzip script while this CLI command is available.
172
174
 
173
- If clone fails because dev-kit network access is unavailable, explain that the Maker project can
174
- still be cloned, but local AI development docs/API/demo support may be incomplete. Ask whether
175
- the user wants to retry or continue without the dev kit.
175
+ If dev-kit network access is unavailable after clone succeeds, explain that the Maker project is
176
+ already checked out, but local AI development docs/API/demo support may be incomplete. Ask whether
177
+ the user wants to retry `taptap-maker init` for a full post-checkout dev-kit reinstall or continue
178
+ without the dev kit.
176
179
 
177
180
  If clone or fetch fails with Maker Git output, inspect the returned error fields instead of asking
178
181
  the user to delete local files immediately. Treat `retryable: yes`, `classification:
@@ -280,12 +283,13 @@ Do not delete, move, or overwrite user files during this check.
280
283
 
281
284
  ## Clone Directory Safety
282
285
 
283
- Before clone, the Maker CLI checks local files and reports conflicts. The AI dev kit may create
284
- local-only files before clone, so explain this in non-technical terms:
286
+ Before clone, the Maker CLI checks local files and reports conflicts. The current init flow installs
287
+ the AI dev kit after checkout, so a fresh directory should not get checkout conflicts from newly
288
+ generated dev-kit files. Explain this in non-technical terms:
285
289
 
286
290
  - existing local config folders such as `.claude`, `.mcp`, `.skill`, `.config`, `.ini` are kept
287
291
  - normal local files are kept unless they conflict with files from the Maker project
288
- - if conflicts are reported, tell the user exactly which files block clone and ask whether to move,
292
+ - if conflicts are reported, tell the user exactly which pre-existing files block clone and ask whether to move,
289
293
  rename, or choose another directory
290
294
 
291
295
  Do not delete or overwrite user files to make clone work unless the user explicitly asks.
@@ -306,8 +310,8 @@ directory over manual cleanup.
306
310
  ### `.gitignore` Merge During Clone
307
311
 
308
312
  The Maker CLI stages the dev-kit managed ignore block in
309
- `.gitignore.dev-kit-before-clone` instead of writing `.gitignore` before checkout. After Maker
310
- clone succeeds, the CLI merges that managed block into the checked-out `.gitignore` and
313
+ `.gitignore.dev-kit-before-clone` while preparing the dev kit. After the Maker checkout and dev-kit
314
+ preparation both succeed, the CLI merges that managed block into the checked-out `.gitignore` and
311
315
  removes the temporary file.
312
316
 
313
317
  If clone still reports conflicts for files other than `.gitignore.dev-kit-before-clone`, do not