@gaunt-sloth/agent 2.0.0-beta.4 → 2.0.0-beta.6
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/README.md +6 -1
- package/cli.js +93 -6
- package/dist/middleware/binaryContentInjectionMiddleware.js +6 -1
- package/dist/middleware/binaryContentInjectionMiddleware.js.map +1 -1
- package/dist/middleware/frontendImageInjectionMiddleware.d.ts +52 -25
- package/dist/middleware/frontendImageInjectionMiddleware.js +91 -13
- package/dist/middleware/frontendImageInjectionMiddleware.js.map +1 -1
- package/dist/middleware/registry.js +14 -12
- package/dist/middleware/registry.js.map +1 -1
- package/dist/modules/acp/acpAgentApp.js +5 -0
- package/dist/modules/acp/acpAgentApp.js.map +1 -1
- package/dist/modules/acp/acpAgentAppV1.js +5 -0
- package/dist/modules/acp/acpAgentAppV1.js.map +1 -1
- package/dist/modules/acp/acpCommon.d.ts +6 -14
- package/dist/modules/acp/acpCommon.js +6 -16
- package/dist/modules/acp/acpCommon.js.map +1 -1
- package/dist/modules/apiAgUiModule.js +7 -0
- package/dist/modules/apiAgUiModule.js.map +1 -1
- package/dist/modules/interactiveSessionModule.d.ts +10 -1
- package/dist/modules/interactiveSessionModule.js +224 -41
- package/dist/modules/interactiveSessionModule.js.map +1 -1
- package/dist/modules/sessionResume.d.ts +123 -0
- package/dist/modules/sessionResume.js +268 -0
- package/dist/modules/sessionResume.js.map +1 -0
- package/dist/modules/slashCommands.d.ts +142 -0
- package/dist/modules/slashCommands.js +352 -15
- package/dist/modules/slashCommands.js.map +1 -1
- package/dist/modules/workspace.d.ts +24 -0
- package/dist/modules/workspace.js +27 -0
- package/dist/modules/workspace.js.map +1 -0
- package/package.json +5 -5
|
@@ -13,9 +13,36 @@
|
|
|
13
13
|
* The registry is a plain array so later layers (e.g. extension-registered commands, EXT-5)
|
|
14
14
|
* can append more entries via {@link createCommandRegistry} without this module changing.
|
|
15
15
|
*/
|
|
16
|
+
import { parseTokenBudget, TokenBudgetError } from '@gaunt-sloth/core/config.js';
|
|
17
|
+
import { CONTEXT_WINDOW_ORIGIN_LABELS } from '@gaunt-sloth/core/core/contextWindow.js';
|
|
16
18
|
import { APPROVAL_POSTURES, APPROVAL_PROTECTION_DOCS_LINES, APPROVAL_RUNG_DESCRIPTIONS, APPROVAL_RUNG_LABELS, APPROVAL_RUNGS, APPROVAL_WRITE_MODIFIER_HINT, isRatedRung, TOOL_ANNOTATION_HINTS, } from '@gaunt-sloth/core/config.js';
|
|
17
19
|
import { describeApprovalEntry } from '@gaunt-sloth/core/core/approvals/matcher.js';
|
|
20
|
+
import { deferExitOutput } from '@gaunt-sloth/core/core/exitOutputChannel.js';
|
|
21
|
+
import { modelProviderLabel } from '@gaunt-sloth/core/core/modelLabel.js';
|
|
18
22
|
import { MOUSE_SELECTION_HINT } from '@gaunt-sloth/core/config/mouse.js';
|
|
23
|
+
import { parseResumeId } from '#src/modules/sessionResume.js';
|
|
24
|
+
/**
|
|
25
|
+
* CFG-38 — the value for a field already LABELLED `Model:` (`/config`, `/status`, `/model`).
|
|
26
|
+
*
|
|
27
|
+
* It is the shared `modelProviderLabel` spelling and nothing else — never a second template — but
|
|
28
|
+
* it calls that helper only once a model has resolved, and that guard is the whole point of this
|
|
29
|
+
* function rather than a redundancy.
|
|
30
|
+
*
|
|
31
|
+
* `modelProviderLabel` returns whichever half it has, so a config naming `llm.type` and no
|
|
32
|
+
* `llm.model` (both are optional in the schema) would otherwise render `Model: anthropic`: a
|
|
33
|
+
* provider name sitting exactly where a model name sits, read by any user as the model. On the
|
|
34
|
+
* unlabelled surfaces — the launch banner, the compact run header — a lone provider is fine
|
|
35
|
+
* because there is no label to contradict; here there is one.
|
|
36
|
+
*
|
|
37
|
+
* This deliberately does NOT settle the open question of whether the banner's rule (a lone
|
|
38
|
+
* provider survives) and the review heading's (the label is dropped whole) should converge. Both
|
|
39
|
+
* are untouched, and both are still pinned by their own tests. This function only preserves what
|
|
40
|
+
* these three labelled lines already did with a missing model — report `unknown` — so that adding
|
|
41
|
+
* the provider is purely additive.
|
|
42
|
+
*/
|
|
43
|
+
function modelField(model, provider) {
|
|
44
|
+
return model?.trim() ? (modelProviderLabel(model, provider) ?? 'unknown') : 'unknown';
|
|
45
|
+
}
|
|
19
46
|
/**
|
|
20
47
|
* Build the compact, read-only `/config` summary (GS2-1): a handful of the most orienting
|
|
21
48
|
* resolved-config fields, one per line, with a pointer to `gth config print` for the full view.
|
|
@@ -35,7 +62,11 @@ import { MOUSE_SELECTION_HINT } from '@gaunt-sloth/core/config/mouse.js';
|
|
|
35
62
|
export function formatConfigSummary(config, command) {
|
|
36
63
|
const fmt = (v) => typeof v === 'string' ? v : Array.isArray(v) ? JSON.stringify(v) : String(v);
|
|
37
64
|
const lines = [];
|
|
38
|
-
|
|
65
|
+
// CFG-38 — the shared `model (provider)` spelling, never a second local template. The helper is
|
|
66
|
+
// called only when a MODEL resolves, so this line's pre-existing `unknown` is untouched and the
|
|
67
|
+
// provider is only ever APPENDED. See the note on `modelField` for why the guard is not
|
|
68
|
+
// redundant with the helper's own.
|
|
69
|
+
lines.push(`Model: ${modelField(config.modelDisplayName, config.modelProviderType)}`);
|
|
39
70
|
lines.push(`Agent backend: ${config.agent?.backend ?? 'lean'}`);
|
|
40
71
|
const commandFilesystem = command
|
|
41
72
|
? config.commands?.[command]?.filesystem
|
|
@@ -89,7 +120,8 @@ export function configNotice(summary, warnings) {
|
|
|
89
120
|
/** Shared "history is unavailable" body (history off / DB missing), reused by all three commands. */
|
|
90
121
|
const HISTORY_UNAVAILABLE_LINES = [
|
|
91
122
|
'No local session history is available in this session.',
|
|
92
|
-
'
|
|
123
|
+
'Recording is on by default (local only); `history.enabled: false` in your gsloth config turns ' +
|
|
124
|
+
'it off.',
|
|
93
125
|
];
|
|
94
126
|
/** The `/history` notice (GS2-7): recent recorded sessions, or an "unavailable" fallback. */
|
|
95
127
|
export function historyNotice(summary) {
|
|
@@ -384,7 +416,9 @@ export function approvalsStatusNotice(approvals, allowlist, refusals = [], grant
|
|
|
384
416
|
lines: [
|
|
385
417
|
APPROVAL_RUNG_DESCRIPTIONS[approvals.rung],
|
|
386
418
|
`Auto-rater: ${rater}`,
|
|
387
|
-
|
|
419
|
+
// GS2-20 — a grant made at the menu lives with the CONVERSATION, not the process: it is kept
|
|
420
|
+
// in the history store and comes back when the conversation is resumed.
|
|
421
|
+
`Allowed: ${allowlist.session} this conversation · ${allowlist.always ?? '—'} remembered · Denied: ${refusals.length}`,
|
|
388
422
|
...describeGrants(grants),
|
|
389
423
|
...(trust ? [describeMcpTrust(trust)] : []),
|
|
390
424
|
// The docs pointer rides with the mode list, and is absent for the same reason the list is
|
|
@@ -437,12 +471,17 @@ function describeGrants(grants) {
|
|
|
437
471
|
/**
|
|
438
472
|
* [[EXT-107]] — how a refusal's origin is said on screen. Three sources, three lifetimes, three
|
|
439
473
|
* owners, and the words have to carry the difference: the whole point of listing refusals here is
|
|
440
|
-
* that a user can tell the one that ends with this
|
|
441
|
-
* tomorrow, and both from the line they wrote themselves.
|
|
474
|
+
* that a user can tell the one that ends with this conversation from the one that will still be
|
|
475
|
+
* there tomorrow in any conversation, and both from the line they wrote themselves.
|
|
476
|
+
*
|
|
477
|
+
* GS2-20 — the middle one is *this conversation*, not *this session*: a refusal made at the menu is
|
|
478
|
+
* recorded against the conversation in the history store and comes back when the conversation is
|
|
479
|
+
* resumed, so its lifetime is the conversation's. (The store's own scope name stays `session`; this
|
|
480
|
+
* is the label a person reads.)
|
|
442
481
|
*/
|
|
443
482
|
const REFUSAL_ORIGIN_LABELS = {
|
|
444
483
|
config: 'from your approvals.deny',
|
|
445
|
-
session: 'this
|
|
484
|
+
session: 'this conversation only',
|
|
446
485
|
persisted: 'saved to this project',
|
|
447
486
|
};
|
|
448
487
|
/** How many refusals `/approvals` lists before it summarizes the rest. */
|
|
@@ -679,17 +718,19 @@ export function approvalsUndenyNotice(lift) {
|
|
|
679
718
|
tone: 'warn',
|
|
680
719
|
};
|
|
681
720
|
}
|
|
721
|
+
// GS2-20 — a lift is recorded against the conversation like the refusal was, so the lifetime it
|
|
722
|
+
// names is the conversation's: it holds if the conversation is resumed, and not in another one.
|
|
682
723
|
const removal = lift.stillSaved
|
|
683
|
-
? `${lift.description} is no longer refused for the rest of this
|
|
684
|
-
'saved refusals could not be updated, so it is still in that file and it will
|
|
685
|
-
'in
|
|
686
|
-
'written; fix that, or remove the entry from the file by hand.'
|
|
724
|
+
? `${lift.description} is no longer refused for the rest of this conversation — but this ` +
|
|
725
|
+
'project’s saved refusals could not be updated, so it is still in that file and it will ' +
|
|
726
|
+
'refuse again in any other conversation. The error reported beside this names the file and ' +
|
|
727
|
+
'why it could not be written; fix that, or remove the entry from the file by hand.'
|
|
687
728
|
: lift.origin === 'persisted'
|
|
688
729
|
? `${lift.description} is no longer refused, and it has been removed from this project’s ` +
|
|
689
730
|
'saved refusals, so it will not come back in a new session.'
|
|
690
|
-
: `${lift.description} is no longer refused for the rest of this
|
|
731
|
+
: `${lift.description} is no longer refused for the rest of this conversation.`;
|
|
691
732
|
return {
|
|
692
|
-
title: lift.stillSaved ? 'Refusal lifted for this
|
|
733
|
+
title: lift.stillSaved ? 'Refusal lifted for this conversation only' : 'Refusal lifted',
|
|
693
734
|
lines: [
|
|
694
735
|
removal,
|
|
695
736
|
...(lift.stillConfigured
|
|
@@ -887,6 +928,210 @@ export function debugDumpNotice(archiveDir, redacted) {
|
|
|
887
928
|
tone: 'warn',
|
|
888
929
|
};
|
|
889
930
|
}
|
|
931
|
+
/**
|
|
932
|
+
* TUI-C56 — the same archive path, written for a screen the session is no longer on.
|
|
933
|
+
*
|
|
934
|
+
* The notice above is painted into the session's frame, which on the full-screen surface lives in
|
|
935
|
+
* the alternate screen and is discarded the moment the user exits. This is the block deferred to
|
|
936
|
+
* the exit-output channel instead, so the path is still on the terminal after the session is gone.
|
|
937
|
+
*
|
|
938
|
+
* It repeats rather than replaces the notice, and it is one self-contained line rather than the
|
|
939
|
+
* notice's seven, because the two are read in different places: the notice arrives in a session
|
|
940
|
+
* the user is still in and can act on immediately, while this lands under whatever the user's
|
|
941
|
+
* terminal held before they started. So it carries its own label and its own statement of what
|
|
942
|
+
* redaction did — a reader who scrolled past the session start has no other context — and stops
|
|
943
|
+
* there: the opt-out instructions and the review-before-sharing detail belong to the moment of
|
|
944
|
+
* running the command, not to a line found later.
|
|
945
|
+
*/
|
|
946
|
+
export function debugDumpExitLine(archiveDir, redacted) {
|
|
947
|
+
return redacted
|
|
948
|
+
? `Debug dump written (secrets redacted, review before sharing): ${archiveDir}`
|
|
949
|
+
: `Debug dump written (UNSANITIZED — may include secrets, review before sharing): ${archiveDir}`;
|
|
950
|
+
}
|
|
951
|
+
/**
|
|
952
|
+
* GS2-23 — the line a surface prints the moment `/compact` starts, because the model call behind
|
|
953
|
+
* it takes seconds and a command that goes quiet reads as a command that did nothing (DL-1).
|
|
954
|
+
*/
|
|
955
|
+
export const COMPACTING_LINE = 'Compacting the conversation — the model is summarising the older messages…';
|
|
956
|
+
/** A count with thousands separators, so a character estimate reads at a glance. */
|
|
957
|
+
const formatCount = (n) => String(n).replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
|
958
|
+
const plural = (n, noun) => `${n} ${noun}${n === 1 ? '' : 's'}`;
|
|
959
|
+
/**
|
|
960
|
+
* GS2-23 — the notice for a landed `/compact`, built from what the runner RETURNS rather than from
|
|
961
|
+
* what was asked for, so it can only describe the compaction actually applied.
|
|
962
|
+
*
|
|
963
|
+
* It says three things, because those are the three the person cannot otherwise observe: what was
|
|
964
|
+
* folded, what was kept, and how much smaller the model's context is. And it says what did NOT
|
|
965
|
+
* change — the transcript on screen — because the screen is the person's record and a notice that
|
|
966
|
+
* only mentioned the model would leave them expecting lines to vanish. The size is a message count
|
|
967
|
+
* and a character estimate; tokens are not counted here.
|
|
968
|
+
*/
|
|
969
|
+
export function compactionNotice(outcome, focus) {
|
|
970
|
+
if (!outcome.changed) {
|
|
971
|
+
return {
|
|
972
|
+
title: 'Nothing to compact',
|
|
973
|
+
lines: [
|
|
974
|
+
`The conversation holds ${plural(outcome.before.messages, 'message')}, and the last ` +
|
|
975
|
+
`${outcome.keepRecent} are always kept word for word, so there is nothing older to fold.`,
|
|
976
|
+
'Nothing was changed.',
|
|
977
|
+
],
|
|
978
|
+
};
|
|
979
|
+
}
|
|
980
|
+
const kept = outcome.keptCount > outcome.keepRecent
|
|
981
|
+
? `kept the last ${outcome.keptCount} word for word (${outcome.keepRecent} were asked for; ` +
|
|
982
|
+
'a tool call and its result stay together)'
|
|
983
|
+
: `kept the last ${outcome.keptCount} word for word`;
|
|
984
|
+
return {
|
|
985
|
+
title: 'Conversation compacted',
|
|
986
|
+
lines: [
|
|
987
|
+
`Folded ${plural(outcome.removedCount, 'older message')} into a summary and ${kept}.`,
|
|
988
|
+
`Model context: ${plural(outcome.before.messages, 'message')} (~${formatCount(outcome.before.characters)} characters) → ` +
|
|
989
|
+
`${plural(outcome.after.messages, 'message')} (~${formatCount(outcome.after.characters)} characters).`,
|
|
990
|
+
...(focus && focus.trim().length > 0 ? [`Summary focus: ${focus.trim()}`] : []),
|
|
991
|
+
'The transcript on screen is unchanged. This is what the model sees from the next turn on, ' +
|
|
992
|
+
'and a resumed session stays compacted.',
|
|
993
|
+
],
|
|
994
|
+
};
|
|
995
|
+
}
|
|
996
|
+
/** GS2-23 — `/compact` on a surface with no conversation state behind it (the fixture agent). */
|
|
997
|
+
export function compactionUnavailableNotice() {
|
|
998
|
+
return {
|
|
999
|
+
title: 'Compaction unavailable',
|
|
1000
|
+
lines: ['This session has no model conversation to compact.', 'Nothing was changed.'],
|
|
1001
|
+
tone: 'warn',
|
|
1002
|
+
};
|
|
1003
|
+
}
|
|
1004
|
+
/**
|
|
1005
|
+
* GS2-23 — `/compact` whose summary call failed, or that was refused (a turn still running). The
|
|
1006
|
+
* conversation is left as it was in every such case, and the notice says so before it says why.
|
|
1007
|
+
*/
|
|
1008
|
+
export function compactionFailedNotice(reason) {
|
|
1009
|
+
return {
|
|
1010
|
+
title: 'Compaction did not happen',
|
|
1011
|
+
lines: [`The conversation was left unchanged: ${reason}`],
|
|
1012
|
+
tone: 'warn',
|
|
1013
|
+
};
|
|
1014
|
+
}
|
|
1015
|
+
/**
|
|
1016
|
+
* EXT-161 — how a resolved threshold and its provenance read to a person.
|
|
1017
|
+
*
|
|
1018
|
+
* One renderer for both `/autocompact` and `/status`, so the two cannot describe the same number
|
|
1019
|
+
* differently — which they would within a release of being written separately.
|
|
1020
|
+
*/
|
|
1021
|
+
export function autocompactLines(status) {
|
|
1022
|
+
const windowPart = status.window === null
|
|
1023
|
+
? "This model's context window is not known to any source we have."
|
|
1024
|
+
: `Model context window: ${formatCount(status.window)} tokens, from ` +
|
|
1025
|
+
`${CONTEXT_WINDOW_ORIGIN_LABELS[status.windowOrigin]}.`;
|
|
1026
|
+
if (!status.enabled) {
|
|
1027
|
+
return [
|
|
1028
|
+
'Automatic compaction is OFF for this session (`autocompact: false`).',
|
|
1029
|
+
windowPart,
|
|
1030
|
+
'The conversation is never folded before a request; an overflow is caught after the fact ' +
|
|
1031
|
+
'instead, if the provider reports one.',
|
|
1032
|
+
];
|
|
1033
|
+
}
|
|
1034
|
+
if (status.thresholdTokens === null) {
|
|
1035
|
+
return [
|
|
1036
|
+
'Automatic compaction is on, but nothing will trigger it.',
|
|
1037
|
+
windowPart,
|
|
1038
|
+
'A threshold is never guessed — a wrong one would fold conversations that had room to ' +
|
|
1039
|
+
'spare, silently. Set one yourself with `/autocompact 300K` for this session, or the ' +
|
|
1040
|
+
'`autocompact` config key to make it stick.',
|
|
1041
|
+
];
|
|
1042
|
+
}
|
|
1043
|
+
const provenance = {
|
|
1044
|
+
session: 'set with /autocompact in this session (the config value is overridden until it ends)',
|
|
1045
|
+
config: 'from the `autocompact` key in your config',
|
|
1046
|
+
default: "derived from the window, holding back room for the model's answer",
|
|
1047
|
+
none: 'nothing will trigger it',
|
|
1048
|
+
};
|
|
1049
|
+
return [
|
|
1050
|
+
`Automatic compaction is ON. The conversation is folded once the prompt passes about ` +
|
|
1051
|
+
`${formatCount(status.thresholdTokens)} tokens.`,
|
|
1052
|
+
`Threshold: ${provenance[status.thresholdOrigin]}.`,
|
|
1053
|
+
windowPart,
|
|
1054
|
+
];
|
|
1055
|
+
}
|
|
1056
|
+
/**
|
|
1057
|
+
* EXT-161 — the notice `/autocompact` prints, whether it reported or changed the threshold.
|
|
1058
|
+
*
|
|
1059
|
+
* A request to CHANGE the threshold while the config has compaction off is refused by the
|
|
1060
|
+
* controller, and the status that comes back still says `enabled: false`. That combination is
|
|
1061
|
+
* reported as the refusal it is: a notice titled "threshold set" over a body saying nothing will
|
|
1062
|
+
* ever fire would tell the user the opposite of what happened. The bare report keeps the OFF lines.
|
|
1063
|
+
*/
|
|
1064
|
+
export function autocompactNotice(status, changed) {
|
|
1065
|
+
if (changed && !status.enabled) {
|
|
1066
|
+
return {
|
|
1067
|
+
title: 'Automatic compaction is off in your config',
|
|
1068
|
+
lines: [
|
|
1069
|
+
'The `autocompact` key in your config turns automatic compaction off for every session, ' +
|
|
1070
|
+
'so a threshold set here would never fire.',
|
|
1071
|
+
'Nothing was changed.',
|
|
1072
|
+
// The off switch has two spellings and they need different advice. `autocompact: false`
|
|
1073
|
+
// carries no number, so the remedy is the key itself. The object form can carry one —
|
|
1074
|
+
// `{ "enabled": false, "threshold": "300K" }` — and telling THAT user to "set a threshold"
|
|
1075
|
+
// names something they have already done, while the sentence they need is that the number
|
|
1076
|
+
// is not what is stopping it. A status with a budget under `enabled: false` is exactly the
|
|
1077
|
+
// second case: a session budget cannot be recorded while compaction is off, so the budget
|
|
1078
|
+
// that survives here can only have come from the config.
|
|
1079
|
+
status.budget
|
|
1080
|
+
? 'Your config already names a threshold; it is the `enabled: false` beside it, not a ' +
|
|
1081
|
+
'missing number, that stops compaction firing. Remove that to turn it back on.'
|
|
1082
|
+
: 'To turn it back on, remove the key from your config or give it a threshold instead ' +
|
|
1083
|
+
'(for example `"autocompact": "300K"`).',
|
|
1084
|
+
],
|
|
1085
|
+
tone: 'warn',
|
|
1086
|
+
};
|
|
1087
|
+
}
|
|
1088
|
+
return {
|
|
1089
|
+
title: changed ? 'Automatic compaction threshold set' : 'Automatic compaction',
|
|
1090
|
+
lines: [
|
|
1091
|
+
...autocompactLines(status),
|
|
1092
|
+
...(changed
|
|
1093
|
+
? [
|
|
1094
|
+
'This applies to the rest of this session only. To make it permanent, set the ' +
|
|
1095
|
+
'`autocompact` key in your config.',
|
|
1096
|
+
]
|
|
1097
|
+
: []),
|
|
1098
|
+
],
|
|
1099
|
+
};
|
|
1100
|
+
}
|
|
1101
|
+
/**
|
|
1102
|
+
* EXT-161 — `/autocompact` on a surface with no resolved model behind it (the fixture agent), or
|
|
1103
|
+
* before the agent has initialised. It reports unavailability rather than inventing a number.
|
|
1104
|
+
*/
|
|
1105
|
+
export function autocompactUnavailableNotice() {
|
|
1106
|
+
return {
|
|
1107
|
+
title: 'Automatic compaction unavailable',
|
|
1108
|
+
lines: [
|
|
1109
|
+
'This session has no resolved model, so there is no context window to set a threshold ' +
|
|
1110
|
+
'against.',
|
|
1111
|
+
'Nothing was changed.',
|
|
1112
|
+
],
|
|
1113
|
+
tone: 'warn',
|
|
1114
|
+
};
|
|
1115
|
+
}
|
|
1116
|
+
/**
|
|
1117
|
+
* EXT-161 — a malformed `/autocompact` argument.
|
|
1118
|
+
*
|
|
1119
|
+
* **The previous threshold stays in force.** A bad argument must not disable compaction: the user
|
|
1120
|
+
* asked to change a number, not to switch a protection off, and a typo that silently turned the
|
|
1121
|
+
* feature off would be discovered only by an overflow much later.
|
|
1122
|
+
*/
|
|
1123
|
+
export function autocompactRejectedNotice(message) {
|
|
1124
|
+
return {
|
|
1125
|
+
title: 'Not a token budget',
|
|
1126
|
+
lines: [
|
|
1127
|
+
message,
|
|
1128
|
+
'Usage: /autocompact [<tokens>] — e.g. 300000, 300K, 0.9M, or 80% of the context window; ' +
|
|
1129
|
+
'with no argument it reports the threshold in force.',
|
|
1130
|
+
'The threshold already in force is unchanged.',
|
|
1131
|
+
],
|
|
1132
|
+
tone: 'warn',
|
|
1133
|
+
};
|
|
1134
|
+
}
|
|
890
1135
|
/**
|
|
891
1136
|
* Build the default command registry. Returns a fresh array each call so callers may push
|
|
892
1137
|
* extension commands onto it (EXT-5) without sharing mutable module state.
|
|
@@ -907,6 +1152,77 @@ export function createCommandRegistry() {
|
|
|
907
1152
|
// is not a transcript item, so no committed notice here.
|
|
908
1153
|
run: () => ({ clearTranscript: true }),
|
|
909
1154
|
},
|
|
1155
|
+
{
|
|
1156
|
+
name: 'compact',
|
|
1157
|
+
description: 'Fold the older conversation into a summary so the model has room to keep going ' +
|
|
1158
|
+
'(/compact [what to focus on]; the last few messages are kept word for word)',
|
|
1159
|
+
// Idle-only, like /clear: it rewrites the model's thread, and the runner refuses to do that
|
|
1160
|
+
// underneath a running turn anyway. The surface awaits the runner and commits the notice for
|
|
1161
|
+
// what landed; free text after the command is the summary's focus.
|
|
1162
|
+
run: (_ctx, args) => {
|
|
1163
|
+
const focus = args.join(' ').trim();
|
|
1164
|
+
return { compact: focus.length > 0 ? { focus } : {} };
|
|
1165
|
+
},
|
|
1166
|
+
},
|
|
1167
|
+
{
|
|
1168
|
+
name: 'autocompact',
|
|
1169
|
+
// **One line, deliberately.** `SlashCommandMenu` renders every matching command with no
|
|
1170
|
+
// viewport, so each wrapped description costs a row of the screen the menu shares with the
|
|
1171
|
+
// prompt — and the PTY cell that types a draft, opens the menu and asserts the draft is still
|
|
1172
|
+
// underneath goes red when the list outgrows the terminal. The forms and the provenance are
|
|
1173
|
+
// in the guide; `/help` gets the shortest line that still says what the command does.
|
|
1174
|
+
description: 'Show or set the automatic compaction threshold (/autocompact [300K | 80%])',
|
|
1175
|
+
// Read-only with no argument and a pure session setting with one, so it is safe mid-turn:
|
|
1176
|
+
// the threshold is read before the NEXT model call, and moving it does not touch the
|
|
1177
|
+
// conversation or the turn in flight.
|
|
1178
|
+
availableDuringRun: true,
|
|
1179
|
+
// EXT-161 — the parse happens HERE, in the pure command, through the SAME
|
|
1180
|
+
// `parseTokenBudget` the `autocompact` config key validates with. That shared import is the
|
|
1181
|
+
// point of the command living in this node: a second grammar for the same three forms would
|
|
1182
|
+
// agree on the day it was written and drift afterwards.
|
|
1183
|
+
run: (_ctx, args) => {
|
|
1184
|
+
if (args.length === 0)
|
|
1185
|
+
return { autocompact: { show: true } };
|
|
1186
|
+
// Joined rather than `args[0]`: `300 K` arrives as two tokens and is the same budget as
|
|
1187
|
+
// `300K`, which the shared parser already accepts.
|
|
1188
|
+
const text = args.join(' ').trim();
|
|
1189
|
+
try {
|
|
1190
|
+
return { autocompact: { budget: parseTokenBudget(text) } };
|
|
1191
|
+
}
|
|
1192
|
+
catch (error) {
|
|
1193
|
+
return {
|
|
1194
|
+
notice: autocompactRejectedNotice(error instanceof TokenBudgetError ? error.message : String(error)),
|
|
1195
|
+
};
|
|
1196
|
+
}
|
|
1197
|
+
},
|
|
1198
|
+
},
|
|
1199
|
+
{
|
|
1200
|
+
name: 'resume',
|
|
1201
|
+
description: 'Pick up a saved conversation where it left off (/resume <id>, the number from ' +
|
|
1202
|
+
'`gth history list` or /history; no id lists the ones that can be resumed)',
|
|
1203
|
+
// Idle-only, like /clear and /compact: it moves the session onto another thread, and a turn
|
|
1204
|
+
// in flight would be writing to the one being left. The surface resolves and applies it
|
|
1205
|
+
// through the shared seam and commits what landed; the id is validated here so a typo is
|
|
1206
|
+
// named before anything is looked up.
|
|
1207
|
+
run: (_ctx, args) => {
|
|
1208
|
+
if (args.length === 0)
|
|
1209
|
+
return { resume: {} };
|
|
1210
|
+
const id = parseResumeId(args[0]);
|
|
1211
|
+
if (id === null || args.length > 1) {
|
|
1212
|
+
return {
|
|
1213
|
+
notice: {
|
|
1214
|
+
title: `Not a conversation id: ${args.join(' ')}`,
|
|
1215
|
+
lines: [
|
|
1216
|
+
'Usage: /resume [<id>] — the id is the number `gth history list` prints; with no ' +
|
|
1217
|
+
'id it lists the conversations that can be resumed.',
|
|
1218
|
+
],
|
|
1219
|
+
tone: 'warn',
|
|
1220
|
+
},
|
|
1221
|
+
};
|
|
1222
|
+
}
|
|
1223
|
+
return { resume: { id } };
|
|
1224
|
+
},
|
|
1225
|
+
},
|
|
910
1226
|
{
|
|
911
1227
|
name: 'debug',
|
|
912
1228
|
description: 'Toggle the docked debug panel',
|
|
@@ -1005,8 +1321,19 @@ export function createCommandRegistry() {
|
|
|
1005
1321
|
title: 'Session status',
|
|
1006
1322
|
lines: [
|
|
1007
1323
|
`Mode: ${ctx.mode} — how the agent handles your messages this session.`,
|
|
1008
|
-
|
|
1324
|
+
// CFG-38 — the shared spelling, so this line and `/config`, the run header, the launch
|
|
1325
|
+
// banner and the status bar all move together when it changes.
|
|
1326
|
+
`Model: ${modelField(ctx.modelDisplayName, ctx.modelProviderType)}`,
|
|
1009
1327
|
`Turns so far: ${ctx.turnCount}`,
|
|
1328
|
+
// GS2-20 — the id a later `gth history resume` takes, or the fact that there is none.
|
|
1329
|
+
ctx.conversationId !== undefined
|
|
1330
|
+
? `Conversation: #${ctx.conversationId} — pick it up later with ` +
|
|
1331
|
+
`\`gth history resume ${ctx.conversationId}\`, or switch with /resume <id>.`
|
|
1332
|
+
: 'Conversation: not being recorded, so this session cannot be resumed later.',
|
|
1333
|
+
// EXT-161 — compaction is on by default, so `/status` is where a feature nobody opted
|
|
1334
|
+
// into says what it will do and where its number came from. One line, the same
|
|
1335
|
+
// renderer `/autocompact` uses; omitted entirely when no model is resolved.
|
|
1336
|
+
...(ctx.autocompact ? autocompactLines(ctx.autocompact) : []),
|
|
1010
1337
|
'Restart with a different subcommand to change the mode (e.g. `gth chat`).',
|
|
1011
1338
|
],
|
|
1012
1339
|
},
|
|
@@ -1024,7 +1351,7 @@ export function createCommandRegistry() {
|
|
|
1024
1351
|
},
|
|
1025
1352
|
{
|
|
1026
1353
|
name: 'history',
|
|
1027
|
-
description: 'Show recent recorded sessions (local
|
|
1354
|
+
description: 'Show recent recorded sessions (local history)',
|
|
1028
1355
|
availableDuringRun: true,
|
|
1029
1356
|
// Read-only discovery, mirroring /config: render the App's fail-soft, pre-built summary.
|
|
1030
1357
|
run: (ctx) => ({ notice: historyNotice(ctx.historySummary) }),
|
|
@@ -1048,7 +1375,9 @@ export function createCommandRegistry() {
|
|
|
1048
1375
|
availableDuringRun: true,
|
|
1049
1376
|
run: (ctx) => ({
|
|
1050
1377
|
notice: {
|
|
1051
|
-
|
|
1378
|
+
// CFG-38 — this command's description has always promised "the current model /
|
|
1379
|
+
// provider"; until now it rendered only the model. Same shared spelling as everywhere.
|
|
1380
|
+
title: `Model: ${modelField(ctx.modelDisplayName, ctx.modelProviderType)}`,
|
|
1052
1381
|
lines: [
|
|
1053
1382
|
'This is the model answering your messages this session.',
|
|
1054
1383
|
'Change the default via `gth init` or your gsloth config.',
|
|
@@ -1092,6 +1421,14 @@ export function createCommandRegistry() {
|
|
|
1092
1421
|
modelDisplayName: ctx.modelDisplayName,
|
|
1093
1422
|
redact,
|
|
1094
1423
|
});
|
|
1424
|
+
// TUI-C56 — the in-frame notice below is the mid-session answer, and on the full-screen
|
|
1425
|
+
// surface it dies with the alternate screen when the user exits. The whole point of the
|
|
1426
|
+
// command is a path the user goes and opens AFTERWARDS, so the path is also deferred to
|
|
1427
|
+
// the exit-output channel, which the surface drains onto the restored screen. Deferring
|
|
1428
|
+
// unconditionally keeps the command identical on both surfaces: the readline session
|
|
1429
|
+
// never drains (its output already survives its own exit), so this costs it one array
|
|
1430
|
+
// entry and prints nothing.
|
|
1431
|
+
deferExitOutput(debugDumpExitLine(archiveDir, redact));
|
|
1095
1432
|
return { notice: debugDumpNotice(archiveDir, redact) };
|
|
1096
1433
|
},
|
|
1097
1434
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slashCommands.js","sourceRoot":"","sources":["../../src/modules/slashCommands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"slashCommands.js","sourceRoot":"","sources":["../../src/modules/slashCommands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @packageDocumentation
|
|
3
|
+
* The one comparison of two workspace paths, shared by ACP's `session/new` (is this the project the
|
|
4
|
+
* client already has an agent for?) and GS2-20's resume (was this conversation recorded in the
|
|
5
|
+
* directory the session is running in?). One function, so the two cannot come to disagree about
|
|
6
|
+
* which directories are the same directory.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Whether two already-resolved absolute paths name the same workspace.
|
|
10
|
+
*
|
|
11
|
+
* **Case-insensitive on win32 and nowhere else**, because that is where the answer differs: NTFS is
|
|
12
|
+
* case-insensitive and case-preserving, so `C:\Foo` and `c:\foo` are one directory and an exact
|
|
13
|
+
* string compare calls them two — a client that re-sends its own `cwd` with different casing would
|
|
14
|
+
* be told to start a second agent process for the project it is already in, and a conversation
|
|
15
|
+
* recorded under one spelling would be refused under the other. On POSIX the two really are
|
|
16
|
+
* different directories and must keep comparing unequal, so the platform is the whole distinction
|
|
17
|
+
* rather than a workaround for one.
|
|
18
|
+
*
|
|
19
|
+
* `platform` is a parameter with the live value as its default so both arms are testable on any
|
|
20
|
+
* host. Every other bug of this shape in this repo (OPS-27, EXT-38, GS2-42, EXT-16) was a POSIX-only
|
|
21
|
+
* assertion that passed everywhere except the Windows cell, and a test that can only run on win32
|
|
22
|
+
* would have the same blind spot pointed the other way.
|
|
23
|
+
*/
|
|
24
|
+
export declare function isSameWorkspace(a: string, b: string, platform?: NodeJS.Platform): boolean;
|