mirror of
https://github.com/Ed1s0nZ/CyberStrikeAI.git
synced 2026-10-14 03:31:29 +02:00
Add files via upload
This commit is contained in:
2 files changed
+26
-17
No files matched your search
+7
-7
@@ -295,11 +295,11 @@ func New(cfg *config.Config, log *logger.Logger, configPath string) (*App, error
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 只有在没有索引时才自动重建
|
// 冷启动:仅为尚无向量的知识项构建索引(与 IndexMissing 语义一致)
|
||||||
log.Logger.Info("未检测到知识库索引,开始自动构建索引")
|
log.Logger.Info("未检测到知识库索引,开始自动构建索引")
|
||||||
ctx := context.Background()
|
ctx := context.Background()
|
||||||
if err := knowledgeIndexer.RebuildIndex(ctx); err != nil {
|
if err := knowledgeIndexer.IndexMissing(ctx); err != nil {
|
||||||
log.Logger.Warn("重建知识库索引失败", zap.Error(err))
|
log.Logger.Warn("自动构建知识库索引失败", zap.Error(err))
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
@@ -1071,7 +1071,7 @@ func setupRoutes(
|
|||||||
})
|
})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
app.knowledgeHandler.RebuildIndex(c)
|
app.knowledgeHandler.StartIndex(c)
|
||||||
})
|
})
|
||||||
knowledgeRoutes.POST("/scan", func(c *gin.Context) {
|
knowledgeRoutes.POST("/scan", func(c *gin.Context) {
|
||||||
if app.knowledgeHandler == nil {
|
if app.knowledgeHandler == nil {
|
||||||
@@ -1961,11 +1961,11 @@ func initializeKnowledge(
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 只有在没有索引时才自动重建
|
// 冷启动:仅为尚无向量的知识项构建索引(与 IndexMissing 语义一致)
|
||||||
logger.Info("未检测到知识库索引,开始自动构建索引")
|
logger.Info("未检测到知识库索引,开始自动构建索引")
|
||||||
ctx := context.Background()
|
ctx := context.Background()
|
||||||
if err := knowledgeIndexer.RebuildIndex(ctx); err != nil {
|
if err := knowledgeIndexer.IndexMissing(ctx); err != nil {
|
||||||
logger.Warn("重建知识库索引失败", zap.Error(err))
|
logger.Warn("自动构建知识库索引失败", zap.Error(err))
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
|
|||||||
@@ -407,6 +407,18 @@ func (e *Executor) buildCommandArgs(toolName string, toolConfig *config.ToolConf
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
formattedValue := e.formatParamValue(param, value)
|
||||||
|
if strings.TrimSpace(formattedValue) == "" {
|
||||||
|
if param.Required {
|
||||||
|
e.logger.Warn("必需参数为空",
|
||||||
|
zap.String("tool", toolName),
|
||||||
|
zap.String("param", param.Name),
|
||||||
|
)
|
||||||
|
return []string{}
|
||||||
|
}
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
format := param.Format
|
format := param.Format
|
||||||
if format == "" {
|
if format == "" {
|
||||||
format = "flag" // 默认格式
|
format = "flag" // 默认格式
|
||||||
@@ -418,23 +430,20 @@ func (e *Executor) buildCommandArgs(toolName string, toolConfig *config.ToolConf
|
|||||||
if param.Flag != "" {
|
if param.Flag != "" {
|
||||||
cmdArgs = append(cmdArgs, param.Flag)
|
cmdArgs = append(cmdArgs, param.Flag)
|
||||||
}
|
}
|
||||||
formattedValue := e.formatParamValue(param, value)
|
cmdArgs = append(cmdArgs, formattedValue)
|
||||||
if formattedValue != "" {
|
|
||||||
cmdArgs = append(cmdArgs, formattedValue)
|
|
||||||
}
|
|
||||||
case "combined":
|
case "combined":
|
||||||
// --flag=value 或 -f=value
|
// --flag=value 或 -f=value
|
||||||
if param.Flag != "" {
|
if param.Flag != "" {
|
||||||
cmdArgs = append(cmdArgs, fmt.Sprintf("%s=%s", param.Flag, e.formatParamValue(param, value)))
|
cmdArgs = append(cmdArgs, fmt.Sprintf("%s=%s", param.Flag, formattedValue))
|
||||||
} else {
|
} else {
|
||||||
cmdArgs = append(cmdArgs, e.formatParamValue(param, value))
|
cmdArgs = append(cmdArgs, formattedValue)
|
||||||
}
|
}
|
||||||
case "template":
|
case "template":
|
||||||
// 使用模板字符串
|
// 使用模板字符串
|
||||||
if param.Template != "" {
|
if param.Template != "" {
|
||||||
template := param.Template
|
template := param.Template
|
||||||
template = strings.ReplaceAll(template, "{flag}", param.Flag)
|
template = strings.ReplaceAll(template, "{flag}", param.Flag)
|
||||||
template = strings.ReplaceAll(template, "{value}", e.formatParamValue(param, value))
|
template = strings.ReplaceAll(template, "{value}", formattedValue)
|
||||||
template = strings.ReplaceAll(template, "{name}", param.Name)
|
template = strings.ReplaceAll(template, "{name}", param.Name)
|
||||||
cmdArgs = append(cmdArgs, strings.Fields(template)...)
|
cmdArgs = append(cmdArgs, strings.Fields(template)...)
|
||||||
} else {
|
} else {
|
||||||
@@ -442,14 +451,14 @@ func (e *Executor) buildCommandArgs(toolName string, toolConfig *config.ToolConf
|
|||||||
if param.Flag != "" {
|
if param.Flag != "" {
|
||||||
cmdArgs = append(cmdArgs, param.Flag)
|
cmdArgs = append(cmdArgs, param.Flag)
|
||||||
}
|
}
|
||||||
cmdArgs = append(cmdArgs, e.formatParamValue(param, value))
|
cmdArgs = append(cmdArgs, formattedValue)
|
||||||
}
|
}
|
||||||
case "positional":
|
case "positional":
|
||||||
// 位置参数(已在上面处理)
|
// 位置参数(已在上面处理)
|
||||||
cmdArgs = append(cmdArgs, e.formatParamValue(param, value))
|
cmdArgs = append(cmdArgs, formattedValue)
|
||||||
default:
|
default:
|
||||||
// 默认:直接添加值
|
// 默认:直接添加值
|
||||||
cmdArgs = append(cmdArgs, e.formatParamValue(param, value))
|
cmdArgs = append(cmdArgs, formattedValue)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user