EAP data collection workflow for prompt-driven robotic rollouts. Use this skill when you need to collect self-resetting forward and reverse trajectory pairs, keep rollout metadata and trajectory records in dataset `D`, and delegate each robot execution step to $monitored-subtask-execution so MCP startup, monitoring, timeout handling, stop, and reset remain centralized.
Use one closed-loop workflow to collect self-resetting manipulation data:
D.Important constraint: keep all concrete CoRobot / MCP tool-call details inside $monitored-subtask-execution. This skill only defines the data collection procedure.
task_name: short identifier for the collection taskforward_prompt: prompt that performs the target behaviorreverse_prompt: prompt that restores the environment to a reusable starting stateinitial_state_criteria: observable conditions that define a valid starting staterun_dir: output directory for logs, rollout metadata, and dataset Dpolicy host/port: policy server address, optional, passed through to $monitored-subtask-executionstep_interval: optional PolicyTask step interval, passed through to $monitored-subtask-executionrun_budget: target number of collection rounds, total runtime limit, and maximum retries per roundtimeouts/polling: per-rollout timeout and poll interval, configured at the $monitored-subtask-execution layerWhen the user gives only a high-level collection request, do not block on a long parameter questionnaire if one safe demo round can be inferred.
task_name is missing, derive a short slug from the user request.forward_prompt is missing, rewrite the user goal into one direct prompt-driven robot instruction.reverse_prompt is missing but the recovery action is obvious, infer the inverse prompt. If the recovery action is not obvious, stop and ask instead of guessing.run_dir is missing, create a timestamped default such as runs/eap/<task_name>-<timestamp>.run_budget is missing, default to one round, zero or one retry, and stop after the first completed pair.$monitored-subtask-execution, for example timeout_s=90 and poll_interval_s=1.0.Use the same skill for rollout execution and reset:
AgentTools___ensure_run_artifacts: create run_dir, run_dir/logs, and run_dir/datasetAgentTools___append_jsonl_record: append round logs, status logs, and dataset episode records as JSONL$monitored-subtask-execution: wraps corobot_mcp_server startup, polling, stop, and reset so all CoRobot-specific tool calls remain centralized in one skillPersist collection outputs into simple run artifacts instead of keeping state only in conversation context.
Recommended directory layout inside run_dir:
run_dir/logs/rounds.jsonlrun_dir/logs/status_text.jsonlrun_dir/logs/tool_calls.jsonl (optional)run_dir/dataset/episodes.jsonl or an equivalent dataset D formatKeep at least these records:
$monitored-subtask-execution so failures can be replayed or debugged laterAgentTools___ensure_run_artifacts to create run_dir and the logging and dataset subdirectories if they do not already exist.task_name, prompt text or prompt hashes, initial_state_criteria, and rollout parameters.AgentTools___append_jsonl_record to write that run header into run_dir/logs/rounds.jsonl or an equivalent JSONL run log.run_budget.initial_state_criteria.$monitored-subtask-execution or require human intervention before collecting more data.$monitored-subtask-execution with:prompt = forward_promptreset_after = falseAgentTools___append_jsonl_record.task_namedirection = forwardpromptsuccess or failure_reasonpolicy_host/port, step_interval, timeout_s, poll_interval_so_t, q_t, and a_tAgentTools___append_jsonl_record to persist the episode into run_dir/dataset/episodes.jsonl.reverse_prompt is available, call $monitored-subtask-execution again with:prompt = reverse_promptreset_after = truereverse_prompt exists, use the hard reset path from $monitored-subtask-execution and mark the reverse trajectory as missing.round_idtask_nameinitial_state_criteriaAgentTools___append_jsonl_record.stop_task followed by reset_task through $monitored-subtask-execution rather than continuing blindly.references/eap-prompt-pairs.md: validated forward/reverse prompt pairs that reduce prompt driftreferences/data-collection-guardrails.md: stability rules, minimum logging fields, and stop conditions$monitored-subtask-execution: single-subtask rollout procedure with safe startup, monitoring, stop, and reset