Skip to content

overlane client package

Package the Claude Code plugin as a file to upload on claude.ai

Updated View as MarkdownOpen in ChatGPTOpen in Claude

Writes the installed Overlane plugin for Claude Code as one .zip file. Upload it on claude.ai (Customize > Plugins > Add > Upload plugin) and add it to a Claude project (Project settings > Plugins): a project’s cloud threads never run a repository’s own hooks, and this is how they get Overlane’s. In a repository with Overlane’s setup committed, the plugin signs the thread in and connects it as it starts, refuses edits until it is connected and a task is held, and stays silent wherever the repository’s own hooks already run. The file holds no credential.

Usage

overlane client package client [--out FILE] [--marketplace-root DIR] [--dry-run]

Arguments

Argument Required Description
client yes claude

Flags

Flag Type Required Default Description
--out string no Where to write the file (default: overlane-claude-plugin.zip in the current directory)
--marketplace-root string no Folder holding the built claude/ plugin marketplace (default: the installed CLI’s)
--dry-run boolean no Print the requests and file changes this command would make, then stop. Needs no credentials.

Examples

overlane client package claude
overlane client package claude --out ~/Downloads/overlane.zip

Behavior

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

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": {
        "client": {
          "type": "string",
          "const": "claude"
        },
        "file": {
          "type": "string"
        },
        "bytes": {
          "type": "number"
        },
        "next": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "client",
        "file",
        "bytes",
        "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.