JuliusBrussee/caveman · error
no named tools found
Error message
no named tools found
What it means
Error "no named tools found" thrown in JuliusBrussee/caveman.
Source
Thrown at shrink/shrink.go:281
obj, ok := item.(map[string]any)
if !ok {
continue
}
// OpenAI nests under "function".
toolObj := obj
if fn, ok := obj["function"].(map[string]any); ok {
toolObj = fn
}
name, _ := toolObj["name"].(string)
if name == "" {
continue
}
raw, _ := json.Marshal(obj)
schema := schemaOf(toolObj)
entries = append(entries, toolEntry{name: name, raw: raw, schema: schema})
}
if len(entries) == 0 {
return nil, fmt.Errorf("no named tools found")
}
return entries, nil
}
// schemaOf returns a tool's parameter schema, under either "inputSchema" (MCP) or
// "parameters" (OpenAI).
func schemaOf(tool map[string]any) map[string]any {
if s, ok := tool["inputSchema"].(map[string]any); ok {
return s
}
if s, ok := tool["parameters"].(map[string]any); ok {
return s
}
return nil
}
// profileOf extracts param names, per-param enums, and the required list.
func profileOf(schema map[string]any) ToolProfile {View on GitHub (pinned to 27d5a3981a)
Solutions
- Include at least one named tool in the catalog.
When it happens
Trigger: Thrown at shrink/shrink.go:281 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of JuliusBrussee/caveman@27d5a3981a (2026-08-15).
Data as JSON: /api/errors/1cfb9d8fc647576e.
Report an issue: GitHub.