Skip to content

overlane task start

Claim an existing task, or create one with a contract and claim it

Updated View as MarkdownOpen in ChatGPTOpen in Claude

With a TASK_ID, claims that ready or paused task for this working copy (same checks as task resume). Without one, creates a task (outcome, acceptance criteria, required checks, allowed paths) at the current commit and claims it, writing the lease to .overlane/state/task.json. Fails with exit 5 if this working copy already holds a task.

Usage

overlane task start [task-id] [--outcome TEXT] [--criterion TEXT...] [--check ID:LEVEL...] [--path GLOB...] [--no-checks REASON] [--dry-run]

Arguments

Argument Required Description
task-id no An existing task to claim; omit to create one from the flags

Flags

Flag Type Required Default Description
--outcome string no What the task must achieve (up to 500 characters)
--criterion string (repeatable) no An acceptance criterion; repeat for more
--check string (repeatable) no A required check and its minimum evidence level, for example unit_tests:L2; repeat for more
--path string (repeatable) no A file pattern the task may change; repeat for more
--no-checks string no Why the task has no required checks; needed when no –check is given
--dry-run boolean no Print the requests and file changes this command would make, then stop. Needs no credentials.

Examples

overlane task start task-7
overlane task start --outcome "Add CSV export" --criterion "export works" --check unit_tests:L2 --path "src/**"
overlane task start --outcome "Fix login" --criterion "login passes" --no-checks "copy change only" --path "src/auth/**" --dry-run

Behavior

  • Effect: write (changes local or hosted state).
  • Needs credentials: yes. Uses the network: yes.
  • Supports --dry-run: yes. Accepts --force: no.
  • Machine-readable description: overlane schema task start.

Result

With --json (the default when stdout is not a terminal) the command prints this JSON Schema’s shape on stdout.

{
  "anyOf": [
    {
      "type": "object",
      "properties": {
        "taskId": {
          "type": "string"
        },
        "version": {
          "type": "number"
        },
        "state": {
          "type": "string"
        },
        "holder": {
          "type": "string"
        },
        "leaseExpiresAt": {
          "type": "string"
        },
        "next": {
          "type": "string"
        },
        "payload": {
          "type": "object",
          "properties": {
            "file": {
              "type": "string"
            },
            "totalTokens": {
              "type": "number"
            },
            "sections": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {
                "type": "string"
              }
            }
          },
          "required": [
            "file",
            "totalTokens",
            "sections"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "taskId",
        "version",
        "state",
        "holder",
        "next"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "dryRun": {
          "type": "boolean",
          "const": true
        },
        "service": {
          "type": "string"
        },
        "requests": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "method": {
                "type": "string"
              },
              "path": {
                "type": "string"
              },
              "body": {},
              "note": {
                "type": "string"
              }
            },
            "required": [
              "method",
              "path"
            ],
            "additionalProperties": false
          }
        },
        "commands": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "writes": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "path": {
                "type": "string"
              },
              "action": {
                "type": "string",
                "enum": [
                  "write",
                  "append",
                  "delete"
                ]
              },
              "description": {
                "type": "string"
              }
            },
            "required": [
              "path",
              "action",
              "description"
            ],
            "additionalProperties": false
          }
        },
        "notes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "dryRun",
        "requests",
        "commands",
        "writes",
        "notes"
      ],
      "additionalProperties": false
    }
  ]
}

See exit codes for the status the process returns.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close

Overlane Agent

Ask about the docs. Answers are quoted from the pages, with links. This panel cannot change anything.

    Questions are answered in your browser from the docs index. Nothing you type here is stored or sent anywhere.