Drafting from an unpublished specification: where it goes, and what it connects to
A continuation is drafted from a specification and the parent's claims, and before publication both are confidential. This page is what a firm's IT or security reviewer needs before a practitioner drafts with Patent Practitioner Tools, stated for the current release, on one page that prints cleanly.
At a glance
- Where documents are processed: on this computer, by a model on it or on the firm's own server, or by the provider of a key you choose (the specification).
- What reaches us: none of a matter's documents. A free build sends anonymous usage reports, which hold no text from your work (usage reports).
- Training: no matter data reaches us to train on; a provider key brings that provider's terms (providers).
- Retention and deletion: a matter stays on this computer until you delete it, and the trash is emptied after the days you set (where it is kept).
- Encryption at rest: the disk's own, where it is turned on; the program adds none (where it is kept).
- SOC 2: no service of ours holds a matter's documents, so there is no report of ours to ask for; a provider you choose answers for its own (providers).
- What IT can enforce: five settings, among them no remote providers and offline mode (the settings).
What happens to a specification and its parent claims
- You supply them, by pasting them or dropping in a file: a Word document, a PDF that carries a text layer, or plain text. With your own USPTO Open Data Portal key, you can instead get a published application's file history from the USPTO on the Papers step. It is read as a Patent Center download is, and the application as filed in it becomes the specification when the matter has none. That request carries the application number and your key, and nothing else, and the app never signs in to USPTO.gov (every connection).
- Every drafting step sends them to the model you selected. Finding embodiments, drafting, critique, revision and scoring each give the model the specification and the claims, because that is what they draft from. With a model on this computer, the specification and claims stay on it.
- A remote model is named before anything is sent. Selecting one shows which company will receive the specification, and the first run on it in a session asks you to confirm. On the command line the same fact is printed before the first request: the provider, its address, and that the specification leaves the machine.
- A digest asks first too. If a step of a digest of the matter's files would run on a remote model, the app names that step and the files it would send, and waits for your yes. Files of your own added to a matter, such as a client's notes, are kept on this computer and left out of any step on a remote model.
- What is kept. The specification, the claims and every draft are saved inside the matter, readable only by your account, and go to the trash and its purge with the matter. A file history, from Patent Center or the USPTO, or another paper of the record added as a PDF, is also kept as that PDF in the matter's own folder, readable only by your account, so a quoted passage can open at its page; it stays with the matter in the trash and is removed when the trash is purged or the paper is removed. A specification added as a PDF is kept as its text only, not as the file. None of this touches the network: the program shows a kept PDF only to the browser on the same computer.
- To see it work with nothing of yours,
draft --demodrafts from a published specification built into the program.
What is installed
- One program. A macOS app, or a single command-line binary for macOS, Windows or Linux. No installer runs, no administrator rights are needed, and nothing is added to startup.
- No service and no background process. While it is open it serves its own interface to your browser on 127.0.0.1, this computer only, and it stops when you quit it.
- Signed. The macOS app and binaries carry an Apple Developer ID signature and are notarized by Apple; the Windows binary is Authenticode-signed with Geeks in the Woods as the verified publisher. For the first days of a new release Windows may still say the file isn't commonly downloaded and preselect Delete, because Windows scores reputation per release, separately from the signature; the publisher line is the check. The download page shows how to check both.
Every network connection it makes
This is the complete list for the current release. It is checked against the program's source on every change, so a connection added later cannot ship without this list growing first.
| Connection | When | Goes to |
|---|---|---|
| Drafting and scoring, through the model server you run | Every run | Ollama on this computer by default, or an OpenAI-compatible server you started. Local traffic only, unless you point it at another machine. The program asks Ollama where it runs a model before sending anything to it, and refuses one Ollama would forward to another host, naming that host. A server other than Ollama, or a proxy, that forwards a request without saying so is not seen. |
| Asking that server to download a model | Only when you press Pull | Your model server, which fetches the model from its own registry |
| Drafting and scoring through the provider you chose | Only if you set up a remote provider with your own key | OpenRouter, OpenAI, Anthropic. The provider also answers two small requests: a model's context window, and its list of models for the picker. |
| A check for updates, and the download of the new release | When you press Check for updates or run update, and each time the app opens if you turn that on in Settings (it is off unless you do) |
GitHub's public releases page for this program. The request carries nothing about you. A release is installed only after its signature, its checksum and, on a Mac, Apple's signature all verify. |
| License renewal | Only with a paid license, near its expiry. No license is on sale at present, so today this call is never made | The license server, sending the key's ID, its token and the program's version, and nothing else |
| Usage reporting | Automatically, on a free build, once the welcome notice in the web interface has been dismissed: while the web interface is open, and after a command that used a model. Offline mode holds the reports on this computer and sends them once it is turned off; DO_NOT_TRACK and the ForceOfflineMode setting stop it |
Our usage-report service, at telemetry.obviouslynot.ai. Each report holds values from a fixed list, numbers and a random install number, and no text from your work: what a report holds. |
| Fetching a cited reference by its number | Only when you ask for the references a rejection cites, open its citations with the Settings switch for that turned on, or run a patent search, whose first documents it reads to show where the search's terms appear; never in offline mode | Google Patents, for the reference's page and, for a granted patent, its printed copy. The request carries the reference's number and nothing else. |
| Reading a reference from the USPTO | Only with a Portal key saved in Settings: for a reference Google Patents does not have, when the row above fetches one, and when you ask to read the copy of a cited foreign reference in the file history; never in offline mode | For a US reference Google Patents does not have, or the copy of a cited foreign reference filed in the application's own file history: the USPTO Open Data Portal, with your key, at api.uspto.gov. The request carries the reference's number, or for a foreign reference the application's number, and your key, in a header. The Portal answers with a redirect to the USPTO's own file host, data.uspto.gov or data-documents.uspto.gov, which the program follows without the key. It never signs in to USPTO.gov. |
| Getting a file history from the USPTO | Only when you press Get the file history (sends only the number) on a matter's Papers step, with a Portal key saved in Settings; for a published application; never in offline mode | The USPTO Open Data Portal, with your key, at api.uspto.gov. The request carries the application number, the one you type or the matter's own, and your key, in a header. The Portal lists that application's papers, and the app downloads the papers it reads through the same redirect to data-documents.uspto.gov, followed without the key. |
| Checking the USPTO for new papers | Only when Check the USPTO for new papers in each matter each time the app opens is turned on in Settings (it is off unless you do), which is offered once a Portal key is saved: once each time the app opens; never in offline mode | The USPTO Open Data Portal, with your key, at api.uspto.gov. It sends one request for each matter whose record names its application, carrying that application number and your key, and nothing else. It asks for the list of papers and downloads none. |
| Running a patent search you asked for, through SerpApi | Only when you ask for a search and have saved a SerpApi key. The search is shown, with where it goes, before it is sent, unless you turn that off; never in offline mode | SerpApi, which runs it on Google Patents. It carries the search, written from your request, and your key. |
| Running a patent search in your own Google Cloud project | Only when you ask for a search and have set up Google Cloud. Before you confirm, the project is asked how much the search would read, with a stand-in query that carries none of your terms; never in offline mode | Google BigQuery, in your own Google Cloud project, signed in with the login already on your computer, which Google's sign-in service renews. It carries the search, written from your request; a search that would read more than a set amount is refused before it runs. |
| Asking your own Homebrew to install OCR (tesseract), on a Mac | Only when you press Install OCR in Settings, offered when a scanned paper needs it; never in offline mode | Homebrew, your own package manager, which downloads tesseract from its own sources into your account. On Windows and Linux the app shows the command for you to run instead. |
| A check whether it is already running | On launch | 127.0.0.1, this computer only |
Nothing else. Apart from the usage reports below, the program sends nothing about how it is used, and its log file stays on your computer. The offline mode in Settings refuses the update check, the license renewal, fetching references and searching, and holds usage reports on this computer until it is turned off. It does not block a remote provider you have chosen yourself: to keep a specification on the computer, draft with a model on the computer, or have your IT department enforce that (below). Using your own provider key covers that choice.
Usage reports
A free build reports how the app is used, so we can see which steps are worth keeping and where people get stuck. The welcome notice says so the first time the web interface opens, and nothing is sent until it is dismissed.
- What a report holds: which steps ran, whether each finished and how long it took, as a range; for each model call, whether the model was local or remote, the provider and the model when they are on a fixed list and "other" when they are not, and the tokens and cost as ranges; the hour of use and a time-zone region; the operating system, processor family, a memory range and the app's version; a random install number we issue; and, if you answer the welcome notice's question, how you heard of the app. A crash is reported as the part of the program it happened in, and nothing more.
- What it never holds: a specification, a claim, a file name, a matter or application number, a client's name, model output, an error message, or any other text from your work, your settings, a model or a server. Every value is from a fixed list, a number, a true or false, or a random identifier.
- Seeing it:
continuation-drafter telemetry showprints what is waiting to be sent. - Stopping it, at no cost: set
DO_NOT_TRACK=1for the account, and the app reports nothing and deletes its install number and anything waiting. TheForceOfflineModesetting does the same for a firm (below). Offline mode set in the app only holds reports on this computer and sends them once it is turned off. - What we keep: the privacy policy says individual reports are deleted after 30 days, that counts built from them are kept longer, and that the hosting provider's request logs record the connecting address.
Where it keeps things
- One folder in your home directory,
.continuation-drafter. Nothing is written anywhere else, except files you export yourself. - Settings, and any key you save, a provider's, a search service's or the
USPTO Open Data Portal's, in
config.jsonthere, readable only by your user account on macOS and Linux (mode 0600). A key can instead come from the environment and never be written at all. - Matters, with the specification, claims and drafts in them, each a file
in the
mattersfolder there, readable only by your account (files 0600 in a 0700 folder on macOS and Linux). - Usage reports waiting to be sent, and the random install number, in the
telemetryfolder there.DO_NOT_TRACKdeletes both. - A deleted matter goes to the trash, and the trash is emptied after the number of days you set, 30 unless you change it. A matter you do not delete stays.
- The program adds no encryption of its own. Its files are protected by the account permissions above and by the disk's own encryption, such as FileVault on a Mac or BitLocker on Windows, where it is turned on.
What your IT department can enforce
A firm can enforce five settings rather than trust them. The program reads them from the operating system's managed-settings store, which only an administrator can write, and a practitioner cannot change them in the program, the environment or its settings file.
- Windows, through Group Policy or Intune: values under
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\ObviouslyNot\PatentPractitionerTools. The switches areREG_DWORDvalues, 0 or 1; the server is aREG_SZ. - macOS, through Jamf or any MDM: a configuration profile for the domain
ai.obviouslynot.patent-practitioner-tools, which the system installs as/Library/Managed Preferences/ai.obviouslynot.patent-practitioner-tools.plist.
| Key | Value | Effect |
|---|---|---|
AllowRemoteProviders | 0, or false | A specification may go only to a model on this computer, or to the server
ModelServerURL names. Remote providers show as off, and a model server set
to another machine is refused. |
DisableUpdateCheck | 1, or true | The program never contacts the releases page, from the button or at launch. You deploy new versions yourself. |
ForceOfflineMode | 1, or true | Offline mode, which the practitioner cannot turn off. It also stops usage reporting and deletes the install number and any reports waiting. |
ModelServerURL | an http or https address | The firm's own model server. It becomes the model host and, with remote providers off, the one other machine a specification may reach. |
DisablePatentLookups | 1, or true | The program never fetches a reference, from Google Patents or the USPTO, never
runs a patent search, never gets a file history from the USPTO, and never checks the USPTO
for new papers. ForceOfflineMode refuses all of them as well. |
Settings shows the practitioner which settings their organization has set. A value that
cannot be read as written takes its strictest reading and is shown there, and if the settings
store exists but cannot be read at all, every restriction applies. Reading these locations needs version 0.6.2 or later, and DisablePatentLookups needs 0.7.0 or later. Linux has no such store: set the environment variables for the account the
program runs as.
Which certificate authorities it trusts. On macOS and Windows, the system's
store, unless SSL_CERT_FILE or SSL_CERT_DIR is set for the account the
program runs as: those then decide which authorities are trusted for
connections to model providers and patent sources, instead of the system's store.
Providers, and what they keep
No matter data reaches us, so none is ours to train a model on, and no service of ours holds a matter's documents, so there is no SOC 2 report of ours to ask for. A provider you choose has its own terms on training, and any audit report is that provider's to give.
Only relevant if you draft with a remote provider. Whether one is acceptable for a particular specification is the practitioner's judgment and depends on facts we do not have, such as the engagement terms and the provider's own contract.
| How it runs | What is kept |
|---|---|
| A model on your own computer | Processed on this computer, as long as the model server runs on it too. The specification goes only to that server, and nothing is sent to a provider. |
| Claude through OpenRouter | Anthropic keeps no prompts or answers by default, except on its Fable and Mythos models, which it keeps for 30 days for safety monitoring. The app also asks for a prompt cache, which holds the start of each prompt, mostly the specification, in memory for up to an hour after its last use. |
| Claude with your own Anthropic key | No prompt cache: the Anthropic endpoint this app uses does not support one. Otherwise as above: nothing kept by default, except on Fable and Mythos models, kept for 30 days. |
| OpenAI, with your own OpenAI key | The app asks for the shortest prompt cache OpenAI offers, which depends on the model: minutes on older models, up to 24 hours on gpt-5.5, and 30 minutes after last use on gpt-5.6 and later. OpenAI says cached data may be kept encrypted in GPU-local storage. |
| OpenAI models through OpenRouter | OpenRouter does not pass the cache setting on, so OpenAI's own default for the model applies. |
| Other models through OpenRouter | The model runs on whichever host OpenRouter chooses, and that host's policy decides what it keeps. One question can reach more than one host: in a test, four calls about one specification went to four different companies. |
How a download can be checked
- Apple Developer ID signature and notarization on the macOS app and binaries.
- Authenticode on the Windows binary, publisher Geeks in the Woods.
- A
checksums.txtcovering every file in a release, itself signed, which is what the update check verifies before installing anything. - A software bill of materials for every binary, published beside it.
This website
This site uses Cloudflare's web analytics: page views, page timings, and coarse data such as country and browser. It is cookieless, it does not fingerprint your device, and it builds no profile across visits or across sites. The website and the program are separate: no specification and no draft ever reaches this site, and the binary you download sends only the usage reports described above about how it is used.
Questions from a review that this page does not answer: [email protected]. More on confidentiality in the FAQ.