From 066d38d7380cb51f3b4f2cca5bf616e7de10b58b Mon Sep 17 00:00:00 2001 From: Brian McKenna Date: Sun, 15 Feb 2026 23:42:24 +1100 Subject: [PATCH] Fix call to Claude Code CLI --- src/Bot/Claude.hs | 22 +++------------------- 1 file changed, 3 insertions(+), 19 deletions(-) diff --git a/src/Bot/Claude.hs b/src/Bot/Claude.hs index df93643..959329a 100644 --- a/src/Bot/Claude.hs +++ b/src/Bot/Claude.hs @@ -11,10 +11,7 @@ import Data.ByteString.Lazy qualified as BL import Data.Text (Text) import Data.Text qualified as T import Data.Text.Encoding qualified as TE -import Data.Text.IO qualified as TIO -import System.Directory (getTemporaryDirectory, removeFile) import System.Exit (ExitCode (..)) -import System.FilePath (()) import System.Process (readProcessWithExitCode) data ReviewOutput = ReviewOutput @@ -68,20 +65,12 @@ reviewJsonSchema = unlines invokeClaudeReview :: Text -> IO (Either String ReviewOutput) invokeClaudeReview prompt = do - tmpDir <- getTemporaryDirectory - let promptFile = tmpDir "claude-review-prompt.txt" - schemaFile = tmpDir "claude-review-schema.json" - TIO.writeFile promptFile prompt - writeFile schemaFile reviewJsonSchema (exitCode, stdout, stderr_) <- readProcessWithExitCode "claude" - [ "-p" + [ "-p", T.unpack prompt , "--output-format", "json" , "--max-turns", "1" - , "--prompt-file", promptFile - , "--json-schema", schemaFile + , "--json-schema", reviewJsonSchema ] "" - removeFile promptFile - removeFile schemaFile case exitCode of ExitSuccess -> pure $ parseClaudeJsonOutput stdout ExitFailure code -> @@ -89,16 +78,11 @@ invokeClaudeReview prompt = do invokeClaudeReply :: Text -> IO (Either String Text) invokeClaudeReply prompt = do - tmpDir <- getTemporaryDirectory - let promptFile = tmpDir "claude-reply-prompt.txt" - TIO.writeFile promptFile prompt (exitCode, stdout, stderr_) <- readProcessWithExitCode "claude" - [ "-p" + [ "-p", T.unpack prompt , "--output-format", "json" , "--max-turns", "1" - , "--prompt-file", promptFile ] "" - removeFile promptFile case exitCode of ExitSuccess -> pure $ parseClaudeTextOutput stdout ExitFailure code ->