@miosa/cli 0.2.0 → 1.0.0

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/CHANGELOG.md ADDED
@@ -0,0 +1,35 @@
1
+ # Changelog
2
+
3
+ All notable changes to @miosa/cli will be documented in this file.
4
+
5
+ ## [0.2.1] - 2026-05-21
6
+
7
+ ### Added
8
+ - `miosa logs` — unified log streaming for computers, deployments, sandboxes
9
+ - `miosa env` — environment variable management (list/set/unset/pull)
10
+ - `miosa scale` — instance scaling and resizing
11
+ - `miosa rollback` — deployment rollback
12
+ - `miosa releases` — release management (list/get/promote)
13
+ - `miosa builds` — build history and logs
14
+ - `miosa regions` — list available regions
15
+ - `miosa teams` — team/org management (list/invite/remove/role)
16
+ - `miosa billing` — usage, invoices, plan info
17
+ - `miosa templates` — sandbox template management
18
+ - Storage object operations (upload/download/list/delete/presign)
19
+ - Database backup/restore/logs
20
+
21
+ ## [0.2.0] - 2026-05-18
22
+
23
+ ### Added
24
+ - 90+ commands across desktop, files, sandboxes, deploy, databases, functions, cron, infra
25
+ - Premium commands: up, shell, watch, agent, dev, run, snapshot, tunnel, mcp serve
26
+ - MCP server (`miosa mcp serve`) for Claude Code/Cursor/Windsurf integration
27
+ - `miosa status` dashboard with parallel API calls
28
+ - `miosa doctor` diagnostics
29
+ - `miosa whoami` with cached auth
30
+ - `miosa config` management
31
+
32
+ ## [0.1.0] - 2026-04-19
33
+
34
+ ### Added
35
+ - Initial release with basic computer and host management
@@ -0,0 +1,3 @@
1
+ import type { Command } from "commander";
2
+ export declare function register(program: Command): void;
3
+ //# sourceMappingURL=env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/commands/env.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkDzC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwK/C"}
@@ -0,0 +1,176 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ import chalk from "chalk";
4
+ import { loadConfig } from "../config.js";
5
+ import { MiosaClient } from "../client.js";
6
+ import { UserError } from "../errors.js";
7
+ import { spin } from "../ui/spinner.js";
8
+ import { renderTable } from "../ui/table.js";
9
+ import { handleError } from "./util.js";
10
+ import { resolveDeploymentId } from "./project.js";
11
+ // ── helpers ───────────────────────────────────────────────────────────────────
12
+ function parseKvPairs(pairs) {
13
+ const env = {};
14
+ for (const pair of pairs) {
15
+ const eq = pair.indexOf("=");
16
+ if (eq === -1) {
17
+ throw new UserError(`Invalid KEY=VALUE pair: "${pair}"`, "Each argument must be in KEY=VALUE format.");
18
+ }
19
+ env[pair.slice(0, eq)] = pair.slice(eq + 1);
20
+ }
21
+ return env;
22
+ }
23
+ function printEnvTable(vars, opts) {
24
+ if (opts.json) {
25
+ console.log(JSON.stringify(vars, null, 2));
26
+ return;
27
+ }
28
+ if (vars.length === 0) {
29
+ console.log(chalk.dim(" No env vars set."));
30
+ return;
31
+ }
32
+ renderTable(vars, [
33
+ { header: "NAME", key: "name", width: 32 },
34
+ { header: "VALUE", key: (v) => chalk.dim(v.preview), width: 24 },
35
+ {
36
+ header: "UPDATED",
37
+ key: (v) => new Date(v.updated_at).toLocaleString(),
38
+ width: 22,
39
+ },
40
+ ]);
41
+ }
42
+ // ── register ──────────────────────────────────────────────────────────────────
43
+ export function register(program) {
44
+ const env = program
45
+ .command("env")
46
+ .description("Manage environment variables for a deployment")
47
+ .addHelpText("after", `
48
+ Examples:
49
+ miosa env list <deployment-id>
50
+ miosa env set <deployment-id> NODE_ENV=production PORT=3000
51
+ miosa env unset <deployment-id> DEBUG
52
+ miosa env pull <deployment-id>
53
+ miosa env pull <deployment-id> --output .env
54
+ `);
55
+ // ── env list ────────────────────────────────────────────────────────────────
56
+ env
57
+ .command("list <deployment-id>")
58
+ .description("List env var names and masked previews")
59
+ .option("--json", "Output as JSON")
60
+ .action(async (deploymentId, opts) => {
61
+ try {
62
+ const client = new MiosaClient(loadConfig());
63
+ const spinner = spin("Fetching env vars...");
64
+ const vars = await client.getDeploymentEnv(resolveDeploymentId(deploymentId));
65
+ spinner.stop();
66
+ printEnvTable(vars, opts);
67
+ }
68
+ catch (err) {
69
+ handleError(err);
70
+ }
71
+ });
72
+ // ── env set ─────────────────────────────────────────────────────────────────
73
+ env
74
+ .command("set <deployment-id> <pairs...>")
75
+ .description("Set one or more env vars (KEY=VALUE)")
76
+ .option("--json", "Output as JSON")
77
+ .action(async (deploymentId, pairs, opts) => {
78
+ try {
79
+ const kvs = parseKvPairs(pairs);
80
+ const client = new MiosaClient(loadConfig());
81
+ const spinner = spin(`Setting ${Object.keys(kvs).length} env var(s)...`);
82
+ const vars = await client.setDeploymentEnv(resolveDeploymentId(deploymentId), kvs);
83
+ spinner.succeed(`Set ${vars.length} env var(s)`);
84
+ printEnvTable(vars, opts);
85
+ }
86
+ catch (err) {
87
+ handleError(err);
88
+ }
89
+ });
90
+ // ── env unset ───────────────────────────────────────────────────────────────
91
+ env
92
+ .command("unset <deployment-id> <key>")
93
+ .description("Remove an env var")
94
+ .option("--json", "Output as JSON")
95
+ .action(async (deploymentId, key, opts) => {
96
+ try {
97
+ const client = new MiosaClient(loadConfig());
98
+ const id = resolveDeploymentId(deploymentId);
99
+ const spinner = spin(`Unsetting ${key}...`);
100
+ const result = await client.apiDelete(`/api/v1/deployments/${encodeURIComponent(id)}/env/${encodeURIComponent(key)}`);
101
+ spinner.succeed(`Unset ${key}`);
102
+ if (opts.json) {
103
+ console.log(JSON.stringify(result ?? { deleted: true }, null, 2));
104
+ }
105
+ }
106
+ catch (err) {
107
+ handleError(err);
108
+ }
109
+ });
110
+ // ── env pull ────────────────────────────────────────────────────────────────
111
+ env
112
+ .command("pull <deployment-id>")
113
+ .description("Download env vars to a local .env file")
114
+ .option("--output <file>", "Output file path", ".env.local")
115
+ .option("--overwrite", "Overwrite without prompting")
116
+ .option("--json", "Print as JSON without writing a file")
117
+ .action(async (deploymentId, opts) => {
118
+ try {
119
+ const client = new MiosaClient(loadConfig());
120
+ const id = resolveDeploymentId(deploymentId);
121
+ const spinner = spin("Pulling env vars...");
122
+ const vars = await client.getDeploymentEnv(id);
123
+ spinner.stop();
124
+ if (vars.length === 0) {
125
+ console.log(chalk.dim(" No env vars set for this deployment."));
126
+ return;
127
+ }
128
+ if (opts.json) {
129
+ const obj = {};
130
+ for (const v of vars)
131
+ obj[v.name] = v.preview;
132
+ console.log(JSON.stringify(obj, null, 2));
133
+ return;
134
+ }
135
+ const outputPath = path.resolve(process.cwd(), opts.output);
136
+ if (!opts.overwrite && fs.existsSync(outputPath)) {
137
+ const { default: inquirer } = await import("inquirer");
138
+ const { ok } = await inquirer.prompt([
139
+ {
140
+ type: "confirm",
141
+ name: "ok",
142
+ message: `${opts.output} already exists. Overwrite?`,
143
+ default: false,
144
+ },
145
+ ]);
146
+ if (!ok) {
147
+ console.log(chalk.dim(" Cancelled."));
148
+ process.exit(0);
149
+ }
150
+ }
151
+ const lines = vars
152
+ .map(({ name, preview }) => `${name}=${preview}`)
153
+ .join("\n");
154
+ fs.writeFileSync(outputPath, lines + "\n", { mode: 0o600 });
155
+ // Ensure .gitignore includes the output file
156
+ const gitignore = path.join(process.cwd(), ".gitignore");
157
+ const basename = path.basename(outputPath);
158
+ try {
159
+ const existing = fs.existsSync(gitignore)
160
+ ? fs.readFileSync(gitignore, "utf8")
161
+ : "";
162
+ if (!existing.split("\n").some((l) => l.trim() === basename)) {
163
+ fs.appendFileSync(gitignore, `\n${basename}\n`);
164
+ }
165
+ }
166
+ catch {
167
+ // Non-fatal
168
+ }
169
+ console.log(`Wrote ${chalk.bold(String(vars.length))} env vars to ${chalk.cyan(opts.output)} ${chalk.dim("(gitignored)")}`);
170
+ }
171
+ catch (err) {
172
+ handleError(err);
173
+ }
174
+ });
175
+ }
176
+ //# sourceMappingURL=env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/commands/env.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@miosa/cli",
3
- "version": "0.2.0",
3
+ "version": "1.0.0",
4
4
  "description": "MIOSA platform CLI — projects, sandboxes, deploys, databases, more",
5
5
  "type": "module",
6
6
  "bin": {
@@ -19,7 +19,8 @@
19
19
  },
20
20
  "files": [
21
21
  "dist",
22
- "README.md"
22
+ "README.md",
23
+ "CHANGELOG.md"
23
24
  ],
24
25
  "keywords": [
25
26
  "miosa",