Back to App Store

General Legal

General Legal · io.pilot.generallegal
Attorney-backed contract review and Delaware company formation — flat-fee legal work from a licensed US law firm.
Work & ResearchLive on catalogue
Install
pilotctl appstore install io.pilot.generallegal
v0.2.0
Version
26
Methods
8.9 MB
Size
shareable
Sandbox
Linux · macOS
Platforms

About General Legal

General Legal is a Y Combinator-backed law firm. This app puts a licensed attorney and a Delaware filing desk behind your agent — contract review and company formation, in one namespace.

Nothing here needs a browser. Formation works the moment you install; contract review needs a General Legal account, which the agent can open itself in three calls.

Company formation — nothing to set up

No account, no key, no configuration. Call generallegal.formation_options and it works on a fresh install.

You will still need to pay: formation_start_llc and formation_start_c_corp return a payment link, and the founder pays there. Use the founder's real details — this files an actual Delaware company.

Contract review — sign up from the agent

1. generallegal.signup_terms returns the engagement letter (PDF). Read it: accepting it engages General Legal as your company's counsel. 2. generallegal.signup with the company name, a contact email you can read, and a US billing city/state/ZIP. A six-digit code is emailed. 3. generallegal.signup_complete with the signup_id, the code and engagement_letter_accepted: true.

General Legal issues one API key. The app saves it on this host and sends it on every later call. It never appears in the reply, and you don't need to restart. Verify with generallegal.deals_list. The key scopes you to your own General Legal organization and is never sent to the formation service.

Already have a key from https://portal.general.legal/api-keys? Save it with generallegal.set_key '{"api_key":"glk_..."}'. Lost it? Use generallegal.key_recover, then generallegal.key_recover_complete. This issues a replacement and revokes the old key.

What it costs

Contract review is flat-fee, with no hourly billing and no minimums. The fee covers every turn through signature, including negotiation with the counterparty.

| Work | Price | | --- | --- | | Contract, 3 pages or fewer | $250 | | Contract, 3-50 pages | $500 | | Contract, 50+ pages | $10 per page | | Drafting from scratch | $2,000 | | Delaware LLC | $190 instant / $210 standard / $260 next-day / $310 same-day | | Delaware C-corp | $218 standard / $268 next-day / $318 same-day |

What the app does

Company formation — formation_options (free), formation_start_llc (paid), formation_start_c_corp (paid), formation_status, formation_update, formation_documents (free).

Contract review — deal_open (paid), document_upload (paid), thread_post (paid, covered by the matter's flat fee), plus deals_list, deal_get, thread_get, contracts_list, contract_get, version_download_link (free) and upload_begin, upload_chunk, upload_abort (free — a document is staged in chunks because a single call cannot carry a file).

Account — signup_terms, signup, signup_resend, signup_complete, key_recover, key_recover_complete, set_key (all free; signing up costs nothing until you open a matter).

What costs money

Five methods spend real money and will not warn you first: formation_start_llc, formation_start_c_corp, deal_open, document_upload and thread_post. Every other method is free. generallegal.help lists them under billable_methods with the price.

Plan & limits

Contract review
$250 / $500 / $10 per page — flat fee
Delaware LLC
$190–$310 depending on speed
Delaware C-corp
$218–$318 depending on speed
New matters
25 / day per organization
Account
Opened by the agent — emailed code, no portal

Methods · 26

generallegal.formation_options
Itemised pricing for every Delaware entity type and filing speed. No account or credentials needed to call it.
generallegal.formation_start_llc
File a sole-member Delaware LLC and get back a payment link plus a formation_id. No account or credentials needed to call it. 'instant' hands over a pre-formed shelf company; the other speeds file under a name you choose.
generallegal.formation_start_c_corp
File a Delaware C-corp and get back a payment link plus a formation_id. No account or credentials needed to call it. The founder acts as sole incorporator.
generallegal.formation_status
Poll a filing's progress. No account or credentials needed to call it. Repeat after poll_after_seconds while it keeps coming back.
generallegal.formation_update
Change the company name before the documents are generated. No account or credentials needed to call it. Late changes are rejected.
generallegal.formation_documents
Short-lived links to a completed formation's documents. No account or credentials needed to call it.
generallegal.signup_terms
URL of the engagement letter (PDF) an agent accepts at signup. Free, no account needed. Read it before generallegal.signup_complete — accepting engages General Legal as your company's counsel.
generallegal.signup
Open a General Legal account from the agent — no portal. Takes the company name, a contact email you can read and a US billing city/state/ZIP; a six-digit code is emailed. Free.
generallegal.signup_resend
Re-send the six-digit signup code for a pending signup. Free.
generallegal.signup_complete
Finish signup with the emailed code and engagement_letter_accepted: true. The issued API key is saved on this host and used on every later call — never shown, no restart. Free.
generallegal.key_recover
Lost the key? Emails a six-digit code to the account's contact address. Free.
generallegal.key_recover_complete
Finish key recovery with the emailed code. Saves a replacement key on this host and revokes the old one. Free.
generallegal.set_key
Already have a key from portal.general.legal/api-keys? Save it on this host with {"api_key":"glk_..."}. Local, free.
generallegal.deals_list
List your matters, paginated, with an optional status filter. Free. Needs a General Legal account — open one with generallegal.signup.
generallegal.deal_open
Open a matter from a written request. It reaches a real attorney.
generallegal.deal_get
One matter with its documents and released versions. Free.
generallegal.thread_get
Read the lawyer-client thread on a matter. Free.
generallegal.thread_post
Reply to the attorney on a matter's thread.
generallegal.contracts_list
List your documents. Free.
generallegal.contract_get
One document with its released versions; the version ids feed downloads. Free.
generallegal.document_upload
Upload a DOCX, PDF, PNG, JPEG or Markdown document for AI + attorney review, up to 20 MiB. Stage the bytes with upload_begin/upload_chunk first.
generallegal.version_download_link
Issue a short-lived (~15 min) direct download URL for a released version. Free.
generallegal.upload_begin
Start a staged upload and get a blob_id. Free — a document cannot cross in one call, so declare it here first.
generallegal.upload_chunk
Append the next chunk of a staged upload, at most 512 KiB of raw bytes per call. Free.
generallegal.upload_abort
Discard a staged upload and its bytes. Free.
generallegal.help
Every method with its parameters, duration class, and which calls cost money. Free, local, no backend call.

Full usage demo

When a contract needs a licensed attorney to review, redline or draft it, or an agent needs its own Delaware company. Formation needs no account; contract review needs one, which the agent opens itself.

Run this first — Price a Delaware company — works on a fresh install, no account, no key
Call
pilotctl appstore call io.pilot.generallegal generallegal.formation_options '{"entity_type":"llc"}'
→{"options":[{"filing_speed":"instant","total_cents":19000},{"filing_speed":"standard","total_cents":21000}]}

Free, and it needs no account or key at all — the fastest way to confirm the app works. Contract review needs an account; the agent opens one itself with generallegal.signup (see the examples).

Worked examples

Form a Delaware company — no API key needed
Call
pilotctl appstore call io.pilot.generallegal generallegal.formation_start_llc '{"filing_speed":"standard","company_name":"NewCo LLC","founder":{"full_name":"Ada Lovelace","email":"ada@example.com"},"principal_address":{"street":"1 Main St","city":"Dover","state":"DE","postal_code":"19901"},"ai_agent_description":"Procurement agent","authority_limits":"No commitments above $5,000 without sign-off","contract_threshold":"$5,000"}'
→{"formation_id":"f-...","payment_url":"https://...","status":"awaiting_payment"}

BILLABLE - files a real company. $190 instant / $210 standard / $260 next-day / $310 same-day, paid by the founder at the returned link. No account or key needed to call it. formation_id is shown once.

Track the filing and collect the paperwork
Call
pilotctl appstore call io.pilot.generallegal generallegal.formation_status '{"formation_id":"f-..."}'
→{"status":"filed","poll_after_seconds":30} then {"status":"complete"}

Free. Repeat only after poll_after_seconds. When complete, generallegal.formation_documents returns short-lived links.

Open a General Legal account from the agent
Call
pilotctl appstore call io.pilot.generallegal generallegal.signup '{"company_name":"Acme Inc","contact_email":"legal@acme.com","billing_city":"Dover","billing_state":"DE","billing_zip":"19901"}'
→{"signup_id":"...","status":"...","engagement_letter_url":"https://portal.general.legal/...pdf"}

Free. No portal, no browser. A six-digit code is emailed to contact_email — use an address someone actually reads. generallegal.signup_terms returns the same engagement letter URL; read it before accepting, because accepting engages General Legal as the company's counsel.

Finish signup — the key is saved for you
Call
pilotctl appstore call io.pilot.generallegal generallegal.signup_complete '{"signup_id":"<signup_id>","code":"123456","engagement_letter_accepted":true}'
→{"client_id":"...","api_key":"saved on this host as GENERAL_LEGAL_API_KEY; sent on every call"}

Free. The key is written to $APP/secrets.json and redacted from the reply; every later call carries it with no restart. Already have a portal key? generallegal.set_key '{"api_key":"glk_..."}'. Lost it? generallegal.key_recover then key_recover_complete (revokes the old key).

Ask an attorney to review a contract
Call
pilotctl appstore call io.pilot.generallegal generallegal.deal_open '{"initial_request":"Please review this mutual NDA. We are the disclosing party; flag anything unusual in the confidentiality term.","deal_name":"Acme mutual NDA"}'
→{"deal_id":"d-9f3...","status":"open"}

BILLABLE - flat fee per contract: $250 (<=3 pages), $500 (3-50), $10/page (50+), $2,000 to draft. Covers every turn through signature. Keep the deal_id.

Stage the document, then send it
Call
pilotctl appstore call io.pilot.generallegal generallegal.upload_begin '{"file_name":"nda.docx","content_type":"application/vnd.openxmlformats-officedocument.wordprocessingml.document","total_bytes":3145728,"sha256":"<sha256 of the file>"}'
→{"blob_id":"a1b2...","max_chunk_bytes":524288,"next_seq":0}

Then generallegal.upload_chunk with seq 0,1,2... and base64 of at most max_chunk_bytes raw bytes. The last returns complete:true. Finally generallegal.document_upload with the blob_id and deal_id (BILLABLE).

Good to know

  • Two halves, different requirements. Company formation needs no account and no key. Contract review needs a General Legal account — open it from the agent with generallegal.signup, then generallegal.signup_complete with the emailed code.
  • Signup engages a law firm: signup_complete requires engagement_letter_accepted:true. Read the letter from generallegal.signup_terms first, and only accept on behalf of a company that has authorised it.
  • Five methods spend money: deal_open and document_upload are flat-fee per contract ($250/$500/$10-per-page/$2,000); formation_start_llc and formation_start_c_corp file a real company ($190-$318); thread_post is covered by the matter's fee.
  • A document cannot ride in one call. Use upload_begin then upload_chunk (<=512 KiB raw each) and pass the blob_id. A blob is single-use and dropped once sent.
  • Matters reach a real attorney and formations file a real company. Neither is a sandbox - confirm before calling a billable method.
  • Contract-review limits are per organization: 120 reads/min, 25 new matters/day, 50 uploads/day. Honour Retry-After on a 429.

Next

  • generallegal.formation_options to price a company, or generallegal.signup to open the account contract review needs.
  • generallegal.help lists every method and marks exactly which ones cost money.

What’s New

v0.2.0Latest
Oct 5, 2026
  • Contract review without the portal: the agent opens its own General Legal account with generallegal.signup and generallegal.signup_complete (emailed code + engagement letter).
  • The issued key is saved on the host, never shown, and used with no restart. generallegal.set_key saves a portal key; key_recover replaces a lost one.
  • Calls that need an account now say how to get one instead of failing with a bare 401.
  • Now runs on macOS and Linux, Intel and ARM (0.1.0 was Linux x86-64 only).
v0.1.0
Aug 29, 2026
  • Contract review: matters, lawyer thread, document upload and released-version downloads.
  • Delaware company formation: pricing, LLC and C-corp filing, status and documents — no account needed.
  • Bring your own General Legal API key for contract review; it never reaches the formation service.

Platform Compatibility

macOSApple Silicon
4.8 MBSupported
macOSIntel
5.1 MBSupported
Linuxarm64
4.5 MBSupported
Linuxamd64
4.9 MBSupported
You might also like

More in Work & Research