fileforge_task_action
Run and manage multi-step browser tasks and saved routines: start, monitor, pause, validate, dry-run, run, schedule, and disable jobs, with approvals pausing risky steps.
Instructions
Run multi-step work two ways. Tasks (start, add, status, monitor_page) track one job. Routines (create, validate, dry_run, run, plan_from_prompt) are saved and can be scheduled, but cron only fires while this server runs. For a single step, call the tool directly. Runs act in your browser, pausing only at steps that require approval. delete removes a task; routines can only be disabled.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | Optional starting URL | |
| mode | No | Kind of task: interactive, collector or monitor. | interactive |
| name | No | Routine name. | |
| task | No | Legacy label alias. Do not use as a prompt. | |
| hints | No | Extra guidance for plan_from_prompt. | |
| limit | No | Maximum items to return. | |
| patch | No | Routine fields to change, using the same names as create. | |
| query | No | Search text to collect results for. | |
| runId | No | Run ID. | |
| since | No | ISO timestamp to get events after | |
| steps | No | Ordered steps: { id, tool, params, dependsOn, condition, onFailure, retry, timeout, outputKey, requiresApproval }. params includes the tool's action. | |
| store | No | Save the result in ~/.fileforge and return a ref. | |
| title | No | Task label. | |
| watch | No | Selectors or data types to watch | |
| action | Yes | What to do. Required parameters are in brackets. start: Start an asynchronous task made of structured FileForge tool invocations. add (actions): Add a saved task made of structured FileForge tool invocations. edit (taskId): Edit a saved task record. status (taskId): Get the current status of a running task. events (taskId): Get progress events for a task. pause (taskId): Pause a running task. resume (taskId): Resume a paused task. cancel (taskId): Cancel a running task. list: List all tasks (running, paused, completed). delete (taskId): Delete a task and its event history. export (taskId): Export task results and artifacts. monitor_page (url): Monitor a page for changes over time. collect_table (url): Collect rows from a paginated table into a local dataset. collect_search_results (url, query): Run a search on a website and collect all results into a dataset. create (name): Create a routine (prompt or steps input). update (routineId, patch): Update a routine (snapshots a new version). get (routineId): Fetch a routine (optionally a specific version). duplicate (routineId): Duplicate an existing routine. enable (routineId): Enable a routine. disable (routineId): Disable a routine. validate: Validate a routine or an arbitrary step array against the tool catalog. dry_run (routineId): Produce a dry-run report for a routine without executing anything. run (routineId): Enqueue a routine for execution. stop (runId): Stop / cancel a running or queued run. get_runs (routineId): List runs for a routine. get_run_details (runId): Get full details of a run (steps + events + artifacts). export_run (runId): Export a run as JSON or CSV. get_tool_registry: Return the FileForge tool capability catalog. plan_from_prompt (prompt): Return planning context (registry slice + schema + planning prompt) for an LLM to use when converting a prompt into an executable step array. commit_plan (plannedSteps): Validate an LLM-produced step array and save it as a routine (new or updated). | |
| format | No | Output format. | json |
| offset | No | Items to skip, for paging. | |
| prompt | No | Plain-language description of the routine. | |
| reason | No | Why the change was made. | |
| recipe | No | Inline workflow recipe to save and run asynchronously. | |
| result | No | Result data to store on the task. | |
| status | No | add and edit: pending, running, paused, completed, failed or cancelled. list: any of those, or "all". get_runs: a run status. | all |
| taskId | No | Optional explicit task id. | |
| actions | No | Ordered FileForge tool invocations: [{ tool, params, name?, required? }]. | |
| capture | No | Page sections to scrape while running. | |
| enabled | No | Whether the routine can run. | |
| trigger | No | What started this run. | manual |
| version | No | Routine version. | |
| maxPages | No | Maximum pages to visit. | |
| metadata | No | Free-form metadata to store with the routine. | |
| priority | No | Queue priority. Higher runs first. | |
| selector | No | CSS selector for the table | |
| createdBy | No | Who created it. | |
| inputType | No | Whether the task starts from a prompt or from steps. | |
| routineId | No | Routine ID. | |
| timeoutMs | No | Time limit in milliseconds. | |
| updatedBy | No | Who made the change. | |
| includeRaw | No | Include raw output. | |
| maxMinutes | No | Maximum run time in minutes. | |
| recipeName | No | Saved workflow recipe to run asynchronously. | |
| description | No | Legacy label alias. Do not use as a prompt. | |
| includeLogs | No | Include logs. | |
| parentRunId | No | ID of the parent run. | |
| permissions | No | What the routine may do, such as { allowBrowser: true }. Also allowNetwork, allowScreenshots, allowCookies, allowClipboard, allowDownloads, allowFilesystemRead, allowFilesystemWrite, allowAuthenticatedSession, allowExternalWebhooks. | |
| propsSchema | No | JSON schema for the routine's inputs. | |
| retryPolicy | No | { count, backoffMs } for failed steps. A step's own retry takes priority. | |
| triggerType | No | What starts the routine. | |
| defaultProps | No | Default input values. | |
| exportConfig | No | Saved with the routine. Runs do not act on it yet. | |
| plannedSteps | No | Steps from plan_from_prompt to commit. | |
| retryOfRunId | No | ID of the run this one retries. | |
| includeEvents | No | Include run events. | |
| propOverrides | No | Input values for this run. | |
| storageConfig | No | Saved with the routine. Runs do not act on it yet. | |
| timeoutConfig | No | { stepMs }: time limit per step. Defaults to 60000. | |
| cronExpression | No | Cron schedule for scheduled routines. | |
| idempotencyKey | No | Key that prevents starting the same run twice. | |
| includeSummary | No | Include a summary. | |
| pollIntervalMs | No | Milliseconds between polls. | |
| intervalMinutes | No | Minutes between runs. | |
| retentionPolicy | No | Saved with the routine. Runs do not act on it yet. | |
| simulateMissing | No | Simulate unavailable tools during validation. | |
| concurrencyPolicy | No | What to do when a run is already active. | |
| filterPermissions | No | Only return actions whose required permissions are all granted in this map. | |
| includeStepResults | No | Include each step's result. | |
| notificationConfig | No | Saved with the routine. Runs do not act on it yet. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | Yes | False if the action failed or a check did not pass. | |
| ref | No | Stored result ID, for fileforge_result_action. | |
| data | No | The result. Its shape depends on the action. | |
| meta | No | Tool, action and context. | |
| error | No | Failure code and message. | |
| warnings | No | Notes about a call that still ran. |