@newrelic/preflight 1.4.3 → 1.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/hooks/collector-script.d.ts.map +1 -1
- package/dist/hooks/collector-script.js +210 -5
- package/dist/hooks/collector-script.js.map +1 -1
- package/dist/platforms/cursor-adapter.d.ts.map +1 -1
- package/dist/platforms/cursor-adapter.js +49 -7
- package/dist/platforms/cursor-adapter.js.map +1 -1
- package/dist/platforms/windsurf-adapter.d.ts.map +1 -1
- package/dist/platforms/windsurf-adapter.js +12 -4
- package/dist/platforms/windsurf-adapter.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collector-script.d.ts","sourceRoot":"","sources":["../../src/hooks/collector-script.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG;AAwBH;;;;;;;;;GASG;AACH,iBAAS,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAQjD;AA2BD,iBAAS,gBAAgB,IAAI,OAAO,CAInC;AA0BD,iBAAS,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAarC;AAMD,iBAAS,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAGzC;AAED,iBAAS,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQtC;AAED,iBAAS,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAGvD;AAcD,UAAU,eAAe;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD,iBAAS,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAKhG;AAED,iBAAS,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAyC9E;AAsCD,iBAAS,uBAAuB,CAAC,IAAI,EAAE;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GAAG,IAAI,CAoEP;AAcD;;;;GAIG;AACH,eAAO,MAAM,OAAO;qBACD,MAAM,KAAG,MAAM;CACjC,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,MAAM,EAAE,CAsB9E;AAID,iBAAS,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CA6CpD;
|
|
1
|
+
{"version":3,"file":"collector-script.d.ts","sourceRoot":"","sources":["../../src/hooks/collector-script.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG;AAwBH;;;;;;;;;GASG;AACH,iBAAS,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAQjD;AA2BD,iBAAS,gBAAgB,IAAI,OAAO,CAInC;AA0BD,iBAAS,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAarC;AAMD,iBAAS,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAGzC;AAED,iBAAS,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQtC;AAED,iBAAS,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAGvD;AAcD,UAAU,eAAe;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD,iBAAS,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAKhG;AAED,iBAAS,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAyC9E;AAsCD,iBAAS,uBAAuB,CAAC,IAAI,EAAE;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GAAG,IAAI,CAoEP;AAcD;;;;GAIG;AACH,eAAO,MAAM,OAAO;qBACD,MAAM,KAAG,MAAM;CACjC,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,MAAM,EAAE,CAsB9E;AAID,iBAAS,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CA6CpD;AA6MD,iBAAS,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAmTtC;AAGD,OAAO,EACL,WAAW,EACX,MAAM,EACN,SAAS,EACT,MAAM,EACN,QAAQ,EACR,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,aAAa,GACd,CAAC;AAkBF;;;;;GAKG;AACH,eAAO,MAAM,QAAQ;6BACM,MAAM,GAAG,MAAM,KAAG,MAAM;CAClD,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,iBAAS,aAAa,IAAI,MAAM,CAI/B"}
|
|
@@ -576,6 +576,15 @@ function extractOutputMeta(toolName, output) {
|
|
|
576
576
|
}
|
|
577
577
|
return undefined;
|
|
578
578
|
}
|
|
579
|
+
/**
|
|
580
|
+
* Windsurf nests all event-specific data under `tool_info` instead of flat
|
|
581
|
+
* top-level fields (https://docs.windsurf.com/windsurf/cascade/hooks).
|
|
582
|
+
* Returns an empty object when tool_info is missing or malformed so callers
|
|
583
|
+
* can destructure without null checks.
|
|
584
|
+
*/
|
|
585
|
+
function getWindsurfToolInfo(data) {
|
|
586
|
+
return data.tool_info !== null && typeof data.tool_info === 'object' ? data.tool_info : {};
|
|
587
|
+
}
|
|
579
588
|
function processHook(raw) {
|
|
580
589
|
let data;
|
|
581
590
|
try {
|
|
@@ -584,10 +593,22 @@ function processHook(raw) {
|
|
|
584
593
|
catch {
|
|
585
594
|
return; // Malformed JSON — skip silently
|
|
586
595
|
}
|
|
596
|
+
// Cursor (https://cursor.com/docs/agent/hooks) never sends session_id —
|
|
597
|
+
// conversation_id is its closest analog (one per chat, like a Claude Code
|
|
598
|
+
// session). Claude Code and Kiro always send session_id, so this only
|
|
599
|
+
// takes effect for Cursor events.
|
|
600
|
+
// Windsurf (https://docs.windsurf.com/windsurf/cascade/hooks) never sends
|
|
601
|
+
// session_id either — trajectory_id is its closest analog, the same role
|
|
602
|
+
// conversation_id plays for Cursor.
|
|
603
|
+
const sessionId = data.session_id ?? data.conversation_id ?? data.trajectory_id;
|
|
587
604
|
// Drop a PPID breadcrumb at the very top so the MCP server can resolve its
|
|
588
605
|
// Claude Code session_id without an env-var or initialize-payload extension.
|
|
589
606
|
// The function itself is a no-op when sessionId is missing or invalid, and
|
|
590
|
-
// short-circuits if the breadcrumb is already current.
|
|
607
|
+
// short-circuits if the breadcrumb is already current. Cursor's
|
|
608
|
+
// conversation_id is deliberately excluded here — there is no confirmed
|
|
609
|
+
// evidence that Cursor's own MCP-server child process shares Claude Code's
|
|
610
|
+
// ancestry-based session-resolution model, so extending this to
|
|
611
|
+
// conversation_id would be a guess, not a fix.
|
|
591
612
|
if (typeof data.session_id === 'string' && data.session_id.length > 0) {
|
|
592
613
|
writePpidBreadcrumb(data.session_id);
|
|
593
614
|
}
|
|
@@ -596,7 +617,11 @@ function processHook(raw) {
|
|
|
596
617
|
// Normalize case so both are recognized without hard-coding per-platform
|
|
597
618
|
// spellings here (this file intentionally has no platform-adapter import —
|
|
598
619
|
// see the file's own "no heavy imports" design constraint).
|
|
599
|
-
|
|
620
|
+
// Windsurf sends the event name as agent_action_name, not hook_event_name
|
|
621
|
+
// (https://docs.windsurf.com/windsurf/cascade/hooks) — already lowercase
|
|
622
|
+
// with underscores (e.g. "pre_read_code"), but .toLowerCase() is harmless
|
|
623
|
+
// and keeps this line uniform with every other platform's derivation.
|
|
624
|
+
const eventName = (data.hook_event_name ?? data.agent_action_name)?.toLowerCase();
|
|
600
625
|
const toolName = data.tool_name ?? 'unknown';
|
|
601
626
|
const timestamp = Date.now();
|
|
602
627
|
const recordContent = getRecordContent();
|
|
@@ -652,6 +677,186 @@ function processHook(raw) {
|
|
|
652
677
|
isInterrupt: data.is_interrupt ?? false,
|
|
653
678
|
};
|
|
654
679
|
}
|
|
680
|
+
else if (eventName === 'beforeshellexecution') {
|
|
681
|
+
// Cursor's shell hooks carry no tool_name field — the event name itself
|
|
682
|
+
// identifies the tool. Confirmed payload shape:
|
|
683
|
+
// https://blog.gitbutler.com/cursor-hooks-deep-dive
|
|
684
|
+
const command = data.command ?? '';
|
|
685
|
+
event = {
|
|
686
|
+
mode: 'pre',
|
|
687
|
+
tool: 'Bash',
|
|
688
|
+
timestamp,
|
|
689
|
+
inputSize: sizeOf(command),
|
|
690
|
+
inputHash: hashInput(command),
|
|
691
|
+
toolInput: { command: redact(command) },
|
|
692
|
+
};
|
|
693
|
+
}
|
|
694
|
+
else if (eventName === 'aftershellexecution') {
|
|
695
|
+
// Cursor doesn't document a distinct failure event for shell (unlike
|
|
696
|
+
// Claude Code's PostToolUseFailure) and no source confirms afterShellExecution's
|
|
697
|
+
// exact payload fields — treat as success absent any failure signal, same
|
|
698
|
+
// convention as Claude Code's PostToolUse-without-PostToolUseFailure.
|
|
699
|
+
event = {
|
|
700
|
+
mode: 'post',
|
|
701
|
+
tool: 'Bash',
|
|
702
|
+
timestamp,
|
|
703
|
+
success: true,
|
|
704
|
+
};
|
|
705
|
+
}
|
|
706
|
+
else if (eventName === 'beforemcpexecution') {
|
|
707
|
+
// tool_name here is an arbitrary third-party MCP tool name, not one of
|
|
708
|
+
// Preflight's canonical built-in tool names — passed through as-is
|
|
709
|
+
// (identity), matching how src/platforms/generic-mcp-adapter.ts already
|
|
710
|
+
// treats third-party MCP tool names.
|
|
711
|
+
const mcpTool = data.tool_name ?? 'unknown';
|
|
712
|
+
event = {
|
|
713
|
+
mode: 'pre',
|
|
714
|
+
tool: mcpTool,
|
|
715
|
+
timestamp,
|
|
716
|
+
inputSize: sizeOf(data.tool_input),
|
|
717
|
+
inputHash: hashInput(data.tool_input),
|
|
718
|
+
};
|
|
719
|
+
}
|
|
720
|
+
else if (eventName === 'aftermcpexecution') {
|
|
721
|
+
// Same identity tool-name treatment and success-by-default convention as
|
|
722
|
+
// aftershellexecution above — no source confirms this event's exact
|
|
723
|
+
// success/output fields.
|
|
724
|
+
const mcpTool = data.tool_name ?? 'unknown';
|
|
725
|
+
event = {
|
|
726
|
+
mode: 'post',
|
|
727
|
+
tool: mcpTool,
|
|
728
|
+
timestamp,
|
|
729
|
+
success: true,
|
|
730
|
+
};
|
|
731
|
+
}
|
|
732
|
+
else if (eventName === 'beforereadfile') {
|
|
733
|
+
// Cursor has no "afterReadFile" event — beforeReadFile is the only file-read
|
|
734
|
+
// hook that exists (confirmed: https://blog.gitbutler.com/cursor-hooks-deep-dive
|
|
735
|
+
// documents 6 original hooks, none pair with beforeReadFile). Emitted directly
|
|
736
|
+
// as a completed post event — the same code path event-processor.ts already
|
|
737
|
+
// uses for an orphaned PostToolUse with no matching pre-event — rather than
|
|
738
|
+
// inventing new pairing semantics for a "pre-only" tool call.
|
|
739
|
+
event = {
|
|
740
|
+
mode: 'post',
|
|
741
|
+
tool: 'Read',
|
|
742
|
+
timestamp,
|
|
743
|
+
success: true,
|
|
744
|
+
...(data.file_path !== undefined && { toolInput: { file_path: data.file_path } }),
|
|
745
|
+
};
|
|
746
|
+
// data.content carries the actual file contents — never write it to the
|
|
747
|
+
// buffer unless recordContent is enabled, same as Claude Code's existing
|
|
748
|
+
// tool_response/tool_input content handling.
|
|
749
|
+
if (recordContent && data.content !== undefined) {
|
|
750
|
+
event.outputContent = redact(truncate(data.content, maxContentLen));
|
|
751
|
+
}
|
|
752
|
+
}
|
|
753
|
+
else if (eventName === 'afterfileedit') {
|
|
754
|
+
// Cursor has no "beforeFileEdit" event — afterFileEdit is post-only,
|
|
755
|
+
// mirror image of beforeReadFile above: emitted directly as a completed
|
|
756
|
+
// post event via the same orphaned-post code path.
|
|
757
|
+
event = {
|
|
758
|
+
mode: 'post',
|
|
759
|
+
tool: 'Edit',
|
|
760
|
+
timestamp,
|
|
761
|
+
success: true,
|
|
762
|
+
...(data.file_path !== undefined && { toolInput: { file_path: data.file_path } }),
|
|
763
|
+
};
|
|
764
|
+
}
|
|
765
|
+
else if (eventName === 'pre_read_code') {
|
|
766
|
+
// Confirmed payload: https://docs.windsurf.com/windsurf/cascade/hooks#pre_read_code
|
|
767
|
+
const filePath = getWindsurfToolInfo(data).file_path;
|
|
768
|
+
event = {
|
|
769
|
+
mode: 'pre',
|
|
770
|
+
tool: 'Read',
|
|
771
|
+
timestamp,
|
|
772
|
+
inputSize: sizeOf(filePath),
|
|
773
|
+
inputHash: hashInput(filePath),
|
|
774
|
+
...(typeof filePath === 'string' && { toolInput: { file_path: filePath } }),
|
|
775
|
+
};
|
|
776
|
+
}
|
|
777
|
+
else if (eventName === 'post_read_code') {
|
|
778
|
+
// No source documents a failure signal for this event — success: true
|
|
779
|
+
// unconditionally, same convention as Cursor's afterShellExecution.
|
|
780
|
+
const filePath = getWindsurfToolInfo(data).file_path;
|
|
781
|
+
event = {
|
|
782
|
+
mode: 'post',
|
|
783
|
+
tool: 'Read',
|
|
784
|
+
timestamp,
|
|
785
|
+
success: true,
|
|
786
|
+
...(typeof filePath === 'string' && { toolInput: { file_path: filePath } }),
|
|
787
|
+
};
|
|
788
|
+
}
|
|
789
|
+
else if (eventName === 'pre_write_code') {
|
|
790
|
+
// Maps to 'Edit' not 'Write' — tool_info carries an edits[] array of
|
|
791
|
+
// {old_string, new_string}, the same shape as Claude Code's Edit tool,
|
|
792
|
+
// not a full-file Write. Mirrors Cursor's afterFileEdit -> 'Edit'.
|
|
793
|
+
const filePath = getWindsurfToolInfo(data).file_path;
|
|
794
|
+
event = {
|
|
795
|
+
mode: 'pre',
|
|
796
|
+
tool: 'Edit',
|
|
797
|
+
timestamp,
|
|
798
|
+
inputSize: sizeOf(filePath),
|
|
799
|
+
inputHash: hashInput(filePath),
|
|
800
|
+
...(typeof filePath === 'string' && { toolInput: { file_path: filePath } }),
|
|
801
|
+
};
|
|
802
|
+
}
|
|
803
|
+
else if (eventName === 'post_write_code') {
|
|
804
|
+
const filePath = getWindsurfToolInfo(data).file_path;
|
|
805
|
+
event = {
|
|
806
|
+
mode: 'post',
|
|
807
|
+
tool: 'Edit',
|
|
808
|
+
timestamp,
|
|
809
|
+
success: true,
|
|
810
|
+
...(typeof filePath === 'string' && { toolInput: { file_path: filePath } }),
|
|
811
|
+
};
|
|
812
|
+
}
|
|
813
|
+
else if (eventName === 'pre_run_command') {
|
|
814
|
+
// Confirmed payload: https://docs.windsurf.com/windsurf/cascade/hooks#pre_run_command
|
|
815
|
+
const commandLineRaw = getWindsurfToolInfo(data).command_line;
|
|
816
|
+
const commandLine = typeof commandLineRaw === 'string' ? commandLineRaw : '';
|
|
817
|
+
event = {
|
|
818
|
+
mode: 'pre',
|
|
819
|
+
tool: 'Bash',
|
|
820
|
+
timestamp,
|
|
821
|
+
inputSize: sizeOf(commandLine),
|
|
822
|
+
inputHash: hashInput(commandLine),
|
|
823
|
+
toolInput: { command: redact(commandLine) },
|
|
824
|
+
};
|
|
825
|
+
}
|
|
826
|
+
else if (eventName === 'post_run_command') {
|
|
827
|
+
// No source documents an exit-code/output field for this event —
|
|
828
|
+
// success: true unconditionally, same gap as Cursor's afterShellExecution.
|
|
829
|
+
event = {
|
|
830
|
+
mode: 'post',
|
|
831
|
+
tool: 'Bash',
|
|
832
|
+
timestamp,
|
|
833
|
+
success: true,
|
|
834
|
+
};
|
|
835
|
+
}
|
|
836
|
+
else if (eventName === 'pre_mcp_tool_use') {
|
|
837
|
+
// mcp_tool_name is an arbitrary third-party MCP tool name, passed through
|
|
838
|
+
// as-is (identity) — same treatment as Cursor's beforeMCPExecution and
|
|
839
|
+
// src/platforms/generic-mcp-adapter.ts.
|
|
840
|
+
const toolInfo = getWindsurfToolInfo(data);
|
|
841
|
+
const mcpTool = typeof toolInfo.mcp_tool_name === 'string' ? toolInfo.mcp_tool_name : 'unknown';
|
|
842
|
+
event = {
|
|
843
|
+
mode: 'pre',
|
|
844
|
+
tool: mcpTool,
|
|
845
|
+
timestamp,
|
|
846
|
+
inputSize: sizeOf(toolInfo.mcp_tool_arguments),
|
|
847
|
+
inputHash: hashInput(toolInfo.mcp_tool_arguments),
|
|
848
|
+
};
|
|
849
|
+
}
|
|
850
|
+
else if (eventName === 'post_mcp_tool_use') {
|
|
851
|
+
const toolInfo = getWindsurfToolInfo(data);
|
|
852
|
+
const mcpTool = typeof toolInfo.mcp_tool_name === 'string' ? toolInfo.mcp_tool_name : 'unknown';
|
|
853
|
+
event = {
|
|
854
|
+
mode: 'post',
|
|
855
|
+
tool: mcpTool,
|
|
856
|
+
timestamp,
|
|
857
|
+
success: true,
|
|
858
|
+
};
|
|
859
|
+
}
|
|
655
860
|
else {
|
|
656
861
|
// Unknown hook event — ignore silently
|
|
657
862
|
return;
|
|
@@ -661,13 +866,13 @@ function processHook(raw) {
|
|
|
661
866
|
event.cwd = data.cwd;
|
|
662
867
|
if (data.permission_mode)
|
|
663
868
|
event.permissionMode = data.permission_mode;
|
|
664
|
-
if (
|
|
665
|
-
event.sessionId =
|
|
869
|
+
if (sessionId)
|
|
870
|
+
event.sessionId = sessionId;
|
|
666
871
|
if (data.tool_use_id)
|
|
667
872
|
event.toolUseId = data.tool_use_id;
|
|
668
873
|
// Write to buffer — wrapped in try/catch for resilience.
|
|
669
874
|
try {
|
|
670
|
-
const bufferPath = getBufferPath(
|
|
875
|
+
const bufferPath = getBufferPath(sessionId);
|
|
671
876
|
const bufferDir = dirname(bufferPath);
|
|
672
877
|
if (!existsSync(bufferDir)) {
|
|
673
878
|
mkdirSync(bufferDir, { recursive: true, mode: 0o700 });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collector-script.js","sourceRoot":"","sources":["../../src/hooks/collector-script.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"collector-script.js","sourceRoot":"","sources":["../../src/hooks/collector-script.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor-adapter.d.ts","sourceRoot":"","sources":["../../src/platforms/cursor-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"cursor-adapter.d.ts","sourceRoot":"","sources":["../../src/platforms/cursor-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAsDpB,qBAAa,aAAc,YAAW,eAAe;IACnD,QAAQ,CAAC,YAAY,YAAY;IAE3B,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IASxD,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,kBAAkB;IAqBnD,WAAW,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM;IAI7C,kBAAkB,IAAI,uBAAuB;IAO7C,0BAA0B,IAAI,MAAM;IAwBpC,WAAW,IAAI,OAAO;CAOvB"}
|
|
@@ -1,3 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Maps Cursor tool names to the normalized Claude Code tool vocabulary.
|
|
3
|
+
* Two distinct vocabularies coexist here, both confirmed against real Cursor
|
|
4
|
+
* documentation and a Cursor engineer's own forum replies
|
|
5
|
+
* (https://forum.cursor.com/t/cursor-cli-doesnt-send-all-events-defined-in-hooks/148316):
|
|
6
|
+
*
|
|
7
|
+
* 1. Cursor's per-action hook events (beforeShellExecution, beforeMCPExecution,
|
|
8
|
+
* beforeReadFile, afterFileEdit) carry no generic tool_name field at all —
|
|
9
|
+
* src/hooks/collector-script.ts derives the tool name directly from the
|
|
10
|
+
* event name itself, so this map is never consulted for those events.
|
|
11
|
+
* 2. Cursor's generic preToolUse/postToolUse events (confirmed to exist, but
|
|
12
|
+
* with a payload schema that is only partially documented) carry
|
|
13
|
+
* tool_name as one of a small fixed vocabulary: Shell/Read/Write/Task/MCP.
|
|
14
|
+
* Read/Write need no translation (Cursor's names already match Preflight's
|
|
15
|
+
* canonical names). MCP is deliberately left unmapped — collapsing an
|
|
16
|
+
* arbitrary downstream MCP tool call into the literal string "MCP" would
|
|
17
|
+
* discard information no source confirms how to recover from this event
|
|
18
|
+
* alone; mapToolName() correctly returns 'Unknown' for it, and the caller
|
|
19
|
+
* (src/hooks/event-processor.ts's mapToolNameOrOriginal()) preserves "MCP"
|
|
20
|
+
* as the original name rather than collapsing it further.
|
|
21
|
+
*/
|
|
1
22
|
const CURSOR_TOOL_MAP = {
|
|
2
23
|
edit_file: 'Edit',
|
|
3
24
|
read_file: 'Read',
|
|
@@ -9,12 +30,20 @@ const CURSOR_TOOL_MAP = {
|
|
|
9
30
|
codebase_search: 'Grep',
|
|
10
31
|
delete_file: 'Delete',
|
|
11
32
|
create_file: 'Write',
|
|
33
|
+
Shell: 'Bash',
|
|
34
|
+
Task: 'Agent',
|
|
35
|
+
Read: 'Read',
|
|
36
|
+
Write: 'Write',
|
|
12
37
|
};
|
|
13
38
|
export class CursorAdapter {
|
|
14
39
|
platformName = 'cursor';
|
|
15
40
|
async initialize(_config) {
|
|
16
|
-
// Cursor
|
|
17
|
-
//
|
|
41
|
+
// Cursor's built-in tool activity (shell commands, file reads/edits) is
|
|
42
|
+
// captured via its own hooks system (.cursor/hooks.json), a local
|
|
43
|
+
// process protocol unrelated to MCP — see getHookInstallInstructions().
|
|
44
|
+
// MCP tool calls Cursor makes to third-party servers also flow through
|
|
45
|
+
// that same hooks system (beforeMCPExecution/afterMCPExecution), not
|
|
46
|
+
// through a Preflight-side MCP proxy.
|
|
18
47
|
}
|
|
19
48
|
normalizeToolCall(raw) {
|
|
20
49
|
const event = raw;
|
|
@@ -47,11 +76,24 @@ export class CursorAdapter {
|
|
|
47
76
|
getHookInstallInstructions() {
|
|
48
77
|
return [
|
|
49
78
|
'Cursor IDE Setup:',
|
|
50
|
-
'1.
|
|
51
|
-
'
|
|
52
|
-
'
|
|
53
|
-
'
|
|
54
|
-
'
|
|
79
|
+
'1. Register the preflight MCP server for nr_observe_* tools:',
|
|
80
|
+
' Open Cursor Settings > MCP, add a new server with command: npx preflight --stdio',
|
|
81
|
+
' Set the environment variables: NEW_RELIC_LICENSE_KEY, NEW_RELIC_ACCOUNT_ID',
|
|
82
|
+
'2. Configure Cursor hooks so tool-call activity (shell, file reads/edits, MCP) is',
|
|
83
|
+
' captured — create .cursor/hooks.json (project) or ~/.cursor/hooks.json (global):',
|
|
84
|
+
' {',
|
|
85
|
+
' "version": 1,',
|
|
86
|
+
' "hooks": {',
|
|
87
|
+
' "beforeShellExecution": [{ "command": "preflight-collector" }],',
|
|
88
|
+
' "afterShellExecution": [{ "command": "preflight-collector" }],',
|
|
89
|
+
' "beforeMCPExecution": [{ "command": "preflight-collector" }],',
|
|
90
|
+
' "afterMCPExecution": [{ "command": "preflight-collector" }],',
|
|
91
|
+
' "beforeReadFile": [{ "command": "preflight-collector" }],',
|
|
92
|
+
' "afterFileEdit": [{ "command": "preflight-collector" }]',
|
|
93
|
+
' }',
|
|
94
|
+
' }',
|
|
95
|
+
'3. Ensure preflight-collector is on your PATH (npm link, or npm install -g @newrelic/preflight)',
|
|
96
|
+
'4. Restart Cursor.',
|
|
55
97
|
].join('\n');
|
|
56
98
|
}
|
|
57
99
|
isSupported() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor-adapter.js","sourceRoot":"","sources":["../../src/platforms/cursor-adapter.ts"],"names":[],"mappings":"AAOA,MAAM,eAAe,GAA2B;IAC9C,SAAS,EAAE,MAAM;IACjB,SAAS,EAAE,MAAM;IACjB,oBAAoB,EAAE,MAAM;IAC5B,MAAM,EAAE,MAAM;IACd,cAAc,EAAE,MAAM;IACtB,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,MAAM;IACnB,eAAe,EAAE,MAAM;IACvB,WAAW,EAAE,QAAQ;IACrB,WAAW,EAAE,OAAO;
|
|
1
|
+
{"version":3,"file":"cursor-adapter.js","sourceRoot":"","sources":["../../src/platforms/cursor-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windsurf-adapter.d.ts","sourceRoot":"","sources":["../../src/platforms/windsurf-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAgCpB,qBAAa,eAAgB,YAAW,eAAe;IACrD,QAAQ,CAAC,YAAY,cAAc;IAE7B,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"windsurf-adapter.d.ts","sourceRoot":"","sources":["../../src/platforms/windsurf-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAgCpB,qBAAa,eAAgB,YAAW,eAAe;IACrD,QAAQ,CAAC,YAAY,cAAc;IAE7B,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxD,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,kBAAkB;IAqBnD,WAAW,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM;IAI7C,kBAAkB,IAAI,uBAAuB;IAO7C,0BAA0B,IAAI,MAAM;IAgBpC,WAAW,IAAI,OAAO;CAOvB"}
|
|
@@ -16,8 +16,11 @@ const WINDSURF_TOOL_MAP = {
|
|
|
16
16
|
export class WindsurfAdapter {
|
|
17
17
|
platformName = 'windsurf';
|
|
18
18
|
async initialize(_config) {
|
|
19
|
-
// Windsurf supports MCP natively
|
|
20
|
-
//
|
|
19
|
+
// Windsurf supports MCP natively via its own mcp_config.json. Built-in
|
|
20
|
+
// Cascade tool calls (file reads/writes, terminal commands, MCP calls)
|
|
21
|
+
// arrive through Windsurf's real Cascade Hooks system (.windsurf/hooks.json),
|
|
22
|
+
// handled by src/hooks/collector-script.ts — not through a file watcher
|
|
23
|
+
// or extension API. See https://docs.windsurf.com/windsurf/cascade/hooks.
|
|
21
24
|
}
|
|
22
25
|
normalizeToolCall(raw) {
|
|
23
26
|
const event = raw;
|
|
@@ -53,8 +56,13 @@ export class WindsurfAdapter {
|
|
|
53
56
|
'1. Open Windsurf Settings > MCP Servers',
|
|
54
57
|
'2. Add a new MCP server with command: npx preflight --stdio',
|
|
55
58
|
'3. Set the environment variables: NEW_RELIC_LICENSE_KEY, NEW_RELIC_ACCOUNT_ID',
|
|
56
|
-
'4. MCP tool calls via Cascade are captured automatically through the
|
|
57
|
-
'5. Built-in tool calls (file
|
|
59
|
+
'4. MCP tool calls via Cascade are captured automatically through the MCP connection',
|
|
60
|
+
'5. Built-in tool calls (file reads/writes, terminal commands) require Cascade Hooks:',
|
|
61
|
+
' a. Create .windsurf/hooks.json in your workspace root (or use the user/system-level path)',
|
|
62
|
+
' b. Register pre_read_code, post_read_code, pre_write_code, post_write_code,',
|
|
63
|
+
' pre_run_command, and post_run_command hooks, each running:',
|
|
64
|
+
' preflight-collector',
|
|
65
|
+
' c. See https://docs.windsurf.com/windsurf/cascade/hooks for the full hooks.json schema',
|
|
58
66
|
].join('\n');
|
|
59
67
|
}
|
|
60
68
|
isSupported() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windsurf-adapter.js","sourceRoot":"","sources":["../../src/platforms/windsurf-adapter.ts"],"names":[],"mappings":"AAOA,MAAM,iBAAiB,GAA2B;IAChD,WAAW,EAAE,MAAM;IACnB,YAAY,EAAE,OAAO;IACrB,WAAW,EAAE,MAAM;IACnB,aAAa,EAAE,MAAM;IACrB,MAAM,EAAE,MAAM;IACd,SAAS,EAAE,MAAM;IACjB,UAAU,EAAE,OAAO;IACnB,SAAS,EAAE,MAAM;IACjB,WAAW,EAAE,MAAM;IACnB,MAAM,EAAE,MAAM;IACd,WAAW,EAAE,OAAO;IACpB,WAAW,EAAE,QAAQ;IACrB,cAAc,EAAE,MAAM;CACvB,CAAC;AAgBF,MAAM,OAAO,eAAe;IACjB,YAAY,GAAG,UAAU,CAAC;IAEnC,KAAK,CAAC,UAAU,CAAC,OAAuB;QACtC,
|
|
1
|
+
{"version":3,"file":"windsurf-adapter.js","sourceRoot":"","sources":["../../src/platforms/windsurf-adapter.ts"],"names":[],"mappings":"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"}
|