Skip to content

Commit c2be93f

Browse files
author
Smoke Tester
committed
Merge remote-tracking branch 'upstream/main'
2 parents df9ef3d + 3e7c9ea commit c2be93f

57 files changed

Lines changed: 4740 additions & 1072 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/publish.yml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,13 @@ jobs:
5656
5757
### What's New
5858
59-
- Added a streaming display switch in API configuration to enhance readability
60-
- Added /todolist command to manually maintain TODO list
61-
- Added Ctrl+O shortcut key to copy text in the input box
62-
- Refactored some code to improve code readability
63-
- Added more scrolling windows to avoid window jitter in extreme scenarios
59+
- Modify the default permissions of some system tools
60+
- Add a delay tool
61+
- Optimize the display effect of the simple mode
62+
- Add instance memory usage refresh every 5 seconds
63+
- Optimize the smoothness of sub-agent operation
64+
- Optimize the replication strategy
65+
- Optimize the session export strategy
6466
6567
### Installation
6668
```bash

README.md

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,6 @@ _Agentic coding in your terminal_
2323
<img src="https://contrib.rocks/image?repo=MayDay-wpf/snow-cli" />
2424
</a>
2525

26-
## Thanks Support
27-
28-
- [UUCode](https://www.uucode.org)
29-
30-
---
31-
3226
![alt text](docs/images/image.png)
3327

3428
## Documentation
@@ -146,13 +140,6 @@ npm run link # builds and globally links snow
146140
└── system-prompt.json # Custom system prompts
147141
```
148142

149-
---
150-
151-
## QQ Group
152-
153-
![alt text](docs/images/qq_group_qr.jpg)
154-
155-
---
156143

157144
## Star History
158145

README_zh.md

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,6 @@ _在终端中进行 Agentic 编程_
2323
<img src="https://contrib.rocks/image?repo=MayDay-wpf/snow-cli" />
2424
</a>
2525

26-
## 感谢赞助商
27-
28-
- [UUCode](https://www.uucode.org)
29-
30-
---
3126

3227
![alt text](docs/images/image_zh.png)
3328

@@ -146,14 +141,6 @@ npm run link # 构建并全局链接 snow
146141
└── system-prompt.json # 自定义系统提示词
147142
```
148143

149-
---
150-
151-
## QQ 交流群
152-
153-
![alt text](docs/images/qq_group_qr.jpg)
154-
155-
---
156-
157144
## Star History
158145

159146
[![Star History Chart](https://api.star-history.com/svg?repos=MayDay-wpf/snow-cli&type=Date)](https://star-history.com/#MayDay-wpf/snow-cli&Date)

VSIX/package.json

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@
109109
"type": "webview",
110110
"id": "snowCliTerminal",
111111
"name": "Terminal",
112+
"icon": "snow.png",
112113
"when": "snow-cli.sidebarMode"
113114
}
114115
]
@@ -127,6 +128,11 @@
127128
"title": "Restart Terminal",
128129
"icon": "$(debug-rerun)"
129130
},
131+
{
132+
"command": "snow-cli.newSidebarTerminalTab",
133+
"title": "New Terminal Tab",
134+
"icon": "$(add)"
135+
},
130136
{
131137
"command": "snow-cli.addFolderPath",
132138
"title": "Add Folder Path",
@@ -180,14 +186,19 @@
180186
"group": "navigation@1"
181187
},
182188
{
183-
"command": "snow-cli.openSnowSettings",
189+
"command": "snow-cli.newSidebarTerminalTab",
184190
"when": "view == snowCliTerminal && snow-cli.sidebarMode",
185191
"group": "navigation@2"
186192
},
187193
{
188-
"submenu": "snow-cli.insertPathActions",
194+
"command": "snow-cli.openSnowSettings",
189195
"when": "view == snowCliTerminal && snow-cli.sidebarMode",
190196
"group": "navigation@3"
197+
},
198+
{
199+
"submenu": "snow-cli.insertPathActions",
200+
"when": "view == snowCliTerminal && snow-cli.sidebarMode",
201+
"group": "navigation@4"
191202
}
192203
],
193204
"snow-cli.insertPathActions": [

VSIX/res/sidebarTerminal.css

Lines changed: 206 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,17 @@
33
--terminal-drag-outline: #007acc;
44
--terminal-error: #f14c4c;
55
--terminal-border: var(--vscode-panel-border, rgba(255, 255, 255, 0.12));
6+
--terminal-toolbar-bg: var(--vscode-sideBar-background, #181818);
7+
--terminal-button-bg: var(
8+
--vscode-button-secondaryBackground,
9+
rgba(255, 255, 255, 0.08)
10+
);
11+
--terminal-button-fg: var(--vscode-button-secondaryForeground, #cccccc);
12+
--terminal-button-hover-bg: var(
13+
--vscode-button-secondaryHoverBackground,
14+
rgba(255, 255, 255, 0.14)
15+
);
16+
--terminal-button-border: var(--vscode-contrastBorder, transparent);
617
}
718

819
* {
@@ -12,19 +23,190 @@
1223
}
1324

1425
html,
15-
body,
16-
#terminal-container,
17-
.xterm {
26+
body {
1827
height: 100%;
1928
width: 100%;
2029
}
2130

22-
html,
2331
body {
2432
overflow: hidden;
2533
background-color: var(--terminal-bg);
2634
}
2735

36+
#terminal-root {
37+
height: 100%;
38+
width: 100%;
39+
display: flex;
40+
flex-direction: column;
41+
min-height: 0;
42+
}
43+
44+
#terminal-tab-strip {
45+
display: flex;
46+
gap: 0;
47+
padding: 0;
48+
border-bottom: 1px solid var(--terminal-border);
49+
background-color: var(
50+
--vscode-editorGroupHeader-tabsBackground,
51+
var(--terminal-toolbar-bg)
52+
);
53+
flex: 0 0 auto;
54+
overflow-x: auto;
55+
scrollbar-width: none;
56+
}
57+
58+
#terminal-tab-strip:empty {
59+
display: none;
60+
}
61+
62+
.terminal-tab-item {
63+
display: inline-flex;
64+
align-items: stretch;
65+
flex: 0 0 auto;
66+
min-height: 20px;
67+
white-space: nowrap;
68+
background-color: var(--vscode-tab-inactiveBackground, transparent);
69+
color: var(--vscode-tab-inactiveForeground, var(--terminal-button-fg));
70+
border-right: 1px solid var(--terminal-border);
71+
}
72+
73+
.terminal-tab-item:hover:not(.is-active):not(.is-restarting) {
74+
background-color: var(--vscode-tab-hoverBackground, var(--terminal-button-hover-bg));
75+
}
76+
77+
.terminal-tab-item.is-active,
78+
.terminal-tab-item.is-restarting {
79+
background-color: var(--vscode-tab-activeBackground, var(--terminal-bg));
80+
color: var(--vscode-tab-activeForeground, var(--terminal-button-fg));
81+
}
82+
83+
.terminal-tab {
84+
appearance: none;
85+
border: none;
86+
background: transparent;
87+
color: inherit;
88+
font: inherit;
89+
font-size: 12px;
90+
line-height: 1.2;
91+
padding: 0 6px 0 8px;
92+
cursor: pointer;
93+
display: inline-flex;
94+
align-items: center;
95+
gap: 6px;
96+
min-height: 20px;
97+
white-space: nowrap;
98+
}
99+
100+
.terminal-tab-label {
101+
overflow: hidden;
102+
text-overflow: ellipsis;
103+
}
104+
105+
.terminal-tab-close {
106+
appearance: none;
107+
border: none;
108+
background: transparent;
109+
color: inherit;
110+
font: inherit;
111+
font-size: 13px;
112+
line-height: 1;
113+
padding: 0;
114+
cursor: pointer;
115+
display: inline-flex;
116+
align-items: center;
117+
justify-content: center;
118+
width: 18px;
119+
min-width: 18px;
120+
min-height: 20px;
121+
flex: 0 0 18px;
122+
opacity: 0;
123+
visibility: hidden;
124+
pointer-events: none;
125+
}
126+
127+
.terminal-tab-item.is-active .terminal-tab-close,
128+
.terminal-tab-item.is-restarting .terminal-tab-close {
129+
opacity: 1;
130+
visibility: visible;
131+
}
132+
133+
.terminal-tab-item.is-active .terminal-tab-close {
134+
pointer-events: auto;
135+
}
136+
137+
.terminal-tab-item.is-restarting .terminal-tab-close {
138+
pointer-events: none;
139+
cursor: default;
140+
}
141+
142+
.terminal-tab-close:hover {
143+
background-color: var(--terminal-button-hover-bg);
144+
}
145+
146+
.terminal-tab:focus-visible,
147+
.terminal-tab-close:focus-visible {
148+
outline: 1px solid var(--vscode-focusBorder, #007acc);
149+
outline-offset: -1px;
150+
}
151+
152+
.terminal-tab-spinner {
153+
width: 10px;
154+
height: 10px;
155+
border: 1.5px solid currentColor;
156+
border-right-color: transparent;
157+
border-radius: 50%;
158+
animation: terminal-tab-spinner-spin 0.8s linear infinite;
159+
}
160+
161+
@keyframes terminal-tab-spinner-spin {
162+
to {
163+
transform: rotate(360deg);
164+
}
165+
}
166+
167+
#terminal-toolbar {
168+
display: flex;
169+
gap: 6px;
170+
padding: 4px 6px;
171+
border-bottom: 1px solid var(--terminal-border);
172+
background-color: var(--terminal-toolbar-bg);
173+
flex: 0 0 auto;
174+
}
175+
176+
#terminal-toolbar button {
177+
appearance: none;
178+
border: 1px solid var(--terminal-button-border);
179+
border-radius: 4px;
180+
background-color: var(--terminal-button-bg);
181+
color: var(--terminal-button-fg);
182+
font: inherit;
183+
font-size: 13px;
184+
line-height: 1.4;
185+
padding: 2px 8px;
186+
cursor: pointer;
187+
}
188+
189+
#terminal-toolbar button:hover {
190+
background-color: var(--terminal-button-hover-bg);
191+
}
192+
193+
#terminal-toolbar button:focus-visible {
194+
outline: 1px solid var(--vscode-focusBorder, #007acc);
195+
outline-offset: 1px;
196+
}
197+
198+
#terminal-container {
199+
position: relative;
200+
flex: 1 1 auto;
201+
min-height: 0;
202+
}
203+
204+
#terminal-container,
205+
.xterm {
206+
height: 100%;
207+
width: 100%;
208+
}
209+
28210
#terminal-container.drag-over {
29211
outline: 2px dashed var(--terminal-drag-outline);
30212
outline-offset: -2px;
@@ -38,6 +220,26 @@ body {
38220
white-space: pre-wrap;
39221
}
40222

223+
.terminal-freeze-overlay {
224+
position: absolute;
225+
inset: 0;
226+
z-index: 2;
227+
overflow: hidden;
228+
pointer-events: none;
229+
background-color: var(--terminal-bg);
230+
}
231+
232+
.terminal-freeze-overlay > .xterm {
233+
height: 100%;
234+
width: 100%;
235+
}
236+
237+
.terminal-freeze-overlay .xterm-helpers,
238+
.terminal-freeze-overlay .xterm-accessibility,
239+
.terminal-freeze-overlay .xterm-cursor-layer {
240+
visibility: hidden !important;
241+
}
242+
41243
.xterm .xterm-viewport,
42244
.xterm .xterm-scrollable-element {
43245
background-color: var(--terminal-bg) !important;

0 commit comments

Comments
 (0)