Skip to content

Releases: DinoQuinten/engineering-skill

v1.7.0

Choose a tag to compare

@DinoQuinten DinoQuinten released this 09 Sep 13:14

Response discipline update: ban theatrical response-structure preambles such as counting questions and announcing an answer order before answering. README install pins now reference v1.7.0.

discipline 1.7.0

Choose a tag to compare

@DinoQuinten DinoQuinten released this 09 Sep 06:29

Skills are now authored in one place, the context budget is measured instead of guessed, and every rule from both previously divergent copies is merged.

Measured the real context cap

The 9 KB / ~8 KB ceilings in the hook comments and README were guesses. Bisected against live sessions:

Payload Result
10,000 chars delivered inline
10,081 chars replaced by a ~1.7 KB preview, remainder silently unavailable

The cap is 10,000 characters of additionalContext. test/inject-skills.test.mjs now enforces a 9,800-char budget against the real skills/ directory, so the limit is a test rather than a comment.

Frontmatter stripped at injection

All three injectors — the Node hook, the Pi extension, and the personal Python hook — now drop the YAML block before emitting. It is disk-only metadata (mandatory on Codex, required for OpenCode to advertise a skill) and it contradicted the preamble telling the model not to invoke these skills. Worth ~1.7 KB across the three skills. Files on disk keep their frontmatter, so discovery on every host is untouched.

Without this, engineering-discipline would have sat roughly 50 characters under the truncation cliff — shipping fine, then breaking on the next rule added.

Repo is now authoritative

ownedByUser() silently gives a personal ~/.claude/skills copy priority over the plugin's, so repo edits never took effect and the two copies drifted apart. New sync script makes the personal copies generated artifacts:

npm run sync        # repo -> ~/.claude/skills (only names already present there)
npm run sync:check  # exits 1 on drift

Rules merged, none lost

Every rule from both forks is now present. Rule inventory verified identical before and after the concision pass — response-discipline 45 normative items, engineering-discipline 59. The duplicated counterfactual rule was deduped: the method lives in engineering-discipline, and response-discipline references it.

response-discipline also gains a ban on hedged verdict openers (Partly., Sort of., Yes and no.) and subjectless counts. A flat Yes./No. answering a direct yes/no question stays allowed — the question names the subject.

Emitted payloads

Skill Chars Headroom
response-discipline 8,327 1,673
engineering-discipline 9,162 838
task-registry 3,053 6,947

Verified: 14/14 tests pass, claude plugin validate . passes, npm run sync:check exits 0, and a fresh session returns the final line of both skills intact with no frontmatter.