iiRecord
Agentic AI Atlas · pre_tool (Cursor)
hook-surface:cursor.pre-toola5c.ai
II.
HookSurface JSON

hook-surface:cursor.pre-tool

Structured · live

pre_tool (Cursor) json

Inspect the normalized record payload exactly as the atlas UI reads it.

File · channels-hooks/hook-surfaces/native/cursor-pre-tool.yamlCluster · channels-hooks
Record JSON
{
  "id": "hook-surface:cursor.pre-tool",
  "_kind": "HookSurface",
  "_file": "channels-hooks/hook-surfaces/native/cursor-pre-tool.yaml",
  "_cluster": "channels-hooks",
  "attributes": {
    "eventName": "pre_tool (Cursor)",
    "displayName": "pre_tool (Cursor)",
    "kind": "native",
    "originVendor": "Cursor",
    "direction": "pre",
    "blocking": true,
    "family": "shell-hook",
    "payloadSchema": {
      "type": "object",
      "required": [
        "tool",
        "input"
      ],
      "properties": {
        "tool": {
          "type": "string"
        },
        "input": {
          "type": "object"
        }
      }
    },
    "description": "Cursor's pre-tool hook. Canonicalizes to pre-tool-use.\n"
  },
  "outgoingEdges": [
    {
      "from": "hook-surface:cursor.pre-tool",
      "to": "hook-surface:pre-tool-use",
      "kind": "canonicalized_to",
      "attributes": {}
    }
  ],
  "incomingEdges": [
    {
      "from": "agent-core-impl:cursor.core@current",
      "to": "hook-surface:cursor.pre-tool",
      "kind": "fires_hook",
      "attributes": {}
    },
    {
      "from": "agent-runtime-impl:cursor.runtime@current",
      "to": "hook-surface:cursor.pre-tool",
      "kind": "exposes",
      "attributes": {}
    },
    {
      "from": "hook-mapping:cursor-pre-tool-native",
      "to": "hook-surface:cursor.pre-tool",
      "kind": "maps_hook",
      "attributes": {}
    }
  ]
}