Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a24275e21b | |||
| 872e620342 |
@@ -1,4 +1,3 @@
|
|||||||
import { readFileSync } from "node:fs";
|
|
||||||
import { access, constants } from "node:fs/promises";
|
import { access, constants } from "node:fs/promises";
|
||||||
import * as core from "@actions/core";
|
import * as core from "@actions/core";
|
||||||
import { createMcpConfig } from "../mcp/config.ts";
|
import { createMcpConfig } from "../mcp/config.ts";
|
||||||
@@ -193,29 +192,6 @@ function processJSONChunk(chunk: string, agent?: ClaudeAgent): void {
|
|||||||
],
|
],
|
||||||
])
|
])
|
||||||
);
|
);
|
||||||
|
|
||||||
// Check for failed MCP servers and show debug logs
|
|
||||||
if (parsedChunk.mcp_servers?.length > 0) {
|
|
||||||
const failedServers = parsedChunk.mcp_servers.filter(
|
|
||||||
(server: any) => server.status === "failed"
|
|
||||||
);
|
|
||||||
if (failedServers.length > 0) {
|
|
||||||
const failedNames = failedServers.map((server: any) => server.name).join(", ");
|
|
||||||
|
|
||||||
// Try to read MCP server debug logs
|
|
||||||
let debugInfo = "";
|
|
||||||
try {
|
|
||||||
const logContent = readFileSync("/tmp/mcp-server.log", "utf-8");
|
|
||||||
core.error("MCP Server Debug Log:");
|
|
||||||
core.error(logContent);
|
|
||||||
debugInfo = " (see debug log above)";
|
|
||||||
} catch (logError) {
|
|
||||||
debugInfo = ` (could not read debug log: ${logError instanceof Error ? logError.message : String(logError)})`;
|
|
||||||
}
|
|
||||||
|
|
||||||
throw new Error(`MCP servers failed to start: ${failedNames}${debugInfo}`);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|||||||
@@ -25500,7 +25500,6 @@ var core4 = __toESM(require_core(), 1);
|
|||||||
var core2 = __toESM(require_core(), 1);
|
var core2 = __toESM(require_core(), 1);
|
||||||
|
|
||||||
// agents/claude.ts
|
// agents/claude.ts
|
||||||
var import_node_fs = require("node:fs");
|
|
||||||
var import_promises = require("node:fs/promises");
|
var import_promises = require("node:fs/promises");
|
||||||
var core = __toESM(require_core(), 1);
|
var core = __toESM(require_core(), 1);
|
||||||
|
|
||||||
@@ -25515,7 +25514,7 @@ function createMcpConfig(githubInstallationToken) {
|
|||||||
{
|
{
|
||||||
mcpServers: {
|
mcpServers: {
|
||||||
minimal_github_comment: {
|
minimal_github_comment: {
|
||||||
command: `${actionPath}/mcp/debug-server.sh`,
|
command: "node",
|
||||||
args: [`${actionPath}/mcp/server.ts`],
|
args: [`${actionPath}/mcp/server.ts`],
|
||||||
env: {
|
env: {
|
||||||
GITHUB_INSTALLATION_TOKEN: githubInstallationToken,
|
GITHUB_INSTALLATION_TOKEN: githubInstallationToken,
|
||||||
@@ -25859,24 +25858,6 @@ function processJSONChunk(chunk, agent) {
|
|||||||
]
|
]
|
||||||
])
|
])
|
||||||
);
|
);
|
||||||
if (parsedChunk.mcp_servers?.length > 0) {
|
|
||||||
const failedServers = parsedChunk.mcp_servers.filter(
|
|
||||||
(server) => server.status === "failed"
|
|
||||||
);
|
|
||||||
if (failedServers.length > 0) {
|
|
||||||
const failedNames = failedServers.map((server) => server.name).join(", ");
|
|
||||||
let debugInfo = "";
|
|
||||||
try {
|
|
||||||
const logContent = (0, import_node_fs.readFileSync)("/tmp/mcp-server.log", "utf-8");
|
|
||||||
core.error("MCP Server Debug Log:");
|
|
||||||
core.error(logContent);
|
|
||||||
debugInfo = " (see debug log above)";
|
|
||||||
} catch (logError) {
|
|
||||||
debugInfo = ` (could not read debug log: ${logError instanceof Error ? logError.message : String(logError)})`;
|
|
||||||
}
|
|
||||||
throw new Error(`MCP servers failed to start: ${failedNames}${debugInfo}`);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "assistant":
|
case "assistant":
|
||||||
|
|||||||
+1
-1
@@ -13,7 +13,7 @@ export function createMcpConfig(githubInstallationToken: string) {
|
|||||||
{
|
{
|
||||||
mcpServers: {
|
mcpServers: {
|
||||||
minimal_github_comment: {
|
minimal_github_comment: {
|
||||||
command: `${actionPath}/mcp/debug-server.sh`,
|
command: "node",
|
||||||
args: [`${actionPath}/mcp/server.ts`],
|
args: [`${actionPath}/mcp/server.ts`],
|
||||||
env: {
|
env: {
|
||||||
GITHUB_INSTALLATION_TOKEN: githubInstallationToken,
|
GITHUB_INSTALLATION_TOKEN: githubInstallationToken,
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Wrapper script to capture MCP server logs for debugging
|
|
||||||
LOG_FILE="/tmp/mcp-server.log"
|
|
||||||
|
|
||||||
echo "=== MCP Server Debug Wrapper Starting ===" >> "$LOG_FILE"
|
|
||||||
echo "Timestamp: $(date)" >> "$LOG_FILE"
|
|
||||||
echo "Working directory: $(pwd)" >> "$LOG_FILE"
|
|
||||||
echo "Environment variables:" >> "$LOG_FILE"
|
|
||||||
env | grep -E "(GITHUB_|MCP_|NODE_)" >> "$LOG_FILE"
|
|
||||||
echo "Node.js version: $(node --version)" >> "$LOG_FILE"
|
|
||||||
echo "Arguments: $@" >> "$LOG_FILE"
|
|
||||||
echo "=== Starting MCP Server ===" >> "$LOG_FILE"
|
|
||||||
|
|
||||||
# Execute the actual MCP server, capturing both stdout and stderr
|
|
||||||
exec node "$@" 2>&1 | tee -a "$LOG_FILE"
|
|
||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@pullfrog/action",
|
"name": "@pullfrog/action",
|
||||||
"version": "0.0.19",
|
"version": "0.0.20",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"files": [
|
"files": [
|
||||||
"index.js",
|
"index.js",
|
||||||
|
|||||||
Reference in New Issue
Block a user