@remixmate/cli 0.9.67 → 0.9.68

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/dist/cli.js CHANGED
@@ -16,7 +16,7 @@ import { parseArgv } from './argv.js';
16
16
  import { runSkill } from './runner.js';
17
17
  import { runAuthCommand } from './auth/commands.js';
18
18
  import { HOST_VERB, PROJECT_VERB, runHostCommand, runProjectCommand } from './project/commands.js';
19
- import { INSTALL_VERB, UNINSTALL_VERB, runInstall, runUninstall, skillInstallHint } from './install.js';
19
+ import { INSTALL_VERB, UNINSTALL_VERB, runInstall, runUninstall, skillInstallHint, packageVersion } from './install.js';
20
20
  import { runExec } from './exec.js';
21
21
  import { authStatusLine, runDoctor } from './doctor.js';
22
22
  import { padDisplay } from './text.js';
@@ -74,6 +74,7 @@ function printUsage() {
74
74
  process.stdout.write(' remixmate template upgrade Update the project\'s local check rules (no login)\n');
75
75
  process.stdout.write(' remixmate <name> [--flag value ...] Invoke a skill\n');
76
76
  process.stdout.write(' remixmate <name> --help Show skill-specific help\n');
77
+ process.stdout.write(' remixmate --version Print the CLI version\n');
77
78
  process.stdout.write('\nAvailable skills:\n');
78
79
  for (const s of skills) {
79
80
  const summary = s.description.split('\n')[0].slice(0, 60);
@@ -132,6 +133,11 @@ async function printAuthFooter() {
132
133
  }
133
134
  async function main() {
134
135
  const argv = process.argv.slice(2);
136
+ // 只认首位参数:`remixmate <skill> --version` 之类仍原样交给 skill。
137
+ if (argv[0] === '--version' || argv[0] === '-v' || argv[0] === '-V' || argv[0] === 'version') {
138
+ process.stdout.write(`${packageVersion()}\n`);
139
+ process.exit(EXIT.OK);
140
+ }
135
141
  if (argv.length === 0 || argv[0] === '--help' || argv[0] === '-h') {
136
142
  printUsage();
137
143
  await printAuthFooter();
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "version": "0.9.67",
4
- "generatedAt": "2026-10-05T10:57:59.113Z",
3
+ "version": "0.9.68",
4
+ "generatedAt": "2026-10-05T12:22:45.024Z",
5
5
  "skills": [
6
6
  {
7
7
  "id": "doc-parse",
@@ -98,14 +98,14 @@ export async function runInit(opts) {
98
98
  }
99
99
  }
100
100
  function printNextSteps(out, dir, installed) {
101
- // 相对路径要往上爬两层以上时(init 到了 /tmp 之类),直接给绝对路径更好读。
102
- const relRaw = path.relative(process.cwd(), dir) || '.';
103
- const rel = relRaw.startsWith(`..${path.sep}..`) ? dir : relRaw;
101
+ // 一律给绝对路径:agent 会话的 cwd 往往和用户终端不同,相对路径(尤其 ../../..)既难读又容易 cd 错。
102
+ // 含空格等字符时加引号,保证可以原样复制执行。
103
+ const cdTarget = /^[\w@%+=:,./\\~-]+$/.test(dir) ? dir : `"${dir}"`;
104
104
  out.info('');
105
105
  out.info(`✅ 模板工程已创建: ${dir}`);
106
106
  out.info('');
107
107
  out.info('下一步:');
108
- out.info(` cd ${rel}`);
108
+ out.info(` cd ${cdTarget}`);
109
109
  if (!installed)
110
110
  out.info(' npm install');
111
111
  out.info(' npm run dev # 打开 Remotion Studio 本地预览');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remixmate/cli",
3
- "version": "0.9.67",
3
+ "version": "0.9.68",
4
4
  "description": "AI media generation skills for Claude Code / Codex — 12 skills covering image, video, voice, digital human, web screenshot, web recording, script, template registry, rendering, Jianying export, and video deconstruction.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",