νΌλλ‘ λμκ°κΈ°
Dev.toDevOps
μλ¬Έ μ½κΈ°
Rate Limit κ°μνλ₯Ό ν΅ν ν ν° μλͺ¨ μλ μ΅μ ν λꡬ ꡬν
π’ and π in My Claude Code Status Line: Now Watching the Week
AI μμ½
Context
Claude Codeμ Token μ¬μ©λ μ ν μ μ± λ³νλ‘ μΈν΄ 5μκ° λ¨μ μ νλ³΄λ€ 7μΌ λ¨μ Weekly Capμ μ μ½ μ¬νμ΄ λ λΉλ²νκ² λ°μν¨. λ¨μ μ¬μ©λ νμΈλ§μΌλ‘λ νμ¬ μλͺ¨ μλκ° μ μ μμ€μΈμ§ νλ¨νκΈ° μ΄λ €μ΄ λͺ¨λν°λ§ νκ³ μ‘΄μ¬.
Technical Solution
- Bash λ° jqλ₯Ό νμ©ν JSON κΈ°λ° Rate Limit λ°μ΄ν° νμ± κ΅¬μ‘° μ€κ³
- μ€μ μ¬μ©λ(Actual)κ³Ό μκ° κ²½κ³Όμ λ°λ₯Έ μ΄μμ μ¬μ©λ(Ideal)μ λμ‘°νλ Tortoise-and-Hare μκ³ λ¦¬μ¦ μ μ©
- 7μΌ(604,800s)κ³Ό 5μκ°(18,000s) μλμ°μ λν΄ μλ‘ λ€λ₯Έ κ°μ€μΉ(W7=20, W5=10)λ₯Ό λΆμ¬ν κ°λ³ κΈΈμ΄ Progress Bar ꡬν
(Total_Window - Remaining_Time) * Width / Total_Windowμμμ ν΅ν μ€μκ° Ideal μ§μ κ³μ° λ‘μ§ ν¬ν¨- μ¬μ©λμ΄ Ideal μ§μ μ μ΄κ³Όν κ²½μ° β οΈ κ²½κ³ νμ λ° π μμ΄μ½μ λ°κΉ₯μͺ½ λ°°μΉλ₯Ό ν΅ν μκ°μ Alert μ²΄κ³ κ΅¬μΆ
- Timezone μ€μ μ ν΅ν μ¬μ©μ λ‘컬 μκ° κΈ°μ€μ Reset μμ λκΈ°ν μ²λ¦¬
μ€μ² ν¬μΈνΈ
- μλΉμ€μ Rate Limit μ μ± λ³κ²½ μ λͺ¨λν°λ§ μ§νμ κ°μ€μΉλ₯Ό μ¬μ€μ νμ¬ λ³λͺ© μ§μ νμ - λ¨μ μμΉ νμλ³΄λ€ 'κΈ°λμΉ(Ideal) λλΉ νμ¬μΉ(Actual)'λ₯Ό μκ°ννμ¬ λ¦¬μμ€ μλͺ¨ μλ μμΈ‘ - Bash κΈ°λ°μ κ²½λ μ Έ μ€ν¬λ¦½νΈλ₯Ό ν΅ν CLI νκ²½μ μ€μκ° μν νμμ€(Status Line) ꡬν κ²ν