@forloop-cc/forloop-cli 0.2.12 → 0.2.14

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/ERRORS.md CHANGED
@@ -44,37 +44,37 @@ No error scenarios — silently clears the token.
44
44
 
45
45
  ## Sprint Commands
46
46
 
47
- ### `forloop sprint get`
47
+ ### `forloop space-sprint get`
48
48
 
49
49
  | Scenario | Error Message |
50
50
  |---|---|
51
51
  | No sprint ID resolved | `Error: No sprint ID resolved. Use --id, set FORLOOP_SPRINT_ID, or use a sprint-XXX branch.` |
52
52
  | Sprint not found (404) | `ForLoop API GET /api/opencode/sprints/<id> failed: 404 Not Found` |
53
53
 
54
- ### `forloop sprint list`
54
+ ### `forloop space-sprint list`
55
55
 
56
56
  | Scenario | Error Message |
57
57
  |---|---|
58
58
  | No sprints found | `No sprints found.` |
59
59
 
60
- ### `forloop sprint create`
60
+ ### `forloop space-sprint create`
61
61
 
62
62
  | Scenario | Error Message |
63
63
  |---|---|
64
64
  | Missing `--title`, `--start-date`, or `--end-date` | `Error: --title, --start-date, and --end-date are required` |
65
65
 
66
- ### `forloop sprint update`
66
+ ### `forloop space-sprint update`
67
67
 
68
68
  | Scenario | Error Message |
69
69
  |---|---|
70
70
  | `--id` not provided | `Error: --id is required` |
71
71
  | No fields to update | `Error: at least one field to update is required` |
72
72
 
73
- ### `forloop sprint delete`
73
+ ### `forloop space-sprint delete`
74
74
 
75
75
  | Scenario | Error Message |
76
76
  |---|---|
77
- | `--confirm` not provided | `Error: --confirm is required to permanently delete a sprint.` |
77
+ | `--confirm` not provided | `Error: --confirm is required to permanently delete a space.` |
78
78
  | Sprint not found | `ForLoop API DELETE /api/opencode/sprints/<id> failed: 404 Not Found` |
79
79
 
80
80
  ---
package/README.md CHANGED
@@ -83,10 +83,10 @@ In about 30 seconds, you'll be connected:
83
83
  forloop auth login --api-key floop_xxxxx
84
84
 
85
85
  # 3. See your sprints
86
- forloop sprint list
86
+ forloop space-sprint list
87
87
 
88
88
  # 4. Dive into a sprint
89
- forloop sprint get --id 66
89
+ forloop space-sprint get --id 66
90
90
 
91
91
  # 5. Check what your AI agents are doing
92
92
  forloop agent developer-status --sprint 66
@@ -138,19 +138,19 @@ Work with sprints — the containers that hold your stories and track developmen
138
138
 
139
139
  ```bash
140
140
  # List all sprints you have access to
141
- forloop sprint list
142
- forloop sprint list --org-id 1
143
- forloop sprint list --include-system-org # Include system organization sprints
144
- forloop sprint list --output json # Structured JSON output
141
+ forloop space-sprint list
142
+ forloop space-sprint list --org-id 1
143
+ forloop space-sprint list --include-system-org # Include system organization sprints
144
+ forloop space-sprint list --output json # Structured JSON output
145
145
 
146
146
  # Get sprint details, including all stories
147
- forloop sprint get --id 66
148
- forloop sprint get --id 66 --no-stories # Exclude stories
149
- forloop sprint get --id 66 --no-files # Exclude files
150
- forloop sprint get --id 66 --output json # Structured JSON output
147
+ forloop space-sprint get --id 66
148
+ forloop space-sprint get --id 66 --no-stories # Exclude stories
149
+ forloop space-sprint get --id 66 --no-files # Exclude files
150
+ forloop space-sprint get --id 66 --output json # Structured JSON output
151
151
 
152
152
  # Create a new sprint
153
- forloop sprint create \
153
+ forloop space-sprint create \
154
154
  --title "Sprint 15" \
155
155
  --start-date 2026-06-09 \
156
156
  --end-date 2026-06-23 \
@@ -158,11 +158,11 @@ forloop sprint create \
158
158
  --org-id 1
159
159
 
160
160
  # Update sprint details
161
- forloop sprint update --id 66 --title "Updated Title"
162
- forloop sprint update --id 66 --description "New goals for this sprint"
161
+ forloop space-sprint update --id 66 --title "Updated Title"
162
+ forloop space-sprint update --id 66 --description "New goals for this sprint"
163
163
 
164
164
  # Delete a sprint (destructive — requires --confirm)
165
- forloop sprint delete --id 66 --confirm
165
+ forloop space-sprint delete --id 66 --confirm
166
166
  ```
167
167
 
168
168
  > **Tip:** The CLI auto-detects your sprint from `FORLOOP_SPRINT_ID` env var or a git branch named `sprint-66`. You can often omit `--id` and the right sprint will be chosen.
@@ -381,10 +381,10 @@ A typical session start — load context, check progress, and understand what's
381
381
  forloop auth status
382
382
 
383
383
  # 2. Find your sprint
384
- forloop sprint list
384
+ forloop space-sprint list
385
385
 
386
386
  # 3. Load the full picture — stories, status, AI agents
387
- forloop sprint get --id 66
387
+ forloop space-sprint get --id 66
388
388
 
389
389
  # 4. Is the developer agent already running?
390
390
  forloop agent developer-status --sprint 66
@@ -402,7 +402,7 @@ Create a sprint, add stories, and let AI agents implement them.
402
402
 
403
403
  ```bash
404
404
  # 1. Create the sprint
405
- forloop sprint create \
405
+ forloop space-sprint create \
406
406
  --title "Feature X" \
407
407
  --start-date 2026-06-09 \
408
408
  --end-date 2026-06-23
@@ -429,7 +429,7 @@ forloop agent developer-sprint --sprint 67
429
429
 
430
430
  # 5. Monitor progress
431
431
  forloop agent developer-status --sprint 67
432
- forloop sprint get --id 67
432
+ forloop space-sprint get --id 67
433
433
  ```
434
434
 
435
435
  ### Sync Files Between Local and S3
@@ -545,7 +545,7 @@ Tokens must start with `floop_`. Double-check you copied the entire token from h
545
545
  ### "Forbidden" or "Not Found" on Specific Resources
546
546
 
547
547
  Some resources (organizations, stories, files) return 403/404 when you don't have access or they don't exist in your current environment. Try:
548
- - Verifying the resource ID exists with `forloop sprint get --id <id>`
548
+ - Verifying the resource ID exists with `forloop space-sprint get --id <id>`
549
549
  - Checking your token has the required scopes
550
550
 
551
551
  ### Verbose Debugging
@@ -553,7 +553,7 @@ Some resources (organizations, stories, files) return 403/404 when you don't hav
553
553
  When something isn't working, use `--verbose` to see the raw HTTP requests:
554
554
 
555
555
  ```bash
556
- forloop sprint get --id 66 --verbose
556
+ forloop space-sprint get --id 66 --verbose
557
557
  # Output:
558
558
  # > GET https://api.forloop.cc/api/opencode/sprints/66
559
559
  # < 200 OK
package/dist/forloop CHANGED
@@ -1134,15 +1134,15 @@ function createStoryDeleteCommand() {
1134
1134
  // src/commands/sprint.ts
1135
1135
  function createSprintCommands() {
1136
1136
  return {
1137
- "sprint get": createSprintGetCommand(),
1138
- "sprint list": createSprintListCommand(),
1139
- "sprint create": createSprintCreateCommand(),
1140
- "sprint update": createSprintUpdateCommand(),
1141
- "sprint delete": createSprintDeleteCommand(),
1142
- "sprint sub-sprint list": createSubSprintListCommand(),
1143
- "sprint sub-sprint create": createSubSprintCreateCommand(),
1144
- "sprint sub-sprint update": createSubSprintUpdateCommand(),
1145
- "sprint sub-sprint delete": createSubSprintDeleteCommand()
1137
+ "space-sprint get": createSprintGetCommand(),
1138
+ "space-sprint list": createSprintListCommand(),
1139
+ "space-sprint create": createSprintCreateCommand(),
1140
+ "space-sprint update": createSprintUpdateCommand(),
1141
+ "space-sprint delete": createSprintDeleteCommand(),
1142
+ "space-sprint sub-sprint list": createSubSprintListCommand(),
1143
+ "space-sprint sub-sprint create": createSubSprintCreateCommand(),
1144
+ "space-sprint sub-sprint update": createSubSprintUpdateCommand(),
1145
+ "space-sprint sub-sprint delete": createSubSprintDeleteCommand()
1146
1146
  };
1147
1147
  }
1148
1148
  async function getClient2() {
@@ -1157,9 +1157,9 @@ async function getClient2() {
1157
1157
  }
1158
1158
  function createSprintGetCommand() {
1159
1159
  return defineCommand({
1160
- name: "sprint get",
1161
- description: "Get sprint details including stories and files",
1162
- usage: "forloop sprint get --id <number>",
1160
+ name: "space-sprint get",
1161
+ description: "Get space details including stories and files",
1162
+ usage: "forloop space-sprint get --id <number>",
1163
1163
  options: [
1164
1164
  { flag: "--id <number>", description: "Sprint ID (auto-detected if not provided)", type: "number" },
1165
1165
  { flag: "--no-stories", description: "Exclude stories from response" },
@@ -1168,7 +1168,7 @@ function createSprintGetCommand() {
1168
1168
  { flag: "--sub-sprint-id <number>", description: "Filter stories to a specific sub-sprint", type: "number" },
1169
1169
  { flag: "--include-sub-sprints", description: "Include sub-sprints array in response" }
1170
1170
  ],
1171
- examples: ["forloop sprint get --id 456", "forloop sprint get --id 456 --no-files", "forloop sprint get --id 456 --all-stories"],
1171
+ examples: ["forloop space-sprint get --id 456", "forloop space-sprint get --id 456 --no-files", "forloop space-sprint get --id 456 --all-stories"],
1172
1172
  async run(config, flags) {
1173
1173
  const resolved = await getClient2();
1174
1174
  if (!resolved) return;
@@ -1191,14 +1191,14 @@ function createSprintGetCommand() {
1191
1191
  }
1192
1192
  function createSprintListCommand() {
1193
1193
  return defineCommand({
1194
- name: "sprint list",
1195
- description: "List all accessible sprints",
1196
- usage: "forloop sprint list [--org-id <id>] [--include-system-org]",
1194
+ name: "space-sprint list",
1195
+ description: "List all accessible spaces",
1196
+ usage: "forloop space-sprint list [--org-id <id>] [--include-system-org]",
1197
1197
  options: [
1198
1198
  { flag: "--org-id <id>", description: "Filter by organization ID", type: "number" },
1199
1199
  { flag: "--include-system-org", description: "Include system organization sprints" }
1200
1200
  ],
1201
- examples: ["forloop sprint list", "forloop sprint list --org-id 1"],
1201
+ examples: ["forloop space-sprint list", "forloop space-sprint list --org-id 1"],
1202
1202
  async run(config, flags) {
1203
1203
  const resolved = await getClient2();
1204
1204
  if (!resolved) return;
@@ -1213,18 +1213,18 @@ function createSprintListCommand() {
1213
1213
  }
1214
1214
  function createSprintCreateCommand() {
1215
1215
  return defineCommand({
1216
- name: "sprint create",
1217
- description: "Create a new sprint",
1218
- usage: "forloop sprint create --title <text> --start-date <YYYY-MM-DD> --end-date <YYYY-MM-DD> [flags]",
1216
+ name: "space-sprint create",
1217
+ description: "Create a new space",
1218
+ usage: "forloop space-sprint create --title <text> --start-date <YYYY-MM-DD> --end-date <YYYY-MM-DD> [flags]",
1219
1219
  options: [
1220
1220
  { flag: "--title <text>", description: "Sprint title", required: true },
1221
1221
  { flag: "--start-date <date>", description: "Start date (YYYY-MM-DD)", required: true },
1222
1222
  { flag: "--end-date <date>", description: "End date (YYYY-MM-DD)", required: true },
1223
1223
  { flag: "--description <text>", description: "Sprint description" },
1224
- { flag: "--private", description: "Make sprint private" },
1224
+ { flag: "--private", description: "Make space private" },
1225
1225
  { flag: "--org-id <id>", description: "Organization ID", type: "number" }
1226
1226
  ],
1227
- examples: ['forloop sprint create --title "Sprint 15" --start-date 2026-06-09 --end-date 2026-06-23'],
1227
+ examples: ['forloop space-sprint create --title "Sprint 15" --start-date 2026-06-09 --end-date 2026-06-23'],
1228
1228
  async run(config, flags) {
1229
1229
  const resolved = await getClient2();
1230
1230
  if (!resolved) return;
@@ -1247,9 +1247,9 @@ function createSprintCreateCommand() {
1247
1247
  }
1248
1248
  function createSprintUpdateCommand() {
1249
1249
  return defineCommand({
1250
- name: "sprint update",
1251
- description: "Update sprint details",
1252
- usage: "forloop sprint update --id <number> [flags]",
1250
+ name: "space-sprint update",
1251
+ description: "Update space details",
1252
+ usage: "forloop space-sprint update --id <number> [flags]",
1253
1253
  options: [
1254
1254
  { flag: "--id <number>", description: "Sprint ID", required: true, type: "number" },
1255
1255
  { flag: "--title <text>", description: "New title" },
@@ -1258,7 +1258,7 @@ function createSprintUpdateCommand() {
1258
1258
  { flag: "--end-date <date>", description: "New end date" },
1259
1259
  { flag: "--private", description: "Set visibility to private" }
1260
1260
  ],
1261
- examples: ['forloop sprint update --id 456 --title "Updated Sprint"'],
1261
+ examples: ['forloop space-sprint update --id 456 --title "Updated Sprint"'],
1262
1262
  async run(config, flags) {
1263
1263
  const resolved = await getClient2();
1264
1264
  if (!resolved) return;
@@ -1274,44 +1274,44 @@ function createSprintUpdateCommand() {
1274
1274
  process.exit(1);
1275
1275
  }
1276
1276
  const sprint = await client.updateSprint(flags.id, updateData);
1277
- print(config, sprint, `Sprint #${sprint.id} updated successfully.`);
1277
+ print(config, sprint, `Space #${sprint.id} updated successfully.`);
1278
1278
  }
1279
1279
  });
1280
1280
  }
1281
1281
  function createSprintDeleteCommand() {
1282
1282
  return defineCommand({
1283
- name: "sprint delete",
1284
- description: "Delete a sprint permanently",
1285
- usage: "forloop sprint delete --id <number> --confirm",
1283
+ name: "space-sprint delete",
1284
+ description: "Delete a space permanently",
1285
+ usage: "forloop space-sprint delete --id <number> --confirm",
1286
1286
  options: [
1287
1287
  { flag: "--id <number>", description: "Sprint ID", required: true, type: "number" },
1288
1288
  { flag: "--confirm", description: "Confirm deletion" }
1289
1289
  ],
1290
- examples: ["forloop sprint delete --id 456 --confirm"],
1290
+ examples: ["forloop space-sprint delete --id 456 --confirm"],
1291
1291
  async run(config, flags) {
1292
1292
  if (!flags.confirm) {
1293
- console.error("Error: --confirm is required to permanently delete a sprint.");
1293
+ console.error("Error: --confirm is required to permanently delete a space.");
1294
1294
  process.exit(1);
1295
1295
  }
1296
1296
  const resolved = await getClient2();
1297
1297
  if (!resolved) return;
1298
1298
  const { client } = resolved;
1299
1299
  const result = await client.deleteSprint(flags.id);
1300
- print(config, result, `Sprint #${flags.id} deleted successfully.`);
1300
+ print(config, result, `Space #${flags.id} deleted successfully.`);
1301
1301
  }
1302
1302
  });
1303
1303
  }
1304
1304
  function createSubSprintListCommand() {
1305
1305
  return defineCommand({
1306
- name: "sprint sub-sprint list",
1307
- description: "List all iterations within a sprint",
1308
- usage: "forloop sprint sub-sprint list [--sprint-id <number>]",
1306
+ name: "space-sprint sub-sprint list",
1307
+ description: "List all iterations within a space",
1308
+ usage: "forloop space-sprint sub-sprint list [--sprint-id <number>]",
1309
1309
  options: [
1310
1310
  { flag: "--sprint-id <number>", description: "Sprint ID (auto-detected if not provided)", type: "number" }
1311
1311
  ],
1312
1312
  examples: [
1313
- "forloop sprint sub-sprint list",
1314
- "forloop sprint sub-sprint list --sprint-id 456"
1313
+ "forloop space-sprint sub-sprint list",
1314
+ "forloop space-sprint sub-sprint list --sprint-id 456"
1315
1315
  ],
1316
1316
  async run(config, flags) {
1317
1317
  const resolved = await getClient2();
@@ -1329,9 +1329,9 @@ function createSubSprintListCommand() {
1329
1329
  }
1330
1330
  function createSubSprintCreateCommand() {
1331
1331
  return defineCommand({
1332
- name: "sprint sub-sprint create",
1332
+ name: "space-sprint sub-sprint create",
1333
1333
  description: "Create a new iteration (auto-completes the previously active one)",
1334
- usage: "forloop sprint sub-sprint create [--sprint-id <number>] --start-date <YYYY-MM-DD> --end-date <YYYY-MM-DD> [--title <text>]",
1334
+ usage: "forloop space-sprint sub-sprint create [--sprint-id <number>] --start-date <YYYY-MM-DD> --end-date <YYYY-MM-DD> [--title <text>]",
1335
1335
  options: [
1336
1336
  { flag: "--sprint-id <number>", description: "Sprint ID (auto-detected if not provided)", type: "number" },
1337
1337
  { flag: "--start-date <date>", description: "Start date (YYYY-MM-DD)", required: true },
@@ -1339,8 +1339,8 @@ function createSubSprintCreateCommand() {
1339
1339
  { flag: "--title <text>", description: "Iteration title (auto-generates if not provided)" }
1340
1340
  ],
1341
1341
  examples: [
1342
- "forloop sprint sub-sprint create --start-date 2026-08-15 --end-date 2026-08-28",
1343
- "forloop sprint sub-sprint create --sprint-id 456 --start-date 2026-08-15 --end-date 2026-08-28"
1342
+ "forloop space-sprint sub-sprint create --start-date 2026-08-15 --end-date 2026-08-28",
1343
+ "forloop space-sprint sub-sprint create --sprint-id 456 --start-date 2026-08-15 --end-date 2026-08-28"
1344
1344
  ],
1345
1345
  async run(config, flags) {
1346
1346
  const resolved = await getClient2();
@@ -1366,9 +1366,9 @@ function createSubSprintCreateCommand() {
1366
1366
  }
1367
1367
  function createSubSprintUpdateCommand() {
1368
1368
  return defineCommand({
1369
- name: "sprint sub-sprint update",
1369
+ name: "space-sprint sub-sprint update",
1370
1370
  description: "Update an iteration title, dates, or status",
1371
- usage: "forloop sprint sub-sprint update --id <number> [--title <text>] [--start-date <date>] [--end-date <date>] [--status <planned|in_progress|completed>]",
1371
+ usage: "forloop space-sprint sub-sprint update --id <number> [--title <text>] [--start-date <date>] [--end-date <date>] [--status <planned|in_progress|completed>]",
1372
1372
  options: [
1373
1373
  { flag: "--id <number>", description: "Sub-sprint ID", required: true, type: "number" },
1374
1374
  { flag: "--title <text>", description: "New title" },
@@ -1377,8 +1377,8 @@ function createSubSprintUpdateCommand() {
1377
1377
  { flag: "--status <string>", description: "New status: planned, in_progress, or completed" }
1378
1378
  ],
1379
1379
  examples: [
1380
- 'forloop sprint sub-sprint update --id 5 --title "Iteration 2 \u2014 Payment Integration"',
1381
- "forloop sprint sub-sprint update --id 5 --status completed"
1380
+ 'forloop space-sprint sub-sprint update --id 5 --title "Iteration 2 \u2014 Payment Integration"',
1381
+ "forloop space-sprint sub-sprint update --id 5 --status completed"
1382
1382
  ],
1383
1383
  async run(config, flags) {
1384
1384
  const resolved = await getClient2();
@@ -1400,14 +1400,14 @@ function createSubSprintUpdateCommand() {
1400
1400
  }
1401
1401
  function createSubSprintDeleteCommand() {
1402
1402
  return defineCommand({
1403
- name: "sprint sub-sprint delete",
1403
+ name: "space-sprint sub-sprint delete",
1404
1404
  description: "Soft-delete an iteration",
1405
- usage: "forloop sprint sub-sprint delete --id <number> --confirm",
1405
+ usage: "forloop space-sprint sub-sprint delete --id <number> --confirm",
1406
1406
  options: [
1407
1407
  { flag: "--id <number>", description: "Sub-sprint ID", required: true, type: "number" },
1408
1408
  { flag: "--confirm", description: "Confirm deletion" }
1409
1409
  ],
1410
- examples: ["forloop sprint sub-sprint delete --id 5 --confirm"],
1410
+ examples: ["forloop space-sprint sub-sprint delete --id 5 --confirm"],
1411
1411
  async run(config, flags) {
1412
1412
  if (!flags.confirm) {
1413
1413
  console.error("Error: --confirm is required to delete an iteration.");
@@ -1599,7 +1599,7 @@ function createTemplateListCommand() {
1599
1599
  function createAgentCommands() {
1600
1600
  return {
1601
1601
  "agent history": createAgentHistoryCommand(),
1602
- "agent developer-sprint": createDeveloperSprintCommand(),
1602
+ "agent developer-space-sprint": createDeveloperSprintCommand(),
1603
1603
  "agent developer-status": createDeveloperStatusCommand()
1604
1604
  };
1605
1605
  }
@@ -1638,14 +1638,14 @@ function createAgentHistoryCommand() {
1638
1638
  }
1639
1639
  function createDeveloperSprintCommand() {
1640
1640
  return defineCommand({
1641
- name: "agent developer-sprint",
1642
- description: "Trigger the developer agent to implement sprint stories",
1643
- usage: "forloop agent developer-sprint --sprint <id> [--message <text>]",
1641
+ name: "agent developer-space-sprint",
1642
+ description: "Trigger the developer agent to implement space stories",
1643
+ usage: "forloop agent developer-space-sprint --sprint <id> [--message <text>]",
1644
1644
  options: [
1645
1645
  { flag: "--sprint <id>", description: "Sprint ID", required: true, type: "number" },
1646
1646
  { flag: "--message <text>", description: "Instructions for the developer agent" }
1647
1647
  ],
1648
- examples: ['forloop agent developer-sprint --sprint 1 --message "Implement all planned tasks"'],
1648
+ examples: ['forloop agent developer-space-sprint --sprint 1 --message "Implement all planned tasks"'],
1649
1649
  async run(_config, flags) {
1650
1650
  if (!flags.sprint) {
1651
1651
  console.error("Error: --sprint is required");
@@ -2305,10 +2305,10 @@ ${b("Usage:")} forloop <resource> <command> [flags]
2305
2305
 
2306
2306
  ${b("Resources:")}
2307
2307
  ${a("auth")} ${d("Authentication (login, status, logout)")}
2308
- ${a("sprint")} ${d("Sprint operations (list, get, create, update, delete)")}
2308
+ ${a("space-sprint")}${d("Space operations (list, get, create, update, delete)")}
2309
2309
  ${a("story")} ${d("Story operations (create, get, update, delete)")}
2310
2310
  ${a("template")} ${d("Template operations (list)")}
2311
- ${a("agent")} ${d("Agent operations (history, developer-sprint, developer-status)")}
2311
+ ${a("agent")} ${d("Agent operations (history, developer-space-sprint, developer-status)")}
2312
2312
  ${a("org")} ${d("Organization operations (list, get, create, update)")}
2313
2313
  ${a("user")} ${d("User operations (profile, quotas)")}
2314
2314
  ${a("file")} ${d("File operations (upload, list, delete, download)")}
@@ -2390,21 +2390,21 @@ ${d("Global flags (--api-key, --output, --quiet, etc.) are always available.")}
2390
2390
  }
2391
2391
  }
2392
2392
  };
2393
- var sprintGetCmd = createSprintCommands()["sprint get"];
2394
- var sprintListCmd = createSprintCommands()["sprint list"];
2395
- var sprintCreateCmd = createSprintCommands()["sprint create"];
2396
- var sprintUpdateCmd = createSprintCommands()["sprint update"];
2397
- var sprintDeleteCmd = createSprintCommands()["sprint delete"];
2398
- var ssListCmd = createSprintCommands()["sprint sub-sprint list"];
2399
- var ssCreateCmd = createSprintCommands()["sprint sub-sprint create"];
2400
- var ssUpdateCmd = createSprintCommands()["sprint sub-sprint update"];
2401
- var ssDeleteCmd = createSprintCommands()["sprint sub-sprint delete"];
2393
+ var sprintGetCmd = createSprintCommands()["space-sprint get"];
2394
+ var sprintListCmd = createSprintCommands()["space-sprint list"];
2395
+ var sprintCreateCmd = createSprintCommands()["space-sprint create"];
2396
+ var sprintUpdateCmd = createSprintCommands()["space-sprint update"];
2397
+ var sprintDeleteCmd = createSprintCommands()["space-sprint delete"];
2398
+ var ssListCmd = createSprintCommands()["space-sprint sub-sprint list"];
2399
+ var ssCreateCmd = createSprintCommands()["space-sprint sub-sprint create"];
2400
+ var ssUpdateCmd = createSprintCommands()["space-sprint sub-sprint update"];
2401
+ var ssDeleteCmd = createSprintCommands()["space-sprint sub-sprint delete"];
2402
2402
  var storyCreateCmd = createStoryCommands()["story create"];
2403
2403
  var storyGetCmd = createStoryCommands()["story get"];
2404
2404
  var storyUpdateCmd = createStoryCommands()["story update"];
2405
2405
  var storyDeleteCmd = createStoryCommands()["story delete"];
2406
2406
  var agentHistoryCmd = createAgentCommands()["agent history"];
2407
- var agentDeveloperSprintCmd = createAgentCommands()["agent developer-sprint"];
2407
+ var agentDeveloperSprintCmd = createAgentCommands()["agent developer-space-sprint"];
2408
2408
  var agentDeveloperStatusCmd = createAgentCommands()["agent developer-status"];
2409
2409
  var fileUploadCmd = createFileCommands()["file upload"];
2410
2410
  var fileListCmd = createFileCommands()["file list"];
@@ -2422,15 +2422,15 @@ var registry = new CommandRegistry({
2422
2422
  ...createFolderCommands(),
2423
2423
  ...createSyncCommands(),
2424
2424
  // Aliases
2425
- "sprint show": sprintGetCmd,
2426
- "sprint info": sprintGetCmd,
2425
+ "space-sprint show": sprintGetCmd,
2426
+ "space-sprint info": sprintGetCmd,
2427
2427
  "agent status": agentDeveloperStatusCmd,
2428
- "agent sprint": agentDeveloperSprintCmd,
2428
+ "agent space-sprint": agentDeveloperSprintCmd,
2429
2429
  // Sub-sprint aliases
2430
- "sub-sprint list": ssListCmd,
2431
- "sub-sprint create": ssCreateCmd,
2432
- "sub-sprint update": ssUpdateCmd,
2433
- "sub-sprint delete": ssDeleteCmd
2430
+ "space-sprint sub-sprint list": ssListCmd,
2431
+ "space-sprint sub-sprint create": ssCreateCmd,
2432
+ "space-sprint sub-sprint update": ssUpdateCmd,
2433
+ "space-sprint sub-sprint delete": ssDeleteCmd
2434
2434
  });
2435
2435
 
2436
2436
  // src/errors/handler.ts
package/install.sh CHANGED
@@ -80,11 +80,11 @@ echo ""
80
80
  echo -e "${BOLD}Next steps:${NC}"
81
81
  echo " 1. Get an API token: https://forloop.cc/profile?tab=api-tokens"
82
82
  echo " 2. Authenticate: forloop auth login --api-key floop_xxxxx"
83
- echo " 3. Start using: forloop sprint list"
83
+ echo " 3. Start using: forloop space-sprint list"
84
84
  echo ""
85
85
  echo -e "${BOLD}Quick reference:${NC}"
86
86
  echo " forloop --help Show all commands"
87
87
  echo " forloop auth login Set your API token"
88
- echo " forloop sprint list List sprints"
88
+ echo " forloop space-sprint list List sprints"
89
89
  echo " forloop agent developer-status Check AI agent status"
90
90
  echo ""
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forloop-cc/forloop-cli",
3
- "version": "0.2.12",
3
+ "version": "0.2.14",
4
4
  "description": "Command-line interface for the ForLoop AI development platform",
5
5
  "type": "module",
6
6
  "license": "MIT",