@whiteroom-ai/cli 1.1.0 → 2.0.1

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.
Files changed (39) hide show
  1. package/README.md +79 -0
  2. package/contract/catalog.json +264 -0
  3. package/dist/index.js +19 -15
  4. package/dist/index.js.map +1 -1
  5. package/dist/legacy-args.d.ts +4 -0
  6. package/dist/legacy-args.js +17 -0
  7. package/dist/legacy-args.js.map +1 -0
  8. package/dist/practice/adapter.d.ts +59 -0
  9. package/dist/practice/adapter.js +169 -0
  10. package/dist/practice/adapter.js.map +1 -0
  11. package/dist/practice/catalog.d.ts +27 -0
  12. package/dist/practice/catalog.js +6 -0
  13. package/dist/practice/catalog.js.map +1 -0
  14. package/dist/practice/engine.d.ts +52 -0
  15. package/dist/practice/engine.js +151 -0
  16. package/dist/practice/engine.js.map +1 -0
  17. package/dist/practice/index.d.ts +2 -0
  18. package/dist/practice/index.js +79 -0
  19. package/dist/practice/index.js.map +1 -0
  20. package/dist/practice/preflight.d.ts +64 -0
  21. package/dist/practice/preflight.js +204 -0
  22. package/dist/practice/preflight.js.map +1 -0
  23. package/dist/practice/run.d.ts +13 -0
  24. package/dist/practice/run.js +380 -0
  25. package/dist/practice/run.js.map +1 -0
  26. package/dist/practice/text.d.ts +107 -0
  27. package/dist/practice/text.js +185 -0
  28. package/dist/practice/text.js.map +1 -0
  29. package/dist/sandbox/index.d.ts +2 -0
  30. package/dist/sandbox/index.js +62 -0
  31. package/dist/sandbox/index.js.map +1 -0
  32. package/dist/sandbox/listen.d.ts +57 -0
  33. package/dist/sandbox/listen.js +299 -0
  34. package/dist/sandbox/listen.js.map +1 -0
  35. package/package.json +10 -3
  36. package/starters/wr-adapter.mjs +104 -0
  37. package/starters/wr_adapter.py +136 -0
  38. package/src/index.ts +0 -144
  39. package/tsconfig.json +0 -16
package/src/index.ts DELETED
@@ -1,144 +0,0 @@
1
- #!/usr/bin/env node
2
- import { WhiteRoomClient, WhiteRoomError } from "@whiteroom-ai/sdk";
3
-
4
- const USAGE = `whiteroom — CLI for WhiteRoom agent governance
5
-
6
- Usage:
7
- whiteroom health
8
- whiteroom register <agent_id> [--fleet <id>] [--role <role>]
9
- whiteroom pair <agent_a> <agent_b> [--fleet <id>]
10
- whiteroom auto-pair [--fleet <id>]
11
- whiteroom start <agent_id> [--fleet <id>]
12
- whiteroom task <agent_id> <task_name> [--minutes <n>] [--tokens <n>] [--fleet <id>]
13
- whiteroom check <agent_id> [--fleet <id>]
14
- whiteroom handover <from_agent> <to_agent> [--fleet <id>]
15
- whiteroom alarm <agent_id> [--fleet <id>]
16
- whiteroom report [--fleet <id>]
17
- whiteroom fleets
18
- whiteroom login <fleet_token>
19
-
20
- Options:
21
- --url <base_url> Server URL (default: WHITEROOM_URL or http://localhost:3000)
22
- --key <api_key> API key (default: WHITEROOM_API_KEY)
23
- `;
24
-
25
- function parseArgs(argv: string[]) {
26
- const args: string[] = [];
27
- const flags: Record<string, string> = {};
28
- for (let i = 0; i < argv.length; i++) {
29
- if (argv[i].startsWith("--") && i + 1 < argv.length) {
30
- flags[argv[i].slice(2)] = argv[++i];
31
- } else {
32
- args.push(argv[i]);
33
- }
34
- }
35
- return { args, flags };
36
- }
37
-
38
- async function main() {
39
- const { args, flags } = parseArgs(process.argv.slice(2));
40
- const command = args[0];
41
-
42
- if (!command || command === "help" || command === "--help") {
43
- console.log(USAGE);
44
- process.exit(0);
45
- }
46
-
47
- const client = new WhiteRoomClient({
48
- baseUrl: flags.url ?? process.env.WHITEROOM_URL ?? "http://localhost:3000",
49
- apiKey: flags.key ?? process.env.WHITEROOM_API_KEY,
50
- });
51
-
52
- try {
53
- switch (command) {
54
- case "health":
55
- print(await client.health());
56
- break;
57
-
58
- case "register":
59
- requireArg(args[1], "agent_id");
60
- print(await client.registerAgent(args[1], { fleetId: flags.fleet, role: flags.role }));
61
- break;
62
-
63
- case "pair":
64
- requireArg(args[1], "agent_a");
65
- requireArg(args[2], "agent_b");
66
- print(await client.pairAgents(args[1], args[2], flags.fleet));
67
- break;
68
-
69
- case "auto-pair":
70
- print(await client.autoPair(flags.fleet));
71
- break;
72
-
73
- case "start":
74
- requireArg(args[1], "agent_id");
75
- print(await client.startWatch(args[1], flags.fleet));
76
- break;
77
-
78
- case "task":
79
- requireArg(args[1], "agent_id");
80
- requireArg(args[2], "task_name");
81
- print(
82
- await client.completeTask(args[1], args[2], {
83
- fleetId: flags.fleet,
84
- minutesSpent: flags.minutes ? Number(flags.minutes) : undefined,
85
- tokensUsed: flags.tokens ? Number(flags.tokens) : undefined,
86
- })
87
- );
88
- break;
89
-
90
- case "check":
91
- requireArg(args[1], "agent_id");
92
- print(await client.checkWatch(args[1], flags.fleet));
93
- break;
94
-
95
- case "handover":
96
- requireArg(args[1], "from_agent");
97
- requireArg(args[2], "to_agent");
98
- print(await client.initiateHandover(args[1], args[2], { fleetId: flags.fleet }));
99
- break;
100
-
101
- case "alarm":
102
- requireArg(args[1], "agent_id");
103
- print(await client.fireAlarm(args[1], flags.fleet));
104
- break;
105
-
106
- case "report":
107
- print(await client.fleetReport(flags.fleet));
108
- break;
109
-
110
- case "fleets":
111
- print(await client.listFleets());
112
- break;
113
-
114
- case "login":
115
- requireArg(args[1], "fleet_token");
116
- print(await client.tokenLogin(args[1]));
117
- break;
118
-
119
- default:
120
- console.error(`Unknown command: ${command}\n`);
121
- console.log(USAGE);
122
- process.exit(1);
123
- }
124
- } catch (e) {
125
- if (e instanceof WhiteRoomError) {
126
- console.error(`Error ${(e as WhiteRoomError).status}: ${(e as WhiteRoomError).message}`);
127
- process.exit(1);
128
- }
129
- throw e;
130
- }
131
- }
132
-
133
- function requireArg(value: string | undefined, name: string): asserts value is string {
134
- if (!value) {
135
- console.error(`Missing required argument: <${name}>`);
136
- process.exit(1);
137
- }
138
- }
139
-
140
- function print(data: unknown) {
141
- console.log(JSON.stringify(data, null, 2));
142
- }
143
-
144
- main();
package/tsconfig.json DELETED
@@ -1,16 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2022",
4
- "module": "ESNext",
5
- "moduleResolution": "bundler",
6
- "outDir": "dist",
7
- "rootDir": "src",
8
- "strict": true,
9
- "esModuleInterop": true,
10
- "skipLibCheck": true,
11
- "declaration": true,
12
- "sourceMap": true
13
- },
14
- "include": ["src"],
15
- "exclude": ["node_modules", "dist"]
16
- }