@xcanwin/manyoyo 4.1.1 → 4.1.10
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/manyoyo.js +325 -1016
- package/docker/manyoyo.Dockerfile +36 -39
- package/lib/agent-resume.js +72 -0
- package/lib/container-run.js +39 -0
- package/lib/image-build.js +323 -0
- package/lib/init-config.js +401 -0
- package/lib/web/frontend/app.css +420 -190
- package/lib/web/frontend/app.html +71 -4
- package/lib/web/frontend/app.js +840 -136
- package/lib/web/frontend/login.css +77 -63
- package/lib/web/server.js +757 -128
- package/package.json +2 -2
|
@@ -18,6 +18,10 @@
|
|
|
18
18
|
<div class="brand">MANYOYO Web</div>
|
|
19
19
|
<div class="brand-sub">Container Session Console</div>
|
|
20
20
|
</div>
|
|
21
|
+
<div class="sidebar-actions">
|
|
22
|
+
<button type="button" id="openConfigBtn" class="secondary">配置</button>
|
|
23
|
+
<button type="button" id="openCreateBtn">新建</button>
|
|
24
|
+
</div>
|
|
21
25
|
<button
|
|
22
26
|
type="button"
|
|
23
27
|
id="mobileSidebarClose"
|
|
@@ -25,10 +29,6 @@
|
|
|
25
29
|
aria-label="关闭会话列表"
|
|
26
30
|
>关闭</button>
|
|
27
31
|
</div>
|
|
28
|
-
<form class="new-session" id="newSessionForm">
|
|
29
|
-
<input id="newSessionName" placeholder="容器名 (例如 my-dev)" />
|
|
30
|
-
<button type="submit">新建</button>
|
|
31
|
-
</form>
|
|
32
32
|
<div class="session-head">
|
|
33
33
|
<span>会话</span>
|
|
34
34
|
<span id="sessionCount">0 个</span>
|
|
@@ -91,6 +91,73 @@
|
|
|
91
91
|
</form>
|
|
92
92
|
</main>
|
|
93
93
|
<div id="sidebarBackdrop" class="sidebar-backdrop" hidden></div>
|
|
94
|
+
|
|
95
|
+
<div id="configModal" class="modal-backdrop" hidden>
|
|
96
|
+
<section class="modal" role="dialog" aria-modal="true" aria-labelledby="configModalTitle">
|
|
97
|
+
<header class="modal-header">
|
|
98
|
+
<h2 id="configModalTitle">编辑配置 (~/.manyoyo/manyoyo.json)</h2>
|
|
99
|
+
<button type="button" id="configCancelBtn" class="secondary">关闭</button>
|
|
100
|
+
</header>
|
|
101
|
+
<div class="modal-body">
|
|
102
|
+
<div id="configPath" class="modal-tip"></div>
|
|
103
|
+
<textarea id="configEditor" class="config-editor" spellcheck="false"></textarea>
|
|
104
|
+
<div id="configError" class="modal-error" hidden></div>
|
|
105
|
+
</div>
|
|
106
|
+
<footer class="modal-footer">
|
|
107
|
+
<button type="button" id="configReloadBtn" class="secondary">重新加载</button>
|
|
108
|
+
<button type="button" id="configSaveBtn">保存</button>
|
|
109
|
+
</footer>
|
|
110
|
+
</section>
|
|
111
|
+
</div>
|
|
112
|
+
|
|
113
|
+
<div id="createModal" class="modal-backdrop" hidden>
|
|
114
|
+
<section class="modal" role="dialog" aria-modal="true" aria-labelledby="createModalTitle">
|
|
115
|
+
<header class="modal-header">
|
|
116
|
+
<h2 id="createModalTitle">新建容器会话</h2>
|
|
117
|
+
<button type="button" id="createCancelBtn" class="secondary">关闭</button>
|
|
118
|
+
</header>
|
|
119
|
+
<form id="createSessionForm" class="modal-body">
|
|
120
|
+
<div class="form-grid">
|
|
121
|
+
<label>run
|
|
122
|
+
<select id="createRun">
|
|
123
|
+
<option value="">(不使用 run)</option>
|
|
124
|
+
</select>
|
|
125
|
+
</label>
|
|
126
|
+
<label>hostPath<input id="createHostPath" placeholder="/abs/path/project" /></label>
|
|
127
|
+
<label>containerName<input id="createContainerName" placeholder="my-dev 或 my-{now}" /></label>
|
|
128
|
+
<label>containerPath<input id="createContainerPath" placeholder="/workspace" /></label>
|
|
129
|
+
<label>imageName<input id="createImageName" placeholder="localhost/xcanwin/manyoyo" /></label>
|
|
130
|
+
<label>imageVersion<input id="createImageVersion" placeholder="1.7.4-common" /></label>
|
|
131
|
+
<label>containerMode
|
|
132
|
+
<select id="createContainerMode">
|
|
133
|
+
<option value="">(跟随默认)</option>
|
|
134
|
+
<option value="common">common</option>
|
|
135
|
+
<option value="dind">dind</option>
|
|
136
|
+
<option value="sock">sock</option>
|
|
137
|
+
</select>
|
|
138
|
+
</label>
|
|
139
|
+
<label>shellPrefix<input id="createShellPrefix" placeholder="例如 IS_SANDBOX=1" /></label>
|
|
140
|
+
<label>shell<input id="createShell" placeholder="例如 claude / codex" /></label>
|
|
141
|
+
<label>shellSuffix<input id="createShellSuffix" placeholder="例如 --dangerously-skip-permissions" /></label>
|
|
142
|
+
<label>yolo<input id="createYolo" placeholder="例如 c / cx / gm / oc" /></label>
|
|
143
|
+
</div>
|
|
144
|
+
<label class="text-block">env (KEY=VALUE,每行一项)
|
|
145
|
+
<textarea id="createEnv" placeholder="KEY=value"></textarea>
|
|
146
|
+
</label>
|
|
147
|
+
<label class="text-block">envFile (绝对路径,每行一项)
|
|
148
|
+
<textarea id="createEnvFile" placeholder="/abs/path/.env"></textarea>
|
|
149
|
+
</label>
|
|
150
|
+
<label class="text-block">volumes (每行一项)
|
|
151
|
+
<textarea id="createVolumes" placeholder="/host/path:/container/path"></textarea>
|
|
152
|
+
</label>
|
|
153
|
+
<div id="createError" class="modal-error" hidden></div>
|
|
154
|
+
<footer class="modal-footer">
|
|
155
|
+
<button type="button" id="createResetBtn" class="secondary">重置默认</button>
|
|
156
|
+
<button type="submit" id="createSubmitBtn">创建并进入</button>
|
|
157
|
+
</footer>
|
|
158
|
+
</form>
|
|
159
|
+
</section>
|
|
160
|
+
</div>
|
|
94
161
|
</div>
|
|
95
162
|
|
|
96
163
|
<script src="/app/vendor/xterm.js"></script>
|