API reference for icepick.start.
icepick.start
method starts the Icepick worker to process agents, tools, and toolboxes. It automatically discovers and registers your workflows or accepts explicit registration.
icepick.agent()
, icepick.tool()
, and icepick.toolbox()
register
parameterstart()
method accepts a single optional options
parameter with the following properties:
Parameter | Type | Required | Description |
---|---|---|---|
name | string | No | Worker name for identification. Default: “icepick-worker” |
register | BaseOrRegisterable[] | No | Workflows to register. If omitted, uses auto-discovery |
slots | number | No | Maximum number of concurrent workflow runs. Default: 100 |
durableSlots | number | No | Maximum number of concurrent durable workflow runs. Default: 1,000 |
labels | WorkerLabels | No | Key-value pairs for worker affinity and routing |
handleKill | boolean | No | Whether to handle process kill signals gracefully |
workflows | BaseWorkflowDeclaration[] | No | Direct workflow array (typically handled via register ) |
register
parameter accepts workflows and registerable objects:
Type | Description |
---|---|
BaseWorkflowDeclaration | Individual workflow (agent, tool, or Hatchet workflow) |
Registerable | Object with a register property that returns workflow arrays |
icepick.agent()
icepick.tool()
icepick.toolbox()
Property | Type | Description |
---|---|---|
[key] | string | number | Label key-value pairs for worker classification |
Promise<undefined | void[]>
Returns a promise that resolves when the worker starts successfully. The exact return value depends on the underlying Hatchet worker implementation.
register
is omitted, Icepick automatically discovers workflows from an internal registry that gets populated when you create:
icepick.agent()
icepick.tool()
icepick.toolbox()
Parameter | Default | Purpose |
---|---|---|
slots | 100 | Regular workflow concurrency limit |
durableSlots | 1,000 | Durable workflow concurrency limit |
name
: Identifies the worker in Hatchet dashboard and logslabels
: Used for workflow routing and worker affinityicepick.agent
- Create agents that get auto-discoveredicepick.tool
- Create tools that get auto-discoveredicepick.toolbox
- Create toolboxes that get auto-discovered