prompt

package
v0.7.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 3, 2026 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const MaxNoteContentLen = 40

MaxNoteContentLen 笔记内容最大长度(rune),供 tool handler 参考

Variables

This section is empty.

Functions

func BuildNotePrompt added in v0.7.6

func BuildNotePrompt(ctx context.Context) string

BuildNotePrompt 从近期笔记构建记忆线索提示词

func FormatTime added in v0.7.6

func FormatTime(t time.Time) string

FormatTime 格式化时间为简短形式

func GetDefaultPromptTemplate

func GetDefaultPromptTemplate(model string) string

GetDefaultPromptTemplate 获取内嵌的默认提示词模板

func GetPromptPath

func GetPromptPath(model string, global bool) (string, error)

GetPromptPath 获取提示词文件路径 global: true表示全局配置,false表示项目配置

func GetPromptTemplate

func GetPromptTemplate(model string) string

GetPromptTemplate 获取当前生效的提示词模板 优先级:项目配置 > 全局配置 > 内嵌默认模板

func GetSystemPrompt

func GetSystemPrompt(ctx context.Context) string

GetSystemPrompt 获取增强的系统提示词

func SaveMessages added in v0.7.6

func SaveMessages(ctx context.Context, msgs ...Message) error

SaveMessages 保存消息(事务)

func SaveNote added in v0.7.6

func SaveNote(ctx context.Context, content string) error

SaveNote 保存一条对话笔记(限制 MaxNoteContentLen 字以内)

func ToolCallsID added in v0.7.6

func ToolCallsID(tcs []ToolCall) string

Types

type Message added in v0.7.6

type Message struct {
	ID               int64      `json:"-"`
	SessionID        int64      `json:"-"`
	ModelID          int64      `json:"-"`
	Role             string     `json:"role"`
	ReasoningContent string     `json:"reasoning_content"`
	Content          string     `json:"content"`                // 始终输出,即使为空字符串
	ToolCalls        []ToolCall `json:"tool_calls,omitempty"`   // 仅当有工具调用时输出
	ToolCallID       string     `json:"tool_call_id,omitempty"` // 仅当 role="tool" 时输出
	CreatedAt        time.Time  `json:"-"`

	OK bool `json:"-"`
	// contains filtered or unexported fields
}

Message 扩展,支持工具调用(注意:Content 字段不再使用 omitempty)

func LoadPrompts added in v0.7.6

func LoadPrompts(ctx context.Context) ([]Message, error)

LoadPrompts loads the system prompt combined with skill prompts.

func (*Message) GetTokens added in v0.7.6

func (m *Message) GetTokens() int

type Note added in v0.7.6

type Note struct {
	ID        int64
	SessionID int64
	Content   string
	CreatedAt time.Time
}

Note 对话笔记,用于跨对话记忆

func LoadNotes added in v0.7.6

func LoadNotes(ctx context.Context, days int) ([]Note, error)

LoadNotes 加载当前项目最近N天的笔记,最多返回10条

type ToolCall added in v0.7.6

type ToolCall struct {
	ID       string           `json:"id"`
	Type     string           `json:"type"`
	Function ToolCallFunction `json:"function"`
}

type ToolCallFunction added in v0.7.6

type ToolCallFunction struct {
	Name      string `json:"name"`
	Arguments string `json:"arguments"` // JSON 字符串
}

Source Files

  • doc.go
  • message.go
  • note.go
  • prompt.go

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL