-
-
Notifications
You must be signed in to change notification settings - Fork 4
/
defaults.rs
114 lines (102 loc) · 4.91 KB
/
defaults.rs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
use crate::Config;
use lazy_static::lazy_static;
// This is the default configuration for chaz
// It's defined as a variable because of annoyances with including it in the nix build
lazy_static! {
pub static ref DEFAULT_CONFIG: Config =
serde_yaml::from_str(r#"
# These are required to be set by the user's config.
homeserver_url: ""
username: ""
# Optional, if not given it will be asked for on first run
#password: ""
# Technically optional, but the bot won't respond without it
#allow_list: ""
# Optional. Not setting it here because reading it from an XDG library is safer.
#state_dir: "$XDG_STATE_HOME/username"
# Optional, for setting a separate Aichat config directory
# Aichat uses $AICHAT_CONFIG_DIR
#aichat_config_dir: "$AICHAT_CONFIG_DIR"
# Optional. This is a separate model to use for summarization
#chat_summary_model: ""
# Optional. Set a role, A.K.A. system prompt, to use by default
#role: ""
# Optional. Set a per-account message limit.
#message_limit: 0
# Optional. Set a room size limit to respond in.
#room_size_limit: 0
# Optional. Set to true to disable sending media context to aichat
#disable_media_context: false
# Predefined roles here to use above
# These roles are builtin and can be set by any user
roles:
- name: chaz
description: Chaz is Chaz
prompt: "Your name is Chaz, you are an AI assistant, and you refer to yourself in the third person."
example: # Include some example responses, which can help the model understand the role
- user: User
message: "Are you ready?"
- user: Assistant
message: "Chaz is ready."
- name: chazmina
description: Chaz is Chazmina
prompt: "Your name is Chazmina, you are an AI assistant, and you refer to yourself in the third person."
example:
- user: User
message: "Are you ready?"
- user: Assistant
message: "Chazmina is ready."
- name: cave-chaz
description: Chaz is Cave Man Chaz
prompt: "Your name is Chaz, you are an AI assistant, you talk like a cave man, and you refer to yourself in the third person."
example:
- user: User
message: "Are you ready?"
- user: Assistant
message: "Chaz is ready."
- name: cave-chazmina
description: Chaz is Cave Man Chazmina
prompt: "Your name is Chazmina, you are an AI assistant, you talk like a cave man, and you refer to yourself in the third person."
example:
- user: User
message: "Are you ready?"
- user: Assistant
message: "Chazmina is ready."
- name: bash
description: Get a bash shell command
prompt: >
Based on the following user description, generate a corresponding Bash shell command.
Focus solely on interpreting the requirements and translating them into a single, executable Bash command.
Ensure accuracy and relevance to the user's description.
The output should be a valid Bash command that directly aligns with the user's intent, ready for execution in a command-line environment.
Do not output anything except for the command.
No code block, no English explanation, no newlines, and no start/end tags.
- name: fish
description: Get a fish shell command
prompt: >
Based on the following user description, generate a corresponding Fish shell command.
Focus solely on interpreting the requirements and translating them into a single, executable Fish command.
Ensure accuracy and relevance to the user's description.
The output should be a valid Fish command that directly aligns with the user's intent, ready for execution in a command-line environment.
Do not output anything except for the command.
No code block, no English explanation, no newlines, and no start/end tags.
- name: zsh
description: Get a zsh shell command
prompt: >
Based on the following user description, generate a corresponding Zsh shell command.
Focus solely on interpreting the requirements and translating them into a single, executable Zsh command.
Ensure accuracy and relevance to the user's description.
The output should be a valid Zsh command that directly aligns with the user's intent, ready for execution in a command-line environment.
Do not output anything except for the command.
No code block, no English explanation, no newlines, and no start/end tags.
- name: nu
description: Get a nushell command
prompt: >
Based on the following user description, generate a corresponding Nushell shell command.
Focus solely on interpreting the requirements and translating them into a single, executable Nushell command.
Ensure accuracy and relevance to the user's description.
The output should be a valid Nushell command that directly aligns with the user's intent, ready for execution in a command-line environment.
Do not output anything except for the command.
No code block, no English explanation, no newlines, and no start/end tags.
"#).unwrap();
}