( ctx context.Context, scope toolspkg.Scope, req toolspkg.CallRequest, )
| 1959 | } |
| 1960 | |
| 1961 | func (n *daemonNativeTools) sessionList( |
| 1962 | ctx context.Context, |
| 1963 | scope toolspkg.Scope, |
| 1964 | req toolspkg.CallRequest, |
| 1965 | ) (toolspkg.ToolResult, error) { |
| 1966 | var input sessionListInput |
| 1967 | if err := decodeNativeInput(req, &input); err != nil { |
| 1968 | return toolspkg.ToolResult{}, err |
| 1969 | } |
| 1970 | workspaceRef, err := nativeCallerWorkspaceInput(req.ToolID, "workspace", input.Workspace, scope) |
| 1971 | if err != nil { |
| 1972 | return toolspkg.ToolResult{}, err |
| 1973 | } |
| 1974 | infos, err := n.deps.Sessions.ListAll(ctx) |
| 1975 | if err != nil { |
| 1976 | return toolspkg.ToolResult{}, err |
| 1977 | } |
| 1978 | if workspaceRef != "" { |
| 1979 | workspaceID, err := n.workspaceID(ctx, workspaceRef) |
| 1980 | if err != nil { |
| 1981 | return toolspkg.ToolResult{}, err |
| 1982 | } |
| 1983 | payload := core.SessionPayloadsForWorkspace(infos, workspaceID) |
| 1984 | return structuredResult( |
| 1985 | map[string]any{nativeToolsSessionsKey: limitSessionPayloads(payload, input.Limit)}, |
| 1986 | fmt.Sprintf("%d sessions", len(payload)), |
| 1987 | ) |
| 1988 | } |
| 1989 | payload := core.SessionPayloadsFromInfos(infos) |
| 1990 | return structuredResult( |
| 1991 | map[string]any{nativeToolsSessionsKey: limitSessionPayloads(payload, input.Limit)}, |
| 1992 | fmt.Sprintf("%d sessions", len(payload)), |
| 1993 | ) |
| 1994 | } |
| 1995 | |
| 1996 | func (n *daemonNativeTools) sessionStatus( |
| 1997 | ctx context.Context, |
nothing calls this directly
no test coverage detected