overlord-cli 4.16.0 → 4.17.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.
@@ -1048,7 +1048,9 @@ async function protocolSpawn(args) {
1048
1048
  // When --project-id is not provided, auto-send cwd as workingDirectory so
1049
1049
  // the server can resolve the project from the caller's project_user
1050
1050
  // local_working_directory setting.
1051
- const workingDirectory = flags['working-directory'] ?? (!flags['project-id'] ? process.cwd() : undefined);
1051
+ const personal = Boolean(flags.personal);
1052
+ const workingDirectory =
1053
+ flags['working-directory'] ?? (!flags['project-id'] && !personal ? process.cwd() : undefined);
1052
1054
 
1053
1055
  const body = {
1054
1056
  objective,
@@ -1058,6 +1060,7 @@ async function protocolSpawn(args) {
1058
1060
  ...(flags.title ? { title: String(flags.title) } : {}),
1059
1061
  ...(flags.priority ? { priority: String(flags.priority) } : {}),
1060
1062
  ...(flags['project-id'] ? { projectId: String(flags['project-id']) } : {}),
1063
+ ...(personal ? { personal: true } : {}),
1061
1064
  ...(workingDirectory ? { workingDirectory: String(workingDirectory) } : {}),
1062
1065
  ...(flags['acceptance-criteria'] ? { acceptanceCriteria: String(flags['acceptance-criteria']) } : {}),
1063
1066
  ...(flags['available-tools'] ? { availableTools: String(flags['available-tools']) } : {}),
@@ -1136,26 +1139,16 @@ async function protocolCreateTicket(args) {
1136
1139
  );
1137
1140
  }
1138
1141
 
1139
- const workingDirectory = String(flags['working-directory'] ?? process.cwd());
1140
- const discovered = await apiPost(
1141
- platformUrl,
1142
- agentToken,
1143
- localSecret,
1144
- '/api/protocol/discover-project',
1145
- { workingDirectory },
1146
- timeoutMs
1147
- );
1148
-
1149
- const projectId = discovered?.project?.id;
1150
- if (!projectId) {
1151
- throw new Error(
1152
- "Could not resolve project from working directory. Set your local working directory for this project in Overlord or pass --working-directory."
1153
- );
1154
- }
1142
+ const standaloneWorkingDirectory =
1143
+ !flags.personal && !flags['project-id']
1144
+ ? String(flags['working-directory'] ?? process.cwd())
1145
+ : undefined;
1155
1146
 
1156
1147
  const standaloneBody = {
1157
1148
  objective,
1158
- projectId,
1149
+ ...(flags.personal ? { personal: true } : {}),
1150
+ ...(!flags.personal && flags['project-id'] ? { projectId: String(flags['project-id']) } : {}),
1151
+ ...(standaloneWorkingDirectory ? { workingDirectory: standaloneWorkingDirectory } : {}),
1159
1152
  ...(flags.title ? { title: String(flags.title) } : {}),
1160
1153
  ...(flags.priority ? { priority: String(flags.priority) } : {}),
1161
1154
  ...(flags['acceptance-criteria'] ? { acceptanceCriteria: String(flags['acceptance-criteria']) } : {}),
@@ -1225,6 +1218,7 @@ Project discovery:
1225
1218
  ovld protocol discover-project --working-directory /path/to/repo
1226
1219
 
1227
1220
  Use --project-id to override automatic resolution on spawn or ticket creation.
1221
+ Use --personal to create a private ticket without assigning any project.
1228
1222
 
1229
1223
  Subcommands:
1230
1224
  auth-status Return machine-readable auth status for agent runtimes
@@ -1415,6 +1409,7 @@ spawn:
1415
1409
  --title <text>
1416
1410
  --priority <level> low | medium | high | urgent
1417
1411
  --project-id <id> Explicit project; skips working-directory resolution
1412
+ --personal Create the ticket without assigning a project
1418
1413
  --working-directory <path> Override cwd for project resolution (default: cwd)
1419
1414
  --acceptance-criteria <text>
1420
1415
  --available-tools <text>
@@ -1440,6 +1435,8 @@ create:
1440
1435
  --session-key <key>
1441
1436
  --ticket-id <id>
1442
1437
  --working-directory <path> Resolve project by your configured local working directory (default: cwd)
1438
+ --project-id <id> Explicit project for standalone draft creation
1439
+ --personal Create a private standalone draft without a project
1443
1440
  --title <text>
1444
1441
  --priority <level> low | medium | high | urgent
1445
1442
  --acceptance-criteria <text>
@@ -1451,7 +1448,7 @@ create:
1451
1448
  Returns:
1452
1449
  New draft ticket JSON (follow-up draft when session flags are provided)
1453
1450
  Notes:
1454
- Standalone create auto-discovers the project from the current working directory.
1451
+ Standalone create auto-discovers the project from the current working directory unless --personal is set.
1455
1452
  Follow-up create requires both --session-key and --ticket-id.
1456
1453
 
1457
1454
  artifact-prepare-upload:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "overlord-cli",
3
- "version": "4.16.0",
3
+ "version": "4.17.0",
4
4
  "description": "Overlord CLI — launch AI agents on tickets from anywhere",
5
5
  "type": "module",
6
6
  "bin": {