larksuite/cli · error
Args field %s: arg:"inline" cannot declare public input tags
Error message
Args field %s: arg:"inline" cannot declare public input tags
What it means
Compile-time guard: an arg:"inline" field also declares public input tags (flag/schema/cli/doc/json). Inlined fields inherit their sub-struct's tags; public tags on the inline field itself are invalid.
Source
Thrown at shortcuts/common/typed_compile_args.go:120
if insideInline {
return fmt.Errorf("Args field %s: arg:\"local\" is not allowed inside inline", field.Name)
}
if hasAnyTag(field, "flag", "schema", "cli", "doc", "json") {
return fmt.Errorf("Args field %s: arg:\"local\" cannot declare public input tags", field.Name)
}
case "inline":
if insideInline {
return fmt.Errorf("Args field %s: nested arg:\"inline\" is not allowed", field.Name)
}
inlineType := field.Type
if inlineType.Kind() == reflect.Pointer {
return fmt.Errorf("Args field %s: arg:\"inline\" must be a struct value, not pointer", field.Name)
}
if inlineType.Kind() != reflect.Struct {
return fmt.Errorf("Args field %s: arg:\"inline\" must be a struct, got %s", field.Name, field.Type)
}
if hasAnyTag(field, "flag", "schema", "cli", "doc", "json") {
return fmt.Errorf("Args field %s: arg:\"inline\" cannot declare public input tags", field.Name)
}
if err := collectArgFields(inlineType, index, true, out, seenGo, supplements); err != nil {
return err
}
default:
return fmt.Errorf("Args field %s: unknown arg mode %q", field.Name, argMode)
}
continue
}
if !flagNamePattern.MatchString(flagName) {
return fmt.Errorf("Args field %s: flag %q is not a canonical flag name", field.Name, flagName)
}
if hasAnyTag(field, "json") {
return fmt.Errorf("Args field %s (--%s): json tag is not allowed on a CLI field", field.Name, flagName)
}
valueType, valueIndex, isProvided, err := unwrapProvided(field.Type)
if err != nil {
return fmt.Errorf("Args field %s (--%s): %w", field.Name, flagName, err)View on GitHub (pinned to 7fd6ef3c07)
Solutions
- Remove the public tags from the inline marker field
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at shortcuts/common/typed_compile_args.go:120 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of larksuite/cli@7fd6ef3c07 (2026-09-04).
Data as JSON: /api/errors/45568a5bbc3c9543.
Report an issue: GitHub.