SKILL.md
Managing Stacks
A stack is a pointer to your own compute environment where Celigo runs extension code -- the script hooks and connector wrappers that would otherwise run on Celigo's hosted JavaScript runtime. A stack holds the address and credentials of that environment, not the logic. At runtime, when a hook or wrapper is configured to use a stack, Celigo dispatches that function's execution to the stack instead of running it on its own managed runtime.
Concerns when managing stacks:
- Necessity -- most accounts never need a stack; the hosted runtime handles the vast majority of extension logic. A stack is for a real trigger (see the decision matrix).
- Type and config --
server(a self-hosted HTTP endpoint) orlambda(an AWS Lambda function), each with its own config block. - Credentials -- a server carries an auto-generated
systemToken; a lambda carries AWS keys. Both are masked in responses and demand credential discipline. - References -- a stack does nothing on its own. It matters only once a hook (via
_stackIdon an export/import) or a wrapper connection (viawrapper._stackId) points at it.
Stacks are a resource type in their own right. They are referenced by script hooks and by wrapper connections. No tool on the Celigo Platform MCP server reads or changes a stack or its token, so manage them with the CLI, the REST API (/v1/stacks) or the UI; over MCP, a hook's _stackId on its export or import and a wrapper connection's wrapper._stackId still show which stack they use.
The Stack Is the Runtime, Not the Code
The distinction the whole domain hangs on: