一键导入
add-abbreviation
Add a new jj abbreviation across the 4 required sites (register, erase, README, test) with verification. Invoke manually; has side effects.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Add a new jj abbreviation across the 4 required sites (register, erase, README, test) with verification. Invoke manually; has side effects.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Spawn a parallel coding-agent session in its own jj workspace using `jj_agent`. Use when starting a second (or Nth) agent on a different task without disturbing the current working copy. Invoke manually; creates a workspace directory on disk.
In a jj repository, complete the "commit" pattern — describe the current working copy with a message, then open a fresh change for the next unit of work. Use when a coherent edit is finished and should be preserved before moving on. Invoke manually; mutates state.
Scaffold a new jj_fzf_* picker following the shared contract — dependency guards, cancel code 130, tab-delimited templates, binding wiring, README entry. Invoke manually; has side effects.
| name | add-abbreviation |
| description | Add a new jj abbreviation across the 4 required sites (register, erase, README, test) with verification. Invoke manually; has side effects. |
| disable-model-invocation | true |
Procedure for adding a new j-prefixed abbreviation. Updating all 4 sites simultaneously is mandatory — see .claude/rules/abbreviations.md.
Ask the user for these three (confirm if any are missing):
j (e.g. re for jre)jj restore)Verify the new abbr does not collide with an existing one, and that it stays unique under a custom $jujutsu_fish_prefix (multi-char prefixes are supported).
conf.d/jujutsu.fish — registerAdd one line under the matching category comment block inside __jujutsu_fish_register_abbrs:
abbr -a {$p}<suffix> '<expansion>'
Use $p (= $jujutsu_fish_prefix). Never hardcode j.
conf.d/jujutsu.fish — eraseAdd <suffix> to the for short in ... list inside __jujutsu_fish_erase_abbrs. If you skip this, the abbr survives fisher remove as a universal variable.
README.md — abbreviations tableAdd one row to the matching category block under ## Usage → ### Abbreviations:
| `j<suffix>` | `<expansion>` |
tests/abbreviations.test.fish — testAdd at least one assertion for the default-prefix case:
@test "j<suffix> expansion" (abbr --show | string match -rq "^abbr -a -- j<suffix> '<expansion>'\$") $status -eq 0
If the expansion contains spaces or special characters, mirror the quoting style used by the existing jgpa row.
Run both, in order, and confirm both are green:
fish_indent --check conf.d/jujutsu.fish tests/abbreviations.test.fish
fishtape tests/abbreviations.test.fish
A missing erase-list entry will not fail the test suite — visually confirm the suffix exists in the erase loop.
fishtape passes every abbreviation testfish_indent --check passes