Repo iniciado
This commit is contained in:
@@ -0,0 +1,93 @@
|
||||
// Package personality defines pure types for agent personality and behavior.
|
||||
package personality
|
||||
|
||||
type Tone string
|
||||
|
||||
const (
|
||||
ToneDirect Tone = "direct"
|
||||
ToneFriendly Tone = "friendly"
|
||||
ToneFormal Tone = "formal"
|
||||
ToneCasual Tone = "casual"
|
||||
ToneTechnical Tone = "technical"
|
||||
)
|
||||
|
||||
type Verbosity string
|
||||
|
||||
const (
|
||||
VerbosityMinimal Verbosity = "minimal"
|
||||
VerbosityConcise Verbosity = "concise"
|
||||
VerbosityDetailed Verbosity = "detailed"
|
||||
VerbosityVerbose Verbosity = "verbose"
|
||||
)
|
||||
|
||||
type EmojiStyle string
|
||||
|
||||
const (
|
||||
EmojiNone EmojiStyle = "none"
|
||||
EmojiMinimal EmojiStyle = "minimal"
|
||||
EmojiModerate EmojiStyle = "moderate"
|
||||
EmojiHeavy EmojiStyle = "heavy"
|
||||
)
|
||||
|
||||
type ErrorStyle string
|
||||
|
||||
const (
|
||||
ErrorTerse ErrorStyle = "terse"
|
||||
ErrorHelpful ErrorStyle = "helpful"
|
||||
ErrorDetailed ErrorStyle = "detailed"
|
||||
)
|
||||
|
||||
type Templates struct {
|
||||
Greeting string
|
||||
UnknownCommand string
|
||||
PermissionDenied string
|
||||
Error string
|
||||
Success string
|
||||
Busy string
|
||||
}
|
||||
|
||||
type Behavior struct {
|
||||
Proactive bool
|
||||
AskConfirmation bool
|
||||
ShowReasoning bool
|
||||
ThreadReplies bool
|
||||
TypingIndicator bool
|
||||
AcknowledgeReceipt bool
|
||||
}
|
||||
|
||||
type Personality struct {
|
||||
Tone Tone
|
||||
Verbosity Verbosity
|
||||
Language string
|
||||
LanguagesSupported []string
|
||||
EmojiStyle EmojiStyle
|
||||
Prefix string
|
||||
ErrorStyle ErrorStyle
|
||||
Templates Templates
|
||||
Behavior Behavior
|
||||
}
|
||||
|
||||
// DefaultPersonality returns a sensible baseline.
|
||||
func DefaultPersonality() Personality {
|
||||
return Personality{
|
||||
Tone: ToneFriendly,
|
||||
Verbosity: VerbosityConcise,
|
||||
Language: "en",
|
||||
EmojiStyle: EmojiMinimal,
|
||||
ErrorStyle: ErrorHelpful,
|
||||
Templates: Templates{
|
||||
Greeting: "Ready. What do you need?",
|
||||
UnknownCommand: "Unknown command. Use `!help` for available commands.",
|
||||
PermissionDenied: "You don't have permission for that.",
|
||||
Error: "Something failed: {{.Error}}",
|
||||
Success: "Done. {{.Summary}}",
|
||||
Busy: "I'm busy with another task. Wait or use `!queue`.",
|
||||
},
|
||||
Behavior: Behavior{
|
||||
AskConfirmation: true,
|
||||
ThreadReplies: true,
|
||||
TypingIndicator: true,
|
||||
AcknowledgeReceipt: true,
|
||||
},
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user