claude-token-saver 3.42.2 β†’ 3.42.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-token-saver",
3
- "version": "3.42.2",
3
+ "version": "3.42.3",
4
4
  "description": "Legacy name of sprag-cli (Sprag) - same tool, kept publishing so existing installs stay current. Prefer: npm i -g sprag-cli",
5
5
  "type": "module",
6
6
  "bin": {
package/src/cohesion.js CHANGED
@@ -63,7 +63,7 @@ export async function cohesionInjection({ cfg = loadConfig() } = {}) {
63
63
  if (!text) return null;
64
64
  return [
65
65
  '[sprag cohesion] Follow this guidance for English prose in this session.',
66
- 'The user enabled it in claude-token-saver.',
66
+ 'The user enabled it in sprag.',
67
67
  '',
68
68
  text,
69
69
  ].join('\n');
@@ -4,8 +4,8 @@
4
4
  * session can pick up where this one stopped. Pairs with the cap-warn chip:
5
5
  * when statusline shows 🚨 5H 90%+, run this to back up state before the cap
6
6
  * hits.
7
- * claude-token-saver handoff # write to cwd
8
- * claude-token-saver handoff --cwd PATH # custom directory
7
+ * sprag handoff # write to cwd
8
+ * sprag handoff --cwd PATH # custom directory
9
9
  */
10
10
 
11
11
  import { readStdinJson, extractCaps } from '../stdin-payload.js';
@@ -2,9 +2,9 @@
2
2
  * Subcommand: history β€” print recent warning transitions captured by the
3
3
  * statusline. One markdown file per day, persisted under the platform-
4
4
  * specific user-data dir.
5
- * claude-token-saver history # last 7 days
6
- * claude-token-saver history --days 30 # custom window
7
- * claude-token-saver history --list # just list available dates
5
+ * sprag history # last 7 days
6
+ * sprag history --days 30 # custom window
7
+ * sprag history --list # just list available dates
8
8
  */
9
9
 
10
10
 
@@ -57,8 +57,8 @@ export async function run({ hasFlag, version }) {
57
57
  ? `μƒˆ 버전이 μžˆμŠ΅λ‹ˆλ‹€: v${version} β†’ ${s.latest}`
58
58
  : `Update available: v${version} β†’ ${s.latest}`);
59
59
  console.log(lang === 'ko'
60
- ? `μ—…κ·Έλ ˆμ΄λ“œ: ${upgradeCommand()} (λ˜λŠ” claude-token-saver upgrade)`
61
- : `Upgrade with: ${upgradeCommand()} (or: claude-token-saver upgrade)`);
60
+ ? `μ—…κ·Έλ ˆμ΄λ“œ: ${upgradeCommand()} (λ˜λŠ” sprag upgrade)`
61
+ : `Upgrade with: ${upgradeCommand()} (or: sprag upgrade)`);
62
62
  if (s.dismissed) {
63
63
  console.log(lang === 'ko'
64
64
  ? '이 버전은 μ‚¬μš©μžκ°€ ν•œ 번 λ„˜κΈ΄ μƒνƒœλΌ, μ„Έμ…˜ μ‹œμž‘ μ‹œμ—λŠ” λ‹€μ‹œ 묻지 μ•ŠμŠ΅λ‹ˆλ‹€.'
@@ -2,8 +2,8 @@
2
2
  * Subcommand: upgrade β€” install the latest release with the package manager
3
3
  * that put this copy on disk.
4
4
  *
5
- * claude-token-saver upgrade # refresh the check, then install
6
- * claude-token-saver upgrade --print # show the command, run nothing
5
+ * sprag upgrade # refresh the check, then install
6
+ * sprag upgrade --print # show the command, run nothing
7
7
  *
8
8
  * This is the command the model runs after the user says yes to the
9
9
  * session-start offer, so it prints the exact command it is about to execute
@@ -63,6 +63,6 @@ export async function run({ hasFlag, version }) {
63
63
  // the statusline chip clears on the next render instead of lingering.
64
64
  await refreshUpdateState(s.latest);
65
65
  console.log(lang === 'ko'
66
- ? `μ„€μΉ˜κ°€ λλ‚¬μŠ΅λ‹ˆλ‹€. μƒˆ μ…Έμ—μ„œ claude-token-saver --version 으둜 ${s.latest} 인지 ν™•μΈν•˜μ‹­μ‹œμ˜€.`
67
- : `Done. In a fresh shell, run claude-token-saver --version to confirm ${s.latest}.`);
66
+ ? `μ„€μΉ˜κ°€ λλ‚¬μŠ΅λ‹ˆλ‹€. μƒˆ μ…Έμ—μ„œ sprag --version 으둜 ${s.latest} 인지 ν™•μΈν•˜μ‹­μ‹œμ˜€.`
67
+ : `Done. In a fresh shell, run sprag --version to confirm ${s.latest}.`);
68
68
  }
@@ -49,7 +49,7 @@ export const MODEL_RATCHET_IMPORT_RE = /^@(?:~\/\.claude|\.claude)\/ratchet-mode
49
49
  export function harnessClaudeMdBlock(scope = 'project') {
50
50
  const sections = HARNESS_SECTIONS.map((s) => s.heading).join('\n\n... (see full block below)');
51
51
  return `${HARNESS_BLOCK_BEGIN}
52
- ## πŸ…· Harness Rules (claude-token-saver)
52
+ ## πŸ…· Harness Rules (sprag)
53
53
 
54
54
  이 μ„Ήμ…˜μ€ \`sprag harness init\`이 μƒμ„±ν•©λ‹ˆλ‹€. 5κ°€μ§€ 원칙 λͺ¨λ‘λ₯Ό
55
55
  μ§€ν‚€λ©΄ statusline에 \`πŸ…· 5/5\`둜 ν‘œμ‹œλ˜κ³ , λΉ μ§„ 게 있으면 \`πŸ…· 3/5\` μ‹μœΌλ‘œ
@@ -59,7 +59,7 @@ export function harnessClaudeMdBlock(scope = 'project') {
59
59
  ${HARNESS_SECTIONS[0].heading}
60
60
  - 같은 μ—λŸ¬Β·μ˜€ν•΄Β·λ°˜λ³΅ μž‘μ—…μ΄ ν•œ 번 더 λ°œμƒν•˜λ©΄ μ¦‰μ‹œ \`.claude/ratchet.md\`에
61
61
  "쑰건 β†’ 행동" ν•œ μ€„λ‘œ λ£° μΆ”κ°€.
62
- - claude-token-saverκ°€ 후보λ₯Ό κ°μ§€ν•˜λ©΄ statusline에 \`πŸ…·βš  ratchet?\`둜 μ•Œλ¦Ό.
62
+ - spragκ°€ 후보λ₯Ό κ°μ§€ν•˜λ©΄ statusline에 \`πŸ…·βš  ratchet?\`둜 μ•Œλ¦Ό.
63
63
  \`sprag harness promote "<rule>" --project|--global\`둜 승인.
64
64
  - **scopeλŠ” 항상 μ‚¬μš©μžμ—κ²Œ λ¨Όμ € λ¬Όμ–΄λ³Ό 것** β€” ν”„λ‘œμ νŠΈ ν•œμ •μ΄λ©΄ \`--project\`,
65
65
  λ„κ΅¬Β·ν™˜κ²½ 일반 룰이면 \`--global\`(\`~/.claude/ratchet.md\`). Bash ν™˜κ²½μ€
@@ -69,7 +69,7 @@ ${HARNESS_SECTIONS[0].heading}
69
69
  μ§€μš°λ©΄ ratchet.mdλŠ” μ»¨ν…μŠ€νŠΈμ— λ“€μ–΄μ˜€μ§€ μ•ŠμœΌλ‹ˆ μ§€μš°μ§€ 말 것.
70
70
  - **λͺ¨λΈ ν”ΌνŒ… λž«μ³‡**: \`.claude/ratchet-model.md\`(ν”„λ‘œμ νŠΈ)와
71
71
  \`~/.claude/ratchet-model.md\`(κΈ€λ‘œλ²Œ)에 μžˆλŠ” ν‹°μ–΄ μœ„μž„ 룰도 ratchet.md와
72
- λ™μΌν•˜κ²Œ λ”°λ₯Ό 것. 이 νŒŒμΌμ€ claude-token-saverκ°€ 둜그 기반으둜 μžλ™
72
+ λ™μΌν•˜κ²Œ λ”°λ₯Ό 것. 이 νŒŒμΌμ€ spragκ°€ 둜그 기반으둜 μžλ™
73
73
  μƒμ„±Β·κ°±μ‹ ν•˜λ―€λ‘œ 직접 μˆ˜μ •ν•˜μ§€ 말 것 (관리: \`route-scan rules\`).
74
74
 
75
75
  ${HARNESS_SECTIONS[1].heading}
@@ -123,7 +123,7 @@ ${HARNESS_BLOCK_END}
123
123
  }
124
124
 
125
125
  export function harnessRatchetMdInitial() {
126
- return `# Ratchet Rules (auto-grown by claude-token-saver)
126
+ return `# Ratchet Rules (auto-grown by sprag)
127
127
 
128
128
  같은 μ‹€μˆ˜κ°€ 두 번 λ°œμƒν•˜λ©΄ 여기에 ν•œ 쀄 μΆ”κ°€λ©λ‹ˆλ‹€. ν˜•μ‹: "YYYY-MM-DD: <쑰건> β†’ <행동>".
129
129
 
@@ -181,7 +181,7 @@ export function koreanStyleInjection({ cfg = loadConfig() } = {}) {
181
181
  if (!text) return null;
182
182
  return [
183
183
  '[sprag korean-style] 이 μ„Έμ…˜μ—μ„œ ν•œκ΅­μ–΄λ₯Ό 좜λ ₯ν•  λ•ŒλŠ” μ•„λž˜ 지침을 λ”°λ₯΄μ‹­μ‹œμ˜€.',
184
- '이 지침은 μ‚¬μš©μžκ°€ claude-token-saver에 μ„€μ •ν•œ κ²ƒμž…λ‹ˆλ‹€.',
184
+ '이 지침은 μ‚¬μš©μžκ°€ sprag에 μ„€μ •ν•œ κ²ƒμž…λ‹ˆλ‹€.',
185
185
  ...koreanScopeLines(cfg),
186
186
  'ν‘œκΈ° κ·œμΉ™(μ˜ˆμ™Έ 없이 적용): 도ꡬ 호좜 μΈμžμ— ν•œκ΅­μ–΄λ₯Ό λΉ„λ‘―ν•œ λΉ„ASCII λ¬Έμžμ—΄μ„ 담을 λ•Œμ—λŠ” λ°˜λ“œμ‹œ λ¦¬ν„°λŸ΄ UTF-8둜 μž‘μ„±ν•˜κ³ , \\uXXXX μœ λ‹ˆμ½”λ“œ μ΄μŠ€μΌ€μ΄ν”„λ‘œλŠ” μ ˆλŒ€ μž‘μ„±ν•˜μ§€ λ§ˆμ‹­μ‹œμ˜€. μ΄μŠ€μΌ€μ΄ν”„λ‘œ μž‘μ„±ν•˜λ©΄ κΈ€μžκ°€ κΉ¨μ§„ 채 νŒŒμΌμ— κΈ°λ‘λ˜λŠ” 사둀가 자주 λ°œμƒν•©λ‹ˆλ‹€.',
187
187
  `(좜처: ${KOREAN_STYLE_SOURCE})`,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * update-check β€” "is there a newer claude-token-saver?", answered without ever
2
+ * update-check β€” "is there a newer sprag?", answered without ever
3
3
  * blocking a render.
4
4
  *
5
5
  * The statusline command runs every ~300ms, so a network call on that path is