feat(hermes): add docker env forwarding config

This commit is contained in:
晴天
2026-05-26 06:52:16 +08:00
parent 7ca586694b
commit 45aadbdc63
7 changed files with 166 additions and 4 deletions

View File

@@ -266,6 +266,7 @@ const TERMINAL_DEFAULTS = {
terminalSingularityImage: '',
terminalModalImage: '',
terminalDaytonaImage: '',
terminalDockerForwardEnv: '',
terminalSshHost: '',
terminalSshUser: '',
terminalSshPort: 22,
@@ -2022,6 +2023,10 @@ export function render() {
<span class="hm-field-label">${t('engine.hermesTerminalConfigDockerImage')}</span>
<input id="hm-terminal-docker-image" class="hm-input" value="${esc(terminalValues.terminalDockerImage)}" placeholder="nikolaik/python-nodejs:python3.11-nodejs20" ${disabled ? 'disabled' : ''}>
</label>
<label class="hm-field hm-field--wide">
<span class="hm-field-label">${t('engine.hermesTerminalConfigDockerForwardEnv')}</span>
<textarea id="hm-terminal-docker-forward-env" class="hm-input hm-textarea" rows="3" placeholder="GITHUB_TOKEN&#10;NPM_TOKEN" ${disabled ? 'disabled' : ''}>${esc(terminalValues.terminalDockerForwardEnv)}</textarea>
</label>
<label class="hm-field">
<span class="hm-field-label">${t('engine.hermesTerminalConfigSingularityImage')}</span>
<input id="hm-terminal-singularity-image" class="hm-input" value="${esc(terminalValues.terminalSingularityImage)}" placeholder="docker://nikolaik/python-nodejs:python3.11-nodejs20" ${disabled ? 'disabled' : ''}>
@@ -3718,6 +3723,7 @@ export function render() {
terminalDockerMountCwdToWorkspace: !!el.querySelector('#hm-terminal-docker-mount-cwd-to-workspace')?.checked,
terminalDockerRunAsHostUser: !!el.querySelector('#hm-terminal-docker-run-as-host-user')?.checked,
terminalDockerImage: el.querySelector('#hm-terminal-docker-image')?.value || '',
terminalDockerForwardEnv: el.querySelector('#hm-terminal-docker-forward-env')?.value || '',
terminalSingularityImage: el.querySelector('#hm-terminal-singularity-image')?.value || '',
terminalModalImage: el.querySelector('#hm-terminal-modal-image')?.value || '',
terminalDaytonaImage: el.querySelector('#hm-terminal-daytona-image')?.value || '',

View File

@@ -6775,6 +6775,15 @@ body[data-active-engine="hermes"][data-theme="dark"] {
gap: 16px;
align-items: end;
}
[data-engine="hermes"] .hm-config-runtime-grid .hm-field--wide {
grid-column: 1 / -1;
}
[data-engine="hermes"] .hm-textarea {
min-height: 104px;
height: auto;
resize: vertical;
line-height: 1.6;
}
[data-engine="hermes"] .hm-config-compression-grid {
grid-template-columns: repeat(4, minmax(140px, 1fr));
margin-top: 18px;