MCPcopy Create free account
hub / github.com/arctic-cli/interface / FormatError

Function FormatError

packages/arctic/src/cli/error.ts:7–40  ·  view source on GitHub ↗
(input: unknown)

Source from the content-addressed store, hash-verified

5import { UI } from "./ui"
6
7export function FormatError(input: unknown) {
8 if (MCP.Failed.isInstance(input))
9 return `MCP server "${input.data.name}" failed. Check your configuration and try running \`arctic mcp auth\` if it requires authentication.`
10 if (Provider.ModelNotFoundError.isInstance(input)) {
11 const { providerID, modelID, suggestions } = input.data
12 return [
13 `Model not found: ${providerID}/${modelID}`,
14 ...(Array.isArray(suggestions) && suggestions.length ? ["Did you mean: " + suggestions.join(", ")] : []),
15 `Try: \`arctic models\` to list available models`,
16 `Or check your config (arctic.json) provider/model names`,
17 ].join("\n")
18 }
19 if (Provider.InitError.isInstance(input)) {
20 return `Failed to initialize provider "${input.data.providerID}". Check credentials and configuration.`
21 }
22 if (Config.JsonError.isInstance(input)) {
23 return (
24 `Config file at ${input.data.path} is not valid JSON(C)` + (input.data.message ? `: ${input.data.message}` : "")
25 )
26 }
27 if (Config.ConfigDirectoryTypoError.isInstance(input)) {
28 return `Directory "${input.data.dir}" in ${input.data.path} is not valid. Rename the directory to "${input.data.suggestion}" or remove it. This is a common typo.`
29 }
30 if (ConfigMarkdown.FrontmatterError.isInstance(input)) {
31 return `Failed to parse frontmatter in ${input.data.path}:\n${input.data.message}`
32 }
33 if (Config.InvalidError.isInstance(input))
34 return [
35 `Config file at ${input.data.path} is invalid` + (input.data.message ? `: ${input.data.message}` : ""),
36 ...(input.data.issues?.map((issue) => "↳ " + issue.message + " " + issue.path.join(".")) ?? []),
37 ].join("\n")
38
39 if (UI.CancelledError.isInstance(input)) return ""
40}
41
42export function FormatUnknownError(input: unknown): string {
43 if (input instanceof Error) {

Callers 2

index.tsFile · 0.90
exit.tsxFile · 0.90

Calls 1

isInstanceMethod · 0.80

Tested by

no test coverage detected