update ai-prompt-decorator to new plugin wrapper api (#2777)

This commit is contained in:
StarryNight
2025-08-18 11:01:35 +08:00
committed by GitHub
parent 24dca0455e
commit 19d1548971

View File

@@ -18,9 +18,9 @@ func main() {}
func init() {
wrapper.SetCtx(
"ai-prompt-decorator",
wrapper.ParseConfigBy(parseConfig),
wrapper.ProcessRequestHeadersBy(onHttpRequestHeaders),
wrapper.ProcessRequestBodyBy(onHttpRequestBody),
wrapper.ParseConfig(parseConfig),
wrapper.ProcessRequestHeaders(onHttpRequestHeaders),
wrapper.ProcessRequestBody(onHttpRequestBody),
)
}
@@ -34,11 +34,11 @@ type AIPromptDecoratorConfig struct {
Append []Message `json:"append"`
}
func parseConfig(jsonConfig gjson.Result, config *AIPromptDecoratorConfig, log log.Log) error {
func parseConfig(jsonConfig gjson.Result, config *AIPromptDecoratorConfig) error {
return json.Unmarshal([]byte(jsonConfig.Raw), config)
}
func onHttpRequestHeaders(ctx wrapper.HttpContext, config AIPromptDecoratorConfig, log log.Log) types.Action {
func onHttpRequestHeaders(ctx wrapper.HttpContext, config AIPromptDecoratorConfig) types.Action {
ctx.DisableReroute()
proxywasm.RemoveHttpRequestHeader("content-length")
return types.ActionContinue
@@ -70,7 +70,7 @@ func decorateGeographicPrompt(entry *Message) (*Message, error) {
return entry, nil
}
func onHttpRequestBody(ctx wrapper.HttpContext, config AIPromptDecoratorConfig, body []byte, log log.Log) types.Action {
func onHttpRequestBody(ctx wrapper.HttpContext, config AIPromptDecoratorConfig, body []byte) types.Action {
messageJson := `{"messages":[]}`
for _, entry := range config.Prepend {