7575 </div >
7676 </template >
7777 </el-table-column >
78+ <el-table-column :label =" $t('runtime.workDir')" min-width =" 90" >
79+ <template #default =" { row } " >
80+ <el-button type =" primary" link @click =" openWorkDir(row)" >
81+ <el-icon >
82+ <FolderOpened />
83+ </el-icon >
84+ </el-button >
85+ </template >
86+ </el-table-column >
7887 <el-table-column :label =" $t('aiTools.agents.token')" min-width =" 80" >
7988 <template #default =" { row } " >
8089 <el-space v-if =" row.agentType !== 'copaw'" >
@@ -137,6 +146,7 @@ import i18n from '@/lang';
137146import PortJumpDialog from ' @/components/port-jump/index.vue' ;
138147import DockerStatus from ' @/views/container/docker-status/index.vue' ;
139148import { getAgentProviderDisplayName } from ' @/utils/agent' ;
149+ import { routerToFileWithPath } from ' @/utils/router' ;
140150import NoApp from ' @/views/app-store/apps/no-app/index.vue' ;
141151
142152const items = ref <AI .AgentItem []>([]);
@@ -161,6 +171,7 @@ const buttons = [
161171 label: i18n .global .t (' menu.config' ),
162172 click : (row : AI .AgentItem ) => openConfig (row ),
163173 show : (row : AI .AgentItem ) => row .agentType !== ' copaw' ,
174+ disabled : (row : AI .AgentItem ) => row .status !== ' Running' ,
164175 },
165176 {
166177 label: i18n .global .t (' menu.terminal' ),
@@ -294,6 +305,13 @@ const openTerminal = (row: AI.AgentItem) => {
294305 dialogTerminalRef .value ?.acceptParams ({ containerID: row .containerName , title });
295306};
296307
308+ const openWorkDir = (row : AI .AgentItem ) => {
309+ if (! row .path ) {
310+ return ;
311+ }
312+ routerToFileWithPath (` ${row .path }/data ` );
313+ };
314+
297315const jumpWebUI = (row : AI .AgentItem ) => {
298316 const query = row .agentType === ' copaw' ? ' ' : ` token=${row .token } ` ;
299317 if (dialogPortJumpRef .value ?.acceptParams ) {
0 commit comments