larksuite/cli · error
suite description keyword suffix is missing
Error message
suite description keyword suffix is missing
What it means
Guard in cropSuiteRoutes: the suite SKILL.md description does not contain the expected keyword suffix delimiter, so the keyword list cannot be rewritten for the cropped skill set.
Source
Thrown at internal/skillscheck/layout.go:153
}
content = line.ReplaceAllString(content, "")
}
for _, name := range target {
if len(routeLine(name).FindAllStringIndex(content, -1)) != 1 {
return "", fmt.Errorf("cropped suite route for %s is missing or duplicated", name)
}
}
keywords := suiteKeywords(content)
start := strings.Index(content, suiteDescriptionPrefix)
if start < 0 {
return "", fmt.Errorf("suite description prefix is missing")
}
valueStart := start + len(suiteDescriptionPrefix)
valueEndOffset := strings.Index(content[valueStart:], suiteDescriptionSuffix)
if valueEndOffset < 0 {
return "", fmt.Errorf("suite description keyword suffix is missing")
}
valueEnd := valueStart + valueEndOffset
content = content[:valueStart] + strings.Join(keywords, "、") + content[valueEnd:]
return content, nil
}
func suiteKeywords(content string) []string {
routeLine := regexp.MustCompile(`(?m)^- [^\n(]+(?:(([^)\n]*)))?:`)
seen := map[string]bool{}
keywords := []string{}
for _, match := range routeLine.FindAllStringSubmatch(content, -1) {
if len(match) < 2 || match[1] == "" {
continue
}
for _, keyword := range strings.Split(match[1], "、") {
keyword = strings.TrimSpace(keyword)
if keyword != "" && !seen[keyword] {
seen[keyword] = trueView on GitHub (pinned to 7fd6ef3c07)
Solutions
- Ensure the suite description keeps its terminating keyword suffix so the list stays parseable
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at internal/skillscheck/layout.go:153 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/e8de845ea1d2dcc9.
Report an issue: GitHub.