@taptap/instant-games-open-mcp 1.23.1 → 2.0.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 +64 -56
- package/dist/maker.js +1807 -1125
- package/dist/proxy.js +1 -1
- package/dist/server.js +1 -1
- package/package.json +1 -1
- package/skills/taptap-maker-dev-kit-guide/SKILL.md +19 -5
- package/skills/taptap-maker-local/SKILL.md +144 -55
- package/skills/update-taptap-mcp/SKILL.md +9 -16
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 ? "
|
|
29140
|
+
var VERSION = true ? "2.0.0" : "dev";
|
|
29141
29141
|
var TapTapMCPProxy = class {
|
|
29142
29142
|
constructor(config2) {
|
|
29143
29143
|
this.connected = false;
|
package/dist/server.js
CHANGED
|
@@ -6078,7 +6078,7 @@ class MultiplayerManager {
|
|
|
6078
6078
|
// 导出
|
|
6079
6079
|
// export default MultiplayerManager;
|
|
6080
6080
|
// module.exports = MultiplayerManager;
|
|
6081
|
-
// window.MultiplayerManager = MultiplayerManager;`}]}}};var ws;ws="
|
|
6081
|
+
// window.MultiplayerManager = MultiplayerManager;`}]}}};var ws;ws="2.0.0";async function MRe(){return Go(Rm,"api_event_relations")}async function NRe(){return Go(Rm,"protocol_template")}async function SD(){return Go(Rm,"complete_example")}async function jRe(){return`# TapTap 多人联机集成指南
|
|
6082
6082
|
|
|
6083
6083
|
---
|
|
6084
6084
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taptap/instant-games-open-mcp",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
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",
|
|
@@ -5,8 +5,8 @@ description: Explain the local TapTap Maker AI dev kit installed during Maker pr
|
|
|
5
5
|
|
|
6
6
|
# TapTap Maker AI Dev Kit
|
|
7
7
|
|
|
8
|
-
Use this skill to orient the local AI/Agent after `
|
|
9
|
-
|
|
8
|
+
Use this skill to orient the local AI/Agent after `taptap-maker init` installs the AI dev kit into a
|
|
9
|
+
Maker project directory.
|
|
10
10
|
|
|
11
11
|
## What To Tell The Local Agent
|
|
12
12
|
|
|
@@ -30,9 +30,23 @@ When a user asks to develop or modify a Maker project after clone:
|
|
|
30
30
|
4. Use `templates/` when creating new game files or scaffolding.
|
|
31
31
|
5. Use `urhox-libs/` when engine API behavior or capability names are needed.
|
|
32
32
|
|
|
33
|
-
If these entries are missing in a bound Maker project,
|
|
34
|
-
directory as `target_dir
|
|
35
|
-
dev-kit
|
|
33
|
+
If these entries are missing in a bound Maker project, read `maker://status` or call
|
|
34
|
+
`maker_status_lite` with the actual project directory as `target_dir` to confirm state, then run
|
|
35
|
+
`taptap-maker dev-kit update` in that project directory to restore missing local dev-kit entries.
|
|
36
36
|
|
|
37
37
|
These files are local development aids. Do not submit them to Maker Git unless the user explicitly
|
|
38
38
|
asks and understands they are local environment files.
|
|
39
|
+
|
|
40
|
+
## Testing And Result Check
|
|
41
|
+
|
|
42
|
+
Keep validation simple for Maker users. 用户可以直接说“提交”或“构建”:
|
|
43
|
+
|
|
44
|
+
- If the user says “提交”, “推送”, “构建”, “预览”, or “跑一下”, use
|
|
45
|
+
`maker_build_current_directory`. The tool commits when needed, pushes to Maker remote, and then
|
|
46
|
+
runs the remote build.
|
|
47
|
+
- If push fails, do not start a separate build or generic Git push. Explain the returned recovery
|
|
48
|
+
details, resolve pull/rebase/conflict with user approval, then retry `maker_build_current_directory`.
|
|
49
|
+
- After submit or build finishes, tell the user to open the TapMaker 网页端查看结果.
|
|
50
|
+
|
|
51
|
+
Do not create local-only test scripts just to verify Maker changes. The expected validation path is
|
|
52
|
+
chat request -> Maker MCP submit/build tool -> TapMaker web result check.
|
|
@@ -5,18 +5,19 @@ description: Guide TapTap Maker local development workflows. Use when a user ask
|
|
|
5
5
|
|
|
6
6
|
# TapTap Maker Local Workflow
|
|
7
7
|
|
|
8
|
-
Use this skill as the workflow layer for Maker local development.
|
|
9
|
-
|
|
10
|
-
state in plain language.
|
|
8
|
+
Use this skill as the workflow layer for Maker local development. The Maker CLI owns one-time
|
|
9
|
+
initialization; MCP tools own the high-frequency development loop. This skill decides the sequence,
|
|
10
|
+
asks the user for choices, and explains local state in plain language.
|
|
11
11
|
|
|
12
12
|
## Scope
|
|
13
13
|
|
|
14
14
|
This skill covers:
|
|
15
15
|
|
|
16
16
|
- initialize local Maker development
|
|
17
|
+
- run the Maker CLI initialization flow
|
|
17
18
|
- prepare local AI dev kit before project binding
|
|
18
19
|
- clone a Maker project
|
|
19
|
-
- choose a Maker app from the app list
|
|
20
|
+
- choose a Maker app from the CLI app list
|
|
20
21
|
- explain PAT, Git, project binding, and editor reloads
|
|
21
22
|
- inspect local changes
|
|
22
23
|
- pull remote changes
|
|
@@ -24,30 +25,30 @@ This skill covers:
|
|
|
24
25
|
- push local commits
|
|
25
26
|
- explain and resolve conflicts with user approval
|
|
26
27
|
|
|
27
|
-
Build behavior
|
|
28
|
-
current MCP tools.
|
|
28
|
+
Build, submit, push, preview, and verify behavior belongs to the single Maker MCP build tool.
|
|
29
29
|
|
|
30
30
|
## Responsibilities
|
|
31
31
|
|
|
32
32
|
Keep this split clear:
|
|
33
33
|
|
|
34
34
|
- Skill: user intent, step order, whether to ask the user, friendly explanations, failure recovery.
|
|
35
|
-
-
|
|
36
|
-
-
|
|
35
|
+
- CLI: save PAT, fetch app list, prepare dev kit, clone, install MCP config, verify local setup.
|
|
36
|
+
- MCP tools/resources: inspect Maker status and run the combined commit/push/build path.
|
|
37
37
|
|
|
38
|
-
Do not reimplement Maker API calls or Git authentication in shell when
|
|
38
|
+
Do not reimplement Maker API calls or Git authentication in shell when the Maker CLI or MCP tool
|
|
39
|
+
exists.
|
|
39
40
|
|
|
40
41
|
## Main Intent Table
|
|
41
42
|
|
|
42
43
|
| User intent | Required workflow |
|
|
43
44
|
| --------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
|
44
|
-
| initialize / configure / continue Maker local development |
|
|
45
|
+
| initialize / configure / continue Maker local development | Run the Maker CLI initialization workflow. |
|
|
45
46
|
| clone / download Maker project locally | Follow "Initialization Workflow"; do not ask for app_id directly. |
|
|
46
|
-
| status / is Maker ready |
|
|
47
|
-
| submit / commit / push to Maker | Inspect local Git state, summarize changed files, then call `
|
|
47
|
+
| status / is Maker ready | Read `maker://status`, call `maker_status_lite` if resources are unavailable, or run `taptap-maker doctor`. |
|
|
48
|
+
| submit / commit / push to Maker | Inspect local Git state, summarize changed files, then call `maker_build_current_directory` unless blocked. |
|
|
48
49
|
| pull / update from remote | Inspect local changes first; if dirty, explain options before pulling. |
|
|
49
50
|
| conflict / merge failed | Explain why the conflict happened, list conflict files, inspect conflict hunks, propose a resolution plan, and ask before editing. |
|
|
50
|
-
| build / preview / run / verify | Use `maker_build_current_directory`;
|
|
51
|
+
| build / preview / run / verify | Use `maker_build_current_directory`; it commits/pushes before build unless the user explicitly requests remote-only build. |
|
|
51
52
|
|
|
52
53
|
## Project Detection
|
|
53
54
|
|
|
@@ -68,6 +69,23 @@ dialogue/session directory, pass the user's current project directory as `target
|
|
|
68
69
|
client does not expose that directory, say the current client did not provide the project directory
|
|
69
70
|
instead of guessing.
|
|
70
71
|
|
|
72
|
+
### Attached Workspace Selection
|
|
73
|
+
|
|
74
|
+
Some AI clients start MCP from a dialogue/session directory and expose the real project as an
|
|
75
|
+
attached workspace. For Maker status, clone, submit, and build, compare:
|
|
76
|
+
|
|
77
|
+
- the AI dialogue current directory, often containing `dialogues`
|
|
78
|
+
- the attached workspace directories shown by the client
|
|
79
|
+
|
|
80
|
+
If there is a single attached workspace, use that single attached workspace as `target_dir` when
|
|
81
|
+
calling Maker tools. If there are multiple attached workspaces, show the paths and ask the user
|
|
82
|
+
which one is the Maker project directory. Do not treat the dialogue/session directory as the Maker
|
|
83
|
+
project directory, and do not ask the user to clone an app into that directory.
|
|
84
|
+
|
|
85
|
+
If status output returns `AI client workspace selection`, follow that hint: choose an attached
|
|
86
|
+
workspace first, then read `maker://status` or call `maker_status_lite` with the attached project
|
|
87
|
+
directory.
|
|
88
|
+
|
|
71
89
|
## Initialization Workflow
|
|
72
90
|
|
|
73
91
|
Trigger phrases include:
|
|
@@ -84,43 +102,43 @@ Trigger phrases include:
|
|
|
84
102
|
|
|
85
103
|
Workflow:
|
|
86
104
|
|
|
87
|
-
1.
|
|
88
|
-
|
|
89
|
-
2. If
|
|
105
|
+
1. Run `taptap-maker doctor` for the user's intended Maker directory, or read `maker://status` when
|
|
106
|
+
the MCP server is already available.
|
|
107
|
+
2. If the status reports the current directory is already bound to a Maker project, stop the
|
|
90
108
|
initialization/clone path. Continue with the user's current intent in that bound project. Do not
|
|
91
109
|
ask which app to clone unless the user explicitly asks to switch or re-clone.
|
|
92
110
|
3. If Git is missing, stop. Tell the user Git is required for clone/submit/build-side Git work.
|
|
93
|
-
4.
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
resources, especially `CLAUDE.md`, `examples/`, `templates/`, and `urhox-libs/`.
|
|
111
|
+
4. Run `taptap-maker init` in the user's intended Maker directory. The CLI will request PAT if
|
|
112
|
+
missing, fetch TapTap token, list every available app, ask the user to choose, prepare the AI dev
|
|
113
|
+
kit, clone the Maker project, and install/verify MCP config.
|
|
114
|
+
Tell the user that the first Maker clone can take 20+ seconds because the server may be
|
|
115
|
+
preparing the repository, and that they should keep the command running while the CLI retries
|
|
116
|
+
transient 503/5xx failures.
|
|
117
|
+
5. If the CLI reports ordinary local files or parent Git repository risk, explain the warning and
|
|
118
|
+
ask whether the user wants to continue in this directory or switch to a clean independent one.
|
|
119
|
+
6. After clone succeeds, run `taptap-maker doctor` again or explain that `.maker-mcp/config.json`
|
|
120
|
+
now binds the directory to the Maker project.
|
|
121
|
+
7. Tell the local AI/Agent to use the `taptap-maker-dev-kit-guide` skill for the installed dev-kit
|
|
122
|
+
resources, especially `CLAUDE.md`, `examples/`, `templates/`, and `urhox-libs/`.
|
|
106
123
|
|
|
107
124
|
Keep the user-facing explanation short:
|
|
108
125
|
|
|
109
126
|
```text
|
|
110
|
-
|
|
111
|
-
如果还没有 PAT
|
|
127
|
+
我会先用 Maker CLI 检查本机 Git、PAT 和当前目录是否已绑定 Maker 项目。
|
|
128
|
+
如果还没有 PAT,CLI 会让你去页面创建一个;拿到项目列表后你选游戏,我再拉代码。
|
|
112
129
|
```
|
|
113
130
|
|
|
114
131
|
## AI Dev Kit Preparation
|
|
115
132
|
|
|
116
|
-
`
|
|
117
|
-
|
|
133
|
+
`taptap-maker init` prepares local development environment files in the current working directory
|
|
134
|
+
before it checks out the Maker project.
|
|
118
135
|
|
|
119
|
-
`
|
|
120
|
-
`CLAUDE.md`, `examples/`, `templates/`, or `urhox-libs/` are missing,
|
|
121
|
-
without overwriting existing local files and
|
|
136
|
+
`taptap-maker doctor` and `maker://status` check the dev-kit top-level entries for an already bound
|
|
137
|
+
Maker project. If `CLAUDE.md`, `examples/`, `templates/`, or `urhox-libs/` are missing, run
|
|
138
|
+
`taptap-maker dev-kit update` to restore the dev kit without overwriting existing local files and
|
|
139
|
+
refresh the managed `.gitignore` block.
|
|
122
140
|
|
|
123
|
-
The
|
|
141
|
+
The CLI downloads and installs:
|
|
124
142
|
|
|
125
143
|
```text
|
|
126
144
|
https://urhox-demo-platform.spark.xd.com/ai-dev-kit/pd/stable/ai-dev-kit.zip
|
|
@@ -134,7 +152,7 @@ resources to the local AI/Agent:
|
|
|
134
152
|
- `templates/` contains reusable templates.
|
|
135
153
|
- `urhox-libs/` contains engine APIs and capability references.
|
|
136
154
|
|
|
137
|
-
The
|
|
155
|
+
The CLI is responsible for deterministic file operations:
|
|
138
156
|
|
|
139
157
|
- extract the ZIP into the current directory
|
|
140
158
|
- skip the ZIP top-level `scripts` directory because it conflicts with Maker project code
|
|
@@ -143,18 +161,29 @@ The clone tool is responsible for deterministic file operations:
|
|
|
143
161
|
- after Maker clone succeeds, merge that block into the checked-out `.gitignore`
|
|
144
162
|
- keep the dev-kit files local-only so they are not submitted to Maker Git
|
|
145
163
|
|
|
146
|
-
Do not hand-write a custom download/unzip script while this
|
|
164
|
+
Do not hand-write a custom download/unzip script while this CLI command is available.
|
|
147
165
|
|
|
148
166
|
If clone fails because dev-kit network access is unavailable, explain that the Maker project can
|
|
149
167
|
still be cloned, but local AI development docs/API/demo support may be incomplete. Ask whether
|
|
150
168
|
the user wants to retry or continue without the dev kit.
|
|
151
169
|
|
|
170
|
+
If clone or fetch fails with Maker Git output, inspect the returned error fields instead of asking
|
|
171
|
+
the user to delete local files immediately. Treat `retryable: yes`, `classification:
|
|
172
|
+
remote_transient`, or retry reasons such as `remote_http_5xx`, `network_or_timeout`, and
|
|
173
|
+
`connection_interrupted` as temporary service/network failures. For first clone, explain that 503
|
|
174
|
+
often means the Maker server is still preparing the repository and can take more than 20 seconds.
|
|
175
|
+
The CLI already retried these automatically; if it still fails, tell the user they can retry
|
|
176
|
+
`taptap-maker init` later or switch to a cleaner independent directory after repeated failures. Do
|
|
177
|
+
not retry for auth, permission, repository-not-found, remote-rejected, local file conflict, or local
|
|
178
|
+
permission errors until the reported cause is fixed.
|
|
179
|
+
|
|
152
180
|
## PAT Handling
|
|
153
181
|
|
|
154
|
-
If the user pastes a token-like string while the initialization flow is waiting for PAT,
|
|
155
|
-
`
|
|
156
|
-
|
|
157
|
-
|
|
182
|
+
If the user pastes a token-like string while the initialization flow is waiting for PAT, let the
|
|
183
|
+
running `taptap-maker init` prompt consume it, or run `taptap-maker pat set` and paste the PAT into
|
|
184
|
+
the prompt. Do not put PAT directly in argv unless the user explicitly accepts the ps/shell-history
|
|
185
|
+
exposure. Do not just say "received". If the directory is already bound, treat `taptap-maker apps`
|
|
186
|
+
output as account reference only and continue the user's current bound-project task.
|
|
158
187
|
|
|
159
188
|
If PAT exchange fails:
|
|
160
189
|
|
|
@@ -167,9 +196,9 @@ If PAT exchange fails:
|
|
|
167
196
|
Use app selection only when the current directory is unbound and the user is initializing or cloning
|
|
168
197
|
a Maker project, or when the user explicitly asks to switch or re-clone.
|
|
169
198
|
|
|
170
|
-
If the current directory is already bound, app lists from `
|
|
171
|
-
|
|
172
|
-
|
|
199
|
+
If the current directory is already bound, app lists from `taptap-maker apps` are reference only. Do
|
|
200
|
+
not ask which app to clone. Continue operating on the current bound project unless the user
|
|
201
|
+
explicitly requests a different project.
|
|
173
202
|
|
|
174
203
|
When app selection is needed, display every app entry from the tool result and ask the user to
|
|
175
204
|
choose by index, app id, or name. Do not replace the list with a summary such as "10 apps are
|
|
@@ -181,10 +210,30 @@ Do not auto-select:
|
|
|
181
210
|
- the most recent app
|
|
182
211
|
- the only app
|
|
183
212
|
|
|
184
|
-
After the user chooses,
|
|
213
|
+
After the user chooses, let `taptap-maker init` continue with the selected app. Do not ask the user
|
|
214
|
+
to manually provide app_id unless the CLI is being run non-interactively.
|
|
185
215
|
|
|
186
216
|
## Working Directory Compliance Check
|
|
187
217
|
|
|
218
|
+
Before every clone attempt, run `taptap-maker doctor` for the user's intended Maker development
|
|
219
|
+
directory. Use that result as the source of truth for Git availability, existing Maker binding,
|
|
220
|
+
outer Git repository detection, and AI dev-kit status.
|
|
221
|
+
|
|
222
|
+
### Directory Suitability Decision
|
|
223
|
+
|
|
224
|
+
After `taptap-maker doctor`, decide whether the directory is suitable for clone:
|
|
225
|
+
|
|
226
|
+
- If the directory is already bound to a Maker project, do not clone again unless the user
|
|
227
|
+
explicitly asks to switch or re-clone.
|
|
228
|
+
- If Git is missing, stop and tell the user to install Git first.
|
|
229
|
+
- If `Maker Git directory` reports `inside_parent_git_repo` or `target_is_git_root: no` with an
|
|
230
|
+
outer `git_root`, explain that the directory is under another Git repository. Recommend a
|
|
231
|
+
completely independent directory, such as `~/MakerProjects/<game-name>`.
|
|
232
|
+
- If the directory is unbound and only contains ignored local config folders, continue after the
|
|
233
|
+
user chooses an app.
|
|
234
|
+
- If the directory contains ordinary user files or folders, explain that Maker clone keeps local
|
|
235
|
+
files but may stop on path conflicts. Ask whether to continue here or switch to a clean directory.
|
|
236
|
+
|
|
188
237
|
Before clone, inspect only the current directory top level.
|
|
189
238
|
The goal is to avoid surprising overwrites, not to deeply audit game code.
|
|
190
239
|
|
|
@@ -202,12 +251,23 @@ If the directory contains ordinary user files or folders, explain that Maker ini
|
|
|
202
251
|
keep local files, but clone can fail if a local path conflicts with the Maker project. Ask whether
|
|
203
252
|
to continue in this directory or switch to a clean directory.
|
|
204
253
|
|
|
254
|
+
If the current directory is inside a larger Git repository but is not itself a Git root, warn the
|
|
255
|
+
user before clone:
|
|
256
|
+
|
|
257
|
+
- The outer repository may be an existing user project.
|
|
258
|
+
- A Maker project can live under that directory only if the Maker directory gets its own `.git`.
|
|
259
|
+
- Recommend a completely independent directory, such as `~/MakerProjects/<game-name>`, for safer
|
|
260
|
+
local development.
|
|
261
|
+
- If the user explicitly continues, continue `taptap-maker init`; the CLI must initialize an
|
|
262
|
+
independent Maker Git repository in the target directory and must not modify the outer repository
|
|
263
|
+
remote.
|
|
264
|
+
|
|
205
265
|
Do not delete, move, or overwrite user files during this check.
|
|
206
266
|
|
|
207
267
|
## Clone Directory Safety
|
|
208
268
|
|
|
209
|
-
Before clone, the Maker
|
|
210
|
-
|
|
269
|
+
Before clone, the Maker CLI checks local files and reports conflicts. The AI dev kit may create
|
|
270
|
+
local-only files before clone, so explain this in non-technical terms:
|
|
211
271
|
|
|
212
272
|
- existing local config folders such as `.claude`, `.mcp`, `.skill`, `.config`, `.ini` are kept
|
|
213
273
|
- normal local files are kept unless they conflict with files from the Maker project
|
|
@@ -216,11 +276,24 @@ may create local-only files before clone, so explain this in non-technical terms
|
|
|
216
276
|
|
|
217
277
|
Do not delete or overwrite user files to make clone work unless the user explicitly asks.
|
|
218
278
|
|
|
279
|
+
If `taptap-maker init` fails and returns `partial_state`, explain the state in plain language:
|
|
280
|
+
|
|
281
|
+
- `project_bound: no` usually means clone did not finish; retrying clone is allowed.
|
|
282
|
+
- `git_initialized: yes` with `project_bound: no` means the directory may contain a partial local
|
|
283
|
+
Git setup; retry once, and if it fails again recommend a fresh independent directory.
|
|
284
|
+
- `ai_dev_kit_present: yes` means local AI docs/examples may already be present even though Maker
|
|
285
|
+
project checkout failed.
|
|
286
|
+
- `project_bound: yes` means the directory already has Maker binding; run `taptap-maker doctor` before
|
|
287
|
+
attempting anything else.
|
|
288
|
+
|
|
289
|
+
Do not delete partial files automatically. For novice users, prefer recommending a new independent
|
|
290
|
+
directory over manual cleanup.
|
|
291
|
+
|
|
219
292
|
### `.gitignore` Merge During Clone
|
|
220
293
|
|
|
221
|
-
The Maker
|
|
294
|
+
The Maker CLI stages the dev-kit managed ignore block in
|
|
222
295
|
`.gitignore.dev-kit-before-clone` instead of writing `.gitignore` before checkout. After Maker
|
|
223
|
-
clone succeeds, the
|
|
296
|
+
clone succeeds, the CLI merges that managed block into the checked-out `.gitignore` and
|
|
224
297
|
removes the temporary file.
|
|
225
298
|
|
|
226
299
|
If clone still reports conflicts for files other than `.gitignore.dev-kit-before-clone`, do not
|
|
@@ -232,8 +305,8 @@ submitted to Maker Git.
|
|
|
232
305
|
|
|
233
306
|
## Bundled Skills
|
|
234
307
|
|
|
235
|
-
When `
|
|
236
|
-
paths. Do not install or register skills automatically.
|
|
308
|
+
When `taptap-maker doctor`, `maker://status`, or `maker_status_lite` reports TapTap bundled workflow
|
|
309
|
+
skills, show the skill names and document paths. Do not install or register skills automatically.
|
|
237
310
|
|
|
238
311
|
`taptap-maker-local` covers Maker local workflow. `taptap-maker-dev-kit-guide` explains the local
|
|
239
312
|
AI dev-kit resources installed during clone. `update-taptap-mcp` covers local TapTap MCP cache
|
|
@@ -270,14 +343,30 @@ mean:
|
|
|
270
343
|
commit + push + Maker build
|
|
271
344
|
```
|
|
272
345
|
|
|
273
|
-
Use `
|
|
346
|
+
Use `maker_build_current_directory` for this path. Do not use generic Git task-id,
|
|
274
347
|
branch-creation, or PR rules inside Maker project repositories.
|
|
275
348
|
|
|
276
|
-
If `
|
|
349
|
+
If `maker_build_current_directory` returns a build failure after a successful push, report both:
|
|
277
350
|
|
|
278
351
|
- submit/push succeeded
|
|
279
352
|
- build failed, with the concrete build error
|
|
280
353
|
|
|
354
|
+
If submit created a local commit but push failed because the Maker remote was temporarily
|
|
355
|
+
unavailable, do not run a manual generic `git push`. Fix the reported cause if needed, then retry
|
|
356
|
+
`maker_build_current_directory`. Maker MCP will detect committed-but-unpushed local commits and push
|
|
357
|
+
them before build.
|
|
358
|
+
|
|
359
|
+
For push failures, use the returned `classification`, `retryable`, `retry_reason`, and
|
|
360
|
+
`retry_attempts` fields. Temporary 5xx/network/timeout failures may be retried with the Maker build
|
|
361
|
+
tool; rejected remote updates require pull/rebase first; auth failures require refreshing PAT.
|
|
362
|
+
|
|
363
|
+
When a Maker tool output contains `push_recovery`, follow it exactly:
|
|
364
|
+
|
|
365
|
+
- Tell the user the local commit is preserved but not yet on Maker remote.
|
|
366
|
+
- Do not ask for permission to run a generic `git push`.
|
|
367
|
+
- Retry with `maker_build_current_directory` for submit and build requests.
|
|
368
|
+
- If the failure is `remote_rejected`, ask before pull/rebase; do not create a new branch or PR.
|
|
369
|
+
|
|
281
370
|
## Pull And Conflict Handling
|
|
282
371
|
|
|
283
372
|
Before pulling:
|
|
@@ -75,7 +75,7 @@ foreach ($f in $projectConfigPaths) {
|
|
|
75
75
|
## Step 1:对比远端和本地版本
|
|
76
76
|
|
|
77
77
|
```powershell
|
|
78
|
-
npm view '@taptap/instant-games-open-mcp
|
|
78
|
+
npm view '@taptap/instant-games-open-mcp' version
|
|
79
79
|
$NpxDir = Join-Path (npm config get cache) '_npx'
|
|
80
80
|
Get-ChildItem $NpxDir -Directory -ErrorAction SilentlyContinue | ForEach-Object {
|
|
81
81
|
$p = Join-Path $_.FullName 'node_modules\@taptap\instant-games-open-mcp\package.json'
|
|
@@ -98,17 +98,11 @@ Get-ChildItem $NpxDir -Directory -ErrorAction SilentlyContinue | ForEach-Object
|
|
|
98
98
|
|
|
99
99
|
## Step 3:预热下载
|
|
100
100
|
|
|
101
|
-
|
|
101
|
+
预热正式 npm 包,并验证 `taptap-maker` binary 可以启动。
|
|
102
102
|
|
|
103
103
|
```powershell
|
|
104
|
-
$env:TAPTAP_MCP_ENV = 'rnd'
|
|
105
104
|
$log = Join-Path $env:TEMP 'taptap-mcp-warmup.log'
|
|
106
|
-
|
|
107
|
-
-ArgumentList '-y','-p','@taptap/instant-games-open-mcp@beta','taptap-maker' `
|
|
108
|
-
-RedirectStandardOutput $log -RedirectStandardError "$log.err" `
|
|
109
|
-
-WindowStyle Hidden -PassThru
|
|
110
|
-
Start-Sleep -Seconds 25
|
|
111
|
-
Stop-Process -Id $proc.Id -Force -ErrorAction SilentlyContinue
|
|
105
|
+
npx -y -p '@taptap/instant-games-open-mcp' taptap-maker help > $log 2> "$log.err"
|
|
112
106
|
```
|
|
113
107
|
|
|
114
108
|
## Step 4:验证
|
|
@@ -124,7 +118,7 @@ claude mcp list 2>&1 | Select-String -Pattern 'taptap|Warning'
|
|
|
124
118
|
|
|
125
119
|
## Step 5:提示用户重启客户端
|
|
126
120
|
|
|
127
|
-
更新完成后提醒用户重启 MCP 客户端,或新开 Claude Code / Codex / Cursor 窗口。当前会话通常不会热加载新 MCP
|
|
121
|
+
更新完成后提醒用户重启 MCP 客户端,或新开 Claude Code / Codex / Cursor 窗口。当前会话通常不会热加载新 MCP;重启后以能读取 `maker://status` 作为首选生效标准;如果客户端不支持 MCP Resources,则以 `maker_status_lite` 是否可调用作为兜底标准。
|
|
128
122
|
|
|
129
123
|
---
|
|
130
124
|
|
|
@@ -165,7 +159,7 @@ done
|
|
|
165
159
|
## Step 1:对比远端和本地版本
|
|
166
160
|
|
|
167
161
|
```bash
|
|
168
|
-
npm view @taptap/instant-games-open-mcp
|
|
162
|
+
npm view @taptap/instant-games-open-mcp version
|
|
169
163
|
NPX_DIR="$(npm config get cache)/_npx"
|
|
170
164
|
for d in "$NPX_DIR"/*/; do
|
|
171
165
|
p="$d/node_modules/@taptap/instant-games-open-mcp/package.json"
|
|
@@ -186,12 +180,11 @@ done
|
|
|
186
180
|
|
|
187
181
|
## Step 3:预热下载
|
|
188
182
|
|
|
189
|
-
|
|
183
|
+
预热正式 npm 包,并验证 `taptap-maker` binary 可以启动。
|
|
190
184
|
|
|
191
185
|
```bash
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
PID=$!; sleep 25; kill $PID 2>/dev/null; wait 2>/dev/null
|
|
186
|
+
npx -y -p @taptap/instant-games-open-mcp taptap-maker help \
|
|
187
|
+
> /tmp/taptap-mcp-warmup.log 2>&1
|
|
195
188
|
```
|
|
196
189
|
|
|
197
190
|
## Step 4:验证
|
|
@@ -207,4 +200,4 @@ claude mcp list 2>&1 | grep -E "taptap|Warning"
|
|
|
207
200
|
|
|
208
201
|
## Step 5:提示用户重启客户端
|
|
209
202
|
|
|
210
|
-
更新完成后提醒用户重启 MCP 客户端,或新开 Claude Code / Codex / Cursor 窗口。当前会话通常不会热加载新 MCP
|
|
203
|
+
更新完成后提醒用户重启 MCP 客户端,或新开 Claude Code / Codex / Cursor 窗口。当前会话通常不会热加载新 MCP;重启后以能读取 `maker://status` 作为首选生效标准;如果客户端不支持 MCP Resources,则以 `maker_status_lite` 是否可调用作为兜底标准。
|