agentleFS
KingKongRoboticsKingKongRobotics/jumper/.claude/skills/bundle-manual/SKILL.md

bundle-manual

Skill3.1k starsChanged 34 days agoApache-2.0View on GitHub

Translate a built bundle's manual.en.json into Chinese as manual.zh.json and pack it into the .app. Use right after `python scripts/deploy.py` writes a bundle -- every bundle an agent builds ships with the Chinese manual as well as the English one -- and whenever a bundle is found with manual.en.json and no manual.zh.json, or when asked for "操作说明", "中文说明", "按键说明" or "manual" of a bundle/app.

Trending

More talk lately.thin dataabout the whole repository

Dec 2025: 0 mentionsJan 2026: 0 mentionsFeb 2026: 0 mentionsMar 2026: 0 mentionsApr 2026: 0 mentionsMay 2026: 0 mentionsJun 2026: 0 mentionsJul 2026: 0 mentionsAug 2026: 0 mentionsSep 2026: 0 mentionsOct 2026: 4 mentionsNov 2026: 0 mentions
Dec 2025Jun 2026Nov 2026
Mentions a month of the KingKongRobotics/jumper repository that our weekly crawl found: only 4 in all, so this is a hint, not a trend. There is no adoption data for this file yet.

The file

We split this skill into the rules it gives an agent

5 rules. About 0 are common, 0 are distinctive, and 5 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Read manual.en.json in full.

    line 24
  2. Very specific:

    Write manual.zh.json somewhere outside the bundle (a scratch file):

    line 25
  3. Very specific:

    leave every other value exactly as it is -- schema, bundle, mode, task, default, control, with, device, from, the key of each entry in a …

    line 32
  4. Very specific:

    Add it to the bundle, which checks it and packs the .app again:

    line 37
  5. Very specific:

    If the .app is going to be committed (bundles are committed under out/bundle_<ts>/<name>.app), commit it after this step, not before: the …

    line 45

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

The bundle's manual, in Chinese

scripts/deploy.py writes manual.en.json (kk-bundle-manual/1) into every bundle: each pad control and each key the bundle reads, what it does in each mode, how each mode is reached and left, and every mode switch. It is generated from the controller's own account of its controls (padGuide), so it cannot disagree with the bindings. The pad and the keyboard are two paths since 2026-09-29 and the manual lists them apart: in each mode controls is the pad and keys the keyboard, and each switch says which device it is on. The Chinese version is a translation of it, and this skill is how it is made: the build cannot write natural Chinese, and a person or an agent can.

Steps

  1. Find the bundle directory. deploy.py prints it ([deploy] bundled <commit> -> …/out/bundle_<ts>/<name>) and then prints the --translate command with that path already filled in. It holds manual.en.json and bundle.json.
  2. Read manual.en.json in full.
  3. Write manual.zh.json somewhere outside the bundle (a scratch file):
    • the same JSON, field for field, in the same order;
    • "language": "zh";
    • translate only the text fields: source, summary, enter, leave, keyboard, pad, does -- and does wherever it is: in each mode's controls (the pad), in each mode's keys (the keyboard), and in switches. A pad that is null (a keyboard switch) stays null;
    • leave every other value exactly as it is -- schema, bundle, mode, task, default, control, with, device, from, the key of each entry in a mode's keys (W, ;, Space, ↑), and the keys lists of switches (Space, Ctrl + 1, Num 1). They are identifiers, and the check below refuses a translation that changes one.
  4. Add it to the bundle, which checks it and packs the .app again:

    python scripts/deploy.py --translate out/bundle_<ts>/<name> --language zh --manual <scratch file>

    It refuses a file whose non-text fields differ from the English one, and holds the result to deploy/app.schema. Fix what it names and run it again.

  5. If the .app is going to be committed (bundles are committed under out/bundle_<ts>/<name>.app), commit it after this step, not before: the translation changes the archive.

How to write it

For someone holding a gamepad or sitting at a keyboard, in plain Chinese. Keep mode names as identifiers where they name a mode (进入 jump), and say what the mode is in the sentence when the English does. The manual lists each mode's keys on their own; say what a key does, never which pad control it is -- the English never says that either.

English中文
left stick / right stick左摇杆 / 右摇杆
up and down / left and right上下 / 左右
up: …; down: …上:……;下:……
left trigger (LT) / right trigger (RT)左扳机(LT)/ 右扳机(RT)
left bumper (LB) / right bumper (RB)左肩键(LB)/ 右肩键(RB)
right stick click (R3)右摇杆按下(R3)
D-pad / D-pad up十字键 / 十字键上
hold Menu, then D-pad up按住 Menu 再按十字键上
Menu, pressed and let go on its own单独按下再松开 Menu
walk forward / walk back前进 / 后退
step left / step right左移 / 右移
turn left / turn right左转 / 右转
twist left / twist right左扭 / 右扭
nose down / nose up低头 / 抬头
roll, right side down / left side down横滚,右侧低 / 横滚,左侧低
stand taller / crouch lower升高 / 降低
(moves it; let go, it stays)(持续移动,松开即停留)
with right stick click (R3) held -- …按住右摇杆(R3)时——……
hold for the other stick layer按住切换到摇杆的另一层
tapped -- pressed and let go without the stick moving -- puts the moved axes back at rest轻点(按下后摇杆不动就松开):被移动的量回到静止
let go of everything: every control back to rest全部松开:所有操作回到静止
switch to X; press again to switch back进入 X;再按一次退出
(from X, Y only)(仅在 X、Y 中有效)
leave X, Y -- whichever is on -- back to locomotion退出 X、Y 中正在进行的那一个,回到 locomotion
click A once / double-click A / triple-click A单击 A / 双击 A / 三连击 A
click A four times / click A five times四连击 A / 五连击 A
switch to X; double-click again to switch back进入 X;再双击一次退出

A task's own words -- closes the left claw as far as it is held, from its controls.yaml -- are translated like any other text: 按多深,左爪就夹多紧; holds the carried arm straight out, thumb up, while held is 按住时手臂向前伸直,拇指朝上, and thumb-web up is 虎口朝上. A claw mode lists only its own side's claw (the left claw's lists LT and Space, not RT), so translate what is there and add nothing.

Why a separate step

The English is the build's and the Chinese is a translation of it, never the other way round: a manual written in Chinese first would have no generator to hold it to the bindings. --translate is what keeps the two the same manual in two languages -- it compares every identifier -- and it is also why a bundle built without an agent still ships the English one.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.