@aion0/forge 0.5.44 → 0.5.46

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 (58) hide show
  1. package/RELEASE_NOTES.md +3 -15
  2. package/package.json +1 -1
  3. package/tsconfig.json +3 -1
  4. package/intellij-plugin/README.md +0 -53
  5. package/intellij-plugin/build.gradle.kts +0 -60
  6. package/intellij-plugin/gradle/gradle-daemon-jvm.properties +0 -12
  7. package/intellij-plugin/gradle.properties +0 -9
  8. package/intellij-plugin/publish.sh +0 -78
  9. package/intellij-plugin/settings.gradle.kts +0 -7
  10. package/intellij-plugin/src/main/kotlin/com/aion0/forge/action/LoginAction.kt +0 -49
  11. package/intellij-plugin/src/main/kotlin/com/aion0/forge/action/LogoutAction.kt +0 -18
  12. package/intellij-plugin/src/main/kotlin/com/aion0/forge/action/OpenWebUIAction.kt +0 -13
  13. package/intellij-plugin/src/main/kotlin/com/aion0/forge/action/SwitchConnectionAction.kt +0 -26
  14. package/intellij-plugin/src/main/kotlin/com/aion0/forge/api/ForgeClient.kt +0 -115
  15. package/intellij-plugin/src/main/kotlin/com/aion0/forge/auth/Auth.kt +0 -31
  16. package/intellij-plugin/src/main/kotlin/com/aion0/forge/connection/ConnectionManager.kt +0 -95
  17. package/intellij-plugin/src/main/kotlin/com/aion0/forge/settings/ForgeConfigurable.kt +0 -81
  18. package/intellij-plugin/src/main/kotlin/com/aion0/forge/ui/toolwindow/DocsView.kt +0 -99
  19. package/intellij-plugin/src/main/kotlin/com/aion0/forge/ui/toolwindow/ForgeStatusBarWidgetFactory.kt +0 -94
  20. package/intellij-plugin/src/main/kotlin/com/aion0/forge/ui/toolwindow/ForgeToolWindowFactory.kt +0 -27
  21. package/intellij-plugin/src/main/kotlin/com/aion0/forge/ui/toolwindow/ForgeTreeView.kt +0 -176
  22. package/intellij-plugin/src/main/kotlin/com/aion0/forge/ui/toolwindow/Helpers.kt +0 -48
  23. package/intellij-plugin/src/main/kotlin/com/aion0/forge/ui/toolwindow/PipelinesView.kt +0 -226
  24. package/intellij-plugin/src/main/kotlin/com/aion0/forge/ui/toolwindow/TerminalsView.kt +0 -309
  25. package/intellij-plugin/src/main/kotlin/com/aion0/forge/ui/toolwindow/TreeNodeData.kt +0 -33
  26. package/intellij-plugin/src/main/kotlin/com/aion0/forge/ui/toolwindow/WorkspacesView.kt +0 -166
  27. package/intellij-plugin/src/main/resources/META-INF/plugin.xml +0 -88
  28. package/intellij-plugin/src/main/resources/icons/forge.svg +0 -3
  29. package/vscode-extension/.vscodeignore +0 -11
  30. package/vscode-extension/README.md +0 -48
  31. package/vscode-extension/media/icon.png +0 -0
  32. package/vscode-extension/media/icon.svg +0 -3
  33. package/vscode-extension/package-lock.json +0 -4046
  34. package/vscode-extension/package.json +0 -514
  35. package/vscode-extension/publish.sh +0 -49
  36. package/vscode-extension/src/api/client.ts +0 -217
  37. package/vscode-extension/src/auth/auth.ts +0 -32
  38. package/vscode-extension/src/commands/auth.ts +0 -44
  39. package/vscode-extension/src/commands/connection.ts +0 -113
  40. package/vscode-extension/src/commands/docs.ts +0 -40
  41. package/vscode-extension/src/commands/pipeline.ts +0 -103
  42. package/vscode-extension/src/commands/server.ts +0 -50
  43. package/vscode-extension/src/commands/smith.ts +0 -112
  44. package/vscode-extension/src/commands/task.ts +0 -43
  45. package/vscode-extension/src/commands/terminal.ts +0 -279
  46. package/vscode-extension/src/commands/workspace.ts +0 -138
  47. package/vscode-extension/src/connection/manager.ts +0 -80
  48. package/vscode-extension/src/docs/fs-provider.ts +0 -94
  49. package/vscode-extension/src/docs/result-provider.ts +0 -33
  50. package/vscode-extension/src/docs/transport.ts +0 -22
  51. package/vscode-extension/src/extension.ts +0 -314
  52. package/vscode-extension/src/statusbar.ts +0 -70
  53. package/vscode-extension/src/terminal/pseudoterm.ts +0 -123
  54. package/vscode-extension/src/views/docs.ts +0 -145
  55. package/vscode-extension/src/views/pipelines.ts +0 -222
  56. package/vscode-extension/src/views/terminals.ts +0 -91
  57. package/vscode-extension/src/views/workspaces.ts +0 -243
  58. package/vscode-extension/tsconfig.json +0 -16
@@ -1,514 +0,0 @@
1
- {
2
- "name": "forge-vibecoding",
3
- "displayName": "Forge — Vibe Coding",
4
- "description": "Native VSCode integration for Forge — workspace, smiths, and terminals.",
5
- "version": "0.2.8",
6
- "publisher": "aion0",
7
- "engines": {
8
- "vscode": "^1.80.0"
9
- },
10
- "categories": [
11
- "Other"
12
- ],
13
- "keywords": [
14
- "forge",
15
- "ai",
16
- "claude",
17
- "agent",
18
- "terminal"
19
- ],
20
- "main": "./out/extension.js",
21
- "icon": "media/icon.png",
22
- "activationEvents": [
23
- "onStartupFinished"
24
- ],
25
- "contributes": {
26
- "viewsContainers": {
27
- "activitybar": [
28
- {
29
- "id": "forge",
30
- "title": "Forge",
31
- "icon": "media/icon.svg"
32
- }
33
- ]
34
- },
35
- "views": {
36
- "forge": [
37
- {
38
- "id": "forge.workspaces",
39
- "name": "Workspaces"
40
- },
41
- {
42
- "id": "forge.terminals",
43
- "name": "Terminals"
44
- },
45
- {
46
- "id": "forge.pipelines",
47
- "name": "Pipelines"
48
- },
49
- {
50
- "id": "forge.docs",
51
- "name": "Docs"
52
- }
53
- ]
54
- },
55
- "commands": [
56
- {
57
- "command": "forge.login",
58
- "title": "Forge: Login",
59
- "category": "Forge"
60
- },
61
- {
62
- "command": "forge.logout",
63
- "title": "Forge: Logout",
64
- "category": "Forge"
65
- },
66
- {
67
- "command": "forge.startServer",
68
- "title": "Forge: Start Server",
69
- "category": "Forge"
70
- },
71
- {
72
- "command": "forge.stopServer",
73
- "title": "Forge: Stop Server",
74
- "category": "Forge"
75
- },
76
- {
77
- "command": "forge.openWebUI",
78
- "title": "Forge: Open Web UI",
79
- "category": "Forge"
80
- },
81
- {
82
- "command": "forge.openTerminal",
83
- "title": "Forge: Open Terminal",
84
- "category": "Forge"
85
- },
86
- {
87
- "command": "forge.sendSelection",
88
- "title": "Forge: Send Selection to Terminal",
89
- "category": "Forge"
90
- },
91
- {
92
- "command": "forge.newTask",
93
- "title": "Forge: New Task",
94
- "category": "Forge"
95
- },
96
- {
97
- "command": "forge.refresh",
98
- "title": "Forge: Refresh",
99
- "category": "Forge",
100
- "icon": "$(refresh)"
101
- },
102
- {
103
- "command": "forge.attachTerminal",
104
- "title": "Forge: Attach to Terminal",
105
- "category": "Forge"
106
- },
107
- {
108
- "command": "forge.openSession",
109
- "title": "Forge: Open Session",
110
- "category": "Forge",
111
- "icon": "$(add)"
112
- },
113
- {
114
- "command": "forge.openWorkspaceForFolder",
115
- "title": "Forge: Open Workspace for Current Folder",
116
- "category": "Forge",
117
- "icon": "$(folder-opened)"
118
- },
119
- {
120
- "command": "forge.openWorkspace",
121
- "title": "Forge: Open Workspace…",
122
- "category": "Forge"
123
- },
124
- {
125
- "command": "forge.startDaemon",
126
- "title": "Start Daemon",
127
- "category": "Forge",
128
- "icon": "$(play)"
129
- },
130
- {
131
- "command": "forge.stopDaemon",
132
- "title": "Stop Daemon",
133
- "category": "Forge",
134
- "icon": "$(stop)"
135
- },
136
- {
137
- "command": "forge.restartDaemon",
138
- "title": "Restart Daemon",
139
- "category": "Forge",
140
- "icon": "$(refresh)"
141
- },
142
- {
143
- "command": "forge.smithOpenTerminal",
144
- "title": "Open Smith Terminal",
145
- "category": "Forge",
146
- "icon": "$(terminal)"
147
- },
148
- {
149
- "command": "forge.smithPause",
150
- "title": "Pause Smith",
151
- "category": "Forge",
152
- "icon": "$(debug-pause)"
153
- },
154
- {
155
- "command": "forge.smithResume",
156
- "title": "Resume Smith",
157
- "category": "Forge",
158
- "icon": "$(debug-start)"
159
- },
160
- {
161
- "command": "forge.smithMarkDone",
162
- "title": "Mark Done",
163
- "category": "Forge"
164
- },
165
- {
166
- "command": "forge.smithMarkFailed",
167
- "title": "Mark Failed",
168
- "category": "Forge"
169
- },
170
- {
171
- "command": "forge.smithMarkIdle",
172
- "title": "Mark Idle",
173
- "category": "Forge"
174
- },
175
- {
176
- "command": "forge.smithRetry",
177
- "title": "Retry",
178
- "category": "Forge",
179
- "icon": "$(refresh)"
180
- },
181
- {
182
- "command": "forge.smithSendMessage",
183
- "title": "Send Message",
184
- "category": "Forge",
185
- "icon": "$(comment)"
186
- },
187
- {
188
- "command": "forge.openDoc",
189
- "title": "Forge: Open Doc",
190
- "category": "Forge",
191
- "icon": "$(book)"
192
- },
193
- {
194
- "command": "forge.openDocsTerminal",
195
- "title": "Forge: Open Docs Terminal",
196
- "category": "Forge",
197
- "icon": "$(terminal)"
198
- },
199
- {
200
- "command": "forge.switchConnection",
201
- "title": "Forge: Switch Connection",
202
- "category": "Forge",
203
- "icon": "$(plug)"
204
- },
205
- {
206
- "command": "forge.addConnection",
207
- "title": "Forge: Add Connection…",
208
- "category": "Forge"
209
- },
210
- {
211
- "command": "forge.removeConnection",
212
- "title": "Forge: Remove Connection…",
213
- "category": "Forge"
214
- },
215
- {
216
- "command": "forge.editConnections",
217
- "title": "Forge: Edit Connections (settings.json)",
218
- "category": "Forge"
219
- },
220
- {
221
- "command": "forge.addPipeline",
222
- "title": "Add Pipeline…",
223
- "category": "Forge",
224
- "icon": "$(add)"
225
- },
226
- {
227
- "command": "forge.triggerPipeline",
228
- "title": "Trigger Pipeline",
229
- "category": "Forge",
230
- "icon": "$(play)"
231
- },
232
- {
233
- "command": "forge.togglePipeline",
234
- "title": "Enable / Disable Pipeline",
235
- "category": "Forge",
236
- "icon": "$(circle-slash)"
237
- },
238
- {
239
- "command": "forge.removePipeline",
240
- "title": "Remove Pipeline",
241
- "category": "Forge",
242
- "icon": "$(trash)"
243
- },
244
- {
245
- "command": "forge.showPipelineNodeError",
246
- "title": "Show Node Error",
247
- "category": "Forge"
248
- },
249
- {
250
- "command": "forge.showPipelineNodeResult",
251
- "title": "Show Node Result",
252
- "category": "Forge",
253
- "icon": "$(eye)"
254
- },
255
- {
256
- "command": "forge.openItemInWebUI",
257
- "title": "Open in Forge Web UI",
258
- "category": "Forge",
259
- "icon": "$(globe)"
260
- }
261
- ],
262
- "menus": {
263
- "view/title": [
264
- {
265
- "command": "forge.openWorkspaceForFolder",
266
- "when": "view == forge.workspaces",
267
- "group": "navigation@1"
268
- },
269
- {
270
- "command": "forge.refresh",
271
- "when": "view == forge.workspaces",
272
- "group": "navigation@2"
273
- },
274
- {
275
- "command": "forge.openSession",
276
- "when": "view == forge.terminals",
277
- "group": "navigation@1"
278
- },
279
- {
280
- "command": "forge.refresh",
281
- "when": "view == forge.terminals",
282
- "group": "navigation@2"
283
- },
284
- {
285
- "command": "forge.addPipeline",
286
- "when": "view == forge.pipelines",
287
- "group": "navigation@1"
288
- },
289
- {
290
- "command": "forge.refresh",
291
- "when": "view == forge.pipelines",
292
- "group": "navigation@2"
293
- },
294
- {
295
- "command": "forge.refresh",
296
- "when": "view == forge.docs",
297
- "group": "navigation"
298
- }
299
- ],
300
- "view/item/context": [
301
- {
302
- "command": "forge.attachTerminal",
303
- "when": "view == forge.terminals && viewItem == forge.terminal",
304
- "group": "inline"
305
- },
306
- {
307
- "command": "forge.startDaemon",
308
- "when": "view == forge.workspaces && viewItem == forge.workspace.inactive",
309
- "group": "inline@1"
310
- },
311
- {
312
- "command": "forge.stopDaemon",
313
- "when": "view == forge.workspaces && viewItem == forge.workspace.active",
314
- "group": "inline@1"
315
- },
316
- {
317
- "command": "forge.restartDaemon",
318
- "when": "view == forge.workspaces && viewItem == forge.workspace.active",
319
- "group": "inline@2"
320
- },
321
- {
322
- "command": "forge.smithOpenTerminal",
323
- "when": "view == forge.workspaces && viewItem =~ /forge\\.smith\\..+/",
324
- "group": "inline@1"
325
- },
326
- {
327
- "command": "forge.smithSendMessage",
328
- "when": "view == forge.workspaces && viewItem =~ /forge\\.smith\\..+/",
329
- "group": "inline@2"
330
- },
331
- {
332
- "command": "forge.smithPause",
333
- "when": "view == forge.workspaces && viewItem =~ /forge\\.smith\\.(?!.*paused)/",
334
- "group": "smith@1"
335
- },
336
- {
337
- "command": "forge.smithResume",
338
- "when": "view == forge.workspaces && viewItem =~ /forge\\.smith\\..+\\.paused/",
339
- "group": "smith@1"
340
- },
341
- {
342
- "command": "forge.smithRetry",
343
- "when": "view == forge.workspaces && viewItem =~ /forge\\.smith\\.failed/",
344
- "group": "smith@2"
345
- },
346
- {
347
- "command": "forge.smithMarkDone",
348
- "when": "view == forge.workspaces && viewItem =~ /forge\\.smith\\.running/",
349
- "group": "smith@3"
350
- },
351
- {
352
- "command": "forge.smithMarkFailed",
353
- "when": "view == forge.workspaces && viewItem =~ /forge\\.smith\\.running/",
354
- "group": "smith@4"
355
- },
356
- {
357
- "command": "forge.smithMarkIdle",
358
- "when": "view == forge.workspaces && viewItem =~ /forge\\.smith\\.running/",
359
- "group": "smith@5"
360
- },
361
- {
362
- "command": "forge.openDocsTerminal",
363
- "when": "view == forge.docs && viewItem == forge.docRoot",
364
- "group": "inline"
365
- },
366
- {
367
- "command": "forge.openDocsTerminal",
368
- "when": "view == forge.docs && viewItem == forge.docDir",
369
- "group": "inline"
370
- },
371
- {
372
- "command": "forge.addPipeline",
373
- "when": "view == forge.pipelines && viewItem == forge.pipelineProject",
374
- "group": "inline"
375
- },
376
- {
377
- "command": "forge.triggerPipeline",
378
- "when": "view == forge.pipelines && viewItem =~ /forge\\.pipelineBinding/",
379
- "group": "inline@1"
380
- },
381
- {
382
- "command": "forge.togglePipeline",
383
- "when": "view == forge.pipelines && viewItem =~ /forge\\.pipelineBinding/",
384
- "group": "pipeline@1"
385
- },
386
- {
387
- "command": "forge.removePipeline",
388
- "when": "view == forge.pipelines && viewItem =~ /forge\\.pipelineBinding/",
389
- "group": "pipeline@2"
390
- },
391
- {
392
- "command": "forge.openItemInWebUI",
393
- "when": "view == forge.workspaces && viewItem =~ /forge\\.workspace\\./",
394
- "group": "inline@9"
395
- },
396
- {
397
- "command": "forge.openItemInWebUI",
398
- "when": "view == forge.workspaces && viewItem =~ /forge\\.smith\\..+/",
399
- "group": "inline@9"
400
- },
401
- {
402
- "command": "forge.openItemInWebUI",
403
- "when": "view == forge.pipelines && viewItem == forge.pipelineProject",
404
- "group": "inline@9"
405
- },
406
- {
407
- "command": "forge.openItemInWebUI",
408
- "when": "view == forge.pipelines && viewItem == forge.pipelineRun",
409
- "group": "inline@9"
410
- },
411
- {
412
- "command": "forge.openItemInWebUI",
413
- "when": "view == forge.docs && viewItem == forge.docRoot",
414
- "group": "inline@9"
415
- }
416
- ],
417
- "editor/context": [
418
- {
419
- "command": "forge.sendSelection",
420
- "when": "editorHasSelection",
421
- "group": "forge"
422
- }
423
- ]
424
- },
425
- "configuration": {
426
- "title": "Forge",
427
- "properties": {
428
- "forge.connections": {
429
- "type": "array",
430
- "default": [],
431
- "markdownDescription": "Saved Forge connections. If empty, the extension synthesizes a single \"Local\" entry from `forge.serverUrl` / `forge.terminalUrl` (backwards compat). Use `Forge: Switch Connection` (status bar or command palette) to swap.",
432
- "items": {
433
- "type": "object",
434
- "required": [
435
- "name",
436
- "serverUrl",
437
- "terminalUrl"
438
- ],
439
- "properties": {
440
- "name": {
441
- "type": "string",
442
- "description": "Display name (e.g. Local, Office, Cloud)"
443
- },
444
- "serverUrl": {
445
- "type": "string",
446
- "description": "Forge HTTP URL (http://host:port)"
447
- },
448
- "terminalUrl": {
449
- "type": "string",
450
- "description": "Forge terminal WebSocket URL (ws://host:port)"
451
- }
452
- }
453
- }
454
- },
455
- "forge.activeConnection": {
456
- "type": "string",
457
- "default": "",
458
- "description": "Name of the currently active connection (one of forge.connections[].name)."
459
- },
460
- "forge.serverUrl": {
461
- "type": "string",
462
- "default": "http://localhost:8403",
463
- "description": "[Legacy] Single Forge HTTP server URL — used when forge.connections is empty."
464
- },
465
- "forge.terminalUrl": {
466
- "type": "string",
467
- "default": "ws://localhost:8404",
468
- "description": "[Legacy] Single Forge terminal WebSocket URL — used when forge.connections is empty."
469
- },
470
- "forge.autoStart": {
471
- "type": "boolean",
472
- "default": false,
473
- "description": "Run `forge server start` on extension activation if no Forge server is reachable."
474
- },
475
- "forge.notifications.enabled": {
476
- "type": "boolean",
477
- "default": true,
478
- "description": "Show VSCode notifications for smith bell events."
479
- },
480
- "forge.refreshInterval": {
481
- "type": "number",
482
- "default": 5,
483
- "description": "Tree-view refresh interval in seconds."
484
- },
485
- "forge.docs.transport": {
486
- "type": "string",
487
- "enum": [
488
- "auto",
489
- "local",
490
- "http"
491
- ],
492
- "default": "auto",
493
- "markdownDescription": "How to read/write doc files.\n- `auto` (default): use local file paths when forge is on localhost, fall back to HTTP otherwise.\n- `local`: always use VSCode's native filesystem (only works when forge is on the same machine).\n- `http`: always go through forge's `/api/docs` endpoint (works for remote forge over a tunnel)."
494
- }
495
- }
496
- }
497
- },
498
- "scripts": {
499
- "vscode:prepublish": "npm run compile",
500
- "compile": "tsc -p ./",
501
- "watch": "tsc -watch -p ./",
502
- "package": "vsce package --out forge-vscode.vsix"
503
- },
504
- "dependencies": {
505
- "ws": "^8.18.0"
506
- },
507
- "devDependencies": {
508
- "@types/node": "^20.0.0",
509
- "@types/vscode": "^1.80.0",
510
- "@types/ws": "^8.5.0",
511
- "@vscode/vsce": "^3.0.0",
512
- "typescript": "^5.4.0"
513
- }
514
- }
@@ -1,49 +0,0 @@
1
- #!/bin/bash
2
- # Publish the Forge VSCode extension to the Marketplace.
3
- #
4
- # Usage:
5
- # ./publish.sh # bump patch (0.2.6 → 0.2.7) + publish (default)
6
- # ./publish.sh minor # bump minor (0.2.x → 0.3.0) + publish
7
- # ./publish.sh major # bump major (0.x.x → 1.0.0) + publish
8
- # ./publish.sh 0.5.0 # publish exact version
9
- # ./publish.sh --no-bump # publish current package.json version unchanged
10
- #
11
- # Auth (one-time): `npx vsce login aion0` (credentials cached in ~/.vsce/),
12
- # OR set $VSCE_PAT in the environment before invoking.
13
- #
14
- # vsce will create a `git commit` + `git tag v<x.y.z>` for version bumps —
15
- # push them with `git push --follow-tags` afterwards.
16
-
17
- set -euo pipefail
18
- cd "$(dirname "$0")"
19
-
20
- ARG="${1:-patch}"
21
-
22
- PUBLISH_ARGS=()
23
- case "$ARG" in
24
- --no-bump)
25
- ;;
26
- patch|minor|major)
27
- PUBLISH_ARGS+=("$ARG")
28
- ;;
29
- *)
30
- if [[ "$ARG" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
31
- PUBLISH_ARGS+=("$ARG")
32
- else
33
- echo "Unknown argument: $ARG" >&2
34
- echo "Usage: $0 [patch|minor|major|x.y.z|--no-bump]" >&2
35
- exit 1
36
- fi
37
- ;;
38
- esac
39
-
40
- if [[ -n "${VSCE_PAT:-}" ]]; then
41
- PUBLISH_ARGS+=(-p "$VSCE_PAT")
42
- fi
43
-
44
- echo "→ npx vsce publish ${PUBLISH_ARGS[*]:-}"
45
- npx vsce publish "${PUBLISH_ARGS[@]}"
46
-
47
- VERSION=$(node -p "require('./package.json').version")
48
- echo "✓ Published aion0.forge-vibecoding v$VERSION"
49
- echo "→ https://marketplace.visualstudio.com/items?itemName=aion0.forge-vibecoding"