Skip to content

overlane features set

Switch a feature on or off for this workspace

Updated View as MarkdownOpen in ChatGPTOpen in Claude

Writes a workspace override that wins over the feature’s stage. A workspace on stable or LTS can have one upcoming feature on at a time; a second is refused with the one to switch off first. An agent token for the team can set it, as can a person who manages the workspace’s policy.

Usage

overlane features set feature state [--channel CHANNEL] [--dry-run]

Arguments

Argument Required Description
feature yes The feature id
state yes on or off

Flags

Flag Type Required Default Description
--channel one of internal, nightly, beta, stable, lts no The channel the workspace is on (default: stable)
--dry-run boolean no Print the requests and file changes this command would make, then stop. Needs no credentials.

Examples

overlane features set live-feed on
overlane features set live-feed off --channel beta

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 features set.

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": {
        "tenantId": {
          "type": "string"
        },
        "feature": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "pattern": "^[a-z][a-z0-9-]{1,62}$"
            },
            "flagKey": {
              "type": "string",
              "pattern": "^[a-z][a-z0-9_.-]{1,99}$"
            },
            "stage": {
              "type": "string",
              "enum": [
                "internal",
                "preview",
                "beta",
                "stable",
                "deprecated"
              ]
            },
            "enabled": {
              "type": "boolean"
            },
            "source": {
              "type": "string",
              "enum": [
                "override",
                "stage"
              ]
            },
            "changelogLine": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "id",
            "flagKey",
            "stage",
            "enabled",
            "source",
            "changelogLine"
          ],
          "additionalProperties": false
        },
        "updatedAt": {
          "anyOf": [
            {
              "type": "string",
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "tenantId",
        "feature",
        "updatedAt"
      ],
      "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.