@bluehawks/cli 1.0.37 → 1.0.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/app.d.ts.map +1 -1
- package/dist/cli/app.js +112 -134
- package/dist/cli/app.js.map +1 -1
- package/dist/cli/components/ChatArea.d.ts +21 -0
- package/dist/cli/components/ChatArea.d.ts.map +1 -0
- package/dist/cli/components/ChatArea.js +37 -0
- package/dist/cli/components/ChatArea.js.map +1 -0
- package/dist/cli/components/Header.d.ts +7 -0
- package/dist/cli/components/Header.d.ts.map +1 -0
- package/dist/cli/components/Header.js +29 -0
- package/dist/cli/components/Header.js.map +1 -0
- package/dist/cli/components/Layout.d.ts +21 -0
- package/dist/cli/components/Layout.d.ts.map +1 -0
- package/dist/cli/components/Layout.js +9 -0
- package/dist/cli/components/Layout.js.map +1 -0
- package/dist/cli/components/Sidebar.d.ts +9 -0
- package/dist/cli/components/Sidebar.d.ts.map +1 -0
- package/dist/cli/components/Sidebar.js +24 -0
- package/dist/cli/components/Sidebar.js.map +1 -0
- package/dist/cli/components/types.d.ts +29 -0
- package/dist/cli/components/types.d.ts.map +1 -0
- package/dist/cli/components/types.js +5 -0
- package/dist/cli/components/types.js.map +1 -0
- package/dist/config/constants.d.ts +1 -1
- package/dist/config/constants.js +1 -1
- package/package.json +1 -1
- package/src/cli/app.tsx +216 -401
- package/src/cli/components/ChatArea.tsx +127 -0
- package/src/cli/components/Header.tsx +86 -0
- package/src/cli/components/Layout.tsx +60 -0
- package/src/cli/components/Sidebar.tsx +68 -0
- package/src/cli/components/types.ts +32 -0
- package/src/config/constants.ts +1 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Box } from 'ink';
|
|
3
|
+
import { Header } from './Header.js';
|
|
4
|
+
import { Sidebar } from './Sidebar.js';
|
|
5
|
+
import { ChatArea } from './ChatArea.js';
|
|
6
|
+
export const Layout = (props) => {
|
|
7
|
+
return (_jsxs(Box, { flexDirection: "column", padding: 1, height: "100%", children: [_jsx(Header, { events: props.systemEvents, tps: props.tps }), _jsxs(Box, { flexDirection: "row", flexGrow: 1, marginTop: 1, children: [_jsx(ChatArea, { messages: props.messages, streamingContent: props.streamingContent, currentTool: props.currentTool, isProcessing: props.isProcessing, input: props.input, setInput: props.setInput, onSubmit: props.onSubmit, pendingApproval: props.pendingApproval }), _jsx(Sidebar, { model: props.model, contextUsage: props.contextUsage, totalTokens: props.totalTokens, toolHistory: props.toolHistory })] })] }));
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=Layout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Layout.js","sourceRoot":"","sources":["../../../src/cli/components/Layout.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAyBzC,MAAM,CAAC,MAAM,MAAM,GAA0B,CAAC,KAAK,EAAE,EAAE;IACnD,OAAO,CACH,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAC,MAAM,aAEjD,KAAC,MAAM,IAAC,MAAM,EAAE,KAAK,CAAC,YAAY,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,GAAI,EAGtD,MAAC,GAAG,IAAC,aAAa,EAAC,KAAK,EAAC,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,aAE9C,KAAC,QAAQ,IACL,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EACxC,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,eAAe,EAAE,KAAK,CAAC,eAAe,GACxC,EAGF,KAAC,OAAO,IACJ,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,WAAW,EAAE,KAAK,CAAC,WAAW,GAChC,IACA,IACJ,CACT,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../../src/cli/components/Sidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAuD1C,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,YAAY,EAAE,CAAC;CAC/B,CAKA,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Box, Text } from 'ink';
|
|
3
|
+
const SessionInfo = ({ model, contextUsage, totalTokens }) => {
|
|
4
|
+
const bars = Math.floor(contextUsage * 20);
|
|
5
|
+
const emptyBars = 20 - bars;
|
|
6
|
+
const barStr = '█'.repeat(bars) + '░'.repeat(emptyBars);
|
|
7
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "yellow", paddingX: 1, marginBottom: 1, children: [_jsx(Text, { color: "yellow", bold: true, children: "SESSION INTEL" }), _jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(Text, { color: "gray", children: "Model:" }), _jsx(Text, { color: "white", children: model }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { color: "gray", children: "Context Load:" }), _jsx(Text, { color: contextUsage > 0.8 ? 'red' : 'green', children: barStr }), _jsxs(Text, { color: "gray", children: [(contextUsage * 100).toFixed(1), "%"] })] }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { color: "gray", children: "Total Tokens:" }), _jsx(Text, { color: "white", children: totalTokens.toLocaleString() })] })] })] }));
|
|
8
|
+
};
|
|
9
|
+
const ToolMap = ({ history }) => {
|
|
10
|
+
// Create a fixed grid of 5x5 blocks (25 slots)
|
|
11
|
+
// Fill from end of history reversed
|
|
12
|
+
const slots = new Array(25).fill(null);
|
|
13
|
+
const recentHistory = history.slice(-25).reverse(); // Newest first
|
|
14
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "blue", paddingX: 1, flexGrow: 1, children: [_jsx(Text, { color: "blue", bold: true, children: "TOOL ACTIVITY" }), _jsx(Box, { flexDirection: "row", flexWrap: "wrap", marginTop: 1, width: 15, children: slots.map((_, i) => {
|
|
15
|
+
const activity = recentHistory[i];
|
|
16
|
+
if (!activity) {
|
|
17
|
+
return _jsx(Text, { color: "gray", children: "\u25AA " }, i);
|
|
18
|
+
}
|
|
19
|
+
const color = activity.status === 'success' ? 'green' : activity.status === 'failed' ? 'red' : 'yellow';
|
|
20
|
+
return _jsx(Text, { color: color, children: "\u25A0 " }, i);
|
|
21
|
+
}) }), _jsx(Box, { marginTop: 1, children: _jsxs(Text, { color: "gray", dimColor: true, children: ["Latest: ", recentHistory[0]?.toolName || 'None'] }) })] }));
|
|
22
|
+
};
|
|
23
|
+
export const Sidebar = ({ model, contextUsage, totalTokens, toolHistory }) => (_jsxs(Box, { flexDirection: "column", width: 24, marginLeft: 1, children: [_jsx(SessionInfo, { model: model, contextUsage: contextUsage, totalTokens: totalTokens }), _jsx(ToolMap, { history: toolHistory })] }));
|
|
24
|
+
//# sourceMappingURL=Sidebar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sidebar.js","sourceRoot":"","sources":["../../../src/cli/components/Sidebar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared types for the Cyberpunk Dashboard UI
|
|
3
|
+
*/
|
|
4
|
+
export interface SystemEvent {
|
|
5
|
+
id: string;
|
|
6
|
+
timestamp: string;
|
|
7
|
+
message: string;
|
|
8
|
+
type: 'info' | 'success' | 'error' | 'warning';
|
|
9
|
+
}
|
|
10
|
+
export interface ToolActivity {
|
|
11
|
+
id: string;
|
|
12
|
+
toolName: string;
|
|
13
|
+
status: 'running' | 'success' | 'failed';
|
|
14
|
+
timestamp: number;
|
|
15
|
+
}
|
|
16
|
+
export interface DragMetric {
|
|
17
|
+
label: string;
|
|
18
|
+
value: string | number;
|
|
19
|
+
unit?: string;
|
|
20
|
+
color?: string;
|
|
21
|
+
}
|
|
22
|
+
export interface DashboardState {
|
|
23
|
+
events: SystemEvent[];
|
|
24
|
+
toolHistory: ToolActivity[];
|
|
25
|
+
tokensPerSecond: number;
|
|
26
|
+
contextUsage: number;
|
|
27
|
+
totalTokens: number;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/cli/components/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,WAAW;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;CAClD;AAED,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;IACzC,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,WAAW,EAAE,YAAY,EAAE,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/cli/components/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -6,7 +6,7 @@ export declare const DEFAULT_MODEL = "Qwen/Qwen3-8B";
|
|
|
6
6
|
export declare const DEFAULT_EMBEDDING_MODEL = "Qwen/Qwen3-Embedding-0.6B";
|
|
7
7
|
export declare const DEFAULT_RERANK_MODEL = "Qwen/Qwen3-Reranker-0.6B";
|
|
8
8
|
export declare const CLI_NAME = "bluehawks";
|
|
9
|
-
export declare const CLI_VERSION = "1.0.
|
|
9
|
+
export declare const CLI_VERSION = "1.0.39";
|
|
10
10
|
export declare const CLI_DESCRIPTION = "A production-ready multi-agent AI CLI assistant";
|
|
11
11
|
export declare const CONFIG_DIR_NAME = ".bluehawks";
|
|
12
12
|
export declare const SETTINGS_FILE = "settings.json";
|
package/dist/config/constants.js
CHANGED
|
@@ -8,7 +8,7 @@ export const DEFAULT_EMBEDDING_MODEL = 'Qwen/Qwen3-Embedding-0.6B';
|
|
|
8
8
|
export const DEFAULT_RERANK_MODEL = 'Qwen/Qwen3-Reranker-0.6B';
|
|
9
9
|
// CLI Metadata
|
|
10
10
|
export const CLI_NAME = 'bluehawks';
|
|
11
|
-
export const CLI_VERSION = '1.0.
|
|
11
|
+
export const CLI_VERSION = '1.0.39';
|
|
12
12
|
export const CLI_DESCRIPTION = 'A production-ready multi-agent AI CLI assistant';
|
|
13
13
|
// Configuration Paths
|
|
14
14
|
export const CONFIG_DIR_NAME = '.bluehawks';
|