prior-cli 1.3.1 → 1.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/prior.js +19 -22
- package/package.json +1 -1
package/bin/prior.js
CHANGED
|
@@ -568,7 +568,7 @@ async function startChat(opts = {}) {
|
|
|
568
568
|
terminal: true,
|
|
569
569
|
historySize: 100,
|
|
570
570
|
completer: line => {
|
|
571
|
-
const cmds = ['/help', '/clear', '/model ', '/tools', '/
|
|
571
|
+
const cmds = ['/help', '/clear', '/model ', '/tools', '/censored', '/uncensored', '/login', '/logout', '/exit'];
|
|
572
572
|
if (!line.startsWith('/')) return [[], line];
|
|
573
573
|
const hits = cmds.filter(cmd => cmd.startsWith(line));
|
|
574
574
|
return [hits, line];
|
|
@@ -598,16 +598,14 @@ async function startChat(opts = {}) {
|
|
|
598
598
|
console.log(c.muted(` ${cwdShort}`));
|
|
599
599
|
console.log(c.ok(' ◉') + c.muted(' Agent mode ') + c.dim('· file web shell image prior-network'));
|
|
600
600
|
|
|
601
|
-
if (opts.uncensored) console.log(c.warn(' ⚠ Uncensored mode active'));
|
|
602
601
|
console.log(DIVIDER);
|
|
603
|
-
console.log(c.muted(' /help /clear /model <name> /tools /
|
|
602
|
+
console.log(c.muted(' /help /clear /model <name> /tools /exit'));
|
|
604
603
|
console.log(DIVIDER);
|
|
605
604
|
console.log('');
|
|
606
605
|
|
|
607
606
|
// Conversation history (for agent mode, keeps full multi-turn context)
|
|
608
607
|
const chatHistory = [];
|
|
609
|
-
let currentModel
|
|
610
|
-
let uncensored = opts.uncensored || false;
|
|
608
|
+
let currentModel = opts.model || null;
|
|
611
609
|
let _currentAbortController = null;
|
|
612
610
|
|
|
613
611
|
// ── Live slash-command suggestions ──────────────────────────
|
|
@@ -620,10 +618,10 @@ async function startChat(opts = {}) {
|
|
|
620
618
|
{ cmd: '/help', desc: 'Show help' },
|
|
621
619
|
{ cmd: '/clear', desc: 'Clear screen' },
|
|
622
620
|
{ cmd: '/model', desc: 'Switch model' },
|
|
623
|
-
{ cmd: '/tools', desc: 'List tools'
|
|
624
|
-
{ cmd: '/
|
|
625
|
-
{ cmd: '/
|
|
626
|
-
{ cmd: '/usage', desc: 'Token usage today'
|
|
621
|
+
{ cmd: '/tools', desc: 'List tools' },
|
|
622
|
+
{ cmd: '/censored', desc: 'Load standard model (qwen)' },
|
|
623
|
+
{ cmd: '/uncensored', desc: 'Load uncensored model' },
|
|
624
|
+
{ cmd: '/usage', desc: 'Token usage today' },
|
|
627
625
|
{ cmd: '/learn', desc: 'Learn this directory → prior.md' },
|
|
628
626
|
{ cmd: '/login', desc: 'Sign in' },
|
|
629
627
|
{ cmd: '/logout', desc: 'Sign out' },
|
|
@@ -732,7 +730,7 @@ async function startChat(opts = {}) {
|
|
|
732
730
|
clearLine();
|
|
733
731
|
console.error(c.err(` ✗ ${err.message}\n`));
|
|
734
732
|
}
|
|
735
|
-
return startChat({ model: currentModel
|
|
733
|
+
return startChat({ model: currentModel });
|
|
736
734
|
}
|
|
737
735
|
|
|
738
736
|
case '/logout':
|
|
@@ -750,14 +748,15 @@ async function startChat(opts = {}) {
|
|
|
750
748
|
console.log('');
|
|
751
749
|
return loop();
|
|
752
750
|
|
|
753
|
-
case '/uncensored':
|
|
754
|
-
uncensored = true;
|
|
755
|
-
console.log(c.warn(' ⚠ Uncensored mode enabled\n'));
|
|
756
|
-
return loop();
|
|
757
751
|
|
|
758
752
|
case '/censored':
|
|
759
|
-
|
|
760
|
-
console.log(c.ok(' ✓ Standard
|
|
753
|
+
currentModel = 'qwen3.5:4b';
|
|
754
|
+
console.log(c.ok(' ✓ Prior Standard Model Loaded\n'));
|
|
755
|
+
return loop();
|
|
756
|
+
|
|
757
|
+
case '/uncensored':
|
|
758
|
+
currentModel = 'dolphin-uncensored:latest';
|
|
759
|
+
console.log(c.warn(' ✓ Prior Uncensored Model Loaded\n'));
|
|
761
760
|
return loop();
|
|
762
761
|
|
|
763
762
|
case '/model':
|
|
@@ -875,7 +874,7 @@ Keep it under 350 words. Write prior.md now.`;
|
|
|
875
874
|
await runAgent({
|
|
876
875
|
messages: [{ role: 'user', content: learnPrompt }],
|
|
877
876
|
model: currentModel,
|
|
878
|
-
|
|
877
|
+
|
|
879
878
|
cwd: process.cwd(),
|
|
880
879
|
projectContext: null,
|
|
881
880
|
send: ev => {
|
|
@@ -945,10 +944,10 @@ Keep it under 350 words. Write prior.md now.`;
|
|
|
945
944
|
console.log('');
|
|
946
945
|
console.log(c.bold(' Commands'));
|
|
947
946
|
console.log(c.muted(' /clear ') + 'Clear screen');
|
|
948
|
-
console.log(c.muted(' /
|
|
947
|
+
console.log(c.muted(' /censored ') + 'Load standard model (qwen)');
|
|
948
|
+
console.log(c.muted(' /uncensored ') + 'Load uncensored model (dolphin)');
|
|
949
|
+
console.log(c.muted(' /model <name> ') + 'Switch to any specific model');
|
|
949
950
|
console.log(c.muted(' /tools ') + 'List available tools');
|
|
950
|
-
console.log(c.muted(' /uncensored ') + 'Enable uncensored mode');
|
|
951
|
-
console.log(c.muted(' /censored ') + 'Disable uncensored mode');
|
|
952
951
|
console.log(c.muted(' /usage ') + 'Token usage for today');
|
|
953
952
|
console.log(c.muted(' /learn ') + 'Scan directory and write prior.md context file');
|
|
954
953
|
console.log(c.muted(' /login ') + 'Sign in to a different account');
|
|
@@ -999,7 +998,6 @@ Keep it under 350 words. Write prior.md now.`;
|
|
|
999
998
|
await runAgent({
|
|
1000
999
|
messages: [...chatHistory, { role: 'user', content: input }],
|
|
1001
1000
|
model: currentModel,
|
|
1002
|
-
uncensored,
|
|
1003
1001
|
cwd: process.cwd(),
|
|
1004
1002
|
projectContext,
|
|
1005
1003
|
confirm,
|
|
@@ -1152,7 +1150,6 @@ program
|
|
|
1152
1150
|
.command('chat', { isDefault: false })
|
|
1153
1151
|
.description('Open Prior AI chat session (default when no command given)')
|
|
1154
1152
|
.option('-m, --model <model>', 'Model to use')
|
|
1155
|
-
.option('-u, --uncensored', 'Enable uncensored mode')
|
|
1156
1153
|
.action(opts => startChat(opts));
|
|
1157
1154
|
|
|
1158
1155
|
// ── IMAGINE ────────────────────────────────────────────────────
|