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.scenes.yaml": "assets/prompts/dnd.scenes.yaml",
"assets/prompts/dnd/scenes/task.md": "assets/prompts/task.md",
"assets/prompts/dnd/scenes/instructions.md": "assets/prompts/instructions.md",
func modulePromptFS(shared fs.FS) (fs.FS, error) {
assetFS, err := promptMapFSFromEmbedded(map[string]string{
"assets/prompts/dnd.scenes/dnd.scenes.yaml": "assets/prompts/dnd.scenes.yaml",
"assets/prompts/dnd.scenes/task.md": "assets/prompts/task.md",
"assets/prompts/dnd.scenes/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.scenes/"+name] = append([]byte(nil), data...)
}
return assets, nil
}
func promptMapFSFromEmbedded(files map[string]string) (fs.FS, error) {