Skip to content

[Epic] Generalize the job-apply browser engine into a general browser-task agent #69

Description

@serge-ivo

Epic: Generalize the job-apply browser engine into a general browser-task agent

The job-apply flow is the browser automation that "actually worked." Investigation (2026-08-01) confirmed the engine is already ~80% generic: runApplyLoop (lib/apply-loop.ts) is pure orchestration over ApplyDeps<J extends BrowserJobBase> (snapshot → decide → act → handoff). Only the prompt, decideAction, the finish outcomes, the entry point (/applyJobApplyWorkflow), and the job.apply_agent runner task type are job-specific. All the hard parts — real-profile Chrome reuse, ARIA snapshot/act, captcha/stuck/needs-input handoffs, durable resumable loop — are generic.

Goal: a first-party "Web Task" agent you can point at any URL with an objective, reusing the proven engine. First-party only (no third-party creation — that's the gated epic).

Children (sequence A→D)

  • Extract generic browser-task engine from the apply loop (no behavior change to apply)
  • BrowserTaskWorkflow + objective-driven system prompt
  • POST /v1/instances/:id/browse + browser.task runner type
  • First-party "Web Task" catalog agent (runtime:"browser") wrapping the engine

Guardrails

  • Human-approval on sensitive/irreversible actions (send/pay/delete/post) ON by default.
  • Do NOT open this to third-party creators here — see the gated epic.
  • Gated on demand: only proceed if the focus wedge (#strategy) shows real usage; this is a demand-free bet until then.

Non-goals

Third-party creation, arbitrary-domain autonomy without approval, mass-action automation (that's the trust-model epic).

Issues

Gated by #68 (focus bet).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    browser-agentsBrowser automation generalizationenhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions