Skip to content

v2.0.0

Choose a tag to compare

@leggetter leggetter released this 18 Mar 11:54
· 19 commits to main since this release
444dcba

Summary

This PR delivers the bulk of the Hookdeck CLI v2.0.0 release on top of the last GA tag (v1.9.1). Main user-facing additions: an MCP server for the Event Gateway, first-class Issues CLI commands, consolidated Metrics queries, and new telemetry instrumentation with a supported opt-out.

Breaking Changes / Migration

  • Global --config flag renamed to --hookdeck-config

    • Reason: avoids conflicts with source/destination commands that accept JSON objects via flags also named --config.
    • Update scripts: replace hookdeck --config /path with hookdeck --hookdeck-config /path.
  • New --local flag for login and ci

    • hookdeck login --local and hookdeck ci --local save credentials/config to the current directory under .hookdeck/config.toml.
    • --local cannot be used together with --hookdeck-config.

New Features

Hookdeck Event Gateway MCP Server (beta): hookdeck gateway mcp

  • Starts a stdio JSON-RPC MCP server exposing Event Gateway capabilities as tools for LLM clients.
  • Tooling focuses on investigation workflows (inspect/query most resources; no broad write access beyond what is intentionally scoped).
  • Auth behavior:
    • If already authenticated: resource tools are available immediately.
    • If unauthenticated: a hookdeck_login tool is registered to perform browser-based device auth inside the MCP flow.
  • Tools exposed (high level): hookdeck_help, hookdeck_sources, hookdeck_destinations, hookdeck_connections, hookdeck_requests, hookdeck_events, hookdeck_attempts, hookdeck_transformations, hookdeck_issues, hookdeck_metrics, hookdeck_projects, hookdeck_login.

Issues Command (Event Gateway)

New hookdeck gateway issue command group (alias: hookdeck gateway issues) with:

  • list (filters: --type, --status, --issue-trigger-id, sorting, pagination)
  • get <issue-id>
  • count (filters via type/status)
  • update <issue-id> --status <OPENED|IGNORED|ACKNOWLEDGED|RESOLVED>
  • dismiss <issue-id> [--force] (confirmation prompt unless --force)

Metrics Consolidation

  • Consolidated metrics queries into resource-aligned subcommands:
    • hookdeck gateway metrics events
    • hookdeck gateway metrics requests
    • hookdeck gateway metrics attempts
    • hookdeck gateway metrics transformations
  • Common behavior:
    • --start and --end are required (ISO 8601 date-time)
    • Supports --measures and --dimensions to choose/shape the returned metrics.
    • Per-issue metrics require --issue-id when routing needs an explicit issue dimension.

CLI Telemetry Instrumentation + Opt-out

  • Telemetry is automatically initialized before command execution and sent with identifying context (CLI source, environment, command context, and invocation correlation).
  • Manage opt-out via:
    • Command: hookdeck telemetry enabled|disabled
    • Config/env: HOOKDECK_CLI_TELEMETRY_DISABLED (and corresponding config setting)

Improvements / Behavior Changes

  • Project types + gateway gating

    • hookdeck project use and related commands now account for project types (Gateway/Outpost/Console) and ensure gateway-only commands run against a Gateway project.
    • Outbound project mode is treated as Gateway for gating purposes.
  • Connection rules CLI fixes

    • Improved handling/parsing for certain rule flag inputs, including JSON parsing behavior for --rule-filter-headers.
  • Login/CI UX updates

    • Added --local option for both hookdeck login and hookdeck ci to pin credentials/config under the current directory.

Internal / Reliability / Infrastructure

  • Deprecated Hookdeck Go SDK removed and replaced with a direct HTTP API client (new API version), aligning CLI runtime behavior with the current backend.
  • MCP and CLI test coverage was expanded significantly (including MCP server unit/integration tests).
  • Acceptance test infrastructure was improved for parallel execution.