@deepseek-insight/dsi 0.9.0 → 0.10.0
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/bin/dsi.mjs +25 -0
- package/build/client/_app/immutable/assets/0.uhYTRapi.css +2 -0
- package/build/client/_app/immutable/chunks/0Uk2rkmL.js +1 -0
- package/build/client/_app/immutable/chunks/{0ruuBBbh.js → BaH6C3xD.js} +2 -2
- package/build/client/_app/immutable/chunks/{ChmmHPdM.js → Bu2owQS4.js} +1 -1
- package/build/client/_app/immutable/chunks/DXba8Dom.js +1 -0
- package/build/client/_app/immutable/entry/{app.D4oc_iez.js → app.DjLAWmJH.js} +2 -2
- package/build/client/_app/immutable/entry/start.D-t6KuoK.js +1 -0
- package/build/client/_app/immutable/nodes/{1.3F37GwcO.js → 1.w6Hz6-dJ.js} +1 -1
- package/build/client/_app/immutable/nodes/{2.DsWNNw0K.js → 2.CFmqEODJ.js} +107 -107
- package/build/client/_app/version.json +1 -1
- package/build/handler.js +4 -4
- package/build/index.js +4 -4
- package/build/server/chunks/chunks/{internal2.js-DbC8VGqD.js → internal2.js-DRFhzPda.js} +2 -2
- package/build/server/chunks/chunks/{state.js-DR4xiIVw.js → state.js-kZHonU4N.js} +2 -2
- package/build/server/chunks/entries/pages/{_error.svelte.js-e018KpwE.js → _error.svelte.js-BKhpJygh.js} +3 -3
- package/build/server/chunks/entries/pages/{_page.svelte.js-DQWBiRk1.js → _page.svelte.js-BlbGdGej.js} +70 -10
- package/build/server/chunks/{handler-DsD7I1_u.js → handler-BtG6aVza.js} +3 -3
- package/build/server/chunks/{index.js-C_WAkwJs.js → index.js-rGfUdWOY.js} +2 -2
- package/build/server/chunks/{manifest.js-DUy52VaP.js → manifest.js-DwQ7BEt1.js} +5 -5
- package/build/server/chunks/nodes/{0.js-CuV3dXVD.js → 0.js-Cum-Y-us.js} +3 -3
- package/build/server/chunks/nodes/1.js-D0EwPqp_.js +9 -0
- package/build/server/chunks/nodes/{2.js-PwcF4_kT.js → 2.js-ButkUErW.js} +3 -3
- package/package.json +2 -2
- package/scripts/dsh-web-synced.sh +21 -5
- package/skills/dsi-drive-terminal/SKILL.md +219 -0
- package/skills/dsi-publish/SKILL.md +67 -0
- package/template/.dsi/prompts.sqlite-shm +0 -0
- package/template/.dsi/prompts.sqlite-wal +0 -0
- package/template/.dsi/settings.yaml +1 -2
- package/build/client/_app/immutable/assets/0.Ch5VtsKp.css +0 -2
- package/build/client/_app/immutable/chunks/CWk5gmU2.js +0 -1
- package/build/client/_app/immutable/chunks/vpNeypNM.js +0 -1
- package/build/client/_app/immutable/entry/start.Xkr2MCWg.js +0 -1
- package/build/server/chunks/nodes/1.js-Dc5QC-NJ.js +0 -9
- /package/build/client/_app/immutable/nodes/{0.fsrqKU9i.js → 0.DeDuCaDD.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"
|
|
1
|
+
{"version":"1793848049390"}
|
package/build/handler.js
CHANGED
|
@@ -2,9 +2,9 @@ import './shims.js';
|
|
|
2
2
|
import 'node:fs';
|
|
3
3
|
import 'node:path';
|
|
4
4
|
import 'node:process';
|
|
5
|
-
export { h as handler } from './server/chunks/handler-
|
|
6
|
-
import './server/chunks/index.js-
|
|
7
|
-
import './server/chunks/manifest.js-
|
|
5
|
+
export { h as handler } from './server/chunks/handler-BtG6aVza.js';
|
|
6
|
+
import './server/chunks/index.js-rGfUdWOY.js';
|
|
7
|
+
import './server/chunks/manifest.js-DwQ7BEt1.js';
|
|
8
8
|
import './env.js';
|
|
9
9
|
import 'node:buffer';
|
|
10
10
|
import 'node:crypto';
|
|
@@ -19,6 +19,6 @@ import 'node:url';
|
|
|
19
19
|
import './server/chunks/chunks/index-server.js-CPkVoRxB.js';
|
|
20
20
|
import './server/chunks/chunks/server.js-Dijo7DtV.js';
|
|
21
21
|
import './server/chunks/chunks/internal.js-BcS47nI-.js';
|
|
22
|
-
import './server/chunks/chunks/internal2.js-
|
|
22
|
+
import './server/chunks/chunks/internal2.js-DRFhzPda.js';
|
|
23
23
|
import './server/chunks/chunks/exports.js-DH_tjtdv.js';
|
|
24
24
|
//# sourceMappingURL=handler.js.map
|
package/build/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import http from 'node:http';
|
|
2
2
|
import fs__default from 'node:fs';
|
|
3
3
|
import process from 'node:process';
|
|
4
|
-
import { p as polka, h as handler, f as format_listening_address } from './server/chunks/handler-
|
|
4
|
+
import { p as polka, h as handler, f as format_listening_address } from './server/chunks/handler-BtG6aVza.js';
|
|
5
5
|
import { env, timeout_env } from './env.js';
|
|
6
6
|
import { rm } from 'node:fs/promises';
|
|
7
7
|
import './shims.js';
|
|
@@ -14,13 +14,13 @@ import 'node:stream';
|
|
|
14
14
|
import './server/chunks/chunks/shared.js-HQ0rfhm4.js';
|
|
15
15
|
import './server/chunks/chunks/uneval.js-BJ9Qq2SF.js';
|
|
16
16
|
import './server/chunks/chunks/utils.js-CAdNO8Tu.js';
|
|
17
|
-
import './server/chunks/index.js-
|
|
17
|
+
import './server/chunks/index.js-rGfUdWOY.js';
|
|
18
18
|
import './server/chunks/chunks/index-server.js-CPkVoRxB.js';
|
|
19
19
|
import './server/chunks/chunks/server.js-Dijo7DtV.js';
|
|
20
20
|
import './server/chunks/chunks/internal.js-BcS47nI-.js';
|
|
21
|
-
import './server/chunks/chunks/internal2.js-
|
|
21
|
+
import './server/chunks/chunks/internal2.js-DRFhzPda.js';
|
|
22
22
|
import './server/chunks/chunks/exports.js-DH_tjtdv.js';
|
|
23
|
-
import './server/chunks/manifest.js-
|
|
23
|
+
import './server/chunks/manifest.js-DwQ7BEt1.js';
|
|
24
24
|
import 'node:url';
|
|
25
25
|
|
|
26
26
|
const path = env('SOCKET_PATH', false);
|
|
@@ -580,7 +580,7 @@ var options = {
|
|
|
580
580
|
app: ({ head, body, assets, nonce, env }) => "<!doctype html>\n<html lang=\"%paraglide.locale%\">\n <head>\n <meta charset=\"utf-8\" />\n <link rel=\"icon\" href=\"" + assets + "/favicon.svg\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <script>\n /* The Three-State Lamp pre-paint (ADR-0023 D3, 2026-10-11): resolve\n * the choice and set html[data-theme] BEFORE the bundle paints —\n * no flash of light on a dark reload. The key 'dsi-theme' is\n * pinned identical to src/lib/utils/theme-prefs.svelte.ts by\n * tests/unit/theme-prefs.test.ts; change both together. */\n try {\n var m = location.search.match(/[?&]profile=([^&]*)/);\n var prof = m ? m[1].replace(/[^A-Za-z0-9_-]/g, '').slice(0, 40) : '';\n var k = 'dsi-theme' + (prof ? '_' + prof : '');\n var t = localStorage.getItem(k);\n if (t !== 'light' && t !== 'dark' && t !== 'system') t = 'system';\n document.documentElement.dataset.theme =\n t === 'dark' || (t === 'system' && window.matchMedia && matchMedia('(prefers-color-scheme: dark)').matches)\n ? 'dark'\n : 'light';\n } catch (e) {\n document.documentElement.dataset.theme = 'light';\n }\n <\/script>\n " + head + "\n </head>\n <body data-sveltekit-preload-data=\"tap\">\n <div style=\"display: contents\">" + body + "</div>\n </body>\n</html>\n",
|
|
581
581
|
error: error_template_default
|
|
582
582
|
},
|
|
583
|
-
version_hash: "
|
|
583
|
+
version_hash: "1gjqxay"
|
|
584
584
|
};
|
|
585
585
|
async function get_hooks() {
|
|
586
586
|
let handle;
|
|
@@ -603,4 +603,4 @@ async function get_hooks() {
|
|
|
603
603
|
}
|
|
604
604
|
|
|
605
605
|
export { set_public_env as a, set_read_implementation as b, get_hooks as g, options as o, public_env as p, read_implementation as r, set_private_env as s };
|
|
606
|
-
//# sourceMappingURL=internal2.js-
|
|
606
|
+
//# sourceMappingURL=internal2.js-DRFhzPda.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { i as index_server_exports } from './index-server.js-CPkVoRxB.js';
|
|
2
2
|
import './shared.js-HQ0rfhm4.js';
|
|
3
|
-
import './internal2.js-
|
|
3
|
+
import './internal2.js-DRFhzPda.js';
|
|
4
4
|
import './exports.js-DH_tjtdv.js';
|
|
5
5
|
import { U as snapshot, g as getContext, n as noop } from './server.js-Dijo7DtV.js';
|
|
6
6
|
import { U as UI_LOCALES } from './config.js-r_jw_bQQ.js';
|
|
@@ -304,4 +304,4 @@ var page = {
|
|
|
304
304
|
};
|
|
305
305
|
|
|
306
306
|
export { afterNavigate as a, backtoworkspace2 as b, currentLocale as c, dshunreachable1 as d, replaceState as e, page as p, reapednote1 as r, sessionnotfound2 as s, t, unexpectederror1 as u };
|
|
307
|
-
//# sourceMappingURL=state.js-
|
|
307
|
+
//# sourceMappingURL=state.js-kZHonU4N.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { V as head, W as escape_html, M as derived } from '../../chunks/server.js-Dijo7DtV.js';
|
|
2
|
-
import { t, p as page, s as sessionnotfound2, r as reapednote1, d as dshunreachable1, u as unexpectederror1, b as backtoworkspace2 } from '../../chunks/state.js-
|
|
2
|
+
import { t, p as page, s as sessionnotfound2, r as reapednote1, d as dshunreachable1, u as unexpectederror1, b as backtoworkspace2 } from '../../chunks/state.js-kZHonU4N.js';
|
|
3
3
|
import '../../chunks/uneval.js-BJ9Qq2SF.js';
|
|
4
4
|
import '../../chunks/index-server.js-CPkVoRxB.js';
|
|
5
5
|
import '../../chunks/shared.js-HQ0rfhm4.js';
|
|
6
|
-
import '../../chunks/internal2.js-
|
|
6
|
+
import '../../chunks/internal2.js-DRFhzPda.js';
|
|
7
7
|
import '../../chunks/exports.js-DH_tjtdv.js';
|
|
8
8
|
import '../../chunks/config.js-r_jw_bQQ.js';
|
|
9
9
|
import '../../chunks/runtime.js-CCJi3XaY.js';
|
|
@@ -41,4 +41,4 @@ function _error($$renderer, $$props) {
|
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
export { _error as default };
|
|
44
|
-
//# sourceMappingURL=_error.svelte.js-
|
|
44
|
+
//# sourceMappingURL=_error.svelte.js-BKhpJygh.js.map
|
|
@@ -9,7 +9,7 @@ import { D as DEFAULT_IMAGE_LIMITS } from '../../chunks/image-limits.js-CUdJ0f7r
|
|
|
9
9
|
import { s as sanitizeWorkspaceProfile, d as dsiKey, t as themePrefs } from '../../chunks/theme-prefs.svelte.js-8CaWz46g.js';
|
|
10
10
|
import { a as appConfig, p as previewSegments, b as parseTagWords, i as isValidTagWord, s as shouldRecordPrompt, g as getTrigger, t as triggerMode, c as searchKey, d as textPreviewOf } from '../../chunks/app-config.svelte.js-BXjvTmJu.js';
|
|
11
11
|
import { c as getLocale } from '../../chunks/runtime.js-CCJi3XaY.js';
|
|
12
|
-
import { p as page, a as afterNavigate, t, c as currentLocale, e as replaceState, u as unexpectederror1, s as sessionnotfound2, r as reapednote1, d as dshunreachable1, b as backtoworkspace2 } from '../../chunks/state.js-
|
|
12
|
+
import { p as page, a as afterNavigate, t, c as currentLocale, e as replaceState, u as unexpectederror1, s as sessionnotfound2, r as reapednote1, d as dshunreachable1, b as backtoworkspace2 } from '../../chunks/state.js-kZHonU4N.js';
|
|
13
13
|
import 'yaml';
|
|
14
14
|
import 'html-to-image';
|
|
15
15
|
import hljs from 'highlight.js/lib/core';
|
|
@@ -21,7 +21,7 @@ import xml from 'highlight.js/lib/languages/xml';
|
|
|
21
21
|
import css from 'highlight.js/lib/languages/css';
|
|
22
22
|
import '../../chunks/uneval.js-BJ9Qq2SF.js';
|
|
23
23
|
import '../../chunks/shared.js-HQ0rfhm4.js';
|
|
24
|
-
import '../../chunks/internal2.js-
|
|
24
|
+
import '../../chunks/internal2.js-DRFhzPda.js';
|
|
25
25
|
import '../../chunks/utils.js-CAdNO8Tu.js';
|
|
26
26
|
|
|
27
27
|
//#region src/lib/paraglide/messages/abort.js
|
|
@@ -13592,6 +13592,38 @@ var terminaltabsclearterminals3 = ((inputs = {}, options = {}) => {
|
|
|
13592
13592
|
return en_terminaltabsclearterminals3();
|
|
13593
13593
|
});
|
|
13594
13594
|
//#endregion
|
|
13595
|
+
//#region src/lib/paraglide/messages/terminaltokenrefreshed2.js
|
|
13596
|
+
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
13597
|
+
/** @typedef {{}} Terminaltokenrefreshed2Inputs */
|
|
13598
|
+
var en_terminaltokenrefreshed2 = () => {
|
|
13599
|
+
return `token refreshed — your keystroke was retried`;
|
|
13600
|
+
};
|
|
13601
|
+
var zh_terminaltokenrefreshed2 = () => {
|
|
13602
|
+
return `令牌已刷新 — 按键已重试`;
|
|
13603
|
+
};
|
|
13604
|
+
var id_terminaltokenrefreshed2 = () => {
|
|
13605
|
+
return `token disegarkan — ketikan Anda dicoba ulang`;
|
|
13606
|
+
};
|
|
13607
|
+
var es_terminaltokenrefreshed2 = () => {
|
|
13608
|
+
return `token renovado — tu tecla se reintentó`;
|
|
13609
|
+
};
|
|
13610
|
+
/**
|
|
13611
|
+
* | output |
|
|
13612
|
+
* | --- |
|
|
13613
|
+
* | "token refreshed — your keystroke was retried" |
|
|
13614
|
+
*
|
|
13615
|
+
* @param {Terminaltokenrefreshed2Inputs} inputs
|
|
13616
|
+
* @param {{ locale?: "en" | "zh" | "id" | "es" }} options
|
|
13617
|
+
* @returns {LocalizedString}
|
|
13618
|
+
*/
|
|
13619
|
+
var terminaltokenrefreshed2 = ((inputs = {}, options = {}) => {
|
|
13620
|
+
const locale = options.locale ?? getLocale();
|
|
13621
|
+
if (locale === "zh") return zh_terminaltokenrefreshed2();
|
|
13622
|
+
if (locale === "id") return id_terminaltokenrefreshed2();
|
|
13623
|
+
if (locale === "es") return es_terminaltokenrefreshed2();
|
|
13624
|
+
return en_terminaltokenrefreshed2();
|
|
13625
|
+
});
|
|
13626
|
+
//#endregion
|
|
13595
13627
|
//#region src/lib/paraglide/messages/text.js
|
|
13596
13628
|
/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */
|
|
13597
13629
|
/** @typedef {{}} TextInputs */
|
|
@@ -16230,6 +16262,7 @@ var _index_exports = /* @__PURE__ */ __exportAll({
|
|
|
16230
16262
|
terminalTabsClearAll: () => terminaltabsclearall3,
|
|
16231
16263
|
terminalTabsClearJobs: () => terminaltabsclearjobs3,
|
|
16232
16264
|
terminalTabsClearTerminals: () => terminaltabsclearterminals3,
|
|
16265
|
+
terminalTokenRefreshed: () => terminaltokenrefreshed2,
|
|
16233
16266
|
text: () => text,
|
|
16234
16267
|
themeChoice_dark: () => themechoice_dark1,
|
|
16235
16268
|
themeChoice_light: () => themechoice_light1,
|
|
@@ -16733,6 +16766,7 @@ var messages_exports = /* @__PURE__ */ __exportAll({
|
|
|
16733
16766
|
terminalTabsClearAll: () => terminaltabsclearall3,
|
|
16734
16767
|
terminalTabsClearJobs: () => terminaltabsclearjobs3,
|
|
16735
16768
|
terminalTabsClearTerminals: () => terminaltabsclearterminals3,
|
|
16769
|
+
terminalTokenRefreshed: () => terminaltokenrefreshed2,
|
|
16736
16770
|
text: () => text,
|
|
16737
16771
|
themeChoice_dark: () => themechoice_dark1,
|
|
16738
16772
|
themeChoice_light: () => themechoice_light1,
|
|
@@ -18734,8 +18768,8 @@ function ThemeToggle($$renderer, $$props) {
|
|
|
18734
18768
|
}
|
|
18735
18769
|
//#endregion
|
|
18736
18770
|
//#region package.json
|
|
18737
|
-
var version = "0.
|
|
18738
|
-
var dsh = { "webVersion": "0.2.2-
|
|
18771
|
+
var version = "0.10.0";
|
|
18772
|
+
var dsh = { "webVersion": "0.2.2-rc.1" };
|
|
18739
18773
|
//#endregion
|
|
18740
18774
|
//#region src/lib/version.ts
|
|
18741
18775
|
/**
|
|
@@ -34678,7 +34712,9 @@ var initialTerminalPanelState = {
|
|
|
34678
34712
|
//#region src/lib/components/terminal/TerminalPanel.svelte
|
|
34679
34713
|
function TerminalPanel($$renderer, $$props) {
|
|
34680
34714
|
$$renderer.component(($$renderer) => {
|
|
34681
|
-
let { onShellExit, assigned = null, onAssigned } = $$props;
|
|
34715
|
+
let { onShellExit, assigned = null, onAssigned, zoom = 1 } = $$props;
|
|
34716
|
+
/** Coerced zoom — the pocket's single source (null-safe default 1). */
|
|
34717
|
+
const pocketZoom = derived(() => zoom ?? 1);
|
|
34682
34718
|
let panelState = { ...initialTerminalPanelState };
|
|
34683
34719
|
Promise.resolve();
|
|
34684
34720
|
/** Focus the live xterm surface (the desk's ⌥+N tab shortcut,
|
|
@@ -34697,9 +34733,11 @@ function TerminalPanel($$renderer, $$props) {
|
|
|
34697
34733
|
$$renderer.push("<!--[0-->");
|
|
34698
34734
|
$$renderer.push(`<span data-testid="terminal-settle-badge" class="rounded bg-slate-700 px-1.5 py-0.5">${escape_html(settleText(panelState.lastSettle))}</span>`);
|
|
34699
34735
|
} else $$renderer.push("<!--[-1-->");
|
|
34736
|
+
$$renderer.push(`<!--]--> `);
|
|
34737
|
+
$$renderer.push("<!--[-1-->");
|
|
34700
34738
|
$$renderer.push(`<!--]--> <div class="grow"></div></div> `);
|
|
34701
34739
|
$$renderer.push("<!--[-1-->");
|
|
34702
|
-
$$renderer.push(`<div class="relative min-h-72 grow overflow-hidden" data-testid="terminal-host" role="presentation"><div class="absolute inset-0"></div></div> `);
|
|
34740
|
+
$$renderer.push(`<div class="relative min-h-72 grow overflow-hidden" data-testid="terminal-host" role="presentation"><div class="absolute inset-0 origin-top-left"${attr_style(pocketZoom() === 1 ? void 0 : `right: auto; bottom: auto; width: ${pocketZoom() * 100}%; height: ${pocketZoom() * 100}%; transform: scale(${1 / pocketZoom()});`)}><div class="absolute inset-0"></div></div></div> `);
|
|
34703
34741
|
$$renderer.push("<!--[-1-->");
|
|
34704
34742
|
$$renderer.push(`<!--]--> `);
|
|
34705
34743
|
$$renderer.push("<!--[-1-->");
|
|
@@ -34992,7 +35030,9 @@ function TerminalDesk($$renderer, $$props) {
|
|
|
34992
35030
|
* bare command behaves byte-identically to the pre-desk panel. */
|
|
34993
35031
|
/** Null = self-open (the panel runs its own ladder and reports back
|
|
34994
35032
|
* via onAssigned); set = the desk holds this session's lease. */
|
|
34995
|
-
let { onShellExit, restored = null, onMirror } = $$props;
|
|
35033
|
+
let { onShellExit, restored = null, onMirror, zoom = 1 } = $$props;
|
|
35034
|
+
/** Coerced zoom — one pocket source for every row (null-safe default 1). */
|
|
35035
|
+
const deskZoom = derived(() => zoom ?? 1);
|
|
34996
35036
|
let nextKey = 1;
|
|
34997
35037
|
const mkKey = () => nextKey++;
|
|
34998
35038
|
const defaultTab = () => ({
|
|
@@ -35049,6 +35089,23 @@ function TerminalDesk($$renderer, $$props) {
|
|
|
35049
35089
|
if (select) selectedTab = jobCount() - 1;
|
|
35050
35090
|
}
|
|
35051
35091
|
registerJobTabOpener((owner, jobId, label) => openJobTab(owner, jobId, label));
|
|
35092
|
+
/** The truthful badge grammar (2026-11-04 amendment, ADR D5e/D5f):
|
|
35093
|
+
* the shell-tab badge pairs the strip position with the session id —
|
|
35094
|
+
* single row assigned → 'T1:7' (registry id t-7 → 7); split →
|
|
35095
|
+
* 'T1:7+9' (row order); unassigned → plain 'T1'. Display-only: the
|
|
35096
|
+
* registry and mirror stay keyed on FULL session ids; the badge is a
|
|
35097
|
+
* view, mirroring the Glass chip's ordinal grammar. */
|
|
35098
|
+
function sessionOrdinal(id) {
|
|
35099
|
+
return id.replace(/^t-/, "");
|
|
35100
|
+
}
|
|
35101
|
+
function badgeSuffix(tab) {
|
|
35102
|
+
const ids = tab.rows.map((r) => r.assigned?.sessionId ?? "").filter((id) => id !== "");
|
|
35103
|
+
return ids.length > 0 ? ":" + ids.map(sessionOrdinal).join("+") : "";
|
|
35104
|
+
}
|
|
35105
|
+
function badgeTitle(tab) {
|
|
35106
|
+
const ids = tab.rows.map((r) => r.assigned?.sessionId ?? "").filter((id) => id !== "");
|
|
35107
|
+
return ids.length > 0 ? "session " + ids.join(", ") : "";
|
|
35108
|
+
}
|
|
35052
35109
|
/** Mint a fresh session server-side and hand it to a new row (row
|
|
35053
35110
|
* mode). A new tab or split-down NEVER re-attaches an existing
|
|
35054
35111
|
* session — the reattach ladder is reload-recovery, not a spawner. */
|
|
@@ -35181,10 +35238,11 @@ function TerminalDesk($$renderer, $$props) {
|
|
|
35181
35238
|
$$renderer.push(`<!--[-->`);
|
|
35182
35239
|
const each_array = ensure_array_like(tabs);
|
|
35183
35240
|
for (let i = 0, $$length = each_array.length; i < $$length; i++) {
|
|
35184
|
-
each_array[i];
|
|
35241
|
+
let tab = each_array[i];
|
|
35185
35242
|
TerminalTabButton($$renderer, {
|
|
35186
35243
|
index: i,
|
|
35187
|
-
label: "T" + (i + 1),
|
|
35244
|
+
label: "T" + (i + 1) + badgeSuffix(tab),
|
|
35245
|
+
title: badgeTitle(tab),
|
|
35188
35246
|
selected: i === selectedTab,
|
|
35189
35247
|
onSelect: () => selectedTab = i,
|
|
35190
35248
|
onClose: () => closeTab(i)
|
|
@@ -35223,6 +35281,7 @@ function TerminalDesk($$renderer, $$props) {
|
|
|
35223
35281
|
$$renderer.push(`<div class="min-h-0" style="flex: 1 1 0; min-height: 10rem;">`);
|
|
35224
35282
|
TerminalPanel($$renderer, {
|
|
35225
35283
|
assigned: row.assigned,
|
|
35284
|
+
zoom: deskZoom(),
|
|
35226
35285
|
onAssigned: (sessionId, token) => recordAssigned(row, sessionId, token),
|
|
35227
35286
|
onShellExit: () => removeRow(i, row)
|
|
35228
35287
|
});
|
|
@@ -38528,6 +38587,7 @@ function _page($$renderer, $$props) {
|
|
|
38528
38587
|
$$renderer.push(`<div class="panel-manager-body svelte-1uha8ag" data-testid="panel-terminal">`);
|
|
38529
38588
|
TerminalDesk($$renderer, {
|
|
38530
38589
|
restored: panel.desk ?? null,
|
|
38590
|
+
zoom: floorPanelId ? pagePrefs.zoom : 1,
|
|
38531
38591
|
onMirror: (m) => {
|
|
38532
38592
|
terminalDeskMirrors[panel.id] = m;
|
|
38533
38593
|
},
|
|
@@ -38786,4 +38846,4 @@ function _page($$renderer, $$props) {
|
|
|
38786
38846
|
}
|
|
38787
38847
|
|
|
38788
38848
|
export { _page as default };
|
|
38789
|
-
//# sourceMappingURL=_page.svelte.js-
|
|
38849
|
+
//# sourceMappingURL=_page.svelte.js-BlbGdGej.js.map
|
|
@@ -9,8 +9,8 @@ import * as qs from 'node:querystring';
|
|
|
9
9
|
import { Readable } from 'node:stream';
|
|
10
10
|
import { S as SvelteKitError } from './chunks/shared.js-HQ0rfhm4.js';
|
|
11
11
|
import './chunks/utils.js-CAdNO8Tu.js';
|
|
12
|
-
import { S as Server } from './index.js-
|
|
13
|
-
import { m as manifest } from './manifest.js-
|
|
12
|
+
import { S as Server } from './index.js-rGfUdWOY.js';
|
|
13
|
+
import { m as manifest } from './manifest.js-DwQ7BEt1.js';
|
|
14
14
|
import { env, dir, env_prefix } from '../../env.js';
|
|
15
15
|
import { format } from 'node:url';
|
|
16
16
|
|
|
@@ -1732,4 +1732,4 @@ const handler = sequence(
|
|
|
1732
1732
|
);
|
|
1733
1733
|
|
|
1734
1734
|
export { format_listening_address as f, handler as h, polka as p };
|
|
1735
|
-
//# sourceMappingURL=handler-
|
|
1735
|
+
//# sourceMappingURL=handler-BtG6aVza.js.map
|
|
@@ -3,7 +3,7 @@ import { n as noop, T as TRAILING_SLASH_PARAM, I as INVALIDATED_PARAM, R as Redi
|
|
|
3
3
|
import { b as base, o as override, a as assets, r as reset, c as app_dir } from './chunks/internal.js-BcS47nI-.js';
|
|
4
4
|
import { f as format_server_error, j as json, i as is_form_content_type, t as text, h as has_prerendered_path, a as handle_fatal_error, r as redirect_response, g as get_set_cookies, n as negotiate, w as with_request_store, p as parseString, m as merge_tracing, b as method_not_allowed, s as static_error_page, c as handle_error_and_jsonify, d as get_global_name, e as create_replacer, k as serialize_uses, l as clarify_devalue_error, E as ENDPOINT_METHODS, P as PAGE_METHODS, o as get_node_type, q as isRedirect, u as escape_html, v as error, x as deserialize_binary_form } from './chunks/utils.js-CAdNO8Tu.js';
|
|
5
5
|
import { u as uneval } from './chunks/uneval.js-BJ9Qq2SF.js';
|
|
6
|
-
import { o as options, s as set_private_env, a as set_public_env, g as get_hooks, p as public_env, r as read_implementation, b as set_read_implementation } from './chunks/internal2.js-
|
|
6
|
+
import { o as options, s as set_private_env, a as set_public_env, g as get_hooks, p as public_env, r as read_implementation, b as set_read_implementation } from './chunks/internal2.js-DRFhzPda.js';
|
|
7
7
|
import { d as decode_pathname, f as find_route, n as normalize_path, a as disable_search, v as validate_layout_server_exports, b as validate_layout_exports, c as validate_page_server_exports, e as validate_page_exports, r as resolve, h as hash, m as make_trackable } from './chunks/exports.js-DH_tjtdv.js';
|
|
8
8
|
import { S as readable, T as writable } from './chunks/server.js-Dijo7DtV.js';
|
|
9
9
|
|
|
@@ -3862,4 +3862,4 @@ var Server = class {
|
|
|
3862
3862
|
};
|
|
3863
3863
|
|
|
3864
3864
|
export { Server as S };
|
|
3865
|
-
//# sourceMappingURL=index.js-
|
|
3865
|
+
//# sourceMappingURL=index.js-rGfUdWOY.js.map
|
|
@@ -10,11 +10,11 @@ return {
|
|
|
10
10
|
assets: new Set(["favicon.svg"]),
|
|
11
11
|
mimeTypes: {".svg":"image/svg+xml"},
|
|
12
12
|
_: {
|
|
13
|
-
client: {start:"_app/immutable/entry/start.
|
|
13
|
+
client: {start:"_app/immutable/entry/start.D-t6KuoK.js",app:"_app/immutable/entry/app.DjLAWmJH.js",imports:["_app/immutable/entry/start.D-t6KuoK.js","_app/immutable/chunks/BaH6C3xD.js","_app/immutable/chunks/0Tfhif1V.js","_app/immutable/entry/app.DjLAWmJH.js","_app/immutable/chunks/0Tfhif1V.js","_app/immutable/chunks/HclGiUj8.js","_app/immutable/chunks/xihTtKlq.js"],stylesheets:[],fonts:[],uses_env_dynamic_public:false},
|
|
14
14
|
nodes: [
|
|
15
|
-
__memo(() => import('./nodes/0.js-
|
|
16
|
-
__memo(() => import('./nodes/1.js-
|
|
17
|
-
__memo(() => import('./nodes/2.js-
|
|
15
|
+
__memo(() => import('./nodes/0.js-Cum-Y-us.js')),
|
|
16
|
+
__memo(() => import('./nodes/1.js-D0EwPqp_.js')),
|
|
17
|
+
__memo(() => import('./nodes/2.js-ButkUErW.js'))
|
|
18
18
|
],
|
|
19
19
|
remotes: {
|
|
20
20
|
|
|
@@ -592,4 +592,4 @@ return {
|
|
|
592
592
|
})();
|
|
593
593
|
|
|
594
594
|
export { manifest as m };
|
|
595
|
-
//# sourceMappingURL=manifest.js-
|
|
595
|
+
//# sourceMappingURL=manifest.js-DwQ7BEt1.js.map
|
|
@@ -4,9 +4,9 @@ const index = 0;
|
|
|
4
4
|
let component_cache;
|
|
5
5
|
const component = async () => component_cache ??= (await import('../entries/pages/_layout.svelte.js-DRfiLzlz.js')).default;
|
|
6
6
|
const universal_id = "src/routes/+layout.ts";
|
|
7
|
-
const imports = ["_app/immutable/nodes/0.
|
|
8
|
-
const stylesheets = ["_app/immutable/assets/0.
|
|
7
|
+
const imports = ["_app/immutable/nodes/0.DeDuCaDD.js","_app/immutable/chunks/0Tfhif1V.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/CTWtsoJD.js","_app/immutable/chunks/D9jhmf3I.js"];
|
|
8
|
+
const stylesheets = ["_app/immutable/assets/0.uhYTRapi.css"];
|
|
9
9
|
const fonts = [];
|
|
10
10
|
|
|
11
11
|
export { component, fonts, imports, index, stylesheets, universal_id };
|
|
12
|
-
//# sourceMappingURL=0.js-
|
|
12
|
+
//# sourceMappingURL=0.js-Cum-Y-us.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const index = 1;
|
|
2
|
+
let component_cache;
|
|
3
|
+
const component = async () => component_cache ??= (await import('../entries/pages/_error.svelte.js-BKhpJygh.js')).default;
|
|
4
|
+
const imports = ["_app/immutable/nodes/1.w6Hz6-dJ.js","_app/immutable/chunks/0Tfhif1V.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/Bu2owQS4.js","_app/immutable/chunks/BaH6C3xD.js","_app/immutable/chunks/D9jhmf3I.js"];
|
|
5
|
+
const stylesheets = [];
|
|
6
|
+
const fonts = [];
|
|
7
|
+
|
|
8
|
+
export { component, fonts, imports, index, stylesheets };
|
|
9
|
+
//# sourceMappingURL=1.js-D0EwPqp_.js.map
|
|
@@ -19,11 +19,11 @@ import '../chunks/uneval.js-BJ9Qq2SF.js';
|
|
|
19
19
|
|
|
20
20
|
const index = 2;
|
|
21
21
|
let component_cache;
|
|
22
|
-
const component = async () => component_cache ??= (await import('../entries/pages/_page.svelte.js-
|
|
22
|
+
const component = async () => component_cache ??= (await import('../entries/pages/_page.svelte.js-BlbGdGej.js')).default;
|
|
23
23
|
const server_id = "src/routes/+page.server.ts";
|
|
24
|
-
const imports = ["_app/immutable/nodes/2.
|
|
24
|
+
const imports = ["_app/immutable/nodes/2.CFmqEODJ.js","_app/immutable/chunks/0Tfhif1V.js","_app/immutable/chunks/BaH6C3xD.js","_app/immutable/chunks/HclGiUj8.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/D9jhmf3I.js","_app/immutable/chunks/CTWtsoJD.js","_app/immutable/chunks/Bu2owQS4.js"];
|
|
25
25
|
const stylesheets = ["_app/immutable/assets/2.D0QOh44D.css"];
|
|
26
26
|
const fonts = [];
|
|
27
27
|
|
|
28
28
|
export { component, fonts, imports, index, server_id, stylesheets };
|
|
29
|
-
//# sourceMappingURL=2.js-
|
|
29
|
+
//# sourceMappingURL=2.js-ButkUErW.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deepseek-insight/dsi",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"description": "See your multiple agents run on the floor (agent, sub-agent, etc), each conversation on the floor are updated instantly.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Deepseek",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"node": ">=22.19"
|
|
39
39
|
},
|
|
40
40
|
"dsh": {
|
|
41
|
-
"webVersion": "0.2.2-
|
|
41
|
+
"webVersion": "0.2.2-rc.1"
|
|
42
42
|
},
|
|
43
43
|
"bin": {
|
|
44
44
|
"dsi": "bin/dsi.mjs"
|
|
@@ -38,17 +38,33 @@ update_token() {
|
|
|
38
38
|
# The token rides an env var, not argv: a launch token is a credential and
|
|
39
39
|
# argv is readable in ps(1) output by every local process.
|
|
40
40
|
DSI_ROOT="$DSI_ROOT" CONFIG_PATH="$CONFIG_PATH" DSI_TOKEN="$token" node - <<'NODE'
|
|
41
|
-
const { readFileSync, writeFileSync } = require('node:fs')
|
|
41
|
+
const { readFileSync, writeFileSync, mkdirSync } = require('node:fs')
|
|
42
42
|
const { createRequire } = require('node:module')
|
|
43
43
|
const requireFromDsi = createRequire(process.env.DSI_ROOT + '/package.json')
|
|
44
44
|
const { parse, stringify } = requireFromDsi('yaml')
|
|
45
|
-
const path =
|
|
46
|
-
const
|
|
45
|
+
const path = require('node:path')
|
|
46
|
+
const configPath = process.env.CONFIG_PATH
|
|
47
|
+
// First run (ENOENT 2026-11-04): settings.yaml may not exist yet — the token
|
|
48
|
+
// announce can be the very first thing to touch it. A missing file is the
|
|
49
|
+
// create case (same semantics as vt-plugins/lib/dsh-token-sink.ts); only a
|
|
50
|
+
// PRESENT-but-unparseable file stays a failure (a silent skip would leave
|
|
51
|
+
// DSI dialing a dead token forever).
|
|
52
|
+
let raw = null
|
|
53
|
+
try {
|
|
54
|
+
raw = readFileSync(configPath, 'utf8')
|
|
55
|
+
} catch (e) {
|
|
56
|
+
if (e.code !== 'ENOENT') throw e
|
|
57
|
+
}
|
|
58
|
+
const doc = raw === null ? {} : (parse(raw) ?? {})
|
|
59
|
+
if (typeof doc !== 'object' || doc === null || Array.isArray(doc)) {
|
|
60
|
+
throw new Error('settings.yaml is not a YAML mapping')
|
|
61
|
+
}
|
|
47
62
|
doc.dsh = { ...doc.dsh, authToken: process.env.DSI_TOKEN }
|
|
48
|
-
|
|
63
|
+
mkdirSync(path.dirname(configPath), { recursive: true })
|
|
64
|
+
writeFileSync(configPath, stringify(doc))
|
|
49
65
|
// Tilde-compress $HOME so the log line stays portable (no /Users/<you> leak).
|
|
50
66
|
const home = require('node:os').homedir()
|
|
51
|
-
console.log('dsh-web-synced: authToken updated in ' + (home &&
|
|
67
|
+
console.log('dsh-web-synced: authToken updated in ' + (home && configPath.startsWith(home) ? '~' + configPath.slice(home.length) : configPath))
|
|
52
68
|
NODE
|
|
53
69
|
}
|
|
54
70
|
|