Building a Custom Status Line for Claude Code
ਮੈਂ ਆਪਣਾ ਜ਼ਿਆਦਾਤਰ ਦਿਨ Claude Code ਵਿੱਚ ਬਿਤਾਉਂਦਾ ਹਾਂ। ਇਹ ਮੇਰੇ ਪ੍ਰੋਗਰਾਮਰ ਅਤੇ ਰਿਵਿਊਅਰ ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ।
ਕੁਝ ਦਿਨਾਂ ਬਾਅਦ, ਮੈਂ ਇੱਕ ਸਮੱਸਿਆ ਨੋਟ ਕੀਤੀ। ਮੈਨੂੰ ਨਹੀਂ ਪਤਾ ਸੀ ਕਿ ਮੈਂ ਕਿੰਨੇ tokens ਵਰਤੇ ਹਨ। ਮੈਨੂੰ ਆਪਣੇ session ਦੀ ਲਾਗਤ ਦਾ ਪਤਾ ਨਹੀਂ ਸੀ। ਮੈਨੂੰ ਨਹੀਂ ਪਤਾ ਸੀ ਕਿ ਕਿੰਨਾ context ਬਾਕੀ ਰਹਿ ਗਿਆ ਹੈ।
ਮੈਂ ਇਹਨਾਂ ਤੱਥਾਂ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕੋਈ command ਨਹੀਂ ਚਲਾਉਣਾ ਚਾਹੁੰਦਾ। ਮੈਂ ਇਹਨਾਂ ਨੂੰ real time ਵਿੱਚ ਦੇਖਣਾ ਚਾਹੁੰਦਾ ਹਾਂ। ਮੈਂ ਆਪਣੇ terminal 'ਤੇ ਇੱਕ ਨਜ਼ਰ ਮਾਰ ਕੇ ਆਪਣਾ ਸਟੇਟਸ ਜਾਣਨਾ ਚਾਹੁੰਦਾ ਹਾਂ।
ਇਸ ਲਈ ਮੈਂ ਇੱਕ ਕਸਟਮ ਸਟੇਟਸ ਲਾਈਨ ਬਣਾਈ।
ਮੈਂ ਤਿੰਨ ਮੁੱਖ ਚੀਜ਼ਾਂ 'ਤੇ ਧਿਆਨ ਕੇਂਦਰਿਤ ਕੀਤਾ:
- Session Cost: Claude Opus ਮੁਫ਼ਤ ਨਹੀਂ ਹੈ। ਲਾਈਵ ਲਾਗਤ ਦੇਖਣ ਨਾਲ ਮੈਨੂੰ ਇਹ ਫੈਸਲਾ ਲੈਣ ਵਿੱਚ ਮਦਦ ਮਿਲਦੀ ਹੈ ਕਿ ਕਿਸੇ ਕੰਮ ਨੂੰ ਕਦੋਂ ਖਤਮ ਕਰਨਾ ਹੈ।
- Context Window: ਮੈਂ ਬਾਕੀ ਰਹੇ context ਦਾ ਪ੍ਰਤੀਸ਼ਤ ਦੇਖਣਾ ਚਾਹੁੰਦਾ ਹਾਂ। ਇਹ ਮੈਨੂੰ ਇਹ ਫੈਸਲਾ ਲੈਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ ਕਿ ਨਵਾਂ session ਕਦੋਂ ਸ਼ੁਰੂ ਕਰਨਾ ਹੈ।
- Project Info: ਮੈਨੂੰ ਆਪਣੀ ਮੌਜੂਦਾ directory, git branch, ਅਤੇ ਮੈਂ ਜੋ model ਵਰਤਦਾ ਹਾਂ, ਉਹ ਦੇਖਣ ਦੀ ਲੋੜ ਹੈ।
Status line API ਸਰਲ ਹੈ। ਤੁਸੀਂ Claude Code ਨੂੰ ਇੱਕ shell script ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਦੇ ਹੋ। ਟੂਲ ਤੁਹਾਡੇ script ਨੂੰ stdin ਰਾਹੀਂ ਇੱਕ JSON document ਭੇਜਦਾ ਹੈ। ਤੁਹਾਡੀ script ਨਤੀਜੇ ਨੂੰ stdout 'ਤੇ print ਕਰਦੀ ਹੈ।
ਇਹ ਕਿਸੇ SDK ਜਾਂ framework ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰਦਾ। ਇਹ ਸਿਰਫ਼ stdin ਅਤੇ stdout ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ। ਇਹ locally ਚੱਲਦਾ ਹੈ ਅਤੇ ਇਸਦੀ ਕੋਈ ਲਾਗਤ ਨਹੀਂ ਹੈ।
ਇਸਨੂੰ ਕਿਵੇਂ ਸੈੱਟ ਕਰਨਾ ਹੈ:
- ~/.claude/statusline.sh 'ਤੇ ਇੱਕ script ਬਣਾਓ।
- JSON data ਨੂੰ parse ਕਰਨ ਲਈ jq ਦੀ ਵਰਤੋਂ ਕਰੋ।
- ਆਪਣਾ path, branch, model, tokens, ਅਤੇ cost ਦਿਖਾਉਣ ਲਈ output ਨੂੰ format ਕਰੋ।
- ਆਪਣੀ ~/.claude/settings.json ਫਾਈਲ ਵਿੱਚ script ਨੂੰ ਜੋੜੋ।
ਤੁਸੀਂ refresh interval ਨੂੰ 1 second 'ਤੇ ਸੈੱਟ ਕਰ ਸਕਦੇ ਹੋ। ਇਹ ਤੁਹਾਨੂੰ ਇੱਕ real-time dashboard ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।
ਜੇਕਰ ਤੁਸੀਂ ਕੋਡ ਨਹੀਂ ਲਿਖਣਾ ਚਾਹੁੰਦੇ, ਤਾਂ Claude Code ਵਿੱਚ ਇੱਕ shortcut ਹੈ। ਚਲਾਓ:
/statusline show me model, branch, token counts, context percentage, and cost
ਇਹ ਤੁਹਾਡੇ ਲਈ ਆਪਣੇ ਆਪ ਇੱਕ ਲਾਈਨ ਤਿਆਰ ਕਰ ਦਿੰਦਾ ਹੈ।
ਸਧਾਰਨ shell scripts ਨਾਲ ਆਪਣੇ ਟੂਲਸ ਨੂੰ ਕਸਟਮਾਈਜ਼ ਕਰਨਾ ਤੁਹਾਡੇ ਕੰਮ ਕਰਨ ਦੇ ਤਰੀਕੇ ਨੂੰ ਬਦਲ ਦਿੰਦਾ ਹੈ। ਤੁਸੀਂ ਫੀਚਰਾਂ ਦੀ ਉਡੀਕ ਕਰਨਾ ਬੰਦ ਕਰ ਦਿੰਦੇ ਹੋ ਅਤੇ ਆਪਣੀ ਖੁਦ ਦੀ automation ਬਣਾਉਣੀ ਸ਼ੁਰੂ ਕਰ ਦਿੰਦੇ ਹੋ।
Source: https://dev.to/ndrone/building-a-custom-status-line-for-claude-code-5822
Optional learning community: https://t.me/GyaanSetuAi
