skill description tightening cuts non narrowing phrases - Liplus-Project/liplus-language GitHub Wiki
常時読み込まれる skill の description を、呼び出しの場面を変えずにさらに詰めるとき、どの句を切ってよく、どの句を残すか。
切るのは、場面を狭めない句だけである。次の 3 種に限る。
-
帰結の句。
<場面> and <そこで必ず行うこと>の後半。切ってよいのは次の 2 つがどちらも成り立つときだけである。- 句を除いた条件だけで、瞬間と実行主体が定まる。
- その瞬間のすべてでそれを行うことを、ソースの literal が定めている。
例:
-
a memory write is about to happen and the pre-write persistence gate must run→a memory write is about to happen(adapter/claude/CLAUDE.mdMemory_Write_AutonomyBefore each memory write) -
a release has just been published and docs must be mirrored to the GitHub Wiki→a release has just been published(rules/operations/operations.mdWiki sync is mandatory after every release) -
a brake 1 evaluator prompt is being composed and the fixed axis has to enter it→a brake 1 evaluator prompt is being composed(skills/evolution-parallel-agent-eval/SKILL.mdAxis selectionOn the brake 1 path every draft gets three axes)
-
言い直した対案。
instead of .../rather than ...で、選ばれない側をもう一度言っているだけの句。選ばれない側が一つしか無く、選ぶ側の語だけで場面が読める場合に限る。-
may stay local instead of being pushed to the linked branch→may stay local -
kept or removed on impression rather than behavior→kept or removed on impression
-
-
Provides の重複。 条件の列が既に名指しているものを、Provides がもう一度挙げている部分。その語が指す本文の場面が、すべて条件の列にある場合に限る。
-
Provides the wiki sync procedure and its integrity assertions.→Provides the wiki sync procedure.(integrity assertionは 2 つ目の条件が名指している) -
Provides the prohibited loop types and the stop-realign-resume recovery.→Provides the stop-realign-resume recovery.(skills/model-loop-safety/SKILL.md。本文 Forbidden loop types の 4 つは、3 つ目の条件がすべて名指している)
-
残すのは次のものである。帰結の句と同じ形をしているものが多い。
-
実行主体を運ぶ句。
-
skills/task-subagent-delegation/SKILL.mdのand must go to a subagent rather than the parentとand the parent must fall back to direct execution。切るとimplementation work is about to startだけが残り、実装を始める subagent の文脈でも合致する。 -
skills/task-subagent-prompt/SKILL.mdのand merge-gate context must be injected。句を除いたa delegation runs in trigger execution modeは、委譲されて走っている subagent の側でも成り立ち続ける状態で、注入という親の行為が瞬間と主体を定めている。 -
skills/operations-on-pr-review/SKILL.mdのand must confirm where its session ends。句を除いたa delegated subagent is about to report to the parentは、調査だけを委譲された subagent の報告にも合致する。
-
-
位置を運ぶ句。
skills/evolution-rule-effect-measurement/SKILL.mdのand whether to raise a measurement before brake 1 must be settled。before brake 1が「CI green の後、brake 1 の評価者を起こす前」という位置を運んでいる(本文 Position on the self-evolution PR pipeline)。切ると、brake 1 の往復のあとの CI green にも合致する。 -
その場面が何の判断に立つかを名指し、出来事から判断の局面へ絞る句。
-
skills/evolution-parallel-agent-eval/SKILL.mdのand the next round or the exit must be chosen。この判断は Procedure step 8(Round boundary、Actor = the parent)のもので、句を除いたa brake 1 round trip has come back at CI greenは、CI green に達した著者の側にも合致する。 -
skills/evolution-self-eval/SKILL.mdのand whether to record it is being decided。本文はTrigger = AI judges when neededとしており、事実が起きるたびに開く skill ではない。
-
-
対案が複数ありうる中で一つを名指す句。
skills/operations-on-branch/SKILL.mdのin place of the branch。完了条件の代わりになりうるものは一つではなく、この句はローカル検証が何の代わりに扱われるかを特定している(本文it does not replace the branch as continuity surface)。 -
場面を狭める修飾。
and the merge gate is next(CI green のうち、次がマージ判定であるものに限る)、and per-commit CI visibility is wanted、must be settled by measurement、after its human go-signなど。 -
二つの半分がどちらも狭めている句。
subagent capability is unavailable and the parent is executing operations directly(operations skill 6 本に同文)。前半だけにすると subagent の無い環境で常に成り立つ状態になり、後半だけにすると親が通常行う操作(マージなど)にも合致する。 -
条件の列に場面が無く、照合の手掛かりだけを担っている語。 PR #2116 の brake 1 で戻した
model-source-checkの guard 名とmodel-ambiguity-handlingのhedge or softener phrasing as the surface tellと同じ扱い。Provides の重複に見えても、語が指す本文の場面の一部が条件の列に無ければこれに当たる。skills/model-frame-check/SKILL.mdの Providesabsorption tellsは、条件 2〜5 が tells の大半を名指しているが、本文 Tells のStarting with system-voice / academic narrator / abstract framework languageは条件の列に無い。 -
造語の中身を description の中で唯一具体化している除外の列。
skills/model-agentic-search/SKILL.mdのin a comparison-informative domain, not in language, math, logic or pure internal judgmentの後半。本文の domain tag は 2 値なので、選ばれない側が一つの言い直しに見える。しかしcomparison-informativeは Li+ の造語で、切ると照合が造語だけに頼り、時間変化のキーワードが言語や数学の問いに出た場面にも合致しうる。 -
他の面がそのまま引いている条件。
skills/task-sub-issue/SKILL.mdの 4 条件はrules/operations/main-agent-procedures.mdSub-issue rules が同じ語句で開く場面として挙げている。description だけを変えると写しがずれる。
狭めているかどうかが読み切れない句は残す。語形だけの圧縮(has just been verified → was just verified の類)は 3 種のどれでもないので行わない。利得が 30 B に届かない skill は触らない。
issue #2149 の結果: L1 以外の 31 本で description: 行の合計 11,659 B → 11,298 B(−361 B)。変更は 7 本、場面数(先頭文を / で割った数)は 31 本合計で 111 のまま、skill ごとにも一致。
issue #2158 の結果: L1 の model-* 12 本で description: の値の合計 5,393 B → 5,363 B(−30 B)。変更は model-loop-safety の 1 本、場面数は 12 本合計で 51 のまま、skill ごとにも一致。L1 の 12 本は 1 周目(#2113)で既に詰められており、条件の内側に残っている語は、場面を狭めるか照合の手掛かりを担うものがほとんどだった。(primary gate, ...) / (supporting gate) のようなラベルも 3 種のどれでもないので切っていない。
-
depends on
skill-trigger-declaration-in-description— 場面がdescriptionの内側にあり、先頭文を/で割って数えるという固定形が、場面数の前後比較を成り立たせている -
relates to
description-body-coverage-resolution-priority— description を正確にすると伸びるという実測。本 entry はその逆向き(場面を変えずに縮める)の線引き -
relates to
li-plus-always-on-footprint-load-bearing— skill 一覧を常時ロード面として数える前提
description の短縮はこれで 2 周目にあたる。1 周目(issue #2113 / PR #2116)は Provides の列挙、理由の括弧、正本の所在を示すだけの案内を削った。2 周目に残っていたのは条件の内側の語で、どこまでが「同じ場面の言い直し」で、どこからが「場面を変える変更」かを句ごとに決める必要があった。
<場面> and <必要> の形は #1600(skill を発火条件で分割)で入ったものが多い。後半は一見「その場面でこの skill が何を与えるか」を条件ごとに書いただけに見えるが、実際には実行主体・位置・判断の局面を運んでいるものが混じっている。
初めの版は and ... と instead of ... / in place of ... の句を広く帰結・言い直しと読み、10 本で −646 B だった。PR #2150 の brake 1 が 2 ラウンドで 4 句(in place of the branch、before brake 1 の句、the next round or the exit の句、whether to record it の句)を場面を広げるものとして指摘し、すべて戻した。同じ線を残りに当てて、さらに 2 句(merge-gate context must be injected、must confirm where its session ends)を戻した。帰結の句に付けた 2 条件は、この往復から出たものである。
- 場面を 1 つも落とさない。場面数は変更前後で同じ(issue #2149 制約 1)
- 変えるのは frontmatter の
description:行だけ。skill 本文、rules、adapter は変えない(制約 4)。このため、他の面が引いている条件は、引用側を直す代わりに description 側を動かさない - #2149 は
layer: L1-modelの skill(model-*)に触れない(同 issue 制約 3)。L1 の 12 本は #2158 で別に扱い、同じ線を当てた。起点は成果物の計測(refactor-driven)で、skills/evolution-l1-update-gating/SKILL.mdの長期観察の閾値は前提にならない - 利得の目安 30 B 未満の skill は触らない(制約 5)
採用 = 場面を狭めない句(上の 2 条件を満たす帰結の句、対案が一つしか無い言い直し、Provides の重複)だけを切る。
却下 = and ... の句を一律に切る。実行主体・位置・判断の局面を運ぶ句と、場面を狭める句が同じ形をしているため、一律に切ると subagent 側での誤発火と場面の拡大が起きる。
却下 = instead of ... / in place of ... の句を一律に切る。選ばれない側が一つしか無いときは言い直しだが、複数ありうるときは場面の対象を特定している。
却下 = 語形の圧縮で利得を積む。場面は変わらないが、切る対象の 3 種のどれでもなく、evolution-decision-structure-write のように adapter が description を発火場面の単一ソースとして名指している行では、言い換えそのものが差分の読み手に確認を強いる。
触らなかった 24 本の内訳: 切れる句が無いもの、切れる句はあるが 30 B に届かないもの(operations-on-release-state 28 B、operations-on-pr-review 28 B、evolution-observation-entry 26 B、task-pr-review-judgment 25 B、task-subagent-spawn 21 B、task-subagent-delegation 15 B、evolution-full-run 11 B)、Do not invoke の stub(operations-foreground-webhook-intake)。
2 周目で取れる量は 1 周目(40 本で 18,472 B → 15,211 B)よりずっと小さい。条件の内側に残っている語の多くは場面を狭めている。