@genex-ai/cli-demo 1.31.2 → 1.32.0-dev.650

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 (47) hide show
  1. package/README.md +18 -0
  2. package/dist/blender-mcp-Q6PSFYSE.js +241 -0
  3. package/dist/blender-serve-BF4FZ55Z.js +244 -0
  4. package/dist/chunk-2COG4P3T.js +968 -0
  5. package/dist/chunk-HYCSNWYX.js +126 -0
  6. package/dist/index.js +4759 -2830
  7. package/package.json +3 -3
  8. package/templates/blender-service/demo/castle.py +117 -0
  9. package/templates/blender-service/gpu_witness.py +245 -0
  10. package/templates/blender-service/ops.py +225 -0
  11. package/templates/blender-service/pool.py +910 -0
  12. package/templates/blender-service/server.py +611 -0
  13. package/templates/blender-service/supervisor.py +221 -0
  14. package/templates/blender-service/views.py +281 -0
  15. package/templates/controllers/character/follow-camera.ts +16 -1
  16. package/templates/controllers/character/meshy/meshy-loader.ts +3 -2
  17. package/templates/controllers/quality/deadline.ts +117 -0
  18. package/templates/controllers/quality/pick-asset.ts +49 -16
  19. package/templates/controllers/shared/physics-world.ts +6 -4
  20. package/templates/skills/genex-ai-character/SKILL.md +77 -15
  21. package/templates/skills/genex-ai-menu/SKILL.md +15 -11
  22. package/templates/skills/genex-ai-model/SKILL.md +45 -7
  23. package/templates/skills/genex-ai-texture/SKILL.md +1 -1
  24. package/templates/skills/genex-ai-video/SKILL.md +75 -17
  25. package/templates/skills/genex-blender-scene/SKILL.md +243 -0
  26. package/templates/skills/genex-game-director/SKILL.md +112 -46
  27. package/templates/skills/genex-game-director/references/design-contract.md +13 -5
  28. package/templates/skills/genex-game-director/references/routing-map.md +30 -45
  29. package/templates/skills/genex-getting-started/SKILL.md +2 -2
  30. package/templates/skills/genex-lane-card/SKILL.md +78 -0
  31. package/templates/skills/genex-monetization/SKILL.md +11 -17
  32. package/templates/skills/genex-threejs-adaptive-quality/SKILL.md +21 -0
  33. package/templates/skills/genex-threejs-character-controller/SKILL.md +17 -5
  34. package/templates/skills/genex-threejs-creatures/SKILL.md +8 -1
  35. package/templates/skills/genex-threejs-embed-auth/SKILL.md +12 -8
  36. package/templates/skills/genex-threejs-game-ui/SKILL.md +55 -6
  37. package/templates/skills/genex-threejs-procedural-assets/SKILL.md +17 -10
  38. package/templates/skills/genex-threejs-visual-validation/SKILL.md +12 -2
  39. package/templates/skills/genex-tool-audio/SKILL.md +3 -2
  40. package/templates/skills/genex-tool-character/SKILL.md +36 -5
  41. package/templates/skills/genex-tool-image/SKILL.md +4 -2
  42. package/templates/skills/genex-tool-model/SKILL.md +32 -6
  43. package/templates/skills/genex-tool-publish/SKILL.md +100 -0
  44. package/templates/skills/genex-tool-texture/SKILL.md +1 -1
  45. package/templates/skills/genex-tool-video/SKILL.md +28 -5
  46. package/templates/skills/genex-tool-workflow/SKILL.md +4 -1
  47. package/templates/skills/genex-updates/SKILL.md +1 -1
@@ -0,0 +1,126 @@
1
+ // src/config.ts
2
+ import fs from "fs";
3
+ import os from "os";
4
+ import path from "path";
5
+ import { fileURLToPath } from "url";
6
+ var RAW_CHANNEL = "dev";
7
+ var CLI_CHANNEL = RAW_CHANNEL === "dev" ? "dev" : "latest";
8
+ var STANDS = {
9
+ prod: { api: "https://api.genex.games", dashboard: "https://genex.games" },
10
+ dev: { api: "https://api-dev.genex.games", dashboard: "https://dev.genex.games" }
11
+ };
12
+ var DEFAULT_AUTH_URL = CLI_CHANNEL === "dev" ? STANDS.dev.dashboard : STANDS.prod.dashboard;
13
+ var DEFAULT_API_URL = CLI_CHANNEL === "dev" ? STANDS.dev.api : STANDS.prod.api;
14
+ var DEFAULT_ANIMS_BASE = "https://cdn.genex.technology/anims/ual1/v1/";
15
+ var ANIMS_BASE_ENV = "GENEX_ANIMS_BASE";
16
+ function getAnimsBase(override) {
17
+ const raw = override || process.env[ANIMS_BASE_ENV] || DEFAULT_ANIMS_BASE;
18
+ return raw.replace(/\/+$/, "") + "/";
19
+ }
20
+ function getAnimsCacheDir() {
21
+ return path.join(getGenexDir(), "cache", "anims");
22
+ }
23
+ var ENV_TOKEN_KEY = "GENEX_TOKEN";
24
+ var AUTH_URL_ENV = "GENEX_AUTH_URL";
25
+ var API_URL_ENV = "GENEX_API_URL";
26
+ var ENV_FILE_ENV = "GENEX_ENV_FILE";
27
+ function getAuthUrl(override) {
28
+ const raw = override || process.env[AUTH_URL_ENV] || DEFAULT_AUTH_URL;
29
+ return raw.replace(/\/+$/, "");
30
+ }
31
+ function getApiUrl(override) {
32
+ const raw = override || process.env[API_URL_ENV] || DEFAULT_API_URL;
33
+ return raw.replace(/\/+$/, "");
34
+ }
35
+ function getGenexDir() {
36
+ return path.join(os.homedir(), ".genex");
37
+ }
38
+ function getGenexEnvPath(override) {
39
+ if (override) return path.resolve(override);
40
+ const fromEnv = process.env[ENV_FILE_ENV];
41
+ if (fromEnv) return path.resolve(fromEnv);
42
+ return path.join(getGenexDir(), "env");
43
+ }
44
+ function getTemplatesDir() {
45
+ const here = path.dirname(fileURLToPath(import.meta.url));
46
+ return path.resolve(here, "..", "templates");
47
+ }
48
+ function getCliVersion() {
49
+ try {
50
+ const here = path.dirname(fileURLToPath(import.meta.url));
51
+ const pkg = JSON.parse(
52
+ fs.readFileSync(path.resolve(here, "..", "package.json"), "utf8")
53
+ );
54
+ return pkg.version ?? "0.0.0";
55
+ } catch {
56
+ return "0.0.0";
57
+ }
58
+ }
59
+ var KNOWN_AGENTS = {
60
+ claude: { label: "Claude Code", dirName: ".claude", full: true },
61
+ codex: { label: "Codex", dirName: ".codex", full: false },
62
+ cursor: { label: "Cursor", dirName: ".cursor", full: false }
63
+ };
64
+ var KNOWN_AGENT_IDS = Object.keys(KNOWN_AGENTS);
65
+ function resolveAgentTargets(opts = {}) {
66
+ if (opts.dir) {
67
+ return [{ id: "custom", label: "workspace", baseDir: path.resolve(opts.dir), full: true }];
68
+ }
69
+ const home = os.homedir();
70
+ const projectRoot = process.cwd();
71
+ let ids;
72
+ if (opts.agents && opts.agents.length > 0) {
73
+ ids = opts.agents.filter((id) => KNOWN_AGENTS[id]);
74
+ } else {
75
+ ids = KNOWN_AGENT_IDS.filter((id) => {
76
+ const dirName = KNOWN_AGENTS[id].dirName;
77
+ return isDir(path.join(home, dirName)) || isDir(path.join(projectRoot, dirName));
78
+ });
79
+ if (ids.length === 0) ids = ["claude"];
80
+ }
81
+ return ids.map((id) => {
82
+ const def = KNOWN_AGENTS[id];
83
+ return { id, label: def.label, baseDir: path.join(projectRoot, def.dirName), full: def.full };
84
+ });
85
+ }
86
+ function isDir(p) {
87
+ try {
88
+ return fs.statSync(p).isDirectory();
89
+ } catch {
90
+ return false;
91
+ }
92
+ }
93
+
94
+ // src/utils/colors.ts
95
+ var useColor = Boolean(process.stdout.isTTY) && process.env.NO_COLOR === void 0 && process.env.TERM !== "dumb";
96
+ var ESC = String.fromCharCode(27);
97
+ var code = (open, close) => (s) => useColor ? `${ESC}[${open}m${s}${ESC}[${close}m` : s;
98
+ var c = {
99
+ bold: code(1, 22),
100
+ dim: code(2, 22),
101
+ red: code(31, 39),
102
+ green: code(32, 39),
103
+ yellow: code(33, 39),
104
+ blue: code(34, 39),
105
+ cyan: code(36, 39),
106
+ gray: code(90, 39)
107
+ };
108
+
109
+ export {
110
+ CLI_CHANNEL,
111
+ STANDS,
112
+ DEFAULT_AUTH_URL,
113
+ DEFAULT_API_URL,
114
+ getAnimsBase,
115
+ getAnimsCacheDir,
116
+ ENV_TOKEN_KEY,
117
+ ENV_FILE_ENV,
118
+ getAuthUrl,
119
+ getApiUrl,
120
+ getGenexDir,
121
+ getGenexEnvPath,
122
+ getTemplatesDir,
123
+ getCliVersion,
124
+ resolveAgentTargets,
125
+ c
126
+ };