MCPcopy Create free account
hub / github.com/claude-code-internals/claude-code-runnable / run

Function run

src/localRecoveryCli.ts:110–169  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

108}
109
110async function run(): Promise<void> {
111 const parsed = parseArgs(process.argv.slice(2))
112
113 if (parsed.command === 'help') { printHelp(); return }
114 if (parsed.command === 'version') { printVersion(); return }
115
116 if (!parsed.print) {
117 await runInteractive(parsed)
118 return
119 }
120
121 const prompt = parsed.prompt || (await readPromptFromStdin())
122 if (!prompt) {
123 process.stderr.write('Error: prompt is required\n')
124 process.exitCode = 1
125 return
126 }
127
128 const apiKey = process.env.ANTHROPIC_API_KEY
129 const authToken = process.env.ANTHROPIC_AUTH_TOKEN
130 if (!apiKey && !authToken) {
131 process.stderr.write('Error: set ANTHROPIC_API_KEY or ANTHROPIC_AUTH_TOKEN\n')
132 process.exitCode = 1
133 return
134 }
135
136 const model = parsed.model || process.env.ANTHROPIC_DEFAULT_SONNET_MODEL || process.env.ANTHROPIC_MODEL
137 if (!model) {
138 process.stderr.write('Error: model is required\n')
139 process.exitCode = 1
140 return
141 }
142
143 const client = new Anthropic({
144 apiKey: apiKey ?? undefined,
145 authToken: authToken ?? undefined,
146 baseURL: process.env.ANTHROPIC_BASE_URL || undefined,
147 timeout: parseInt(process.env.API_TIMEOUT_MS || String(600_000), 10),
148 maxRetries: 0,
149 })
150
151 const response = await client.messages.create({
152 model,
153 max_tokens: 4096,
154 system: getSystemPrompt(parsed.systemPrompt, parsed.appendSystemPrompt),
155 messages: [{ role: 'user', content: prompt }],
156 })
157
158 if (parsed.outputFormat === 'json') {
159 process.stdout.write(`${JSON.stringify(response, null, 2)}\n`)
160 return
161 }
162
163 const text = response.content
164 .filter(block => block.type === 'text')
165 .map(block => block.text)
166 .join('\n')
167

Callers 1

Calls 8

printVersionFunction · 0.85
runInteractiveFunction · 0.85
readPromptFromStdinFunction · 0.85
parseArgsFunction · 0.70
printHelpFunction · 0.70
getSystemPromptFunction · 0.70
createMethod · 0.65
writeMethod · 0.45

Tested by

no test coverage detected