@helyx/cli 0.1.4 → 0.2.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Generate self-hosted projects with the published Cloud Connect-capable Bot and refreshed official module versions.
8
+
9
+ ## 0.2.0
10
+
11
+ ### Minor Changes
12
+
13
+ - 7b25ea0: Add the opt-in Helyx Cloud Connect configuration, local persistence, connector runtime, support-redaction contract and generated self-host environment guidance. Cloud Connect remains disabled until a deployment owner explicitly configures and enrols it.
14
+
15
+ ### Patch Changes
16
+
17
+ - Updated dependencies [7b25ea0]
18
+ - @helyx/config@0.2.0
19
+ - @helyx/database@0.2.0
20
+ - @helyx/bot@0.2.0
21
+
3
22
  ## 0.1.4 - 2026-07-23
4
23
 
5
24
  - Generate self-hosted projects with the interaction-timeout fix and refreshed
@@ -20,6 +20,16 @@ export declare const selfHostModuleSchema: z.ZodObject<{
20
20
  unpublished: "unpublished";
21
21
  published: "published";
22
22
  }>;
23
+ releaseStatus: z.ZodOptional<z.ZodEnum<{
24
+ planned: "planned";
25
+ testing: "testing";
26
+ beta: "beta";
27
+ live: "live";
28
+ }>>;
29
+ tier: z.ZodOptional<z.ZodEnum<{
30
+ free: "free";
31
+ premium: "premium";
32
+ }>>;
23
33
  }, z.core.$strict>;
24
34
  export declare const selfHostCatalogueSchema: z.ZodObject<{
25
35
  schemaVersion: z.ZodLiteral<1>;
@@ -61,6 +71,16 @@ export declare const selfHostCatalogueSchema: z.ZodObject<{
61
71
  unpublished: "unpublished";
62
72
  published: "published";
63
73
  }>;
74
+ releaseStatus: z.ZodOptional<z.ZodEnum<{
75
+ planned: "planned";
76
+ testing: "testing";
77
+ beta: "beta";
78
+ live: "live";
79
+ }>>;
80
+ tier: z.ZodOptional<z.ZodEnum<{
81
+ free: "free";
82
+ premium: "premium";
83
+ }>>;
64
84
  }, z.core.$strict>>;
65
85
  }, z.core.$strict>;
66
86
  export type SelfHostModule = z.infer<typeof selfHostModuleSchema>;
@@ -23,6 +23,8 @@ const moduleId = z
23
23
  .string()
24
24
  .regex(/^helyx\.[a-z0-9][a-z0-9-]*$/u, "must be a Helyx module ID");
25
25
  const availability = z.enum(["planned", "unpublished", "published"]);
26
+ const releaseStatus = z.enum(["planned", "testing", "beta", "live"]);
27
+ const moduleTier = z.enum(["free", "premium"]);
26
28
  const componentSchema = z
27
29
  .object({
28
30
  package: helyxPackage,
@@ -47,6 +49,8 @@ export const selfHostModuleSchema = z
47
49
  description: z.string().trim().min(1).max(300),
48
50
  category: z.enum(selfHostCategories),
49
51
  availability,
52
+ releaseStatus: releaseStatus.optional(),
53
+ tier: moduleTier.optional(),
50
54
  })
51
55
  .strict()
52
56
  .superRefine((module, context) => {
@@ -238,6 +238,39 @@ export const selfHostEnvironmentContract = {
238
238
  optional: true,
239
239
  },
240
240
  HELYX_BOT_CONTROL_PORT: { value: "3001", optional: true },
241
+ HELYX_CLOUD_CONNECT_ENABLED: { value: "false", optional: false },
242
+ HELYX_CLOUD_ENROLMENT_TOKEN: {
243
+ value: "replace-with-a-short-lived-enrolment-code",
244
+ optional: true,
245
+ },
246
+ HELYX_CLOUD_ENROLMENT_FILE: {
247
+ value: "./helyx.cloud-enrolment.json",
248
+ optional: true,
249
+ },
250
+ HELYX_DATA_ENCRYPTION_KEY: {
251
+ value: "replace-with-a-base64-encoded-32-byte-key",
252
+ optional: true,
253
+ },
254
+ HELYX_CLOUD_API_URL: {
255
+ value: "https://api.helyx.gg",
256
+ optional: true,
257
+ },
258
+ HELYX_CLOUD_ENDPOINT: {
259
+ value: "wss://connect.helyx.gg/v1/connect",
260
+ optional: true,
261
+ },
262
+ HELYX_OWNER_USER_IDS: {
263
+ value: "12345678901234567",
264
+ optional: true,
265
+ },
266
+ HELYX_CLOUD_AUDIT_RETENTION_DAYS: {
267
+ value: "90",
268
+ optional: true,
269
+ },
270
+ HELYX_CLOUD_CREDENTIAL_AUDIT_RETENTION_DAYS: {
271
+ value: "365",
272
+ optional: true,
273
+ },
241
274
  LOG_LEVEL: { value: "info", optional: false },
242
275
  NODE_ENV: { value: "production", optional: false },
243
276
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@helyx/cli",
3
- "version": "0.1.4",
3
+ "version": "0.2.1",
4
4
  "description": "Command-line tools for running and generating self-hosted Helyx deployments.",
5
5
  "keywords": [
6
6
  "helyx",
@@ -52,9 +52,9 @@
52
52
  "build": "tsc -b"
53
53
  },
54
54
  "dependencies": {
55
- "@helyx/bot": "0.1.3",
56
- "@helyx/config": "0.1.2",
57
- "@helyx/database": "0.1.1",
55
+ "@helyx/bot": "0.2.0",
56
+ "@helyx/config": "0.2.0",
57
+ "@helyx/database": "0.2.0",
58
58
  "semver": "7.8.5",
59
59
  "zod": "4.4.3"
60
60
  },
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "catalogueVersion": 8,
3
+ "catalogueVersion": 9,
4
4
  "core": {
5
5
  "package": "@helyx/bot",
6
- "version": "0.1.3",
6
+ "version": "0.2.0",
7
7
  "availability": "published"
8
8
  },
9
9
  "generator": {
10
10
  "package": "@helyx/cli",
11
- "version": "0.1.4",
11
+ "version": "0.2.1",
12
12
  "command": "helyx",
13
13
  "availability": "published"
14
14
  },
@@ -16,7 +16,7 @@
16
16
  {
17
17
  "id": "helyx.feedback",
18
18
  "package": "@helyx/module-feedback",
19
- "version": "1.0.3",
19
+ "version": "1.0.4",
20
20
  "name": "Feedback",
21
21
  "description": "Collect structured member feedback in a channel you choose.",
22
22
  "category": "Community",
@@ -25,7 +25,7 @@
25
25
  {
26
26
  "id": "helyx.welcome",
27
27
  "package": "@helyx/module-welcome",
28
- "version": "1.0.3",
28
+ "version": "1.0.4",
29
29
  "name": "Welcome",
30
30
  "description": "Greet new members and optionally give them a starting role.",
31
31
  "category": "Community",
@@ -34,7 +34,7 @@
34
34
  {
35
35
  "id": "helyx.suggestions",
36
36
  "package": "@helyx/module-suggestions",
37
- "version": "1.0.3",
37
+ "version": "1.0.4",
38
38
  "name": "Suggestions",
39
39
  "description": "Collect community ideas with reaction or button voting.",
40
40
  "category": "Community",
@@ -92,7 +92,9 @@
92
92
  "name": "Verification",
93
93
  "description": "Add a deliberate member verification step.",
94
94
  "category": "Safety",
95
- "availability": "planned"
95
+ "availability": "planned",
96
+ "releaseStatus": "testing",
97
+ "tier": "premium"
96
98
  },
97
99
  {
98
100
  "id": "helyx.antiraid",
@@ -214,7 +216,7 @@
214
216
  {
215
217
  "id": "helyx.logging",
216
218
  "package": "@helyx/module-logging",
217
- "version": "1.0.3",
219
+ "version": "1.0.4",
218
220
  "name": "Logging",
219
221
  "description": "Post selected Helyx module activity to one server channel.",
220
222
  "category": "Insights",
@@ -21,6 +21,17 @@ HELYX_MODULE_CATALOGUE_PATH=./helyx.modules.json
21
21
  # HELYX_BOT_CONTROL_SECRET=replace-with-a-base64-encoded-32-byte-key
22
22
  # HELYX_BOT_CONTROL_PORT=3001
23
23
 
24
+ # Optional Helyx Cloud Connect. It remains fully disabled unless set to true.
25
+ HELYX_CLOUD_CONNECT_ENABLED=false
26
+ # HELYX_CLOUD_ENROLMENT_TOKEN=replace-with-a-short-lived-enrolment-code
27
+ # HELYX_CLOUD_ENROLMENT_FILE=./helyx.cloud-enrolment.json
28
+ # HELYX_DATA_ENCRYPTION_KEY=replace-with-a-base64-encoded-32-byte-key
29
+ # HELYX_CLOUD_API_URL=https://api.helyx.gg
30
+ # HELYX_CLOUD_ENDPOINT=wss://connect.helyx.gg/v1/connect
31
+ # HELYX_OWNER_USER_IDS=12345678901234567
32
+ # HELYX_CLOUD_AUDIT_RETENTION_DAYS=90
33
+ # HELYX_CLOUD_CREDENTIAL_AUDIT_RETENTION_DAYS=365
34
+
24
35
  LOG_LEVEL=info
25
36
  NODE_ENV=production
26
37
 
@@ -1,3 +1,4 @@
1
1
  .env
2
+ helyx.cloud-enrolment.json
2
3
  node_modules/
3
4
  npm-debug.log*