You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
? ` for your current ${context.currentLanguage} workspace`
28
+
constname=context.profileName??"builder";
29
+
constfileHint=context.activeFileName
30
+
? ` The active file is ${context.activeFileName}${context.activeFilePath ? ` at ${context.activeFilePath}` : ""}.`
19
31
: "";
32
+
constworkspaceHint=` Your workspace currently has ${context.fileCount??0} files and ${context.folderCount??0} folders.`;
20
33
21
34
if(!message.trim()){
22
35
return{
23
36
reply:
24
-
"Ask me anything about using VoidLAB, fixing code execution, collaborating in a room, or finding the right workflow for your current project.",
37
+
`I’m the VoidLAB basic assistant for ${name}. Ask me about running code, fixing compile issues, using stdin, AI workflow, folders, or workspace commands.${workspaceHint}`,
reply: `To run input/output programs${languageHint}, open the terminal input box, type the input exactly as the program expects it, and then press Run. Multi-line input is supported, so each new line will be passed to the runtime the same way it would in a local terminal.`,
48
+
reply:
49
+
`Python works well in VoidLAB. Choose the Python language for the active file, write your script, put stdin in the input panel if your code uses input(), and run it. If the result is wrong, compare stdout, stderr, and compile status separately because VoidLAB now shows each section distinctly.${fileHint}`,
36
50
suggestions: [
37
-
"Show me an example input format",
38
-
"Why is my program waiting for input?",
39
-
"How do I preview HTML output?",
51
+
"Show a Python input example",
52
+
"How do I debug Python stderr?",
53
+
"Can I create multiple Python files?",
40
54
],
41
55
};
42
56
}
43
57
44
-
if(
45
-
normalized.includes("run")||
46
-
normalized.includes("compile")||
47
-
normalized.includes("error")
48
-
){
49
-
constoutputHint=context.lastOutput
50
-
? ` The latest terminal response I know about is: "${context.lastOutput.slice(0,120)}".`
reply: `Start by confirming the selected language matches the active file extension, then run the file again. If the terminal shows an error, read the first error line before changing the code because it usually points to the exact syntax or input issue.${outputHint}`,
60
+
reply:
61
+
`For precise stdin handling, paste the input exactly line by line in the Program input box and then run the active file. VoidLAB forwards the raw text to the runtime without rewriting it, so spaces, new lines, and multi-line cases stay intact.`,
55
62
suggestions: [
56
-
"Help me debug this output",
57
-
"What languages are runnable right now?",
58
-
"How do I use stdin in VoidLAB?",
63
+
"Why is my program waiting for input?",
64
+
"How is stdout different from stderr?",
65
+
"How do I test multiple input cases?",
59
66
],
60
67
};
61
68
}
62
69
63
70
if(
64
-
normalized.includes("collab")||
65
-
normalized.includes("team")||
66
-
normalized.includes("share")||
67
-
normalized.includes("room")
71
+
normalized.includes("error")||
72
+
normalized.includes("compile")||
73
+
normalized.includes("output")||
74
+
normalized.includes("wrong answer")
68
75
){
69
-
constroomHint=context.roomId
70
-
? ` You are currently connected to room ${context.roomId}.`
71
-
: " Create a room, share the room code, and then use Push workspace to sync your current files into the shared session.";
76
+
conststatusHint=context.lastStatus ? ` The latest status was ${context.lastStatus}.` : "";
77
+
constoutputHint=context.lastOutput
78
+
? ` The latest terminal output starts with: "${context.lastOutput.slice(0,160)}".`
79
+
: "";
72
80
73
81
return{
74
-
reply: `VoidLAB collaboration rooms let teammates join the same workspace, exchange messages, and sync the latest file set into a shared room state.${roomHint}`,
82
+
reply:
83
+
`Start with the execution status, then check compile output, then stderr, then stdout. Compile output means the code did not build. Stderr means the program ran and failed. Stdout is the actual program result.${statusHint}${outputHint}${fileHint}`,
"The fastest way to learn VoidLAB is to use the feature pages from the editor toolbar. Manual explains the product, GitHub shows publish commands, Collaboration manages shared rooms, and AI Guide helps with workflows and troubleshooting.",
95
+
`VoidLAB workspace commands manage your virtual project tree. Use mkdir to create folders, touch to create files, ls or tree to inspect the workspace, open to jump to a file, and rm to remove entries. These commands operate on your workspace data directly, so they are fast and safe for browser use.${workspaceHint}`,
"For web-style files, VoidLAB can open a live preview in a new tab instead of sending the code to the compiler. If your workspace has HTML and CSS files together, the preview combines them so you can see the page instantly.",
107
+
`Your profile page is where VoidLAB surfaces identity, bio, social links, and recent activities such as runs, saves, AI chats, and workspace changes. Keeping those details updated makes the product feel much more personal and portfolio-ready.`,
107
108
suggestions: [
108
-
"How do I preview HTML and CSS together?",
109
-
"Can JavaScript be included in preview mode?",
110
-
"Why does preview open in a new tab?",
109
+
"What appears on the profile page?",
110
+
"How are activities tracked?",
111
+
"Can I update my social links later?",
111
112
],
112
113
};
113
114
}
114
115
115
116
return{
116
117
reply:
117
-
"VoidLAB AI Guide is here to help with product usage, execution issues, workflow choices, collaboration, and deployment steps. Ask me about your current file, how to use a feature, or how to debug what just happened in the terminal.",
118
+
`VoidLAB basic assistant is best for product usage, execution troubleshooting, workspace organization, and fast guidance while you code.${workspaceHint}${fileHint} Ask me about the current file, terminal output, or the next workflow step you want to take.`,
0 commit comments