@agent-link/server 0.1.186 → 0.1.188

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.
Files changed (54) hide show
  1. package/dist/index.js +13 -15
  2. package/dist/index.js.map +1 -1
  3. package/package.json +3 -3
  4. package/web/dist/assets/index-C9bIrYkZ.js +320 -0
  5. package/web/dist/assets/index-C9bIrYkZ.js.map +1 -0
  6. package/web/dist/assets/index-Y1FN_mFe.css +1 -0
  7. package/web/{index.html → dist/index.html} +2 -19
  8. package/web/app.js +0 -2881
  9. package/web/css/ask-question.css +0 -333
  10. package/web/css/base.css +0 -270
  11. package/web/css/btw.css +0 -148
  12. package/web/css/chat.css +0 -176
  13. package/web/css/file-browser.css +0 -499
  14. package/web/css/input.css +0 -671
  15. package/web/css/loop.css +0 -674
  16. package/web/css/markdown.css +0 -169
  17. package/web/css/responsive.css +0 -314
  18. package/web/css/sidebar.css +0 -593
  19. package/web/css/team.css +0 -1277
  20. package/web/css/tools.css +0 -327
  21. package/web/encryption.js +0 -56
  22. package/web/modules/appHelpers.js +0 -100
  23. package/web/modules/askQuestion.js +0 -63
  24. package/web/modules/backgroundRouting.js +0 -269
  25. package/web/modules/connection.js +0 -731
  26. package/web/modules/fileAttachments.js +0 -125
  27. package/web/modules/fileBrowser.js +0 -379
  28. package/web/modules/filePreview.js +0 -213
  29. package/web/modules/i18n.js +0 -101
  30. package/web/modules/loop.js +0 -338
  31. package/web/modules/loopTemplates.js +0 -110
  32. package/web/modules/markdown.js +0 -83
  33. package/web/modules/messageHelpers.js +0 -206
  34. package/web/modules/sidebar.js +0 -402
  35. package/web/modules/streaming.js +0 -116
  36. package/web/modules/team.js +0 -396
  37. package/web/modules/teamTemplates.js +0 -360
  38. package/web/vendor/highlight.min.js +0 -1213
  39. package/web/vendor/marked.min.js +0 -6
  40. package/web/vendor/nacl-fast.min.js +0 -1
  41. package/web/vendor/nacl-util.min.js +0 -1
  42. package/web/vendor/pako.min.js +0 -2
  43. package/web/vendor/vue.global.prod.js +0 -13
  44. /package/web/{favicon.svg → dist/favicon.svg} +0 -0
  45. /package/web/{images → dist/images}/chat-iPad.webp +0 -0
  46. /package/web/{images → dist/images}/chat-iPhone.webp +0 -0
  47. /package/web/{images → dist/images}/loop-iPad.webp +0 -0
  48. /package/web/{images → dist/images}/team-iPad.webp +0 -0
  49. /package/web/{landing.html → dist/landing.html} +0 -0
  50. /package/web/{landing.zh.html → dist/landing.zh.html} +0 -0
  51. /package/web/{locales → dist/locales}/en.json +0 -0
  52. /package/web/{locales → dist/locales}/zh.json +0 -0
  53. /package/web/{vendor → dist/vendor}/github-dark.min.css +0 -0
  54. /package/web/{vendor → dist/vendor}/github.min.css +0 -0
@@ -1,169 +0,0 @@
1
- /* ── Message actions (copy button, shown on hover) ── */
2
- .message-actions {
3
- position: absolute;
4
- top: 0;
5
- right: 0;
6
- display: flex;
7
- gap: 2px;
8
- opacity: 0;
9
- transition: opacity 0.15s;
10
- }
11
-
12
- .message-bubble:hover .message-actions {
13
- opacity: 1;
14
- }
15
-
16
- .icon-btn {
17
- display: flex;
18
- align-items: center;
19
- justify-content: center;
20
- width: 26px;
21
- height: 26px;
22
- background: var(--bg-tertiary);
23
- border: 1px solid var(--border);
24
- border-radius: 4px;
25
- color: var(--text-secondary);
26
- cursor: pointer;
27
- transition: color 0.15s;
28
- }
29
-
30
- .icon-btn:hover {
31
- color: var(--text-primary);
32
- }
33
-
34
- /* ── Markdown body in assistant messages ── */
35
- .markdown-body {
36
- line-height: 1.6;
37
- }
38
-
39
- .markdown-body p {
40
- margin-bottom: 0.5em;
41
- }
42
-
43
- .markdown-body p:last-child {
44
- margin-bottom: 0;
45
- }
46
-
47
- .markdown-body ul, .markdown-body ol {
48
- padding-left: 1.5em;
49
- margin-bottom: 0.5em;
50
- }
51
-
52
- .markdown-body li {
53
- margin-bottom: 0.2em;
54
- }
55
-
56
- .markdown-body strong {
57
- font-weight: 600;
58
- }
59
-
60
- .markdown-body code {
61
- background: var(--bg-tertiary);
62
- padding: 0.15em 0.35em;
63
- border-radius: 3px;
64
- font-size: 0.85em;
65
- font-family: 'SF Mono', 'Fira Code', Consolas, monospace;
66
- }
67
-
68
- .markdown-body pre {
69
- margin: 0.5em 0;
70
- overflow-x: auto;
71
- }
72
-
73
- .markdown-body pre code {
74
- background: none;
75
- padding: 0;
76
- border-radius: 0;
77
- font-size: 0.85em;
78
- display: block;
79
- padding: 0.8em;
80
- }
81
-
82
- .markdown-body a {
83
- color: #7aafe0;
84
- text-decoration: none;
85
- }
86
-
87
- .markdown-body a:hover {
88
- text-decoration: underline;
89
- }
90
-
91
- [data-theme="light"] .markdown-body a {
92
- color: #2563eb;
93
- }
94
-
95
- .markdown-body blockquote {
96
- border-left: 3px solid var(--border);
97
- padding-left: 0.8em;
98
- color: var(--text-secondary);
99
- margin: 0.5em 0;
100
- }
101
-
102
- .markdown-body hr {
103
- border: none;
104
- border-top: 1px solid var(--border);
105
- margin: 0.75em 0;
106
- }
107
-
108
- .markdown-body table {
109
- border-collapse: collapse;
110
- margin: 0.5em 0;
111
- font-size: 0.88em;
112
- }
113
-
114
- .markdown-body th, .markdown-body td {
115
- border: 1px solid var(--border);
116
- padding: 0.4em 0.6em;
117
- }
118
-
119
- .markdown-body th {
120
- background: var(--bg-tertiary);
121
- }
122
-
123
- /* ── Code block wrapper (with copy button) ── */
124
- .code-block-wrapper {
125
- position: relative;
126
- margin: 0.5em 0;
127
- border-radius: 8px;
128
- overflow: hidden;
129
- background: var(--code-bg);
130
- }
131
-
132
- .code-block-header {
133
- display: flex;
134
- justify-content: space-between;
135
- align-items: center;
136
- padding: 6px 12px;
137
- background: var(--code-header-bg);
138
- }
139
-
140
- .code-lang {
141
- font-size: 11px;
142
- color: var(--text-secondary);
143
- font-family: 'SF Mono', 'Fira Code', Consolas, monospace;
144
- }
145
-
146
- .code-copy-btn {
147
- display: flex;
148
- align-items: center;
149
- padding: 2px 6px;
150
- border: none;
151
- border-radius: 3px;
152
- background: transparent;
153
- color: var(--text-secondary);
154
- cursor: pointer;
155
- transition: color 0.15s;
156
- }
157
-
158
- .code-copy-btn:hover {
159
- color: var(--text-primary);
160
- }
161
-
162
- .code-block-wrapper pre {
163
- margin: 0;
164
- }
165
-
166
- .code-block-wrapper pre code {
167
- padding: 0.8em 1em;
168
- }
169
-
@@ -1,314 +0,0 @@
1
- /* ══════════════════════════════════════════
2
- Mobile responsive — max-width: 768px
3
- ══════════════════════════════════════════ */
4
- @media (max-width: 768px) {
5
- /* Prevent page-level horizontal scroll */
6
- html, body {
7
- overflow-x: hidden;
8
- }
9
-
10
- .layout, .main-body, .chat-area {
11
- overflow-x: hidden;
12
- max-width: 100vw;
13
- }
14
-
15
- /* File panel hidden on mobile — shown inside sidebar instead */
16
- .file-panel {
17
- display: none;
18
- }
19
-
20
- /* Preview panel hidden on mobile — shown inside sidebar instead */
21
- .preview-panel {
22
- display: none;
23
- }
24
-
25
- /* Sidebar as fixed overlay */
26
- .sidebar {
27
- position: fixed;
28
- top: 0;
29
- left: 0;
30
- bottom: 0;
31
- width: 320px;
32
- max-width: 90vw;
33
- z-index: 100;
34
- box-shadow: 4px 0 24px rgba(0, 0, 0, 0.5);
35
- }
36
-
37
- .sidebar-backdrop {
38
- display: block;
39
- position: fixed;
40
- inset: 0;
41
- background: rgba(0, 0, 0, 0.4);
42
- z-index: 99;
43
- }
44
-
45
- /* Top bar */
46
- .top-bar {
47
- padding: env(safe-area-inset-top, 0px) 0.75rem 0;
48
- }
49
-
50
- .agent-label {
51
- display: none;
52
- }
53
-
54
- .latency {
55
- display: none;
56
- }
57
-
58
- .top-bar-info {
59
- gap: 0.4rem;
60
- }
61
-
62
- .team-mode-toggle {
63
- display: none;
64
- }
65
-
66
- .team-mode-select {
67
- display: block;
68
- }
69
-
70
- /* Message area */
71
- .message-list {
72
- padding: 0.75rem 0.75rem 0.5rem;
73
- }
74
-
75
- .message-list-inner {
76
- max-width: 100%;
77
- min-width: 0;
78
- }
79
-
80
- /* Constrain message rows and bubbles */
81
- .message-row {
82
- min-width: 0;
83
- max-width: 100%;
84
- }
85
-
86
- .message-bubble {
87
- min-width: 0;
88
- max-width: 100%;
89
- overflow: hidden;
90
- overflow-wrap: anywhere;
91
- word-break: break-word;
92
- }
93
-
94
- /* Message content: contain all overflow within the bubble */
95
- .message-content {
96
- min-width: 0;
97
- max-width: 100%;
98
- overflow-wrap: anywhere;
99
- word-break: break-word;
100
- }
101
-
102
- .message-content pre {
103
- max-width: 100%;
104
- overflow-x: auto;
105
- }
106
-
107
- /* Code block wrappers */
108
- .code-block-wrapper {
109
- max-width: 100%;
110
- }
111
-
112
- .code-block-wrapper pre {
113
- max-width: 100%;
114
- overflow-x: auto;
115
- }
116
-
117
- .markdown-body code {
118
- word-break: break-all;
119
- }
120
-
121
- .markdown-body pre {
122
- max-width: 100%;
123
- }
124
-
125
- .markdown-body table {
126
- display: block;
127
- max-width: 100%;
128
- overflow-x: auto;
129
- }
130
-
131
- /* Input area */
132
- .input-area {
133
- padding: 0 0.75rem calc(0.75rem + env(safe-area-inset-bottom, 0px));
134
- }
135
-
136
- .input-card {
137
- max-width: 100%;
138
- }
139
-
140
- /* Folder picker */
141
- .folder-picker-dialog {
142
- width: calc(100vw - 2rem);
143
- max-width: 440px;
144
- }
145
-
146
- /* Status card */
147
- .status-card {
148
- min-width: 0;
149
- width: 100%;
150
- max-width: 320px;
151
- }
152
-
153
- /* Tool blocks */
154
- .tool-expand {
155
- margin-left: 0;
156
- min-width: 0;
157
- max-width: 100%;
158
- overflow: hidden;
159
- }
160
-
161
- .tool-block {
162
- max-width: 100%;
163
- overflow-x: auto;
164
- }
165
-
166
- .tool-output-content pre {
167
- font-size: 0.8rem;
168
- max-width: 100%;
169
- }
170
-
171
- .tool-input-formatted {
172
- max-width: 100%;
173
- overflow-wrap: anywhere;
174
- }
175
-
176
- /* AskUserQuestion — larger tap targets */
177
- .ask-question-option {
178
- min-height: 44px;
179
- }
180
-
181
- /* Team dashboard — stack kanban columns */
182
- .team-kanban {
183
- flex-direction: column;
184
- }
185
-
186
- .team-dash-body {
187
- flex-direction: column;
188
- }
189
-
190
- .team-agents-panel {
191
- width: 100%;
192
- border-left: none;
193
- border-top: 1px solid var(--border);
194
- max-height: 150px;
195
- }
196
-
197
- .team-dash-main {
198
- padding: 12px;
199
- }
200
-
201
- .team-create-panel {
202
- padding: 1rem;
203
- }
204
-
205
- /* Loop dashboard — responsive */
206
- .loop-active-item {
207
- flex-direction: column;
208
- align-items: flex-start;
209
- gap: 8px;
210
- }
211
-
212
- .loop-active-item-actions {
213
- width: 100%;
214
- justify-content: flex-start;
215
- flex-wrap: wrap;
216
- gap: 6px;
217
- }
218
-
219
- .loop-active-item-actions .loop-action-btn {
220
- min-height: 36px;
221
- padding: 6px 14px;
222
- }
223
-
224
- .loop-active-item-meta {
225
- flex-wrap: wrap;
226
- }
227
-
228
- .loop-detail-actions {
229
- flex-wrap: wrap;
230
- }
231
-
232
- .loop-detail-actions .loop-action-btn {
233
- min-height: 36px;
234
- padding: 6px 14px;
235
- }
236
-
237
- .loop-exec-item {
238
- flex-direction: column;
239
- align-items: flex-start;
240
- gap: 6px;
241
- }
242
-
243
- .loop-exec-item-left {
244
- flex-wrap: wrap;
245
- }
246
-
247
- .loop-exec-item-right {
248
- width: 100%;
249
- }
250
-
251
- .loop-exec-item-right .loop-action-btn {
252
- min-height: 36px;
253
- width: 100%;
254
- text-align: center;
255
- }
256
-
257
- .loop-schedule-detail {
258
- flex-wrap: wrap;
259
- }
260
-
261
- .loop-running-banner {
262
- left: 1rem;
263
- right: 1rem;
264
- transform: none;
265
- bottom: 70px;
266
- }
267
-
268
- .loop-exec-messages {
269
- max-height: calc(100vh - 160px);
270
- }
271
- }
272
-
273
- /* ══════════════════════════════════════════
274
- Extra-small screens — max-width: 480px
275
- ══════════════════════════════════════════ */
276
- @media (max-width: 480px) {
277
- .message-list {
278
- padding: 0.5rem 0.5rem 0.5rem;
279
- }
280
-
281
- .input-area {
282
- padding: 0 0.5rem calc(0.5rem + env(safe-area-inset-bottom, 0px));
283
- }
284
-
285
- .top-bar {
286
- padding: env(safe-area-inset-top, 0px) 0.5rem 0;
287
- }
288
-
289
- .folder-picker-dialog {
290
- width: calc(100vw - 1rem);
291
- }
292
-
293
- /* Loop — extra-small adjustments */
294
- .loop-detail-name {
295
- font-size: 1rem;
296
- }
297
-
298
- .loop-active-item-name {
299
- font-size: 0.82rem;
300
- }
301
-
302
- .loop-schedule-options {
303
- padding: 8px;
304
- }
305
-
306
- .loop-schedule-radio {
307
- font-size: 0.82rem;
308
- }
309
-
310
- .loop-cron-input {
311
- width: 110px;
312
- }
313
- }
314
-