mirror of
https://github.com/jarrodwatts/claude-hud.git
synced 2026-04-21 10:22:39 +00:00
* feat(layout): add expanded multi-line layout mode Split the overloaded session line into semantic lines for better readability: - Identity line: model, plan, context bar, duration - Project line: path, git status - Environment line: config counts (CLAUDE.md, rules, MCPs, hooks) - Usage line: rate limits with reset times New config options: - `lineLayout`: 'compact' | 'expanded' (default: expanded for new users) - `showSeparators`: boolean (orthogonal to layout) - `usageThreshold`: show usage line only when >= N% - `environmentThreshold`: show env line only when counts >= N Backward compatible: old `layout` config is automatically migrated. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * fix: address code review feedback - Fix usage threshold to use max(5h, 7d) so high 7d usage isn't hidden when 5h is null - Update stale comment in session-line.ts (now compact layout only) - Remove non-null assertions in identity.ts by hoisting planName Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * fix: apply thresholds to compact layout for consistency - Add environmentThreshold gating to config counts in compact mode - Add usageThreshold with max(5h, 7d) logic to usage in compact mode - Remove non-null assertion for planName (same fix as identity.ts) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * test: update tests for new lineLayout config schema - Update config.test.js to validate lineLayout instead of layout - Update render.test.js to use lineLayout and showSeparators - Update index.test.js mock config with new schema - Update integration test expected output for expanded default Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
31 lines
986 B
TypeScript
31 lines
986 B
TypeScript
export type LineLayoutType = 'compact' | 'expanded';
|
|
export type AutocompactBufferMode = 'enabled' | 'disabled';
|
|
export interface HudConfig {
|
|
lineLayout: LineLayoutType;
|
|
showSeparators: boolean;
|
|
pathLevels: 1 | 2 | 3;
|
|
gitStatus: {
|
|
enabled: boolean;
|
|
showDirty: boolean;
|
|
showAheadBehind: boolean;
|
|
showFileStats: boolean;
|
|
};
|
|
display: {
|
|
showModel: boolean;
|
|
showContextBar: boolean;
|
|
showConfigCounts: boolean;
|
|
showDuration: boolean;
|
|
showTokenBreakdown: boolean;
|
|
showUsage: boolean;
|
|
showTools: boolean;
|
|
showAgents: boolean;
|
|
showTodos: boolean;
|
|
autocompactBuffer: AutocompactBufferMode;
|
|
usageThreshold: number;
|
|
environmentThreshold: number;
|
|
};
|
|
}
|
|
export declare const DEFAULT_CONFIG: HudConfig;
|
|
export declare function getConfigPath(): string;
|
|
export declare function loadConfig(): Promise<HudConfig>;
|
|
//# sourceMappingURL=config.d.ts.map
|