jinzd-ai-cli 0.1.77 → 0.1.78
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/{chunk-MSQW4A3S.js → chunk-2FJISNUB.js} +1 -1
- package/dist/{chunk-LKYVW34F.js → chunk-NJTTV277.js} +1 -1
- package/dist/index.js +4 -4
- package/dist/{run-tests-S3XK43NB.js → run-tests-KFMWOLRG.js} +1 -1
- package/dist/{server-WO2OXHJ6.js → server-4HRRB4UM.js} +2 -2
- package/dist/web/client/app.js +19 -2
- package/dist/web/client/index.html +3 -3
- package/dist/web/client/style.css +6 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -35,7 +35,7 @@ import {
|
|
|
35
35
|
theme,
|
|
36
36
|
truncateOutput,
|
|
37
37
|
undoStack
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-NJTTV277.js";
|
|
39
39
|
import {
|
|
40
40
|
AGENTIC_BEHAVIOR_GUIDELINE,
|
|
41
41
|
AUTHOR,
|
|
@@ -55,7 +55,7 @@ import {
|
|
|
55
55
|
REPO_URL,
|
|
56
56
|
SKILLS_DIR_NAME,
|
|
57
57
|
VERSION
|
|
58
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-2FJISNUB.js";
|
|
59
59
|
|
|
60
60
|
// src/index.ts
|
|
61
61
|
import { program } from "commander";
|
|
@@ -1904,7 +1904,7 @@ ${hint}` : "")
|
|
|
1904
1904
|
description: "Run project tests and show structured report",
|
|
1905
1905
|
usage: "/test [command|filter]",
|
|
1906
1906
|
async execute(args, _ctx) {
|
|
1907
|
-
const { executeTests } = await import("./run-tests-
|
|
1907
|
+
const { executeTests } = await import("./run-tests-KFMWOLRG.js");
|
|
1908
1908
|
const argStr = args.join(" ").trim();
|
|
1909
1909
|
let testArgs = {};
|
|
1910
1910
|
if (argStr) {
|
|
@@ -5291,7 +5291,7 @@ program.command("web").description("Start Web UI server with browser-based chat
|
|
|
5291
5291
|
console.error("Error: Invalid port number. Must be between 1 and 65535.");
|
|
5292
5292
|
process.exit(1);
|
|
5293
5293
|
}
|
|
5294
|
-
const { startWebServer } = await import("./server-
|
|
5294
|
+
const { startWebServer } = await import("./server-4HRRB4UM.js");
|
|
5295
5295
|
await startWebServer({ port, host: options.host });
|
|
5296
5296
|
});
|
|
5297
5297
|
program.command("sessions").description("List recent conversation sessions").action(async () => {
|
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
setupProxy,
|
|
24
24
|
spawnAgentContext,
|
|
25
25
|
truncateOutput
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-NJTTV277.js";
|
|
27
27
|
import {
|
|
28
28
|
AGENTIC_BEHAVIOR_GUIDELINE,
|
|
29
29
|
CONTEXT_FILE_CANDIDATES,
|
|
@@ -36,7 +36,7 @@ import {
|
|
|
36
36
|
SKILLS_DIR_NAME,
|
|
37
37
|
VERSION,
|
|
38
38
|
__require
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-2FJISNUB.js";
|
|
40
40
|
|
|
41
41
|
// src/web/server.ts
|
|
42
42
|
import express from "express";
|
package/dist/web/client/app.js
CHANGED
|
@@ -601,19 +601,36 @@ function renderSessionList(sessions) {
|
|
|
601
601
|
const date = new Date(s.updated);
|
|
602
602
|
const timeStr = date.toLocaleDateString() + ' ' + date.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' });
|
|
603
603
|
return `<div class="session-item ${s.isCurrent ? 'active' : ''}" data-session-id="${s.id}" title="${escapeHtml(title)}">
|
|
604
|
-
<div class="
|
|
604
|
+
<div class="flex items-center gap-1">
|
|
605
|
+
<div class="session-title flex-1">${escapeHtml(title)}</div>
|
|
606
|
+
<button class="session-delete-btn opacity-0 hover:opacity-100 text-error text-xs px-1 flex-shrink-0" data-delete-id="${s.id}" title="Delete session">×</button>
|
|
607
|
+
</div>
|
|
605
608
|
<div class="session-meta">${s.messageCount} msgs · ${timeStr}</div>
|
|
606
609
|
</div>`;
|
|
607
610
|
}).join('');
|
|
608
611
|
|
|
609
612
|
// Click to load session
|
|
610
613
|
sessionListEl.querySelectorAll('.session-item').forEach(el => {
|
|
611
|
-
el.addEventListener('click', () => {
|
|
614
|
+
el.addEventListener('click', (e) => {
|
|
615
|
+
// Don't load if clicking the delete button
|
|
616
|
+
if (e.target.closest('.session-delete-btn')) return;
|
|
612
617
|
const id = el.dataset.sessionId;
|
|
613
618
|
if (!id) return;
|
|
614
619
|
send({ type: 'command', name: 'session', args: ['load', id] });
|
|
615
620
|
});
|
|
616
621
|
});
|
|
622
|
+
|
|
623
|
+
// Click to delete session
|
|
624
|
+
sessionListEl.querySelectorAll('.session-delete-btn').forEach(btn => {
|
|
625
|
+
btn.addEventListener('click', (e) => {
|
|
626
|
+
e.stopPropagation();
|
|
627
|
+
const id = btn.dataset.deleteId;
|
|
628
|
+
if (!id) return;
|
|
629
|
+
if (confirm('Delete this session?')) {
|
|
630
|
+
send({ type: 'command', name: 'session', args: ['delete', id] });
|
|
631
|
+
}
|
|
632
|
+
});
|
|
633
|
+
});
|
|
617
634
|
}
|
|
618
635
|
|
|
619
636
|
function renderSessionMessages(messages) {
|
|
@@ -50,9 +50,9 @@
|
|
|
50
50
|
|
|
51
51
|
<!-- Sidebar -->
|
|
52
52
|
<aside id="sidebar" class="sidebar bg-base-200 border-r border-base-content/10 flex flex-col w-64 flex-shrink-0 overflow-hidden transition-all duration-200">
|
|
53
|
-
<div class="p-3 border-b border-base-content/10 flex items-center justify-between">
|
|
54
|
-
<span class="font-semibold text-sm">Sessions</span>
|
|
55
|
-
<button id="btn-new-session" class="btn btn-xs btn-primary btn-outline" title="New session">+ New</button>
|
|
53
|
+
<div class="p-3 border-b border-base-content/10 flex items-center justify-between h-12">
|
|
54
|
+
<span class="font-semibold text-sm leading-none">Sessions</span>
|
|
55
|
+
<button id="btn-new-session" class="btn btn-xs btn-primary btn-outline leading-none" title="New session">+ New</button>
|
|
56
56
|
</div>
|
|
57
57
|
<div id="session-list" class="flex-1 overflow-y-auto p-2 flex flex-col gap-1 text-sm">
|
|
58
58
|
<div class="text-xs opacity-40 text-center py-4">No sessions yet</div>
|
|
@@ -264,6 +264,12 @@
|
|
|
264
264
|
font-size: 0.7rem;
|
|
265
265
|
opacity: 0.5;
|
|
266
266
|
}
|
|
267
|
+
.sidebar .session-item:hover .session-delete-btn {
|
|
268
|
+
opacity: 0.5;
|
|
269
|
+
}
|
|
270
|
+
.sidebar .session-item:hover .session-delete-btn:hover {
|
|
271
|
+
opacity: 1;
|
|
272
|
+
}
|
|
267
273
|
|
|
268
274
|
/* ── Image upload preview ──────────────────────────── */
|
|
269
275
|
#image-preview {
|