vibes-diy 14.3.186 → 14.3.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.
package/cli/cli-ctx.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { VibesDiyApi } from "@vibes.diy/api-impl";
1
+ import { VibesDiyApi, type WsProxyEnv } from "@vibes.diy/api-impl";
2
2
  import { SuperThis } from "@vibes.diy/identity";
3
3
  import type { HarnessCliCtx } from "./cli-kit.js";
4
4
  export declare const DEFAULT_API_URL = "https://vibes.diy/api?.stable-entry.=cli";
@@ -27,5 +27,7 @@ export interface CliCtx extends HarnessCliCtx {
27
27
  }) => VibesDiyApi;
28
28
  readonly fetch?: typeof fetch;
29
29
  readonly cwd?: () => string;
30
+ readonly proxyEnv?: WsProxyEnv;
31
+ readonly cliVersion?: string;
30
32
  exitCode: number;
31
33
  }
@@ -2,85 +2,56 @@ import { isCmdProgress, sendMsg, sendProgress, type CmdProgress, type CmdTSMsg,
2
2
  export type { CmdTSMsg, WrapCmdTSMsg, CmdProgress };
3
3
  export { isCmdProgress, sendMsg, sendProgress };
4
4
  export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
5
- type: "core-cli.device-id-register";
6
- commonName: string;
7
- organization: string;
8
- locality: string;
9
- state: string;
10
- country: string;
11
- caUrl: string;
12
- port: string;
13
- timeout: string;
14
- forceRenew: boolean;
15
- }, {
16
- type: "core-cli.res-device-id-register";
17
- output: string;
18
- }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
19
- type: "vibes-diy.cli.system";
20
- }, {
21
- type: "vibes-diy.cli.res-system";
22
- systemPrompt: string;
23
- }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
24
- type: "vibes-diy.cli.remix";
25
- srcUserSlug: string;
26
- srcAppSlug: string;
27
- dstOwnerHandle?: string | undefined;
28
- dstAppSlug?: string | undefined;
29
- published: boolean;
30
- settingsOnly: boolean;
31
- apiUrl: string;
5
+ type: "vibes-diy.cli.skills";
32
6
  }, {
33
- type: "vibes-diy.cli.res-remix";
34
- ownerHandle: string;
35
- appSlug: string;
36
- url: string;
37
- carried?: string[] | undefined;
38
- skippedPresent?: string[] | undefined;
39
- chatId?: string | undefined;
7
+ type: "vibes-diy.cli.res-skills-list";
8
+ skills: {
9
+ name: string;
10
+ description: string;
11
+ }[];
12
+ } | {
13
+ type: "vibes-diy.cli.res-skill-content";
14
+ name: string;
15
+ content: string;
40
16
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
41
- type: "vibes-diy.cli.put-asset";
42
- file: string;
43
- appSlug: string;
44
- ownerHandle: string;
17
+ type: "vibes-diy.cli.claim-handle";
45
18
  apiUrl: string;
46
- mimeType: string;
47
- verifyFetch: boolean;
19
+ ownerHandle?: string | undefined;
20
+ noDefault?: boolean | undefined;
48
21
  }, {
49
- type: "vibes-diy.cli.res-put-asset";
50
- cid: string;
51
- getURL: string;
52
- size: number;
53
- uploadId: string;
54
- verified?: boolean | undefined;
22
+ type: "vibes-diy.cli.res-claim-handle";
23
+ op: "claim" | "suggest";
24
+ ownerHandle?: string | undefined;
25
+ defaultHandleSet?: boolean | undefined;
26
+ defaultSkipped?: boolean | undefined;
27
+ suggestions: string[];
55
28
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
56
- type: "vibes-diy.cli.db.list";
29
+ type: "vibes-diy.cli.db.get";
57
30
  apiUrl: string;
58
31
  appSlug: string;
59
32
  ownerHandle: string;
33
+ dbName: string;
34
+ docId: string;
60
35
  admin: boolean;
36
+ actingHandle: string;
61
37
  }, {
62
- type: "vibes-diy.cli.db.list-res";
63
- dbNames: string[];
38
+ type: "vibes-diy.cli.db.get-res";
39
+ doc: {
40
+ [x: string]: unknown;
41
+ };
64
42
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
65
- type: "vibes-diy.cli.db.put";
43
+ type: "vibes-diy.cli.db.del";
66
44
  apiUrl: string;
67
45
  appSlug: string;
68
46
  ownerHandle: string;
69
47
  dbName: string;
70
- docJson: string;
71
48
  docId: string;
72
49
  admin: boolean;
73
50
  actingHandle: string;
74
- files?: string[] | undefined;
75
51
  }, {
76
- type: "vibes-diy.cli.db.put-res";
52
+ type: "vibes-diy.cli.db.del-res";
77
53
  id: string;
78
54
  ok: true;
79
- files?: {
80
- key: string;
81
- status: "unchanged" | "uploaded";
82
- uploadId: string;
83
- }[] | undefined;
84
55
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
85
56
  type: "vibes-diy.cli.db.seed";
86
57
  action: "add" | "remove";
@@ -103,44 +74,30 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
103
74
  failed: number;
104
75
  }[];
105
76
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
106
- type: "vibes-diy.cli.app-chats";
107
- appSlug: string;
108
- ownerHandle: string;
109
- chatId?: string | undefined;
77
+ type: "vibes-diy.cli.doctor";
110
78
  apiUrl: string;
111
79
  }, {
112
- type: "vibes-diy.cli.res-app-chats-list";
113
- items: {
114
- chatId: string;
115
- appSlug: string;
116
- ownerHandle: string;
117
- created: string;
118
- userHandle?: string | undefined;
119
- }[];
120
- } | {
121
- type: "vibes-diy.cli.res-app-chats-detail";
122
- chatId: string;
123
- ownerHandle?: string | undefined;
124
- appSlug?: string | undefined;
125
- output: string;
126
- }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
127
- type: "vibes-diy.cli.list";
80
+ type: "vibes-diy.cli.res-doctor";
81
+ cliVersion: string;
82
+ node: string;
83
+ keybagPath: string;
84
+ device: string;
85
+ deviceOk: boolean;
86
+ fingerprint?: string | undefined;
87
+ certExpires?: string | undefined;
128
88
  apiUrl: string;
129
- }, {
130
- type: "vibes-diy.cli.res-list";
131
- items: {
132
- ownerHandle: string;
133
- appSlug: string;
134
- updated: string;
135
- title?: string | undefined;
136
- icon?: {
137
- cid: string;
138
- mime: string;
139
- } | undefined;
140
- pinnedAt?: string | undefined;
141
- neverPublished?: boolean | undefined;
142
- unpublishedAt?: string | undefined;
143
- }[];
89
+ wsUrl: string;
90
+ proxy: string;
91
+ handshake: {
92
+ ok: boolean;
93
+ detail: string;
94
+ ms?: number | undefined;
95
+ };
96
+ auth?: {
97
+ ok: boolean;
98
+ detail: string;
99
+ ms?: number | undefined;
100
+ } | undefined;
144
101
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
145
102
  type: "vibes-diy.cli.app-rearm";
146
103
  appSlug: string;
@@ -552,18 +509,6 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
552
509
  })[];
553
510
  updated: string;
554
511
  created: string;
555
- }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
556
- type: "vibes-diy.cli.skills";
557
- }, {
558
- type: "vibes-diy.cli.res-skills-list";
559
- skills: {
560
- name: string;
561
- description: string;
562
- }[];
563
- } | {
564
- type: "vibes-diy.cli.res-skill-content";
565
- name: string;
566
- content: string;
567
512
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
568
513
  type: "use-vibes.cli.themes";
569
514
  }, {
@@ -590,6 +535,11 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
590
535
  id: string;
591
536
  guidance: string;
592
537
  }[];
538
+ }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
539
+ type: "vibes-diy.cli.system";
540
+ }, {
541
+ type: "vibes-diy.cli.res-system";
542
+ systemPrompt: string;
593
543
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
594
544
  type: "vibes-diy.cli.push";
595
545
  mode: string;
@@ -661,44 +611,64 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
661
611
  type: "vibes.diy.res-error";
662
612
  error: {
663
613
  message: string;
664
- code: "from-not-owned";
614
+ code: "max-app-slugs-reached";
665
615
  };
666
616
  } | {
667
617
  type: "vibes.diy.res-error";
668
618
  error: {
669
619
  message: string;
670
- code: "from-carry-failed";
620
+ code: "handle-required";
671
621
  };
672
622
  } | {
673
623
  type: "vibes.diy.res-error";
674
624
  error: {
675
625
  message: string;
676
- code: "auto-enhance-off";
626
+ code: "from-not-owned";
677
627
  };
678
628
  } | {
679
629
  type: "vibes.diy.res-error";
680
630
  error: {
681
631
  message: string;
682
- code: "handle-required";
632
+ code: "from-carry-failed";
683
633
  };
684
634
  } | {
685
635
  type: "vibes.diy.res-error";
686
636
  error: {
687
637
  message: string;
688
- code: "max-app-slugs-reached";
638
+ code: "auto-enhance-off";
689
639
  };
690
640
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
691
- type: "vibes-diy.cli.claim-handle";
641
+ type: "vibes-diy.cli.remix";
642
+ srcUserSlug: string;
643
+ srcAppSlug: string;
644
+ dstOwnerHandle?: string | undefined;
645
+ dstAppSlug?: string | undefined;
646
+ published: boolean;
647
+ settingsOnly: boolean;
692
648
  apiUrl: string;
693
- ownerHandle?: string | undefined;
694
- noDefault?: boolean | undefined;
695
649
  }, {
696
- type: "vibes-diy.cli.res-claim-handle";
697
- op: "claim" | "suggest";
698
- ownerHandle?: string | undefined;
699
- defaultHandleSet?: boolean | undefined;
700
- defaultSkipped?: boolean | undefined;
701
- suggestions: string[];
650
+ type: "vibes-diy.cli.res-remix";
651
+ ownerHandle: string;
652
+ appSlug: string;
653
+ url: string;
654
+ carried?: string[] | undefined;
655
+ skippedPresent?: string[] | undefined;
656
+ chatId?: string | undefined;
657
+ }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
658
+ type: "vibes-diy.cli.put-asset";
659
+ file: string;
660
+ appSlug: string;
661
+ ownerHandle: string;
662
+ apiUrl: string;
663
+ mimeType: string;
664
+ verifyFetch: boolean;
665
+ }, {
666
+ type: "vibes-diy.cli.res-put-asset";
667
+ cid: string;
668
+ getURL: string;
669
+ size: number;
670
+ uploadId: string;
671
+ verified?: boolean | undefined;
702
672
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
703
673
  type: "vibes-diy.cli.generate";
704
674
  prompt: string;
@@ -772,31 +742,31 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
772
742
  type: "vibes.diy.res-error";
773
743
  error: {
774
744
  message: string;
775
- code: "from-not-owned";
745
+ code: "max-app-slugs-reached";
776
746
  };
777
747
  } | {
778
748
  type: "vibes.diy.res-error";
779
749
  error: {
780
750
  message: string;
781
- code: "from-carry-failed";
751
+ code: "handle-required";
782
752
  };
783
753
  } | {
784
754
  type: "vibes.diy.res-error";
785
755
  error: {
786
756
  message: string;
787
- code: "auto-enhance-off";
757
+ code: "from-not-owned";
788
758
  };
789
759
  } | {
790
760
  type: "vibes.diy.res-error";
791
761
  error: {
792
762
  message: string;
793
- code: "handle-required";
763
+ code: "from-carry-failed";
794
764
  };
795
765
  } | {
796
766
  type: "vibes.diy.res-error";
797
767
  error: {
798
768
  message: string;
799
- code: "max-app-slugs-reached";
769
+ code: "auto-enhance-off";
800
770
  };
801
771
  } | {
802
772
  type: "vibes-diy.cli.res-generate";
@@ -808,6 +778,27 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
808
778
  turns?: number | undefined;
809
779
  publish?: "kept-private-no-access-fn" | "private" | "published" | undefined;
810
780
  posture?: "gated" | "open" | "private" | undefined;
781
+ }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
782
+ type: "vibes-diy.cli.app-chats";
783
+ appSlug: string;
784
+ ownerHandle: string;
785
+ chatId?: string | undefined;
786
+ apiUrl: string;
787
+ }, {
788
+ type: "vibes-diy.cli.res-app-chats-list";
789
+ items: {
790
+ chatId: string;
791
+ appSlug: string;
792
+ ownerHandle: string;
793
+ created: string;
794
+ userHandle?: string | undefined;
795
+ }[];
796
+ } | {
797
+ type: "vibes-diy.cli.res-app-chats-detail";
798
+ chatId: string;
799
+ ownerHandle?: string | undefined;
800
+ appSlug?: string | undefined;
801
+ output: string;
811
802
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
812
803
  type: "vibes-diy.cli.codegen-log";
813
804
  appSlug: string;
@@ -912,31 +903,31 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
912
903
  type: "vibes.diy.res-error";
913
904
  error: {
914
905
  message: string;
915
- code: "from-not-owned";
906
+ code: "max-app-slugs-reached";
916
907
  };
917
908
  } | {
918
909
  type: "vibes.diy.res-error";
919
910
  error: {
920
911
  message: string;
921
- code: "from-carry-failed";
912
+ code: "handle-required";
922
913
  };
923
914
  } | {
924
915
  type: "vibes.diy.res-error";
925
916
  error: {
926
917
  message: string;
927
- code: "auto-enhance-off";
918
+ code: "from-not-owned";
928
919
  };
929
920
  } | {
930
921
  type: "vibes.diy.res-error";
931
922
  error: {
932
923
  message: string;
933
- code: "handle-required";
924
+ code: "from-carry-failed";
934
925
  };
935
926
  } | {
936
927
  type: "vibes.diy.res-error";
937
928
  error: {
938
929
  message: string;
939
- code: "max-app-slugs-reached";
930
+ code: "auto-enhance-off";
940
931
  };
941
932
  } | {
942
933
  type: "vibes-diy.cli.res-edit";
@@ -945,6 +936,24 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
945
936
  url: string;
946
937
  directory: string;
947
938
  restyled?: boolean | undefined;
939
+ }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
940
+ type: "vibes-diy.cli.list";
941
+ apiUrl: string;
942
+ }, {
943
+ type: "vibes-diy.cli.res-list";
944
+ items: {
945
+ ownerHandle: string;
946
+ appSlug: string;
947
+ updated: string;
948
+ title?: string | undefined;
949
+ icon?: {
950
+ cid: string;
951
+ mime: string;
952
+ } | undefined;
953
+ pinnedAt?: string | undefined;
954
+ neverPublished?: boolean | undefined;
955
+ unpublishedAt?: string | undefined;
956
+ }[];
948
957
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
949
958
  type: "vibes-diy.cli.pull";
950
959
  appSlug: string;
@@ -1076,32 +1085,50 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
1076
1085
  userId: string;
1077
1086
  cleared: string[];
1078
1087
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
1079
- type: "vibes-diy.cli.db.get";
1088
+ type: "core-cli.device-id-register";
1089
+ commonName: string;
1090
+ organization: string;
1091
+ locality: string;
1092
+ state: string;
1093
+ country: string;
1094
+ caUrl: string;
1095
+ port: string;
1096
+ timeout: string;
1097
+ forceRenew: boolean;
1098
+ cert?: string | undefined;
1099
+ noBrowser?: boolean | undefined;
1100
+ }, {
1101
+ type: "core-cli.res-device-id-register";
1102
+ output: string;
1103
+ }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
1104
+ type: "vibes-diy.cli.db.list";
1080
1105
  apiUrl: string;
1081
1106
  appSlug: string;
1082
1107
  ownerHandle: string;
1083
- dbName: string;
1084
- docId: string;
1085
1108
  admin: boolean;
1086
- actingHandle: string;
1087
1109
  }, {
1088
- type: "vibes-diy.cli.db.get-res";
1089
- doc: {
1090
- [x: string]: unknown;
1091
- };
1110
+ type: "vibes-diy.cli.db.list-res";
1111
+ dbNames: string[];
1092
1112
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
1093
- type: "vibes-diy.cli.db.del";
1113
+ type: "vibes-diy.cli.db.put";
1094
1114
  apiUrl: string;
1095
1115
  appSlug: string;
1096
1116
  ownerHandle: string;
1097
1117
  dbName: string;
1118
+ docJson: string;
1098
1119
  docId: string;
1099
1120
  admin: boolean;
1100
1121
  actingHandle: string;
1122
+ files?: string[] | undefined;
1101
1123
  }, {
1102
- type: "vibes-diy.cli.db.del-res";
1124
+ type: "vibes-diy.cli.db.put-res";
1103
1125
  id: string;
1104
1126
  ok: true;
1127
+ files?: {
1128
+ key: string;
1129
+ status: "unchanged" | "uploaded";
1130
+ uploadId: string;
1131
+ }[] | undefined;
1105
1132
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
1106
1133
  type: "vibes-diy.cli.db.query";
1107
1134
  apiUrl: string;
package/cli/cmd-evento.js CHANGED
@@ -13,6 +13,7 @@ import { codegenLogEvento } from "./cmds/codegen-log-cmd.js";
13
13
  import { appChatsEvento } from "./cmds/app-chats-cmd.js";
14
14
  import { editEvento } from "./cmds/edit-cmd.js";
15
15
  import { listEvento } from "./cmds/list-cmd.js";
16
+ import { doctorEvento } from "./cmds/doctor-cmd.js";
16
17
  import { pullEvento } from "./cmds/pull-cmd.js";
17
18
  import { versionsEvento } from "./cmds/versions-cmd.js";
18
19
  import { assetsLsEvento } from "./cmds/assets-cmd.js";
@@ -41,6 +42,7 @@ export function cliEventoHandlers() {
41
42
  codegenLogEvento,
42
43
  editEvento,
43
44
  listEvento,
45
+ doctorEvento,
44
46
  pullEvento,
45
47
  versionsEvento,
46
48
  assetsLsEvento,
@@ -1 +1 @@
1
- {"version":3,"file":"cmd-evento.js","sourceRoot":"","sources":["../../jsr/cli/cmd-evento.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EACL,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EACL,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EACL,aAAa,EACb,eAAe,EACf,OAAO,EACP,YAAY,GAIb,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;AAOhD,MAAM,UAAU,iBAAiB;IAC/B,OAAO;QACL,kBAAkB;QAClB,YAAY;QACZ,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,UAAU;QACV,WAAW;QACX,iBAAiB;QACjB,cAAc;QACd,cAAc;QACd,cAAc;QACd,gBAAgB;QAChB,UAAU;QACV,UAAU;QACV,UAAU;QACV,cAAc;QACd,cAAc;QACd,eAAe;QACf,cAAc;QACd,mBAAmB;QACnB,oBAAoB;QACpB,aAAa;QACb,cAAc;QACd,aAAa;QACb,kBAAkB;QAClB,oBAAoB;QACpB,kBAAkB;QAClB,aAAa;QACb,aAAa;QACb,eAAe;QACf,eAAe;QACf,sBAAsB;QACtB,oBAAoB;QACpB,sBAAsB;QACtB,YAAY;QACZ,WAAW;QACX,WAAW;QACX,WAAW;QACX,aAAa;QACb,iBAAiB;QACjB,YAAY;KACb,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,OAAO,eAAe,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"cmd-evento.js","sourceRoot":"","sources":["../../jsr/cli/cmd-evento.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import { EventoHandler } from "@adviser/cement";
2
+ import { CliCtx } from "../cli-ctx.js";
3
+ import { WrapCmdTSMsg } from "../cmd-evento.js";
4
+ export declare const ReqDoctor: import("arktype/internal/variants/object.ts").ObjectType<{
5
+ type: "vibes-diy.cli.doctor";
6
+ apiUrl: string;
7
+ }, {}>;
8
+ export type ReqDoctor = typeof ReqDoctor.infer;
9
+ export declare const ResDoctor: import("arktype/internal/variants/object.ts").ObjectType<{
10
+ type: "vibes-diy.cli.res-doctor";
11
+ cliVersion: string;
12
+ node: string;
13
+ keybagPath: string;
14
+ device: string;
15
+ deviceOk: boolean;
16
+ fingerprint?: string | undefined;
17
+ certExpires?: string | undefined;
18
+ apiUrl: string;
19
+ wsUrl: string;
20
+ proxy: string;
21
+ handshake: {
22
+ ok: boolean;
23
+ detail: string;
24
+ ms?: number | undefined;
25
+ };
26
+ auth?: {
27
+ ok: boolean;
28
+ detail: string;
29
+ ms?: number | undefined;
30
+ } | undefined;
31
+ }, {}>;
32
+ export type ResDoctor = typeof ResDoctor.infer;
33
+ export declare function isResDoctor(obj: unknown): obj is ResDoctor;
34
+ export declare function wsUrlFor(apiUrl: string): string;
35
+ export declare const doctorEvento: EventoHandler<WrapCmdTSMsg<unknown>, ReqDoctor, ResDoctor>;
36
+ export declare function renderDoctorLines(r: ResDoctor): string[];
37
+ export declare function doctorCmd(ctx: CliCtx): Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
38
+ parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<{
39
+ apiUrl: string;
40
+ json: boolean;
41
+ text: boolean;
42
+ }>>;
43
+ } & import("cmd-ts/dist/cjs/helpdoc.js").PrintHelp & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/helpdoc.js").Named & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Versioned> & import("cmd-ts/dist/cjs/argparser.js").Register & import("cmd-ts/dist/cjs/runner.js").Handling<{
44
+ apiUrl: string;
45
+ json: boolean;
46
+ text: boolean;
47
+ }, never> & {
48
+ run(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<never>>;
49
+ } & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Versioned & import("cmd-ts/dist/cjs/helpdoc.js").Descriptive & import("cmd-ts/dist/cjs/helpdoc.js").Aliased>;
@@ -0,0 +1,164 @@
1
+ import { command } from "cmd-ts";
2
+ import { Result, Option, exception2Result, BuildURI, URI, } from "@adviser/cement";
3
+ import { type } from "arktype";
4
+ import { VibesDiyApi, describeWsProxyDecision, resolveWsProxy } from "@vibes.diy/api-impl";
5
+ import { DeviceIdKey, getKeyBag, deviceIdKeybagFilePath } from "@vibes.diy/identity/node";
6
+ import { cmdTsDefaultArgs } from "../cli-ctx.js";
7
+ import { sendMsg } from "../cmd-evento.js";
8
+ import { formatErr } from "./format-err.js";
9
+ export const ReqDoctor = type({
10
+ type: "'vibes-diy.cli.doctor'",
11
+ apiUrl: "string",
12
+ });
13
+ const doctorCheck = type({
14
+ ok: "boolean",
15
+ detail: "string",
16
+ "ms?": "number",
17
+ });
18
+ export const ResDoctor = type({
19
+ type: "'vibes-diy.cli.res-doctor'",
20
+ cliVersion: "string",
21
+ node: "string",
22
+ keybagPath: "string",
23
+ device: "string",
24
+ deviceOk: "boolean",
25
+ "fingerprint?": "string",
26
+ "certExpires?": "string",
27
+ apiUrl: "string",
28
+ wsUrl: "string",
29
+ proxy: "string",
30
+ handshake: doctorCheck,
31
+ "auth?": doctorCheck,
32
+ });
33
+ export function isResDoctor(obj) {
34
+ return !(ResDoctor(obj) instanceof type.errors);
35
+ }
36
+ function isReqDoctor(obj) {
37
+ return !(ReqDoctor(obj) instanceof type.errors);
38
+ }
39
+ export function wsUrlFor(apiUrl) {
40
+ const secure = URI.from(apiUrl).protocol === "https:" || URI.from(apiUrl).protocol === "wss:";
41
+ return BuildURI.from(apiUrl)
42
+ .protocol(secure ? "wss:" : "ws:")
43
+ .toString();
44
+ }
45
+ async function deviceState(ctx) {
46
+ const keybagPath = deviceIdKeybagFilePath(ctx.sthis);
47
+ const rDev = await exception2Result(async () => (await getKeyBag(ctx.sthis)).getDeviceId());
48
+ if (rDev.isErr())
49
+ return { keybagPath, device: `keybag unreadable: ${rDev.Err().message}`, deviceOk: false };
50
+ const dev = rDev.Ok();
51
+ if (dev.error !== undefined) {
52
+ return { keybagPath, device: `keybag unreadable or corrupt: ${String(dev.error)}`, deviceOk: false };
53
+ }
54
+ if (dev.deviceId.IsNone())
55
+ return { keybagPath, device: "no device key — run 'vibes-diy login'", deviceOk: true };
56
+ const rKey = await DeviceIdKey.createFromJWK(dev.deviceId.Unwrap());
57
+ if (rKey.isErr()) {
58
+ return { keybagPath, device: `device key in the keybag cannot be loaded: ${rKey.Err().message}`, deviceOk: false };
59
+ }
60
+ const fingerprint = await rKey.Ok().fingerPrint();
61
+ const fp = { fingerprint };
62
+ if (dev.cert.IsNone()) {
63
+ return {
64
+ keybagPath,
65
+ device: "device key present but not enrolled (no certificate) — finish 'vibes-diy login'",
66
+ deviceOk: true,
67
+ ...fp,
68
+ };
69
+ }
70
+ const exp = dev.cert.Unwrap()?.certificatePayload.exp;
71
+ if (exp === undefined)
72
+ return { keybagPath, device: "enrolled", deviceOk: true, ...fp };
73
+ const expires = new Date(exp * 1000);
74
+ const expired = expires.getTime() < Date.now();
75
+ return {
76
+ keybagPath,
77
+ device: expired ? "certificate EXPIRED — run 'vibes-diy login --force'" : "enrolled",
78
+ deviceOk: !expired,
79
+ certExpires: expires.toISOString(),
80
+ ...fp,
81
+ };
82
+ }
83
+ export const doctorEvento = {
84
+ hash: "vibes-diy.cli.doctor",
85
+ validate: (ctx) => {
86
+ if (isReqDoctor(ctx.enRequest)) {
87
+ return Promise.resolve(Result.Ok(Option.Some(ctx.enRequest)));
88
+ }
89
+ return Promise.resolve(Result.Ok(Option.None()));
90
+ },
91
+ handle: async (ctx) => {
92
+ const ectx = ctx.ctx.getOrThrow("cliCtx");
93
+ const apiUrl = ctx.validated.apiUrl;
94
+ const proxyEnv = ectx.proxyEnv ?? { env: {} };
95
+ const device = await deviceState(ectx);
96
+ const api = ectx.vibesDiyApiFactory?.(apiUrl) ??
97
+ new VibesDiyApi({
98
+ apiUrl,
99
+ proxyEnv,
100
+ reconnectLifecycle: false,
101
+ getToken: () => Promise.resolve(Result.Err("not logged in")),
102
+ });
103
+ const wsUrl = wsUrlFor(api.cfg.apiUrl);
104
+ const started = Date.now();
105
+ const rConn = await exception2Result(() => api.getReadyConnection());
106
+ const handshake = rConn.isOk()
107
+ ? { ok: true, detail: "WebSocket opened", ms: Date.now() - started }
108
+ : { ok: false, detail: rConn.Err().message, ms: Date.now() - started };
109
+ let auth;
110
+ if (device.certExpires !== undefined && ectx.vibesDiyApiFactory === undefined) {
111
+ auth = { ok: false, detail: "device is enrolled but its credential could not be loaded for signing" };
112
+ }
113
+ else if (rConn.isOk() && ectx.vibesDiyApiFactory !== undefined && device.certExpires !== undefined) {
114
+ const authStarted = Date.now();
115
+ const rList = await api.listRecentVibes({ limit: 1 });
116
+ auth = rList.isOk()
117
+ ? { ok: true, detail: "authenticated request succeeded", ms: Date.now() - authStarted }
118
+ : { ok: false, detail: formatErr(rList.Err()), ms: Date.now() - authStarted };
119
+ }
120
+ await exception2Result(() => api.close());
121
+ ectx.exitCode = device.deviceOk && handshake.ok && (auth === undefined || auth.ok) ? 0 : 1;
122
+ return sendMsg(ctx, {
123
+ type: "vibes-diy.cli.res-doctor",
124
+ cliVersion: ectx.cliVersion ?? "unknown",
125
+ node: process.version,
126
+ ...device,
127
+ apiUrl,
128
+ wsUrl,
129
+ proxy: describeWsProxyDecision(resolveWsProxy(wsUrl, proxyEnv)),
130
+ handshake,
131
+ ...(auth === undefined ? {} : { auth }),
132
+ });
133
+ },
134
+ };
135
+ function checkLine(c) {
136
+ return `${c.ok ? "ok" : "FAILED"}${c.ms === undefined ? "" : ` (${c.ms}ms)`} — ${c.detail}`;
137
+ }
138
+ export function renderDoctorLines(r) {
139
+ return [
140
+ `vibes-diy ${r.cliVersion} (node ${r.node})`,
141
+ `keybag ${r.keybagPath}`,
142
+ `device ${r.device}`,
143
+ ...(r.fingerprint === undefined ? [] : [`device fp ${r.fingerprint}`]),
144
+ ...(r.certExpires === undefined ? [] : [`cert exp. ${r.certExpires}`]),
145
+ `api url ${r.apiUrl}`,
146
+ `ws url ${r.wsUrl}`,
147
+ `proxy ${r.proxy}`,
148
+ `handshake ${checkLine(r.handshake)}`,
149
+ ...(r.auth === undefined ? [] : [`auth ${checkLine(r.auth)}`]),
150
+ ];
151
+ }
152
+ export function doctorCmd(ctx) {
153
+ return command({
154
+ name: "doctor",
155
+ description: "Read-only status: CLI version, device key and certificate, keybag path, API URL, proxy decision, and WebSocket handshake. Use --proxy <url|direct> or VIBES_PROXY to override the proxy.",
156
+ args: {
157
+ ...cmdTsDefaultArgs(ctx),
158
+ },
159
+ handler: ctx.cliStream.enqueue((args) => {
160
+ return { type: "vibes-diy.cli.doctor", apiUrl: args.apiUrl };
161
+ }),
162
+ });
163
+ }
164
+ //# sourceMappingURL=doctor-cmd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor-cmd.js","sourceRoot":"","sources":["../../../jsr/cli/cmds/doctor-cmd.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@ export declare function loginCmd(ctx: CliCtx): Partial<import("cmd-ts/dist/cjs/a
7
7
  force: boolean;
8
8
  timeout: string;
9
9
  commonName: string;
10
+ cert: string;
11
+ noBrowser: boolean;
10
12
  }>>;
11
13
  } & import("cmd-ts/dist/cjs/helpdoc.js").PrintHelp & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/helpdoc.js").Named & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Versioned> & import("cmd-ts/dist/cjs/argparser.js").Register & import("cmd-ts/dist/cjs/runner.js").Handling<{
12
14
  apiUrl: string;
@@ -15,6 +17,8 @@ export declare function loginCmd(ctx: CliCtx): Partial<import("cmd-ts/dist/cjs/a
15
17
  force: boolean;
16
18
  timeout: string;
17
19
  commonName: string;
20
+ cert: string;
21
+ noBrowser: boolean;
18
22
  }, never> & {
19
23
  run(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<never>>;
20
24
  } & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Versioned & import("cmd-ts/dist/cjs/helpdoc.js").Descriptive & import("cmd-ts/dist/cjs/helpdoc.js").Aliased>;
@@ -9,13 +9,13 @@ export function loginCmd(ctx) {
9
9
  ...cmdTsDefaultArgs(ctx),
10
10
  force: flag({
11
11
  long: "force",
12
- description: "Re-register even if a certificate already exists",
12
+ description: "Re-register even if a certificate already exists (a pending, unenrolled key is replaced)",
13
13
  }),
14
14
  timeout: option({
15
15
  long: "timeout",
16
- description: "Seconds to wait for browser auth callback",
16
+ description: "Seconds to wait for browser auth callback (the CSR is valid for 1 hour)",
17
17
  type: string,
18
- defaultValue: () => "120",
18
+ defaultValue: () => "3600",
19
19
  defaultValueIsSerializable: true,
20
20
  }),
21
21
  commonName: option({
@@ -26,6 +26,17 @@ export function loginCmd(ctx) {
26
26
  defaultValue: () => "",
27
27
  defaultValueIsSerializable: true,
28
28
  }),
29
+ cert: option({
30
+ long: "cert",
31
+ description: "Finish a login whose browser couldn't reach localhost: the cert= value, or the whole failed redirect URL, from the browser's address bar",
32
+ type: string,
33
+ defaultValue: () => "",
34
+ defaultValueIsSerializable: true,
35
+ }),
36
+ noBrowser: flag({
37
+ long: "no-browser",
38
+ description: "Don't open a browser; print the URL to open on any machine",
39
+ }),
29
40
  },
30
41
  handler: ctx.cliStream.enqueue((_args) => {
31
42
  const args = _args;
@@ -45,6 +56,8 @@ export function loginCmd(ctx) {
45
56
  state: "You did not set the State",
46
57
  country: "WD",
47
58
  port: "",
59
+ noBrowser: args.noBrowser,
60
+ ...(args.cert === "" ? {} : { cert: args.cert }),
48
61
  };
49
62
  }),
50
63
  });
@@ -1 +1 @@
1
- {"version":3,"file":"login-cmd.js","sourceRoot":"","sources":["../../../jsr/cli/cmds/login-cmd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAU,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEzD,MAAM,UAAU,QAAQ,CAAC,GAAW;IAClC,OAAO,OAAO,CAAC;QACb,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,gDAAgD;QAC7D,IAAI,EAAE;YACJ,GAAG,gBAAgB,CAAC,GAAG,CAAC;YACxB,KAAK,EAAE,IAAI,CAAC;gBACV,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,kDAAkD;aAChE,CAAC;YACF,OAAO,EAAE,MAAM,CAAC;gBACd,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,2CAA2C;gBACxD,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK;gBACzB,0BAA0B,EAAE,IAAI;aACjC,CAAC;YACF,UAAU,EAAE,MAAM,CAAC;gBACjB,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,IAAI;gBACX,WAAW,EAAE,gEAAgE;gBAC7E,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE;gBACtB,0BAA0B,EAAE,IAAI;aACjC,CAAC;SACH;QACD,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACvC,MAAM,IAAI,GAAG,KAAgF,CAAC;YAC9F,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;iBACrC,QAAQ,CAAC,uBAAuB,CAAC;iBACjC,WAAW,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;iBAC/C,QAAQ,EAAE,CAAC;YACd,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;YACrF,OAAO;gBACL,IAAI,EAAE,6BAA6B;gBACnC,UAAU;gBACV,KAAK;gBACL,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,UAAU,EAAE,IAAI,CAAC,KAAK;gBACtB,YAAY,EAAE,kCAAkC;gBAChD,QAAQ,EAAE,0BAA0B;gBACpC,KAAK,EAAE,2BAA2B;gBAClC,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,EAAE;aACqB,CAAC;QAClC,CAAC,CAAC;KACH,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"login-cmd.js","sourceRoot":"","sources":["../../../jsr/cli/cmds/login-cmd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAU,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEzD,MAAM,UAAU,QAAQ,CAAC,GAAW;IAClC,OAAO,OAAO,CAAC;QACb,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,gDAAgD;QAC7D,IAAI,EAAE;YACJ,GAAG,gBAAgB,CAAC,GAAG,CAAC;YACxB,KAAK,EAAE,IAAI,CAAC;gBACV,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,0FAA0F;aACxG,CAAC;YACF,OAAO,EAAE,MAAM,CAAC;gBACd,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,yEAAyE;gBACtF,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM;gBAC1B,0BAA0B,EAAE,IAAI;aACjC,CAAC;YACF,UAAU,EAAE,MAAM,CAAC;gBACjB,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,IAAI;gBACX,WAAW,EAAE,gEAAgE;gBAC7E,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE;gBACtB,0BAA0B,EAAE,IAAI;aACjC,CAAC;YACF,IAAI,EAAE,MAAM,CAAC;gBACX,IAAI,EAAE,MAAM;gBACZ,WAAW,EACT,0IAA0I;gBAC5I,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE;gBACtB,0BAA0B,EAAE,IAAI;aACjC,CAAC;YACF,SAAS,EAAE,IAAI,CAAC;gBACd,IAAI,EAAE,YAAY;gBAClB,WAAW,EAAE,4DAA4D;aAC1E,CAAC;SACH;QACD,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACvC,MAAM,IAAI,GAAG,KAOZ,CAAC;YACF,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;iBACrC,QAAQ,CAAC,uBAAuB,CAAC;iBACjC,WAAW,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;iBAC/C,QAAQ,EAAE,CAAC;YACd,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;YACrF,OAAO;gBACL,IAAI,EAAE,6BAA6B;gBACnC,UAAU;gBACV,KAAK;gBACL,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,UAAU,EAAE,IAAI,CAAC,KAAK;gBACtB,YAAY,EAAE,kCAAkC;gBAChD,QAAQ,EAAE,0BAA0B;gBACpC,KAAK,EAAE,2BAA2B;gBAClC,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,EAAE;gBACR,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;aACnB,CAAC;QAClC,CAAC,CAAC;KACH,CAAC,CAAC;AACL,CAAC"}
package/cli/main.js CHANGED
@@ -38,9 +38,12 @@ import { defaultCliOutput } from "./cli-ctx.js";
38
38
  import { cliEventoHandlers } from "./cmd-evento.js";
39
39
  import { seedDeviceIdFromEnv, VIBES_DEVICE_ID_ENV } from "./device-id-env.js";
40
40
  import { normalizeHelpArgv } from "./help-alias.js";
41
+ import { cliProxyEnv, extractProxyArg } from "./proxy-flag.js";
42
+ import { doctorCmd, isResDoctor, renderDoctorLines } from "./cmds/doctor-cmd.js";
41
43
  import { readFileSync } from "node:fs";
42
44
  import { join } from "node:path";
43
- async function vibesDiyApiFactory(sthis, cliVersion) {
45
+ async function vibesDiyApiFactory(sthis, opts) {
46
+ const { cliVersion, proxyEnv } = opts;
44
47
  const getToken = await createDeviceIdGetToken(sthis, {
45
48
  iss: "use-vibes/cli",
46
49
  missingCertMessage: `Device ID certificate is missing — run 'vibes-diy login', or set ${VIBES_DEVICE_ID_ENV} for headless auth`,
@@ -52,6 +55,7 @@ async function vibesDiyApiFactory(sthis, cliVersion) {
52
55
  apiUrl,
53
56
  getToken,
54
57
  client: { kind: "cli", version: cliVersion },
58
+ proxyEnv,
55
59
  ...(codegenUserId === undefined ? {} : { codegenUserId }),
56
60
  ...(opts?.skipShard ? { skipShard: true } : {}),
57
61
  ...(opts?.idleTimeoutMs !== undefined ? { timeoutMs: opts.idleTimeoutMs } : {}),
@@ -70,7 +74,14 @@ async function main() {
70
74
  else if (rSeed.Ok() === "already-authenticated") {
71
75
  console.error(`Note: ${VIBES_DEVICE_ID_ENV} is set but ignored — this device is already logged in (use 'vibes-diy login --force' to re-enroll).`);
72
76
  }
73
- const rApiFactory = await exception2Result(() => vibesDiyApiFactory(sthis, String(packageJson.version ?? "")));
77
+ const cliVersion = String(packageJson.version ?? "");
78
+ const rProxyArg = extractProxyArg(normalizeHelpArgv(process.argv.slice(2)));
79
+ if (rProxyArg.error !== undefined) {
80
+ console.error(`Error: ${rProxyArg.error} (vibes-diy ${cliVersion})`);
81
+ return 1;
82
+ }
83
+ const proxyEnv = cliProxyEnv({ flag: rProxyArg.proxy, getEnv: (name) => sthis.env.get(name) });
84
+ const rApiFactory = await exception2Result(() => vibesDiyApiFactory(sthis, { cliVersion, proxyEnv }));
74
85
  if (rApiFactory.isErr() && isUnreadableDeviceIdKeybagError(rApiFactory.Err())) {
75
86
  console.error(`Warning: ${rApiFactory.Err().message}`);
76
87
  }
@@ -79,6 +90,8 @@ async function main() {
79
90
  cliStream: createCliStream(),
80
91
  output: defaultCliOutput,
81
92
  vibesDiyApiFactory: rApiFactory.isOk() ? rApiFactory.Ok() : undefined,
93
+ proxyEnv,
94
+ cliVersion,
82
95
  exitCode: 0,
83
96
  };
84
97
  const rFooter = await exception2Result(() => getCliFooter());
@@ -104,7 +117,7 @@ async function main() {
104
117
  version: packageJson.version,
105
118
  ctx,
106
119
  loadEnv: false,
107
- argv: normalizeHelpArgv(process.argv.slice(2)),
120
+ argv: rProxyArg.argv,
108
121
  cmds: {
109
122
  app: appSubcommands(ctx),
110
123
  "app-chats": appChatsCmd(ctx),
@@ -116,6 +129,7 @@ async function main() {
116
129
  recommend: recommendSubcommands(ctx),
117
130
  retention: retentionSubcommands(ctx),
118
131
  developer: developerSubcommands(ctx),
132
+ doctor: doctorCmd(ctx),
119
133
  edit: editCmd(ctx),
120
134
  generate: generateCmd(ctx),
121
135
  list: listCmd(ctx),
@@ -137,7 +151,7 @@ async function main() {
137
151
  },
138
152
  handlers: cliEventoHandlers(),
139
153
  onTriggerError: (error) => {
140
- console.error("Error:", String(error));
154
+ console.error("Error:", String(error), `(vibes-diy ${cliVersion}, node ${process.version})`);
141
155
  ctx.exitCode = 1;
142
156
  },
143
157
  renderResult: (msg, wmsg) => {
@@ -214,6 +228,17 @@ async function main() {
214
228
  console.log(msg.systemPrompt);
215
229
  break;
216
230
  }
231
+ case isResDoctor(msg): {
232
+ if (wmsg.cmdTs.outputFormat === "json") {
233
+ console.log(JSON.stringify(msg, null, 2));
234
+ }
235
+ else {
236
+ for (const line of renderDoctorLines(msg)) {
237
+ console.log(line);
238
+ }
239
+ }
240
+ break;
241
+ }
217
242
  case isResDeviceIdRegister(msg): {
218
243
  console.log(msg.output);
219
244
  break;
@@ -657,7 +682,7 @@ async function main() {
657
682
  }
658
683
  main()
659
684
  .catch((e) => {
660
- console.error("Error in vibes-diy cli:", e);
685
+ console.error("Error in vibes-diy cli:", e, `(node ${process.version})`);
661
686
  process.exit(1);
662
687
  })
663
688
  .then((code) => process.exit(code));
package/cli/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../jsr/cli/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../jsr/cli/main.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { WsProxyEnv } from "@vibes.diy/api-impl";
2
+ export declare const VIBES_PROXY_ENV = "VIBES_PROXY";
3
+ export declare const PROXY_ENV_NAMES: readonly ["https_proxy", "HTTPS_PROXY", "http_proxy", "HTTP_PROXY", "all_proxy", "ALL_PROXY", "no_proxy", "NO_PROXY"];
4
+ export declare function extractProxyArg(argv: readonly string[]): {
5
+ readonly argv: string[];
6
+ readonly proxy?: string;
7
+ readonly error?: string;
8
+ };
9
+ export declare function cliProxyEnv(opts: {
10
+ readonly flag?: string;
11
+ readonly getEnv: (name: string) => string | undefined;
12
+ }): WsProxyEnv;
@@ -0,0 +1,51 @@
1
+ import { proxyTunnelConnector } from "@vibes.diy/api-impl/ws-proxy-tunnel.js";
2
+ export const VIBES_PROXY_ENV = "VIBES_PROXY";
3
+ export const PROXY_ENV_NAMES = [
4
+ "https_proxy",
5
+ "HTTPS_PROXY",
6
+ "http_proxy",
7
+ "HTTP_PROXY",
8
+ "all_proxy",
9
+ "ALL_PROXY",
10
+ "no_proxy",
11
+ "NO_PROXY",
12
+ ];
13
+ export function extractProxyArg(argv) {
14
+ const out = [];
15
+ let proxy;
16
+ for (let i = 0; i < argv.length; i++) {
17
+ const arg = argv[i];
18
+ if (arg === "--") {
19
+ out.push(...argv.slice(i));
20
+ break;
21
+ }
22
+ if (arg === "--proxy") {
23
+ const value = argv[i + 1];
24
+ if (value === undefined || value.startsWith("-")) {
25
+ return { argv: out, error: "--proxy needs a value: a proxy URL like http://proxy:3128, or 'direct'" };
26
+ }
27
+ proxy = value;
28
+ i++;
29
+ continue;
30
+ }
31
+ if (arg.startsWith("--proxy=")) {
32
+ proxy = arg.slice("--proxy=".length);
33
+ continue;
34
+ }
35
+ out.push(arg);
36
+ }
37
+ return proxy === undefined ? { argv: out } : { argv: out, proxy };
38
+ }
39
+ export function cliProxyEnv(opts) {
40
+ const env = {};
41
+ for (const name of PROXY_ENV_NAMES)
42
+ env[name] = opts.getEnv(name);
43
+ const fromEnv = opts.getEnv(VIBES_PROXY_ENV);
44
+ const connector = proxyTunnelConnector;
45
+ if (opts.flag !== undefined)
46
+ return { connector, explicit: opts.flag, explicitSource: "--proxy", env };
47
+ if (fromEnv !== undefined && fromEnv.trim() !== "")
48
+ return { connector, explicit: fromEnv, explicitSource: VIBES_PROXY_ENV, env };
49
+ return { connector, env };
50
+ }
51
+ //# sourceMappingURL=proxy-flag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxy-flag.js","sourceRoot":"","sources":["../../jsr/cli/proxy-flag.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAG9E,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;AAG7C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,aAAa;IACb,aAAa;IACb,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,WAAW;IACX,UAAU;IACV,UAAU;CACF,CAAC;AASX,MAAM,UAAU,eAAe,CAAC,IAAuB;IAKrD,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,KAAyB,CAAC;IAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACjB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM;QACR,CAAC;QACD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,wEAAwE,EAAE,CAAC;YACxG,CAAC;YACD,KAAK,GAAG,KAAK,CAAC;YACd,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACrC,SAAS;QACX,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,CAAC;IACD,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;AACpE,CAAC;AAGD,MAAM,UAAU,WAAW,CAAC,IAAuF;IACjH,MAAM,GAAG,GAAuC,EAAE,CAAC;IACnD,KAAK,MAAM,IAAI,IAAI,eAAe;QAAE,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,oBAAoB,CAAC;IACvC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;IACvG,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC;IAClI,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;AAC5B,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,41 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { cliProxyEnv, extractProxyArg } from "./proxy-flag.js";
3
+ describe("extractProxyArg", () => {
4
+ it("pulls --proxy <url> out from anywhere before --", () => {
5
+ expect(extractProxyArg(["list", "--proxy", "http://p:1", "--json"])).toEqual({ argv: ["list", "--json"], proxy: "http://p:1" });
6
+ expect(extractProxyArg(["--proxy=direct", "doctor"])).toEqual({ argv: ["doctor"], proxy: "direct" });
7
+ });
8
+ it("leaves args after -- alone", () => {
9
+ expect(extractProxyArg(["generate", "--", "--proxy", "x"])).toEqual({ argv: ["generate", "--", "--proxy", "x"] });
10
+ });
11
+ it("reports a missing value instead of eating the next flag", () => {
12
+ expect(extractProxyArg(["list", "--proxy", "--json"]).error).toContain("--proxy needs a value");
13
+ expect(extractProxyArg(["list", "--proxy"]).error).toContain("--proxy needs a value");
14
+ });
15
+ it("is a no-op without --proxy", () => {
16
+ expect(extractProxyArg(["list", "--json"])).toEqual({ argv: ["list", "--json"] });
17
+ });
18
+ });
19
+ describe("cliProxyEnv", () => {
20
+ const env = (vars) => (name) => vars[name];
21
+ it("--proxy beats VIBES_PROXY", () => {
22
+ expect(cliProxyEnv({ flag: "http://flag:1", getEnv: env({ VIBES_PROXY: "http://env:2" }) })).toMatchObject({
23
+ explicit: "http://flag:1",
24
+ explicitSource: "--proxy",
25
+ });
26
+ });
27
+ it("VIBES_PROXY applies when there is no flag", () => {
28
+ expect(cliProxyEnv({ getEnv: env({ VIBES_PROXY: "direct" }) })).toMatchObject({
29
+ explicit: "direct",
30
+ explicitSource: "VIBES_PROXY",
31
+ });
32
+ });
33
+ it("carries the standard proxy vars and nothing else", () => {
34
+ const r = cliProxyEnv({ getEnv: env({ HTTPS_PROXY: "http://p:1", no_proxy: "localhost", HOME: "/root" }) });
35
+ expect(r.explicit).toBeUndefined();
36
+ expect(r.env.HTTPS_PROXY).toBe("http://p:1");
37
+ expect(r.env.no_proxy).toBe("localhost");
38
+ expect(Object.keys(r.env)).not.toContain("HOME");
39
+ });
40
+ });
41
+ //# sourceMappingURL=proxy-flag.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxy-flag.test.js","sourceRoot":"","sources":["../../jsr/cli/proxy-flag.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vibes-diy",
3
- "version": "14.3.186",
3
+ "version": "14.3.188",
4
4
  "type": "module",
5
5
  "main": "./index.js",
6
6
  "description": "Command-line tool for vibes.diy — generate, edit, pull, push, and publish AI-built apps",
@@ -30,13 +30,13 @@
30
30
  "dependencies": {
31
31
  "@adviser/cement": "~0.5.34",
32
32
  "@modelcontextprotocol/sdk": "~1.32.1",
33
- "@vibes.diy/api-impl": "14.3.186",
34
- "@vibes.diy/api-types": "14.3.186",
35
- "@vibes.diy/call-ai-v2": "14.3.186",
36
- "@vibes.diy/cmd-harness": "14.3.186",
37
- "@vibes.diy/cmd-tools": "14.3.186",
38
- "@vibes.diy/identity": "14.3.186",
39
- "@vibes.diy/prompts": "14.3.186",
33
+ "@vibes.diy/api-impl": "14.3.188",
34
+ "@vibes.diy/api-types": "14.3.188",
35
+ "@vibes.diy/call-ai-v2": "14.3.188",
36
+ "@vibes.diy/cmd-harness": "14.3.188",
37
+ "@vibes.diy/cmd-tools": "14.3.188",
38
+ "@vibes.diy/identity": "14.3.188",
39
+ "@vibes.diy/prompts": "14.3.188",
40
40
  "arktype": "~2.2.8",
41
41
  "charwise": "~3.0.1",
42
42
  "cmd-ts": "~0.15.0",