From 6d53597dbfb32a55b4a749417af4bc3fe8b876e6 Mon Sep 17 00:00:00 2001 From: Julian lechner Date: Thu, 1 Oct 2026 11:13:00 +0200 Subject: [PATCH] fix(budget): read flat Claude rule skills The flat Claude layout moved rule skills to skills/rules-*/, which made the prompt budget fail to find rules-security. Co-Authored-By: Claude Opus 5.5 --- scripts/lib/prompt-budget.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/lib/prompt-budget.py b/scripts/lib/prompt-budget.py index 84bb7a8..a100f0e 100644 --- a/scripts/lib/prompt-budget.py +++ b/scripts/lib/prompt-budget.py @@ -40,8 +40,8 @@ def measure_package(package, client): ) if client == 'claude': - rule_files = (package / 'skills' / 'rules').glob('rules-*/SKILL.md') - security_rule = package / 'skills' / 'rules' / 'rules-security' / 'SKILL.md' + rule_files = (package / 'skills').glob('rules-*/SKILL.md') + security_rule = package / 'skills' / 'rules-security' / 'SKILL.md' security_content = security_rule.read_text(encoding='utf-8-sig') security_header = re.match(r'\A---\r?\n.*?^---[ \t]*\r?$', security_content, re.MULTILINE | re.DOTALL) auto_loaded_rule_bytes = len(security_content[security_header.end():].encode('utf-8')) if security_header else len(security_content.encode('utf-8'))