@@ -584,7 +584,7 @@ describe("executeSlashCommand directives", () => {
584584 ) ;
585585
586586 expect ( result . content ) . toBe (
587- "Current thinking level: low.\nOptions: off, minimal, low, medium, high." ,
587+ "Current thinking level: low.\nOptions: default, off, minimal, low, medium, high." ,
588588 ) ;
589589 expect ( request ) . toHaveBeenNthCalledWith ( 1 , "sessions.list" , { } ) ;
590590 expect ( request ) . toHaveBeenNthCalledWith ( 2 , "models.list" , { view : "configured" } ) ;
@@ -634,6 +634,29 @@ describe("executeSlashCommand directives", () => {
634634 } ) ;
635635 } ) ;
636636
637+ it ( "clears thinking override for /think default" , async ( ) => {
638+ const request = vi . fn ( async ( method : string , payload ?: unknown ) => {
639+ if ( method === "sessions.patch" ) {
640+ return { ok : true , ...( ( payload ?? { } ) as object ) } ;
641+ }
642+ throw new Error ( `unexpected method: ${ method } ` ) ;
643+ } ) ;
644+
645+ const result = await executeSlashCommand (
646+ { request } as unknown as GatewayBrowserClient ,
647+ "agent:main:main" ,
648+ "think" ,
649+ "default" ,
650+ ) ;
651+
652+ expect ( result . content ) . toBe ( "Thinking level reset to default." ) ;
653+ expect ( result . action ) . toBe ( "refresh" ) ;
654+ expect ( request ) . toHaveBeenCalledWith ( "sessions.patch" , {
655+ key : "agent:main:main" ,
656+ thinkingLevel : null ,
657+ } ) ;
658+ } ) ;
659+
637660 it ( "uses default thinking options when the active session is absent" , async ( ) => {
638661 const request = vi . fn ( async ( method : string , payload ?: unknown ) => {
639662 if ( method === "sessions.list" ) {
@@ -709,7 +732,7 @@ describe("executeSlashCommand directives", () => {
709732 ) ;
710733
711734 expect ( status . content ) . toBe (
712- "Current thinking level: adaptive.\nOptions: off, minimal, low, medium, adaptive, high, xhigh, maximum." ,
735+ "Current thinking level: adaptive.\nOptions: default, off, minimal, low, medium, adaptive, high, xhigh, maximum." ,
713736 ) ;
714737 expect ( setXhigh . content ) . toBe ( "Thinking level set to **xhigh**." ) ;
715738 expect ( setMax . content ) . toBe ( "Thinking level set to **max**." ) ;
@@ -788,7 +811,7 @@ describe("executeSlashCommand directives", () => {
788811 ) ;
789812
790813 expect ( status . content ) . toBe (
791- "Current thinking level: off.\nOptions: off, minimal, low, medium, high, xhigh, max." ,
814+ "Current thinking level: off.\nOptions: default, off, minimal, low, medium, high, xhigh, max." ,
792815 ) ;
793816 expect ( setMax . content ) . toBe ( "Thinking level set to **max**." ) ;
794817 } ) ;
@@ -882,7 +905,7 @@ describe("executeSlashCommand directives", () => {
882905 "" ,
883906 ) ;
884907
885- expect ( result . content ) . toBe ( "Current fast mode: on.\nOptions: status, on, off." ) ;
908+ expect ( result . content ) . toBe ( "Current fast mode: on.\nOptions: status, on, off, default ." ) ;
886909 expect ( request ) . toHaveBeenNthCalledWith ( 1 , "sessions.list" , { } ) ;
887910 } ) ;
888911
@@ -902,6 +925,29 @@ describe("executeSlashCommand directives", () => {
902925 fastMode : true ,
903926 } ) ;
904927 } ) ;
928+
929+ it ( "clears fast mode override for /fast default" , async ( ) => {
930+ const request = vi . fn ( async ( method : string , payload ?: unknown ) => {
931+ if ( method === "sessions.patch" ) {
932+ return { ok : true , ...( ( payload ?? { } ) as object ) } ;
933+ }
934+ throw new Error ( `unexpected method: ${ method } ` ) ;
935+ } ) ;
936+
937+ const result = await executeSlashCommand (
938+ { request } as unknown as GatewayBrowserClient ,
939+ "agent:main:main" ,
940+ "fast" ,
941+ "default" ,
942+ ) ;
943+
944+ expect ( result . content ) . toBe ( "Fast mode reset to default." ) ;
945+ expect ( result . action ) . toBe ( "refresh" ) ;
946+ expect ( request ) . toHaveBeenCalledWith ( "sessions.patch" , {
947+ key : "agent:main:main" ,
948+ fastMode : null ,
949+ } ) ;
950+ } ) ;
905951} ) ;
906952
907953describe ( "executeSlashCommand /steer (soft inject)" , ( ) => {
0 commit comments