Load sysprompts from content manager

73ee8697495dcfdffaef9f409d4562114866415b

Cohee <18619528+Cohee1207@users.noreply.github.com>

4 files changed, +9 -1Showing whitespace changes
src/endpoints/content-manager.js+4 -1
@@ -43,6 +43,7 @@ const CONTENT_TYPES = {
43 CONTEXT: 'context',43 CONTEXT: 'context',
44 MOVING_UI: 'moving_ui',44 MOVING_UI: 'moving_ui',
45 QUICK_REPLIES: 'quick_replies',45 QUICK_REPLIES: 'quick_replies',
46 SYSPROMPT: 'sysprompt',
46};47};
4748
48/**49/**
@@ -56,7 +57,7 @@ function getDefaultPresets(directories) {
56 const presets = [];57 const presets = [];
5758
58 for (const contentItem of contentIndex) {59 for (const contentItem of contentIndex) {
59 if (contentItem.type.endsWith('_preset') || contentItem.type === 'instruct' || contentItem.type === 'context') {60 if (contentItem.type.endsWith('_preset') || contentItem.type === 'instruct' || contentItem.type === 'context' || contentItem.type === 'sysprompt') {
60 contentItem.name = path.parse(contentItem.filename).name;61 contentItem.name = path.parse(contentItem.filename).name;
61 contentItem.folder = getTargetByType(contentItem.type, directories);62 contentItem.folder = getTargetByType(contentItem.type, directories);
62 presets.push(contentItem);63 presets.push(contentItem);
@@ -257,6 +258,8 @@ function getTargetByType(type, directories) {
257 return directories.movingUI;258 return directories.movingUI;
258 case CONTENT_TYPES.QUICK_REPLIES:259 case CONTENT_TYPES.QUICK_REPLIES:
259 return directories.quickreplies;260 return directories.quickreplies;
261 case CONTENT_TYPES.SYSPROMPT:
262 return directories.sysprompt;
260 default:263 default:
261 return null;264 return null;
262 }265 }
src/endpoints/presets.js+2 -0
@@ -27,6 +27,8 @@ function getPresetSettingsByAPI(apiId, directories) {
27 return { folder: directories.instruct, extension: '.json' };27 return { folder: directories.instruct, extension: '.json' };
28 case 'context':28 case 'context':
29 return { folder: directories.context, extension: '.json' };29 return { folder: directories.context, extension: '.json' };
30 case 'sysprompt':
31 return { folder: directories.sysprompt, extension: '.json' };
30 default:32 default:
31 return { folder: null, extension: null };33 return { folder: null, extension: null };
32 }34 }
src/endpoints/settings.js+2 -0
@@ -251,6 +251,7 @@ router.post('/get', jsonParser, (request, response) => {
251251
252 const instruct = readAndParseFromDirectory(request.user.directories.instruct);252 const instruct = readAndParseFromDirectory(request.user.directories.instruct);
253 const context = readAndParseFromDirectory(request.user.directories.context);253 const context = readAndParseFromDirectory(request.user.directories.context);
254 const sysprompt = readAndParseFromDirectory(request.user.directories.sysprompt);
254255
255 response.send({256 response.send({
256 settings,257 settings,
@@ -268,6 +269,7 @@ router.post('/get', jsonParser, (request, response) => {
268 quickReplyPresets,269 quickReplyPresets,
269 instruct,270 instruct,
270 context,271 context,
272 sysprompt,
271 enable_extensions: ENABLE_EXTENSIONS,273 enable_extensions: ENABLE_EXTENSIONS,
272 enable_extensions_auto_update: ENABLE_EXTENSIONS_AUTO_UPDATE,274 enable_extensions_auto_update: ENABLE_EXTENSIONS_AUTO_UPDATE,
273 enable_accounts: ENABLE_ACCOUNTS,275 enable_accounts: ENABLE_ACCOUNTS,
src/users.js+1 -0
@@ -82,6 +82,7 @@ const STORAGE_KEYS = {
82 * @property {string} files - The directory where the uploaded files are stored82 * @property {string} files - The directory where the uploaded files are stored
83 * @property {string} vectors - The directory where the vectors are stored83 * @property {string} vectors - The directory where the vectors are stored
84 * @property {string} backups - The directory where the backups are stored84 * @property {string} backups - The directory where the backups are stored
85 * @property {string} sysprompt - The directory where the system prompt data is stored
85 */86 */
8687
87/**88/**