everything-dev
Version:
A consolidated product package for building Module Federation apps with oRPC APIs.
457 lines • 16.3 kB
text/typescript
//#region src/contract.meta.d.ts
type CliCommandMeta = {
commandPath?: string[];
summary: string;
description?: string;
examples?: string[];
interactive?: boolean;
longRunning?: boolean;
fields?: Record<string, {
positional?: boolean;
description?: string;
}>;
};
declare const cliCommandMeta: {
readonly dev: {
readonly commandPath: ["dev"];
readonly summary: "Start a development session";
readonly interactive: true;
readonly longRunning: true;
readonly fields: {
readonly remotePlugins: {
readonly description: "Comma-separated plugin IDs to force remote (e.g. --remote-plugins auth,registry)";
};
readonly logLevel: {
readonly description: "Log tail level: error, warn (default), info, or debug (overrides BOS_LOG_LEVEL; the file always gets everything)";
};
};
};
readonly start: {
readonly commandPath: ["start"];
readonly summary: "Start the production host";
readonly interactive: false;
readonly longRunning: true;
readonly fields: {
readonly env: {
readonly description: "Environment: production or staging";
};
readonly registry: {
readonly description: "Override FastKV registry contract account (defaults: dev.everything.near / dev.allthethings.testnet)";
};
readonly configPath: {
readonly description: "Boot from a local bos config file — skips FastKV resolution and SRI integrity verification";
};
};
};
readonly build: {
readonly commandPath: ["build"];
readonly summary: "Build selected workspaces";
readonly interactive: false;
readonly fields: {
readonly packages: {
readonly positional: true;
readonly description: "Comma-separated package list";
};
};
};
readonly config: {
readonly commandPath: ["config"];
readonly summary: "Print the loaded BOS configuration";
readonly interactive: false;
readonly fields: {
readonly full: {
readonly description: "Print the fully resolved configuration";
};
};
};
readonly registryUse: {
readonly commandPath: ["registry", "use"];
readonly summary: "Compose app.ui/app.host/app.api/plugins.<key> sections from a published runtime into bos.config.json";
readonly interactive: false;
readonly fields: {
readonly from: {
readonly positional: true;
readonly description: "Published runtime (account/gateway or bos:// URL), e.g. v1.citynode.near/citynode.app";
};
readonly sections: {
readonly description: "Comma-separated sections to compose, e.g. app.ui,plugins.apps";
};
readonly dryRun: {
readonly description: "Preview the merged config without writing";
};
};
};
readonly pluginAdd: {
readonly commandPath: ["plugin", "add"];
readonly summary: "Add a plugin attachment";
readonly interactive: false;
readonly fields: {
readonly source: {
readonly positional: true;
readonly description: "Plugin source (local:path, bos://account/domain, or URL)";
};
readonly as: {
readonly description: "Plugin alias";
};
readonly production: {
readonly description: "Production URL override";
};
};
};
readonly pluginRemove: {
readonly commandPath: ["plugin", "remove"];
readonly summary: "Remove a plugin attachment";
readonly interactive: false;
readonly fields: {
readonly key: {
readonly positional: true;
readonly description: "Plugin key";
};
};
};
readonly pluginList: {
readonly commandPath: ["plugin", "list"];
readonly summary: "List configured plugins";
readonly interactive: false;
};
readonly pluginPublish: {
readonly commandPath: ["plugin", "publish"];
readonly summary: "Publish a single plugin";
readonly interactive: false;
readonly fields: {
readonly key: {
readonly positional: true;
readonly description: "Plugin key";
};
};
};
readonly publish: {
readonly commandPath: ["publish"];
readonly summary: "Publish the current workspace configuration (no build — use bos deploy for the full train)";
readonly interactive: false;
readonly fields: {
readonly dryRun: {
readonly description: "Preview what would be published without writing";
};
readonly verbose: {
readonly description: "Show full build output instead of clean summary";
};
readonly env: {
readonly description: "Environment: production or staging";
};
readonly network: {
readonly description: "NEAR network: mainnet or testnet";
};
readonly wallet: {
readonly description: "Publish gaslessly with a one-time wallet approval (NEP-366 delegate action relayed by the platform relayer)";
};
readonly registry: {
readonly description: "Override FastKV registry contract account (defaults: dev.everything.near / dev.allthethings.testnet)";
};
};
};
readonly rollback: {
readonly commandPath: ["rollback"];
readonly summary: "Republish an earlier config snapshot from the registry publish history";
readonly interactive: true;
readonly fields: {
readonly version: {
readonly description: "Block height (or timestamp) of the snapshot from the listing";
};
readonly previous: {
readonly description: "Roll back to the write immediately before the current one";
};
readonly force: {
readonly description: "Allow pre-Phase-A snapshots without verifiable manifest pins (their bytes were overwritten in place)";
};
readonly limit: {
readonly description: "Listing depth (1-200, default 20)";
};
readonly dryRun: {
readonly description: "Preview the rollback without publishing";
};
readonly env: {
readonly description: "Environment: production or staging";
};
readonly network: {
readonly description: "NEAR network: mainnet or testnet";
};
readonly wallet: {
readonly description: "Publish gaslessly with a one-time wallet approval (NEP-366 delegate action relayed by the platform relayer)";
};
readonly registry: {
readonly description: "Override FastKV registry contract account (defaults: dev.everything.near / dev.allthethings.testnet)";
};
};
};
readonly deploy: {
readonly commandPath: ["deploy"];
readonly summary: "Deploy train: preflight → build → upload bundles → publish config → runtime image (pre-pushed digest or local docker build) → Railway (pull-only)";
readonly interactive: false;
readonly fields: {
readonly env: {
readonly description: "Environment: production or staging";
};
readonly build: {
readonly description: "Build and deploy workspaces before publish (default: true)";
};
readonly dryRun: {
readonly description: "Preview what would be deployed without writing";
};
readonly verbose: {
readonly description: "Show full build output instead of clean summary";
};
readonly service: {
readonly description: "Override Railway service name from config";
};
readonly imageDigest: {
readonly description: "Digest of a pre-pushed runtime image (sha256:…) — skips the local image build/push; Railway pins this digest";
};
readonly registry: {
readonly description: "Override FastKV registry contract account (defaults: dev.everything.near / dev.allthethings.testnet)";
};
};
};
readonly login: {
readonly commandPath: ["login"];
readonly summary: "Sign in with your NEAR account via the hosted site (wallet, passkey, or social login)";
readonly interactive: true;
readonly fields: {
readonly key: {
readonly description: "Also mint and export a scoped publish key for headless/CI use";
};
readonly site: {
readonly description: "Override site URL hosting the CLI login page";
};
readonly device: {
readonly description: "Device label recorded on the credential (default: hostname)";
};
readonly expiresIn: {
readonly description: "Session lifetime in seconds (default: 90 days)";
};
readonly env: {
readonly description: "Environment: production (default) or staging";
};
};
};
readonly logout: {
readonly commandPath: ["logout"];
readonly summary: "Revoke the stored CLI session and delete the exported publish key";
readonly interactive: false;
};
readonly keyPublish: {
readonly commandPath: ["key", "generate"];
readonly summary: "Generate a publish access key";
readonly interactive: true;
readonly fields: {
readonly env: {
readonly description: "Environment: production or staging";
};
readonly allowance: {
readonly description: "NEAR allowance for the key (default: 1NEAR, min: 0.3NEAR)";
};
readonly removeOldKeys: {
readonly description: "Remove existing publish key(s) without prompting (default: ask on a TTY, yes when non-interactive)";
};
readonly registry: {
readonly description: "Override FastKV registry contract account (defaults: dev.everything.near / dev.allthethings.testnet)";
};
};
};
readonly init: {
readonly commandPath: ["init"];
readonly summary: "Scaffold a new project by extending a deployed app or template";
readonly interactive: true;
readonly fields: {
readonly domain: {
readonly positional: true;
readonly description: "New project domain (e.g. myapp.everything.dev)";
};
readonly extends: {
readonly description: "Parent to extend from (e.g. bos://account/gateway or account/gateway)";
};
readonly account: {
readonly description: "New project NEAR account (auto-derived from extends)";
};
readonly directory: {
readonly description: "Target directory (auto-derived from domain)";
};
readonly source: {
readonly description: "Local source dir (skips GitHub download)";
};
readonly plugins: {
readonly description: "Comma-separated plugin keys to include (requires --overrides=plugins)";
};
readonly overrides: {
readonly description: "Comma-separated sections to customize locally: ui,api,host,plugins";
};
readonly level: {
readonly description: "Starter complexity: simple (public shell) or advanced (adds dashboard, orgs, admin)";
};
readonly noInteractive: {
readonly description: "Skip prompts, use flags only";
};
readonly noInstall: {
readonly description: "Skip pnpm install";
};
};
};
readonly sync: {
readonly commandPath: ["sync"];
readonly summary: "Sync template files from parent project";
readonly interactive: false;
readonly fields: {
readonly dryRun: {
readonly description: "Preview changes without writing files";
};
readonly noInstall: {
readonly description: "Skip pnpm install";
};
};
};
readonly upgrade: {
readonly commandPath: ["upgrade"];
readonly summary: "Upgrade framework packages and sync template files";
readonly interactive: true;
readonly fields: {
readonly dryRun: {
readonly description: "Preview changes without writing";
};
readonly noInstall: {
readonly description: "Skip pnpm install";
};
readonly noSync: {
readonly description: "Only upgrade packages, skip template sync";
};
};
};
readonly typesGen: {
readonly commandPath: ["types", "gen"];
readonly summary: "Generate type definitions from configured API and plugin contracts";
readonly interactive: false;
readonly fields: {
readonly env: {
readonly description: "Environment: development (default) or production";
};
readonly dryRun: {
readonly description: "Preview what would be fetched without writing files";
};
readonly remotePlugins: {
readonly description: "Comma-separated plugin IDs to fetch contract types remotely (e.g. --remote-plugins auth,registry)";
};
};
};
readonly typecheck: {
readonly commandPath: ["typecheck"];
readonly summary: "Run TypeScript type checking across all local workspaces";
readonly interactive: false;
readonly fields: {
readonly packages: {
readonly positional: true;
readonly description: "Comma-separated workspace list (default: all)";
};
};
};
readonly mfCheck: {
readonly commandPath: ["mf", "check"];
readonly summary: "Verify Module Federation runtime compatibility across published host + plugin bundles";
readonly interactive: false;
};
readonly dbStudio: {
readonly commandPath: ["db", "studio"];
readonly summary: "Open Drizzle Studio for a plugin's database";
readonly fields: {
readonly plugin: {
readonly positional: true;
readonly description: "Plugin key: api, auth, or a plugin name (default: api)";
};
};
};
readonly dbDoctor: {
readonly commandPath: ["db", "doctor"];
readonly summary: "Diagnose migration health for a plugin's database";
readonly fields: {
readonly plugin: {
readonly positional: true;
readonly description: "Plugin key: api, auth, or a plugin name";
};
};
};
readonly dbRepair: {
readonly commandPath: ["db", "repair"];
readonly summary: "Reset migration history and reapply migrations for a plugin";
readonly fields: {
readonly plugin: {
readonly positional: true;
readonly description: "Plugin key: api, auth, or a plugin name";
};
readonly mode: {
readonly description: "Repair mode: history-reset (default) or recreate (not yet supported)";
};
readonly yes: {
readonly description: "Skip confirmation prompt";
};
};
};
readonly status: {
readonly commandPath: ["status"];
readonly summary: "Show project health, versions, and update availability";
readonly interactive: false;
};
readonly ps: {
readonly commandPath: ["ps"];
readonly summary: "List tracked development processes";
readonly interactive: false;
};
readonly logs: {
readonly commandPath: ["logs"];
readonly summary: "Read dev session logs (.bos/logs/dev-latest.log)";
readonly interactive: false;
readonly fields: {
readonly service: {
readonly description: "Filter by service name (e.g. host, api, auth, ui, plugin:votes)";
};
readonly tail: {
readonly description: "Show only the last N lines";
};
readonly follow: {
readonly description: "Stream the log as lines are appended";
};
};
};
readonly kill: {
readonly commandPath: ["kill"];
readonly summary: "Stop tracked development processes";
readonly interactive: false;
readonly fields: {
readonly configDir: {
readonly description: "Kill processes owned by a config directory (defaults to cwd)";
};
readonly signal: {
readonly description: "Signal: SIGTERM (default) or SIGKILL";
};
readonly all: {
readonly description: "Kill processes across all config directories";
};
};
};
readonly infraExport: {
readonly commandPath: ["infra", "export"];
readonly summary: "Emit the resolved CI infra plan (env + services) for the current runtime";
readonly interactive: false;
readonly fields: {
readonly target: {
readonly description: "Export target: ci (default) or local";
};
readonly network: {
readonly description: "NEAR network: mainnet or testnet";
};
readonly configDir: {
readonly description: "Override config directory";
};
};
};
};
//#endregion
export { CliCommandMeta, cliCommandMeta };
//# sourceMappingURL=contract.meta.d.mts.map