@@ -27,6 +27,7 @@ import { SkillTool } from "../../tool/skill"
2727import { BashTool } from "../../tool/bash"
2828import { TodoWriteTool } from "../../tool/todo"
2929import { Locale } from "../../util/locale"
30+ import { AppRuntime } from "@/effect/app-runtime"
3031
3132type ToolProps < T > = {
3233 input : Tool . InferParameters < T >
@@ -573,6 +574,7 @@ export const RunCommand = cmd({
573574 // Validate agent if specified
574575 const agent = await ( async ( ) => {
575576 if ( ! args . agent ) return undefined
577+ const name = args . agent
576578
577579 // When attaching, validate against the running server instead of local Instance state.
578580 if ( args . attach ) {
@@ -590,12 +592,12 @@ export const RunCommand = cmd({
590592 return undefined
591593 }
592594
593- const agent = modes . find ( ( a ) => a . name === args . agent )
595+ const agent = modes . find ( ( a ) => a . name === name )
594596 if ( ! agent ) {
595597 UI . println (
596598 UI . Style . TEXT_WARNING_BOLD + "!" ,
597599 UI . Style . TEXT_NORMAL ,
598- `agent "${ args . agent } " not found. Falling back to default agent` ,
600+ `agent "${ name } " not found. Falling back to default agent` ,
599601 )
600602 return undefined
601603 }
@@ -604,32 +606,32 @@ export const RunCommand = cmd({
604606 UI . println (
605607 UI . Style . TEXT_WARNING_BOLD + "!" ,
606608 UI . Style . TEXT_NORMAL ,
607- `agent "${ args . agent } " is a subagent, not a primary agent. Falling back to default agent` ,
609+ `agent "${ name } " is a subagent, not a primary agent. Falling back to default agent` ,
608610 )
609611 return undefined
610612 }
611613
612- return args . agent
614+ return name
613615 }
614616
615- const entry = await Agent . get ( args . agent )
617+ const entry = await AppRuntime . runPromise ( Agent . Service . use ( ( svc ) => svc . get ( name ) ) )
616618 if ( ! entry ) {
617619 UI . println (
618620 UI . Style . TEXT_WARNING_BOLD + "!" ,
619621 UI . Style . TEXT_NORMAL ,
620- `agent "${ args . agent } " not found. Falling back to default agent` ,
622+ `agent "${ name } " not found. Falling back to default agent` ,
621623 )
622624 return undefined
623625 }
624626 if ( entry . mode === "subagent" ) {
625627 UI . println (
626628 UI . Style . TEXT_WARNING_BOLD + "!" ,
627629 UI . Style . TEXT_NORMAL ,
628- `agent "${ args . agent } " is a subagent, not a primary agent. Falling back to default agent` ,
630+ `agent "${ name } " is a subagent, not a primary agent. Falling back to default agent` ,
629631 )
630632 return undefined
631633 }
632- return args . agent
634+ return name
633635 } ) ( )
634636
635637 const sessionID = await session ( sdk )
0 commit comments