Files
OmniRoute/bin/cli/commands/registry.mjs
Diego Rodrigues de Sa e Souza 3e6be47012 feat(cli): Claude Code launcher + setup commands (remote mode + profiles) (#4274)
Brings Claude Code to parity with the Codex CLI integration.

- `omniroute launch` is now remote-aware: --remote <url>, --profile <name>,
  --api-key. Resolves base URL + auth from the active context (so
  `omniroute connect <vps>` then `omniroute launch` just works), accepts a bare
  port OR a full base URL, health-checks the (possibly remote) server, and sets
  CLAUDE_CONFIG_DIR for the chosen profile.
- `omniroute setup-claude` (new): fetches the live /v1/models catalog and writes
  ~/.claude/profiles/<name>/settings.json per model. Claude Code has no native
  profile files, so CLAUDE_CONFIG_DIR is the idiomatic mechanism. Reuses the SAME
  profile names as setup-codex (glm52, kimi-k27, …) via the shared categoriseModel
  (now exported). The auth token is NEVER written to disk — launch injects it.
- Docs: docs/guides/CLAUDE-CODE-CONFIGURATION.md + README index. i18n (en + pt-BR).
- Tests: setup-claude profile generation (incl. "no token on disk"), buildClaudeEnv
  (port + URL + CLAUDE_CONFIG_DIR), resolveLaunchTarget.

check:cli-i18n + check-docs-sync green; 13 unit tests pass.
2026-06-19 10:27:24 -03:00

137 lines
5.0 KiB
JavaScript

import { registerMemory } from "./memory.mjs";
import { registerSkills } from "./skills.mjs";
import { registerAudit } from "./audit.mjs";
import { registerOAuth } from "./oauth.mjs";
import { registerCloud } from "./cloud.mjs";
import { registerEval } from "./eval.mjs";
import { registerWebhooks } from "./webhooks.mjs";
import { registerPolicy } from "./policy.mjs";
import { registerCompression } from "./compression.mjs";
import { registerFiles } from "./files.mjs";
import { registerBatches } from "./batches.mjs";
import { registerTranslator } from "./translator.mjs";
import { registerPricing } from "./pricing.mjs";
import { registerResilience } from "./resilience.mjs";
import { registerNodes } from "./nodes.mjs";
import { registerSync } from "./sync.mjs";
import { registerContextEng } from "./context-eng.mjs";
import { registerSessions } from "./sessions.mjs";
import { registerTags } from "./tags.mjs";
import { registerOpenapi } from "./openapi.mjs";
import { registerOneProxy } from "./oneproxy.mjs";
import { registerTelemetry } from "./telemetry.mjs";
import { registerOpen } from "./open.mjs";
import { registerChat } from "./chat.mjs";
import { registerStream } from "./stream.mjs";
import { registerSimulate } from "./simulate.mjs";
import { registerCost } from "./cost.mjs";
import { registerUsage } from "./usage.mjs";
import { registerServe } from "./serve.mjs";
import { registerStop } from "./stop.mjs";
import { registerRestart } from "./restart.mjs";
import { registerDashboard } from "./dashboard.mjs";
import { registerDoctor } from "./doctor.mjs";
import { registerSetup } from "./setup.mjs";
import { registerProviders } from "./providers.mjs";
import { registerProvider } from "./provider-cmd.mjs";
import { registerConfig } from "./config.mjs";
import { registerKeys } from "./keys.mjs";
import { registerModels } from "./models.mjs";
import { registerCombo } from "./combo.mjs";
import { registerStatus } from "./status.mjs";
import { registerLogs } from "./logs.mjs";
import { registerUpdate } from "./update.mjs";
import { registerBackup, registerRestore } from "./backup.mjs";
import { registerHealth } from "./health.mjs";
import { registerQuota } from "./quota.mjs";
import { registerCache } from "./cache.mjs";
import { registerMcp } from "./mcp.mjs";
import { registerA2a } from "./a2a.mjs";
import { registerTunnel } from "./tunnel.mjs";
import { registerEnv } from "./env.mjs";
import { registerTestProvider } from "./test-provider.mjs";
import { registerCompletion } from "./completion.mjs";
import { registerRuntime } from "./runtime.mjs";
import { registerTray } from "./tray.mjs";
import { registerAutostart } from "./autostart.mjs";
import { registerRepl } from "./repl.mjs";
import { registerLaunch } from "./launch.mjs";
import { registerLaunchCodex } from "./launch-codex.mjs";
import { registerSetupCodex } from "./setup-codex.mjs";
import { registerSetupClaude } from "./setup-claude.mjs";
import { registerConnect } from "./connect.mjs";
import { registerTokens } from "./tokens.mjs";
import { registerConfigure } from "./configure.mjs";
import { registerApiCommands } from "../api-commands/registry.mjs";
import { registerPlugin } from "./plugin.mjs";
export function registerCommands(program) {
registerMemory(program);
registerSkills(program);
registerAudit(program);
registerOAuth(program);
registerCloud(program);
registerEval(program);
registerWebhooks(program);
registerPolicy(program);
registerCompression(program);
registerFiles(program);
registerBatches(program);
registerTranslator(program);
registerPricing(program);
registerResilience(program);
registerNodes(program);
registerSync(program);
registerContextEng(program);
registerSessions(program);
registerTags(program);
registerOpenapi(program);
registerOneProxy(program);
registerTelemetry(program);
registerOpen(program);
registerChat(program);
registerStream(program);
registerSimulate(program);
registerCost(program);
registerUsage(program);
registerServe(program);
registerStop(program);
registerRestart(program);
registerDashboard(program);
registerDoctor(program);
registerSetup(program);
registerProviders(program);
registerProvider(program);
registerConfig(program);
registerKeys(program);
registerModels(program);
registerCombo(program);
registerStatus(program);
registerLogs(program);
registerUpdate(program);
registerBackup(program);
registerRestore(program);
registerHealth(program);
registerQuota(program);
registerCache(program);
registerMcp(program);
registerA2a(program);
registerTunnel(program);
registerEnv(program);
registerTestProvider(program);
registerCompletion(program);
registerRuntime(program);
registerTray(program);
registerAutostart(program);
registerRepl(program);
registerLaunch(program);
registerLaunchCodex(program);
registerSetupCodex(program);
registerSetupClaude(program);
registerConnect(program);
registerTokens(program);
registerConfigure(program);
registerApiCommands(program);
registerPlugin(program);
}