Config: prompts inline OR file; embed default system prompt inline #6
Labels
No labels
epic
in-review
ready-for-agent
ready-for-human
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
weiwen/evie#6
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Relates to #5 (does not block / is not blocked by it — see Ordering).
Let a prompt be given either inline as a string or as a file path, uniformly across the config, and use that to simplify how the default system prompt ships.
Motivation
~/.config/evie/SYSTEM.md, auto-created with a default byConfig::ensure_system_prompt()(src/config.rs:129). Embedding that default inline in the generatedconfig.tomlis equivalent for the user (still an editable default) but drops a whole file + code path.prompt_file). Short one-line prompts are awkward in separate files; long prompts are awkward inline. Let the user choose per field.Scope
*_filepath — and resolves to aStringat load time (expand_tilde+ read for the file case). Options: a#[serde(untagged)]enum, or anOption<String>+Option<PathBuf>pair validated so exactly one is set.system_prompt = \"...\"alongside the existingsystem_prompt_file. Changedefault_toml()to embed the default prompt inline, and removeensure_system_prompt()and the SYSTEM.md auto-create. Existing configs pointing at asystem_prompt_filekeep working (the file variant of the type).prompt/prompt_file.Ordering
prompt|prompt_file); if #5 lands first, this issue retrofits itsprompt_filefield.Acceptance
system_prompt(inline) andsystem_prompt_file(path) both work; default config ships the prompt inline; no SYSTEM.md is auto-created.[[schedule]]entry works with eitherpromptorprompt_file.Config: accept prompts inline OR as a file pathto Config: prompts inline OR file; embed default system prompt inlineImplemented on
sandcastle/issue-6(commit 1d4247e).Changes:
PiConfignow accepts eithersystem_prompt(inline string) orsystem_prompt_file(file path); exactly one must be present (validated at startup).resolved_system_promptis populated at load time: inline prompts are written to<config_dir>/system_prompt.md, file prompts used as-is.default_toml()embeds the default prompt inline via TOML multi-line stringsystem_prompt = """...""".ensure_system_prompt()and SYSTEM.md auto-create.Files changed:
src/config.rs,src/main.rs,src/pi.rs,CONTEXT.md