woods · trywoods.ai/enterprise/security · reviewed 20 Oct 2026

Enterprise · security review

What woods reads, what it keeps, and what it cannot do.

Written for a reviewer who will read every word and trust none of it. Each statement below carries its limit. Where a fact is not stated, it is a placeholder, and the placeholders are marked.

woods reads public pages only. It needs no credentials and nothing for IT to approve.

What woods is
woods reads the public pages of a website and reports what they contain, with the evidence for each finding. It is read-only.
This page is for
A security, procurement or legal reviewer deciding whether a vendor may read a large estate.
Status
Reviewed 20 Oct 2026. Every figure carries its source, date and grade, and comes from one estate (n = 1) unless it says otherwise.
01

What woods reads

#reads

Public pages only, today

woods reads the public pages of a website, as a visitor would. The scope is a root address you give it, and woods never traverses outside that root. The boundary is enforced in the crawler’s code and is not a setting.

Limit

If a page is public at an address under your root, woods can read it, whether or not you meant it to be public. That is what a read shows you. Pages behind a sign-in are not read.

Script-built pages are rendered

Some pages are drawn by scripts. For those, woods loads the page in a headless browser to read what a visitor would see.

Limit

The web connector is the only one that exists. A connector to a knowledge base is not available, and this page makes no claim about one.

02

What woods cannot do

#cannot

Read-only, by design and by code

No connector ever holds write scope. That is not a setting: there is no configuration that turns it on. woods does not edit, publish, delete or retire anything on your site. It reports what it found and what the reader could change.

Limit

This is our statement about our own code. It is not an independent attestation, and none is claimed.

Narrowest permission that works

When a connector asks for access, it asks for the narrowest scope that works, such as one space rather than a whole instance.

Limit

This applies to connectors that need access. The web connector needs no credentials at all.

03

What woods keeps

#keeps

Metadata, extracted claims and embeddings

woods does not keep copies of your pages. At rest it holds the address, title, headings, dates and link graph of each page, the claims extracted from it, and embeddings.

Limit

Extracted claims are kept in their exact words, so a short quotation from a page is stored. A full page body is not. Content fingerprints, which are hashes of a page's main text used to detect change, are kept.

Page text lives for one sweep

The text of a page is held in memory for the length of the sweep that read it, to hand it from one agent to the next. It is not cached and it is not written to storage.

Limit

During analysis, page text is sent to the language model and embedding providers in the table below. Their retention is a row marked to confirm.

Each organisation's data is separate

A signed-in member reads only their own organisation’s data.

Limit

Row-level security in the database separates organisations, and we have tested it. It has not been audited by an outside party.

04

What woods does not claim

#claims

No certification, no compliance outcome

woods supports governance and documentation. It does not make an organisation compliant with any regulation, and nothing on this site should be read as saying it does. No certification is held or claimed.

Limit

If an attestation is obtained, it will be listed here with the issuer, the scope and the date. Until then the absence is the statement.

05

Who handles data

#handlers
Placeholder · to confirm

Subprocessor list: vendors named, terms not yet confirmed

The vendors below are the services woods runs on. The data region, retention period and attestations for each are not stated, because they have not been confirmed. Every row is a placeholder until it is filled in with its source and date.

Subprocessors. Region, retention and attestations: to confirm for every row.
PurposeVendorWhat it handlesData regionRetentionAttestations
HostingRailwayRuns the application, the background workers and the page-rendering worker.To confirmTo confirmTo confirm
DatabaseSupabasePostgres with pgvector, and sign-in. Holds metadata, extracted claims, embeddings and accounts.To confirmTo confirmTo confirm
Language modelsAnthropicThe main text of a page being analysed, to extract claims and compare pages.To confirmTo confirmTo confirm
EmbeddingsOpenAIText sent to be turned into embeddings.To confirmTo confirmTo confirm
EmailResendBuyer email addresses and sign-in links.To confirmTo confirmTo confirm
PaymentsStripeCard details go to Stripe only. woods does not see or store them.To confirmTo confirmTo confirm
Site analyticsFathomPage views and events on the marketing site. Cookieless.To confirmTo confirmTo confirm

Not stated on this page: a data region, a retention period, a certification, an uptime figure, a penetration-test result, a data processing agreement, and a named security contact. Each is a gap, not a pending claim. When one is confirmed it will appear here with its source and date.

06

How to ask

#ask

Send the question you would put in a questionnaire.

Use the contact line on the team page. If the answer is not on this page, the reply will say that it is not yet confirmed, and it will not guess.

Judge it by what the report shows.

woods reads only what any visitor can read. Run the Assessment on a domain you are allowed to scan, and judge what it keeps and what it says by the report you get back.

Questions, or a figure you want sourced: use the contact line on the team page.