mirror of
https://github.com/esengine/DeepSeek-Reasonix.git
synced 2026-11-07 02:36:01 -10:00
A fourth kind of tab opens a real shell (ConPTY on Windows, a pty elsewhere) in the project folder, outside the model's permissions and sandbox and with the host's provider keys left out of its environment. The kernel keeps each shell's output, so a tab left or a window reloaded comes back as it was; a tab is named for the command submitted while the shell is busy and carries a blue dot, and closing a busy one asks first. Also: the composer's note stack no longer clips to a few pixels when it holds two notes, which left the second one overlapping the input.
20 lines
576 B
Go
20 lines
576 B
Go
package terminal
|
|
|
|
import "strings"
|
|
|
|
// PersonEnv is the environment a person's own shell is started with: the host's,
|
|
// minus what only the host is meant to hold. The shell is not a tool the model
|
|
// drives, so the provider keys and the host's own settings stay behind.
|
|
func PersonEnv(env []string) []string {
|
|
out := make([]string, 0, len(env))
|
|
for _, kv := range env {
|
|
key, _, _ := strings.Cut(kv, "=")
|
|
key = strings.ToUpper(key)
|
|
if strings.HasPrefix(key, "REASONIX_") || strings.HasSuffix(key, "_API_KEY") {
|
|
continue
|
|
}
|
|
out = append(out, kv)
|
|
}
|
|
return out
|
|
}
|