refactor: improve saving messages (#322)

pull/323/head
sigoden 4 months ago committed by GitHub
parent a3fbf71c1c
commit c773e8d2e1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -80,7 +80,12 @@ impl Input {
}
pub fn summary(&self) -> String {
let text = &self.text;
let text: String = self
.text
.trim()
.chars()
.map(|c| if c.is_control() { ' ' } else { c })
.collect();
if text.width_cjk() > 70 {
let mut sum_width = 0;
let mut chars = vec![];
@ -94,7 +99,7 @@ impl Input {
}
chars.into_iter().collect()
} else {
text.clone()
text
}
}

@ -29,7 +29,7 @@ impl Role {
None => &shell,
};
Self {
name: "__builtin__".into(),
name: "__for_execute__".into(),
prompt: format!(
r#"Provide only {shell} commands for {os} without any description.
If there is a lack of details, provide most logical solution.
@ -44,7 +44,7 @@ Do not provide markdown formatting such as ```"#
pub fn for_describe() -> Self {
Self {
name: "__builtin__".into(),
name: "__for_describe__".into(),
prompt: r#"Provide a terse, single sentence description of the given shell command.
Describe each argument and option of the command.
Provide short responses in about 80 words.

@ -145,6 +145,7 @@ fn execute(config: &GlobalConfig, text: &str) -> Result<()> {
let client = init_client(config)?;
config.read().maybe_print_send_tokens(&input);
let eval_str = client.send_message(input.clone())?;
config.write().save_message(input, &eval_str)?;
let render_options = config.read().get_render_options()?;
let mut markdown_render = MarkdownRender::init(render_options)?;
if config.read().dry_run {

Loading…
Cancel
Save