chenhg5/cc-connect · error

claudecode: Claude Code /usage produced empty output

Error message

claudecode: Claude Code /usage produced empty output

What it means

A sentinel parse guard in parseClaudeUsageReport: after normalization the captured /usage screen is empty (only whitespace/rules). It fires when the probe returned before any content rendered, so there is nothing to parse into a UsageReport.

Source

Thrown at agent/claudecode/claude_usage.go:305

				out = append(out, "")
				lastBlank = true
			}
			continue
		}
		line = claudeUsageWhitespaceRe.ReplaceAllString(line, " ")
		if claudeUsageRuleLineRe.MatchString(line) {
			continue
		}
		out = append(out, line)
		lastBlank = false
	}
	return strings.TrimSpace(strings.Join(out, "\n"))
}

func parseClaudeUsageReport(text string, now time.Time) (*core.UsageReport, error) {
	text = normalizeClaudeUsageText(text)
	if text == "" {
		return nil, fmt.Errorf("claudecode: Claude Code /usage produced empty output")
	}
	if err := detectClaudeUsageOutputError(text, ""); err != nil {
		return nil, err
	}

	report := &core.UsageReport{
		Provider: "claudecode",
	}

	lines := strings.Split(text, "\n")
	session, err := parseClaudeUsageWindow(lines, "Current session", claudeUsageSessionWindowSeconds, now)
	if err != nil {
		return nil, err
	}
	week, err := parseClaudeUsageWindow(lines, "Current week", claudeUsageWeekWindowSeconds, now)
	if err != nil {
		return nil, err
	}

View on GitHub (pinned to 4000b2338a)

Solutions

  1. Retry /usage — the screen capture likely raced ahead of rendering
  2. Check the probe timeout and increase it if the CLI is slow
  3. Upgrade Claude Code if /usage renders nothing on this version
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at agent/claudecode/claude_usage.go:305 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of chenhg5/cc-connect@4000b2338a (2026-09-06). Data as JSON: /api/errors/d41bf9fa82ba454a. Report an issue: GitHub.