@pushary/agent-hooks 0.14.2 → 0.14.3

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.
@@ -587,11 +587,26 @@ export PUSHARY_API_KEY='${apiKey}'
587
587
  process.env.PUSHARY_API_KEY = apiKey;
588
588
  });
589
589
  };
590
+ var setupCustom = async (_apiKey) => {
591
+ console.log(`
592
+ ${bold2("Connect any other agent (MCP or HTTP)")}
593
+ `);
594
+ console.log(` ${dim2("Your key is saved as")} ${cyan2("$PUSHARY_API_KEY")} ${dim2("in your shell profile.")}`);
595
+ console.log();
596
+ console.log(` ${dim2("MCP clients (Windsurf, LangChain, custom) \u2014 add this server:")}`);
597
+ console.log(` ${cyan2("https://pushary.com/api/mcp/mcp")} ${dim2("with header")} ${cyan2("Authorization: Bearer $PUSHARY_API_KEY")}`);
598
+ console.log();
599
+ console.log(` ${dim2("No-code / HTTP (n8n, Zapier, scripts) \u2014 ask a human and wait:")}`);
600
+ console.log(` ${dim2("POST")} ${cyan2("https://pushary.com/api/v1/server/ask")} ${dim2("body")} ${cyan2('{"question":"Approve?","type":"confirm","wait":true}')}`);
601
+ console.log();
602
+ console.log(` ${dim2("Full guide:")} ${cyan2("https://pushary.com/docs/agents/connect-any-agent")}`);
603
+ };
590
604
  var AGENT_SETUP = {
591
605
  claude_code: setupClaudeCode,
592
606
  codex: setupCodex,
593
607
  hermes: setupHermes,
594
- cursor: setupCursor
608
+ cursor: setupCursor,
609
+ custom: setupCustom
595
610
  };
596
611
  var main = async () => {
597
612
  const version = getPackageVersion();
@@ -638,7 +653,8 @@ var main = async () => {
638
653
  claude_code: isInstalled("claude"),
639
654
  codex: isInstalled("codex"),
640
655
  hermes: isInstalled("hermes"),
641
- cursor: isInstalled("cursor")
656
+ cursor: isInstalled("cursor"),
657
+ custom: false
642
658
  };
643
659
  const hint = Object.values(detected).some(Boolean) ? "(detected agents pre-selected)" : "(space = toggle, enter = confirm)";
644
660
  const agents = await checkbox({
@@ -647,7 +663,8 @@ var main = async () => {
647
663
  { name: `Claude Code ${dim2("MCP + hooks + auto-allowed tools")}`, value: "claude_code", checked: detected.claude_code },
648
664
  { name: `Codex ${dim2("MCP + native hooks + auto-allowed tools")}`, value: "codex", checked: detected.codex },
649
665
  { name: `Hermes ${dim2("native plugin + auto-error notifications")}`, value: "hermes", checked: detected.hermes },
650
- { name: `Cursor ${dim2("MCP server")}`, value: "cursor", checked: detected.cursor }
666
+ { name: `Cursor ${dim2("MCP server")}`, value: "cursor", checked: detected.cursor },
667
+ { name: `Other ${dim2("any MCP or HTTP agent (Windsurf, n8n, custom)")}`, value: "custom", checked: false }
651
668
  ]
652
669
  });
653
670
  await saveApiKey(trimmedKey);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pushary/agent-hooks",
3
- "version": "0.14.2",
3
+ "version": "0.14.3",
4
4
  "description": "Permission hooks for AI coding agents: route tool approvals through Pushary push notifications",
5
5
  "author": "Pushary <business@pushary.com>",
6
6
  "homepage": "https://pushary.com",