Update D&D prompt definitions to shallow asset paths

This commit is contained in:
2026-07-06 01:32:27 +00:00
parent 5b1efc89f6
commit 3e456ec4d4
7 changed files with 111 additions and 16 deletions

View File

@@ -11,12 +11,31 @@ import (
"time"
)
func modulePromptFS() (fs.FS, error) {
return promptMapFSFromEmbedded(map[string]string{
"assets/prompts/dnd.spells.yaml": "assets/prompts/dnd.spells.yaml",
"assets/prompts/dnd/spells/task.md": "assets/prompts/task.md",
"assets/prompts/dnd/spells/instructions.md": "assets/prompts/instructions.md",
func modulePromptFS(shared fs.FS) (fs.FS, error) {
assetFS, err := promptMapFSFromEmbedded(map[string]string{
"assets/prompts/dnd.spells/dnd.spells.yaml": "assets/prompts/dnd.spells.yaml",
"assets/prompts/dnd.spells/task.md": "assets/prompts/task.md",
"assets/prompts/dnd.spells/instructions.md": "assets/prompts/instructions.md",
})
if err != nil {
return nil, err
}
assets := assetFS.(promptMapFS)
if shared == nil {
return assets, nil
}
for _, name := range []string{
"common-dnd-system.md",
"common-dnd-transcript.md",
"common-dnd-references.md",
} {
data, err := fs.ReadFile(shared, name)
if err != nil {
return nil, fmt.Errorf("read shared prompt asset %s: %w", name, err)
}
assets["assets/prompts/dnd.spells/"+name] = append([]byte(nil), data...)
}
return assets, nil
}
func promptMapFSFromEmbedded(files map[string]string) (fs.FS, error) {