@rebasepro/cli 0.13.0 → 0.13.1-canary.gcd6689e

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/index.es.js CHANGED
@@ -1789,7 +1789,7 @@ async function createProject$1(options) {
1789
1789
  console.log(` ${chalk.cyan(runDev.join(" "))}`);
1790
1790
  }
1791
1791
  console.log("");
1792
- console.log(isBaas ? chalk.gray("This starts a headless API (Hono + PostgreSQL). There are no collection files: ") + chalk.gray("the API is derived from your database schema. Once it serves a table, docs are at /api/swagger.") : chalk.gray("This starts both the backend (Hono + PostgreSQL)") + chalk.gray(" and the frontend (Vite + React) concurrently."));
1792
+ console.log(isBaas ? introspected ? chalk.gray("This starts a headless API (Hono + PostgreSQL) over the collections just ") + chalk.gray("generated from your database in config/collections. Edit them to change what the ") + chalk.gray("API exposes; docs are at /api/swagger.") : chalk.gray("This starts a headless API (Hono + PostgreSQL). There are no collection files: ") + chalk.gray("the API is derived from your database schema. Once it serves a table, docs are at /api/swagger.") : chalk.gray("This starts both the backend (Hono + PostgreSQL)") + chalk.gray(" and the frontend (Vite + React) concurrently."));
1793
1793
  console.log("");
1794
1794
  console.log(chalk.gray("Docs: https://rebase.pro/docs"));
1795
1795
  console.log(chalk.gray("GitHub: https://github.com/rebasepro/rebase"));
@@ -3345,6 +3345,20 @@ async function devCommand(rawArgs) {
3345
3345
  } catch {}
3346
3346
  /** Whether the frontend has been launched (we only launch it once). */
3347
3347
  let frontendLaunched = false;
3348
+ try {
3349
+ const activePlugin = getActiveBackendPlugin(backendDir);
3350
+ const pluginCli = activePlugin ? resolvePluginCliScript(backendDir, activePlugin) : null;
3351
+ if (pluginCli) await execa(tsxBin, [
3352
+ pluginCli,
3353
+ "schema",
3354
+ "stale",
3355
+ "--fix"
3356
+ ], {
3357
+ cwd: backendDir,
3358
+ stdio: "inherit",
3359
+ env
3360
+ });
3361
+ } catch {}
3348
3362
  if (shouldGenerate) {
3349
3363
  console.log(chalk.gray(" → Ensuring schema and SDK are generated on start..."));
3350
3364
  try {
@@ -5663,7 +5677,8 @@ async function skillsCommand(subcommand, rawArgs) {
5663
5677
  }
5664
5678
  /**
5665
5679
  * Agents named explicitly on the command line, e.g. `--agent claude --agent cursor`
5666
- * (also accepts a comma-separated list). Returns null when none were given.
5680
+ * (also accepts a comma-separated list, and `all`). Returns null when none were
5681
+ * given.
5667
5682
  */
5668
5683
  function parseAgentFlags(rawArgs) {
5669
5684
  const requested = [];
@@ -5673,6 +5688,7 @@ function parseAgentFlags(rawArgs) {
5673
5688
  if (value && !value.startsWith("-")) requested.push(...value.split(",").map((v) => v.trim()).filter(Boolean));
5674
5689
  }
5675
5690
  if (requested.length === 0) return null;
5691
+ if (requested.includes("all")) return Object.keys(AGENTS);
5676
5692
  const valid = Object.keys(AGENTS);
5677
5693
  const unknown = requested.filter((a) => !valid.includes(a));
5678
5694
  if (unknown.length > 0) {
@@ -5700,6 +5716,7 @@ async function skillsInstall(rawArgs = []) {
5700
5716
  if (!process.stdin.isTTY) {
5701
5717
  console.error(chalk.red("Cannot prompt: this is a non-interactive terminal (no TTY)."));
5702
5718
  console.error(chalk.yellow(` Name the agents explicitly, e.g. rebase skills install --agent ${Object.keys(AGENTS)[0]}`));
5719
+ console.error(chalk.yellow(" Or install for every supported agent: rebase skills install --agent all"));
5703
5720
  console.error(chalk.gray(` Available: ${Object.keys(AGENTS).join(", ")}`));
5704
5721
  process.exit(1);
5705
5722
  }
@@ -5747,13 +5764,16 @@ ${chalk.green.bold("Subcommands")}
5747
5764
 
5748
5765
  ${chalk.green.bold("Options")}
5749
5766
  ${chalk.blue("--agent, -a")} Agent(s) to install for, skipping detection and the prompt.
5750
- Repeat the flag or pass a comma-separated list.
5751
- Available: ${Object.keys(AGENTS).join(", ")}
5767
+ Repeat the flag or pass a comma-separated list, or ${chalk.bold("all")}.
5768
+ Required without a TTY: a scaffolded project carries a marker
5769
+ file for every agent, so detection cannot pick one for you.
5770
+ Available: ${Object.keys(AGENTS).join(", ")}, all
5752
5771
 
5753
5772
  ${chalk.green.bold("Examples")}
5754
5773
  ${chalk.cyan("rebase skills install")}
5755
5774
  ${chalk.cyan("rebase skills install --agent claude")}
5756
5775
  ${chalk.cyan("rebase skills install --agent claude,cursor")}
5776
+ ${chalk.cyan("rebase skills install --agent all")} ${chalk.gray("# scripted / CI")}
5757
5777
  `);
5758
5778
  }
5759
5779
  //#endregion