SaylorTwift's picture
SaylorTwift HF Staff
Add files using upload-large-folder tool
4e23b01 verified
Raw
History Blame Contribute Delete
1.11 kB
import { z } from 'zod';
import { isoDateTimeSchema } from '@moonshot-ai/agent-core-v2/_base/utils/isoDateTime';
export const taskKindSchema = z.enum(['subagent', 'bash', 'tool']);
export type TaskKind = z.infer<typeof taskKindSchema>;
export const taskStatusSchema = z.enum([
'running',
'completed',
'failed',
'cancelled',
]);
export type TaskStatus = z.infer<typeof taskStatusSchema>;
export const taskSchema = z.object({
id: z.string().min(1),
session_id: z.string().min(1),
kind: taskKindSchema,
description: z.string(),
status: taskStatusSchema,
command: z.string().optional(),
created_at: isoDateTimeSchema,
started_at: isoDateTimeSchema.optional(),
completed_at: isoDateTimeSchema.optional(),
output_preview: z.string().optional(),
output_bytes: z.number().int().nonnegative().optional(),
model: z.string().optional(),
thinking_effort: z.string().optional(),
agent_id: z.string().optional(),
subagent_type: z.string().optional(),
parent_tool_call_id: z.string().optional(),
run_in_background: z.boolean(),
});
export type Task = z.infer<typeof taskSchema>;