@agi-fans/dsh-tui 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/lib/CHANGELOG.md +21 -1
- package/lib/chrome/welcome-tips.js +1 -0
- package/lib/chrome/welcome-tips.js.map +1 -1
- package/lib/chrome/width.js +36 -0
- package/lib/chrome/width.js.map +1 -1
- package/lib/commands/export.js +11 -6
- package/lib/commands/export.js.map +1 -1
- package/lib/commands/model.js +111 -4
- package/lib/commands/model.js.map +1 -1
- package/lib/commands/session.js +79 -36
- package/lib/commands/session.js.map +1 -1
- package/lib/commands/trajectory.d.ts +5 -0
- package/lib/commands/trajectory.js +20 -0
- package/lib/commands/trajectory.js.map +1 -0
- package/lib/definition.d.ts +12 -0
- package/lib/input/keybindings-config.d.ts +1 -1
- package/lib/input/keybindings-config.js +7 -1
- package/lib/input/keybindings-config.js.map +1 -1
- package/lib/runtime/provider-local.d.ts +1 -0
- package/lib/runtime/provider-local.js +110 -19
- package/lib/runtime/provider-local.js.map +1 -1
- package/lib/runtime/terminal-notifications.d.ts +24 -0
- package/lib/runtime/terminal-notifications.js +61 -0
- package/lib/runtime/terminal-notifications.js.map +1 -0
- package/lib/session/context-diagnostics.d.ts +8 -0
- package/lib/session/context-diagnostics.js +50 -0
- package/lib/session/context-diagnostics.js.map +1 -0
- package/lib/session/model-favorites.d.ts +11 -0
- package/lib/session/model-favorites.js +74 -0
- package/lib/session/model-favorites.js.map +1 -0
- package/lib/session/session-controller.d.ts +7 -1
- package/lib/session/session-controller.js +39 -6
- package/lib/session/session-controller.js.map +1 -1
- package/lib/session/session-library.d.ts +8 -0
- package/lib/session/session-library.js +43 -0
- package/lib/session/session-library.js.map +1 -0
- package/lib/session/subagent-roster.js +11 -1
- package/lib/session/subagent-roster.js.map +1 -1
- package/lib/session/tui-settings.d.ts +2 -0
- package/lib/session/tui-settings.js +2 -0
- package/lib/session/tui-settings.js.map +1 -1
- package/lib/views/agent-hub.d.ts +29 -0
- package/lib/views/agent-hub.js +165 -0
- package/lib/views/agent-hub.js.map +1 -0
- package/lib/views/event-views.d.ts +6 -0
- package/lib/views/event-views.js +18 -0
- package/lib/views/event-views.js.map +1 -1
- package/lib/views/hotkeys.js +3 -0
- package/lib/views/hotkeys.js.map +1 -1
- package/lib/views/prompt-selector.js +2 -1
- package/lib/views/prompt-selector.js.map +1 -1
- package/lib/views/settings-list.d.ts +2 -0
- package/lib/views/settings-list.js +21 -1
- package/lib/views/settings-list.js.map +1 -1
- package/lib/views/trajectory.d.ts +64 -0
- package/lib/views/trajectory.js +550 -0
- package/lib/views/trajectory.js.map +1 -0
- package/lib/views/transcript-export.d.ts +2 -0
- package/lib/views/transcript-export.js +34 -0
- package/lib/views/transcript-export.js.map +1 -1
- package/package.json +5 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/** Pure complete-session Markdown export, independent of viewport truncation. */
|
|
2
2
|
import { extractSessionEventText } from '@deepseek-ai/dsh-session-query';
|
|
3
|
+
import { marked } from 'marked';
|
|
3
4
|
function contentMarkdown(content) {
|
|
4
5
|
if (!Array.isArray(content))
|
|
5
6
|
return '';
|
|
@@ -63,4 +64,37 @@ export function formatTranscriptMarkdown(sessionId, title, events) {
|
|
|
63
64
|
}
|
|
64
65
|
return sections.join('\n');
|
|
65
66
|
}
|
|
67
|
+
function escapeHtml(value) {
|
|
68
|
+
return value.replace(/&/gu, '&').replace(/</gu, '<').replace(/>/gu, '>').replace(/"/gu, '"');
|
|
69
|
+
}
|
|
70
|
+
/** Prevent raw transcript HTML from becoming active while preserving fenced code contents. */
|
|
71
|
+
function escapeRawHtml(markdown) {
|
|
72
|
+
let fenced = false;
|
|
73
|
+
return markdown.split('\n').map((line) => {
|
|
74
|
+
if (/^\s*```/u.test(line)) {
|
|
75
|
+
fenced = !fenced;
|
|
76
|
+
return line;
|
|
77
|
+
}
|
|
78
|
+
return fenced ? line : line.replace(/</gu, '<').replace(/>/gu, '>');
|
|
79
|
+
}).join('\n');
|
|
80
|
+
}
|
|
81
|
+
/** Standalone, CSP-locked HTML export independent of terminal ANSI rendering. */
|
|
82
|
+
export function formatTranscriptHtml(sessionId, title, events) {
|
|
83
|
+
const markdown = escapeRawHtml(formatTranscriptMarkdown(sessionId, title, events));
|
|
84
|
+
const body = marked.parse(markdown, { async: false });
|
|
85
|
+
return `<!doctype html>
|
|
86
|
+
<html lang="en">
|
|
87
|
+
<head>
|
|
88
|
+
<meta charset="utf-8">
|
|
89
|
+
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
90
|
+
<meta http-equiv="Content-Security-Policy" content="default-src 'none'; style-src 'unsafe-inline'">
|
|
91
|
+
<title>${escapeHtml(title)} · omdsh transcript</title>
|
|
92
|
+
<style>
|
|
93
|
+
:root{color-scheme:light dark;--bg:#0d0e13;--panel:#15171f;--text:#d8d8df;--muted:#888c9b;--accent:#f0a928;--border:#343846;--code:#101219}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,#19202b 0,var(--bg) 42%);color:var(--text);font:16px/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}main{width:min(960px,calc(100% - 32px));margin:40px auto 80px;padding:clamp(22px,5vw,56px);background:color-mix(in srgb,var(--panel) 94%,transparent);border:1px solid var(--border);border-radius:20px;box-shadow:0 24px 80px #0008}h1{color:var(--accent);font-size:clamp(28px,5vw,48px);line-height:1.15}h2{margin-top:2.4em;padding-top:1em;border-top:1px solid var(--border);font-size:18px}p,li{overflow-wrap:anywhere}blockquote{margin-left:0;padding-left:18px;border-left:3px solid var(--accent);color:var(--muted)}pre{overflow:auto;padding:18px;border:1px solid var(--border);border-radius:12px;background:var(--code)}code{font-family:inherit;color:#9bdcff}p code,li code{padding:.15em .4em;border-radius:5px;background:var(--code)}a{color:#72c7ff}@media(max-width:600px){main{width:100%;margin:0;border:0;border-radius:0;padding:20px}}
|
|
94
|
+
</style>
|
|
95
|
+
</head>
|
|
96
|
+
<body><main>${body}</main></body>
|
|
97
|
+
</html>
|
|
98
|
+
`;
|
|
99
|
+
}
|
|
66
100
|
//# sourceMappingURL=transcript-export.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript-export.js","sourceRoot":"","sources":["../../src/views/transcript-export.ts"],"names":[],"mappings":"AAAA,iFAAiF;AAEjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;
|
|
1
|
+
{"version":3,"file":"transcript-export.js","sourceRoot":"","sources":["../../src/views/transcript-export.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agi-fans/dsh-tui",
|
|
3
3
|
"description": "Library-only Cordis plugin suite for DeepSeek Harness terminal presentation and interaction",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.10.0",
|
|
5
5
|
"homepage": "https://github.com/agi-fans/oh-my-dsh#readme",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -79,6 +79,10 @@
|
|
|
79
79
|
"types": "./lib/commands/export.d.ts",
|
|
80
80
|
"default": "./lib/commands/export.js"
|
|
81
81
|
},
|
|
82
|
+
"./command-trajectory": {
|
|
83
|
+
"types": "./lib/commands/trajectory.d.ts",
|
|
84
|
+
"default": "./lib/commands/trajectory.js"
|
|
85
|
+
},
|
|
82
86
|
"./command-integrations": {
|
|
83
87
|
"types": "./lib/commands/integrations.d.ts",
|
|
84
88
|
"default": "./lib/commands/integrations.js"
|