Skip to main content
Hook interpolation now fails closed. A missing or unavailable {{ env.* }} or {{ secrets.* }} token in a command, URL, header, prompt, or model blocks the hook instead of firing it with an empty or partially resolved value. Ensure every referenced value is available where the hook runs.

Safer hook interpolation

Hook commands, URLs, headers, prompts, and models now carry typed interpolation through to execution instead of being flattened and reparsed. HTTP headers use the same narrow token syntax as other hook fields, and resolution failures consistently block command, HTTP, prompt, and agent hooks before they can act on incomplete data.

More

  • New GET, POST, PUT, and DELETE /api/v1/mcp-servers endpoints manage a shared MCP catalog with ETag concurrency; read responses expose configured key names without returning stored values
  • Run configurations can reference a server-managed MCP definition with id = "..." instead of repeating its transport settings
  • Workflow variables now live in SQLite; existing variables.json data is imported transactionally and renamed to a timestamped backup