> ## Documentation Index
> Fetch the complete documentation index at: https://docs-preview.webcompute.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Procurement research

> Run a browser agent that searches public procurement opportunities and returns scoped capture fields.

Search public procurement opportunities with clear fields, filters, and boundaries.

## Procurement research shape

* Business research over a public procurement portal.
* Domain-scoped output fields for CRM or pipeline workflows.
* Safety boundaries around login, private workspaces, and submissions.

## Setup

Use the CLI with a configured model profile. The example only reads public `sam.gov` search and opportunity pages.

## Run it from the CLI

```bash theme={null}
web agent \
  --url https://sam.gov/search/ \
  --allow-domain sam.gov \
  "Search public contract opportunities for AI evaluation or browser automation. Return the first 5 relevant opportunities with title, agency, notice ID if visible, response date, detail URL, and why it may fit. Do not log in, follow private workspace links, or submit forms."
```

## Expected output

```text theme={null}
Procurement opportunities

1. Title: ...
   Agency: ...
   Notice ID: ...
   Response date: ...
   URL: https://sam.gov/opp/...
   Fit: ...
```

## Build it into an app

```ts theme={null}
const result = await agent.run({
  startUrl: "https://sam.gov/search/",
  goal:
    "Search public contract opportunities for AI evaluation or browser automation. Return the first 5 relevant opportunities with title, agency, notice ID, response date, detail URL, and fit summary.",
});

if (result.status === "completed") {
  await saveCaptureLeads(result.text, result.steps);
}
```

## Production notes

* Domain policy: `sam.gov`.
* Output fields: title, agency, notice ID, response date, detail URL, fit summary.
* Add structured output before routing opportunities to a CRM.
* Stop before login, private workspace actions, or submissions.

## Inspect

* Debug UI for filters and result pages.
* Steps for detail-page evidence.
* Recording for capture review.
* Status for blockers or auth walls.

## Cleanup

The CLI-managed browser closes after the run. Close separately created debug browsers with `web browser close <browser-id>`.

## Common failures

* If SAM.gov changes result URLs or filters, inspect the recording and update the prompt around current visible labels.
* If an opportunity requires login or workspace access, stop and return only the public page evidence.
