UNPKG

@reliverse/rse

Version:

@reliverse/rse is your all-in-one companion for bootstrapping and improving any kind of projects (especially web apps built with frameworks like Next.js) — whether you're kicking off something new or upgrading an existing app. It is also a little AI-power

56 lines (55 loc) 1.55 kB
import { getOrCreateRseConfig } from "@reliverse/cfg"; import { relinka } from "@reliverse/relinka"; import { defineCommand } from "@reliverse/rempts"; import { showManualBuilderMenu } from "../init/impl/init-impl.js"; import { getOrCreateReliverseMemory } from "../../libs/sdk/utils/reliverseMemory.js"; import { getCurrentWorkingDirectory } from "../../libs/sdk/utils/terminalHelpers.js"; export default defineCommand({ meta: { name: "add", description: "Create, customize, and integrate new or existing projects with rses" }, args: { dev: { type: "boolean", description: "Run the CLI in dev mode" }, generate: { type: "string", description: "Generate a new project" }, agent: { type: "string", description: "Select a rse" }, target: { type: "string", description: "Path to the file or directory (skips Relinter's prompt)" } }, subCommands: { rule: () => import("../../libs/sdk/add/add-rule/add-rule-mod.js").then((r) => r.default) }, run: async ({ args }) => { const isDev = args.dev; if (isDev) { relinka("verbose", "Using dev mode"); } const cwd = getCurrentWorkingDirectory(); const { config } = await getOrCreateRseConfig({ projectPath: cwd, isDev, overrides: {} }); const memory = await getOrCreateReliverseMemory(); await showManualBuilderMenu({ cwd, isDev, config, memory, projectName: "", skipPrompts: false }); process.exit(0); } });