@lotics/cli 0.7.0 → 0.8.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/README.md CHANGED
@@ -56,6 +56,7 @@ If your organization has multiple workspaces, select one before running tools:
56
56
  ```bash
57
57
  lotics workspace # list workspaces (marks current)
58
58
  lotics workspace select wks_... # switch to a workspace
59
+ lotics workspace create "Sales" # create a new workspace (admin only)
59
60
  ```
60
61
 
61
62
  Single-workspace organizations auto-select on first use.
package/dist/src/cli.js CHANGED
@@ -44,6 +44,7 @@ USAGE
44
44
  COMMANDS
45
45
  lotics workspace List workspaces (marks current)
46
46
  lotics workspace select <id> Switch to a different workspace
47
+ lotics workspace create <name> Create a new workspace (admin only)
47
48
  lotics tools List all available tools
48
49
  lotics tools <name> Show tool description and input schema
49
50
  lotics run <tool> '<json>' Execute a tool
@@ -423,10 +424,30 @@ async function main() {
423
424
  console.error(`Switched to workspace: ${target.name} (${target.id})`);
424
425
  return;
425
426
  }
427
+ if (subcommand === "create") {
428
+ const name = toolArgs;
429
+ if (!name) {
430
+ console.error('Usage: lotics workspace create <name> [--timezone <tz>]');
431
+ process.exit(1);
432
+ }
433
+ const timezone = flags.timezone;
434
+ const created = await client.createWorkspace({ name, timezone });
435
+ const existing = config ?? {};
436
+ saveConfig({ ...existing, workspace_id: created.id });
437
+ client.setWorkspaceId(created.id);
438
+ if (flags.json) {
439
+ console.log(JSON.stringify(created, null, 2));
440
+ }
441
+ else {
442
+ console.error(`Created workspace: ${created.name} (${created.id})`);
443
+ console.error(`Switched to ${created.id}`);
444
+ }
445
+ return;
446
+ }
426
447
  // Default: list workspaces
427
448
  if (subcommand && subcommand !== "list") {
428
449
  console.error(`Unknown workspace subcommand: ${subcommand}`);
429
- console.error('Usage: lotics workspace [list | select <id>]');
450
+ console.error('Usage: lotics workspace [list | select <id> | create <name>]');
430
451
  process.exit(1);
431
452
  }
432
453
  if (flags.json) {
@@ -47,6 +47,10 @@ export declare class LoticsClient {
47
47
  }>;
48
48
  setWorkspaceId(id: string): void;
49
49
  listWorkspaces(): Promise<WorkspaceInfo[]>;
50
+ createWorkspace(body: {
51
+ name: string;
52
+ timezone?: string;
53
+ }): Promise<WorkspaceInfo>;
50
54
  login(): Promise<{
51
55
  email: string;
52
56
  }>;
@@ -74,6 +74,9 @@ export class LoticsClient {
74
74
  async listWorkspaces() {
75
75
  return this.request("GET", "/v1/workspaces");
76
76
  }
77
+ async createWorkspace(body) {
78
+ return this.request("POST", "/v1/workspaces", body);
79
+ }
77
80
  async login() {
78
81
  return this.request("POST", "/v1/cli/login");
79
82
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lotics/cli",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "description": "Lotics SDK and CLI for AI agents",
5
5
  "type": "module",
6
6
  "bin": {