Skip to content

ConfigReader

ConfigReader 用于读取用户配置和设置。

方法

GetUserConfig

获取用户配置。

go
func (r *ConfigReader) GetUserConfig() (*UserConfig, error)

返回值:

  • *UserConfig - 用户配置
  • error - 错误信息

示例:

go
config, err := client.Config().GetUserConfig()
if err != nil {
    log.Fatal(err)
}

fmt.Printf("Email: %s\n", config.Email)
fmt.Printf("Personal Context: %s\n", config.PersonalContext)

GetPersonalContext

获取个人上下文。

go
func (r *ConfigReader) GetPersonalContext() (string, error)

返回值:

  • string - 个人上下文
  • error - 错误信息

示例:

go
context, err := client.Config().GetPersonalContext()
if err != nil {
    log.Fatal(err)
}
fmt.Println(context)

GetUserEmail

获取用户邮箱。

go
func (r *ConfigReader) GetUserEmail() (string, error)

返回值:

  • string - 用户邮箱
  • error - 错误信息

示例:

go
email, err := client.Config().GetUserEmail()
if err != nil {
    log.Fatal(err)
}
fmt.Printf("Email: %s\n", email)

GetPrivacySettings

获取隐私设置。

go
func (r *ConfigReader) GetPrivacySettings() (map[string]interface{}, error)

返回值:

  • map[string]interface{} - 隐私设置
  • error - 错误信息

示例:

go
settings, err := client.Config().GetPrivacySettings()
if err != nil {
    log.Fatal(err)
}

for key, value := range settings {
    fmt.Printf("%s: %v\n", key, value)
}

GetFeatureConfig

获取功能配置。

go
func (r *ConfigReader) GetFeatureConfig() (map[string]interface{}, error)

返回值:

  • map[string]interface{} - 功能配置
  • error - 错误信息

示例:

go
config, err := client.Config().GetFeatureConfig()
if err != nil {
    log.Fatal(err)
}

for key, value := range config {
    fmt.Printf("%s: %v\n", key, value)
}

数据结构

UserConfig

go
type UserConfig struct {
    Email           string                 // 用户邮箱
    PersonalContext string                 // 个人上下文
    PrivacySettings map[string]interface{} // 隐私设置
    FeatureConfig   map[string]interface{} // 功能配置
}

完整示例

go
package main

import (
    "fmt"
    "log"
    
    cursor "github.com/vibe-coding-labs/go-cursor-sdk"
)

func main() {
    client, err := cursor.NewCursorClient(nil)
    if err != nil {
        log.Fatal(err)
    }
    defer client.Close()
    
    // 获取用户配置
    config, err := client.Config().GetUserConfig()
    if err != nil {
        log.Fatal(err)
    }
    
    fmt.Printf("用户配置:\n")
    fmt.Printf("  Email: %s\n", config.Email)
    fmt.Printf("  Personal Context: %s\n", config.PersonalContext)
    
    // 获取隐私设置
    privacy, err := client.Config().GetPrivacySettings()
    if err != nil {
        log.Fatal(err)
    }
    
    fmt.Printf("\n隐私设置:\n")
    for key, value := range privacy {
        fmt.Printf("  %s: %v\n", key, value)
    }
}

相关文档

Released under the MIT License.