init claude-code
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
import { formatTotalCost } from '../../cost-tracker.js'
|
||||
import { currentLimits } from '../../services/claudeAiLimits.js'
|
||||
import type { LocalCommandCall } from '../../types/command.js'
|
||||
import { isClaudeAISubscriber } from '../../utils/auth.js'
|
||||
|
||||
export const call: LocalCommandCall = async () => {
|
||||
if (isClaudeAISubscriber()) {
|
||||
let value: string
|
||||
|
||||
if (currentLimits.isUsingOverage) {
|
||||
value =
|
||||
'You are currently using your overages to power your Claude Code usage. We will automatically switch you back to your subscription rate limits when they reset'
|
||||
} else {
|
||||
value =
|
||||
'You are currently using your subscription to power your Claude Code usage'
|
||||
}
|
||||
|
||||
if (process.env.USER_TYPE === 'ant') {
|
||||
value += `\n\n[ANT-ONLY] Showing cost anyway:\n ${formatTotalCost()}`
|
||||
}
|
||||
return { type: 'text', value }
|
||||
}
|
||||
return { type: 'text', value: formatTotalCost() }
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
/**
|
||||
* Cost command - minimal metadata only.
|
||||
* Implementation is lazy-loaded from cost.ts to reduce startup time.
|
||||
*/
|
||||
import type { Command } from '../../commands.js'
|
||||
import { isClaudeAISubscriber } from '../../utils/auth.js'
|
||||
|
||||
const cost = {
|
||||
type: 'local',
|
||||
name: 'cost',
|
||||
description: 'Show the total cost and duration of the current session',
|
||||
get isHidden() {
|
||||
// Keep visible for Ants even if they're subscribers (they see cost breakdowns)
|
||||
if (process.env.USER_TYPE === 'ant') {
|
||||
return false
|
||||
}
|
||||
return isClaudeAISubscriber()
|
||||
},
|
||||
supportsNonInteractive: true,
|
||||
load: () => import('./cost.js'),
|
||||
} satisfies Command
|
||||
|
||||
export default cost
|
||||
Reference in New Issue
Block a user