Neon Law
  • Fractional CTO
  • Litigation
  • Fractional GC
  • Legal Services
  • Sign in
← Using Neon Law Navigator

Using Neon Law Navigator

0 / 30 viewed

Open any slide to read it. View them all to unlock your certificate.

1

Chapter 1

Intro

Learning objectives

The lawyer is always the actor; Neon Law Navigator is the instrument. Each objective is tagged with its Bloom verb:

  • Remember — name the four Neon Law Navigator nouns and locate each in the workspace glossary.
  • Understand — explain why every glossary noun is a database table.
  • Apply — open the seeded Henderson Project and bind its pre-seeded deed template as a notation in a configured AIDA environment.
  • Analyze — validate a draft's notation structure and identify the lawyer's checklist findings.
  • Evaluate — review a peer's notation and propose one kaizen improvement.
  • Create — explain the notarization workflow step and deliver a three-minute demo from a configured workflow channel.
1. Learning objectives

The running matter

The class works one matter together so every example aligns:

  • Project — Henderson Bungalow Purchase
  • Buyer — Virgo (the value bound to {{client_name}})
  • Property — a single-family residence in Henderson, NV
  • Workflow step — lawyer_review → notarization__pending → notarized (complete)
2. The running matter

Who is in the room

This workshop is for Lawyer users of the application: licensed lawyers who work matters for clients. The client in the class is Virgo; Virgo is the person the firm represents on the Henderson Bungalow Purchase matter. You will use the lawyer workbench and AIDA to open the matter, bind the notation, review the checklist, and advance the workflow.

3. Who is in the room

Local KIND presenter rehearsal

Start a fresh worktree environment, source its descriptor, and run the host web process:


cargo run -p cli -- dev worktree-env up --path "$PWD"
set -a; source .devx/env; set +a
cargo run -p neon

Then browse to $NAV_BASE_URL/auth/login. Sign-in lands each tier on its own home — a firm tier on the /app/team home, a client on /app/projects. The stock local accounts are deliberately different lenses on the same seeded matter:

  • lawyer@neonlaw.com / password is the Lawyer presenter. Sign-in lands on the /app/team home; open /app/projects to see Henderson Bungalow Purchase through Lawyer's firm-side paralegal participation — the workbench lens.
  • client@neonlaw.com / password is the client presenter. Sign-in lands on /app/projects, which lists Henderson Bungalow Purchase through the client account's client participation — the client lens. Its detail has no seeded client Documents, Engagements, invoices, or review documents; those surfaces remain empty until a later exercise creates and releases them.

lawyer and client are system roles; paralegal and client above are per-Project participation descriptions. Do not use the now-unnecessary navigator dev grant-lawyer step for this fresh seed: it remains harmless for the browser harness, but it does not add project membership. Re-login after changing any role or participation.

4. Local KIND presenter rehearsal

How Neon Law Navigator works

Neon Law Navigator grounds your LLM output in a deterministic, shared glossary backed by database tables. The noun ladder:

  1. Project — the matter ("Henderson Bungalow Purchase").
  2. Template — a markdown blueprint with {{placeholders}} and a workflow declaration.
  3. Notation — one Person bound to one Template inside one Project, advancing through a workflow.
  4. Workflow — the state machine the Notation walks.
  5. Signed — the lawyer's own work product.
5. How Neon Law Navigator works

Matter files: portal for clients, workbench for lawyers

Every Project also has a matter file surface. Clients see it as Documents, Engagements, Invoices, and other plain-English portal views. If a person is added to a Project, Navigator can show them the client-facing files for that matter; if they are not added, those files do not exist from their portal's point of view.

Lawyer users have the firm workbench. Assigned lawyers work the Project through /lawyer. Admins are lawyer-tier users with installation-wide authority, so they can reach the same firm workbench without per-Project assignment. Clients never need that layer and never see the private GCS bucket behind the files.

6. Matter files: portal for clients, workbench for lawyers

The Shared Drive and Project repository map

The firm's Projects Shared Drive is the production matter-file root. Its top-level folders are Navigator Project codes, not display titles: a matter whose code is henderson-bungalow-purchase lives at Projects/henderson-bungalow-purchase/. A code uses only lowercase letters, digits, and single hyphens; Navigator requires it when a Project opens because the name is an equality check, not a display-name normalization.

The same convention is deployment-owned rather than guessed from a laptop or a repository:

DeploymentShared Drive rootOrganization
Neon Law productionProjectsneon-law
Neon Law stagingStaging Projectsneon-law
Neon Law FoundationNLF Projectsneon-law-foundation

The organization is configuration rather than a name in Navigator's source, and one string means two different things across the two vocabularies: the organization neon-law is staging, while the GCP project neon-law is production. The organizations are named for the entities and the GCP projects for the deployments.

A Project has one repository and one portal, and both are the code. That matter's source lives at neon-law/henderson-bungalow-purchase, holding its notation templates under templates/ and its client portal under portal/, and Navigator serves that portal at /app/projects/henderson-bungalow-purchase/portal/ — the repository name plus one literal segment. Nothing is composed, so nothing has to be parsed back apart, and there is no manifest anywhere restating a name the repository already carries.

Drive holds the firm's legal working files and Navigator holds the matter record and asset provenance. Project repositories hold source only: never client uploads, answers, generated legal documents, secrets, dependencies, or build output. When CI publishes approved Project-scoped template or application output to Drive, it resolves the matter folder from Navigator rather than from a repository-supplied folder ID, writes one way, and records the publication for audit. A hand edit to that published output is drift, not a source change. Project participation grants Navigator and deployed-application access; it never grants GitHub Enterprise access.

7. The Shared Drive and Project repository map
2

Chapter 2

Build the Notation

Install (no install)

The class uses Gemini's "Add AIDA" connector. About ninety seconds:

  • Open your Gemini workspace and click Add connector. Paste the workshop's connector URL (the instructor will display it). Authenticate with your firm Google account, and confirm.
8. Install (no install)

Sign in as yourself

The connector URL is not access to the firm's matters. AIDA acts as the person who signed in:

  • Gemini sends Navigator the Google OAuth token for the firm account you selected; Navigator verifies it, then looks that email up in its own people record.
  • Only a person recorded as lawyer or admin can use AIDA's matter tools. You cannot gain that role by asking AIDA.
  • Denied during class? Sign in with the lawyer account the instructor provided, or ask them to check your role.
9. Sign in as yourself

Tool calls are just prompts with specific words

Every "tool call" is a regular Gemini prompt with one or two words that route it through Neon Law Navigator. Try one:

"AIDA, list my projects."

10. Tool calls are just prompts with specific words

Build the template

Write a small markdown template for a deed of sale. The minimum body for the class:


# Deed of Sale

This Deed is made between {{client_name}} ("Buyer") and the named Seller for the property described
herein. Choice of law: Nevada. Buyer's signature must be acknowledged by a Nevada notary public under
Nevada's Uniform Law on Notarial Acts (NRS 240.161 to 240.169).

Buyer: ______________________
Date:  ______________________
11. Build the template

Run the transactional checklist

The checklist is the same list you run in your head: choice of law, privilege, confidentiality, active voice, inclusive language. aida_validate_notation can report structural notation diagnostics for supplied Markdown; it is not a named transactional-checklist service and it does not save the draft.

"AIDA, validate this notation Markdown and show the diagnostics."

12. Run the transactional checklist

Kaizen — share what you found

Kaizen (改善, Imai 1986) is the principle of small, iterative improvement. Each checklist pass that surfaces a failure is one kaizen step.

13. Kaizen — share what you found
3

Chapter 3

Keep the Attorney in Control

When AIDA asks before she acts

One rule on the A2A connector: reads run, writes wait. A write pauses and asks first:

"Authorize this action? AIDA wants to Send Welcome Email for Virgo… Reply yes to authorize, or no to cancel."

14. When AIDA asks before she acts

When an answer is wrong, send it back — don't start over

Review is not only approve or decline. A third choice keeps the matter moving:

  • Flag the specific answers that are wrong, add a note, and send it back. Only those get re-collected — by the client from their portal, or by your paralegal on their behalf — and it returns to your desk for review.
15. When an answer is wrong, send it back — don't start over

Answers and questions are two different things

You are correcting an answer, not re-opening the questionnaire:

  • Only the answers you flagged are re-collected. Every other answer stays as it was, and the matter never re-walks the whole intake.
  • The paper stays pinned. Correcting an answer does not swap the template version the matter opened on — the bytes you review are the bytes the client signs.
16. Answers and questions are two different things

The conflict check runs before every new matter

When you create a Project, Navigator runs a conflict check first — before the matter exists:

"Conflict check flagged this matter for review: shares a party with a current client's matter. Confirm you have reviewed these findings and are authorized to proceed."

17. The conflict check runs before every new matter
4

Chapter 4

Complete the Matter

Notarize and demo

In a configured workflow channel, advance the notation: lawyer_review → notarization__pending → notarized (complete). The stock local KIND rehearsal does not include a Gemini connector or a configured reply-email channel, so do not present this as a browser-only local action. For the three-minute demo:

At lawyer_review, reply to the conversation's token address with these two command lines:


@link <notation-id>
@approve

@link connects the conversation to the Notation. @approve then fires the workflow's approved condition.

  1. The matter ("Henderson Bungalow Purchase, buyer Virgo").
  2. The template you wrote (show the markdown).
  3. The notation you bound (show its returned notation record and the source template).
  4. The one checklist failure you found and fixed.
  5. The workflow advance to notarized.
18. Notarize and demo

Why this matters

A harness — a deterministic checklist applied every time — is how routine legal work gets cheap enough to reach the people priced out of it today.

19. Why this matters
5

Chapter 5

Take It to the CLI

Run your own — and drive it from the command line

This workshop used the "Add AIDA" connector. When you are ready to run your own Neon Law Navigator, the Deploy the Neon Law Navigator workshop stands up the same stack on your own Google Cloud project — and once it is live, the navigator CLI drives it from your terminal:


navigator site login --host <your-host>   # mints a short-lived token
20. Run your own — and drive it from the command line

Form a Nevada LLC from the command line

The same CLI forms a real Nevada LLC end to end — no browser — and downloads the filled official Nevada Secretary of State packet:


navigator site login --host https://your-firm.example
navigator site notation create nv__llc_formation --client-email libra@example.com
navigator site intake answer <notation-id>
navigator site notation status <notation-id>
navigator site notation approve <notation-id>
navigator site notation document <notation-id> --out llc.pdf
21. Form a Nevada LLC from the command line

Walk a questionnaire like a text adventure

intake answer is a guided loop: it shows one question, you answer it, it shows the next — a text adventure through the matter's questionnaire.


navigator site intake answer <notation-id>
22. Walk a questionnaire like a text adventure
6

Chapter 6

Vibe Code the Navigator

Your installation publishes its own schema

You do not need to read Rust to build against your matters. Your installation documents itself:

  • https://<your-host>/app/api/openapi.json — the OpenAPI 3.1 document for every /app/api/* endpoint.
  • https://<your-host>/app/api — the same document rendered as Swagger UI.

Sign in first, then open the second one. Then paste the first one into a coding agent and describe the screen you want.

23. Your installation publishes its own schema

Two doors — /api for a page, /mcp for an agent

Same database, same authorization, two shapes:

DoorProtocolCall it from
/app/api/*REST over JSON, described by /app/api/openapi.jsonA page, a script, anything speaking HTTP
/mcpJSON-RPC 2.0 over MCP Streamable HTTPAn LLM client — Claude, Gemini, LibreChat, your own agent

/mcp advertises fourteen tools, all namespaced aida_: aida_list_projects, aida_create_notation, aida_validate_notation, aida_answer_notation, aida_show_person, and the rest.

24. Two doors — `/api` for a page, `/mcp` for an agent

A first application is about fifteen lines

Point a fetch at your own host and read the tool catalog back:


const res = await fetch("https://<your-host>/mcp", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    Authorization: `Bearer ${token}`,
  },
  body: JSON.stringify({
    jsonrpc: "2.0",
    id: 1,
    method: "tools/list",
  }),
});

const { result } = await res.json();
console.log(result.tools.map((t) => t.name));

Swap tools/list for tools/call with {"name": "aida_list_projects", "arguments": {}} and you have your matters.

25. A first application is about fifteen lines

Vibe the screen — do not vibe the rules

Prototype freely on one side of the line, and call Navigator on the other:

  • Vibe this. Layout, interaction, the empty state, the error state, what a report looks like when you print it.
  • Call Navigator for this. Who may see it, what a valid notation is, what a signature means, what gets recorded.

Two rules travel with every prototype: no client data, ever — invented or firm-owned names only, and reserved example domains for any address — and your prototype is a specification, not a shipment.

26. Vibe the screen — do not vibe the rules

Ship it as a Project's client portal

A React application can also live beside a matter, at a route Navigator owns:


/app/projects/<project-code>/portal/

One Project, one portal. The path is the Project code plus one literal segment, so the mount is derivable from the repository name alone — there is no application name for anyone to choose, register, or guess.

27. Ship it as a Project's client portal

The line your application does not cross

Everything you build is a non-lawyer assistant under ABA Model Rule 5.3 — the same standing AIDA has. It may read, draft, summarize, and check your work. It does not:

  • sign, file, or send;
  • advance a workflow step;
  • decide who may see a document.

Those are acts an attorney takes deliberately, through Navigator, which records that the attorney took them.

28. The line your application does not cross
7

Chapter 7

Prepare the Room Before Class

Seat every attendee before the first login

Everything above is what an attendee does in class. This section is for the person running it — the environment operator who seats everyone before anyone signs in. The attendee arc is arrive as a client → get promoted → work an existing matter → then open your own, and it only holds if the room is prepared first. Five steps, once per class:

  1. Start a development environment. Deploy the Neon Law Navigator stands up a disposable dev instance — local KIND for a dry run, or a cloud staging lane for the room itself. It is throwaway by design, so deleting and recreating it between classes is cheap.
  2. Confirm the stock dry run before seating a cohort. A dev environment applies the disposable development portfolio automatically on boot — there is no seed command to run. Sign in as lawyer@neonlaw.com / password, then open /app/projects and confirm Henderson Bungalow Purchase. Sign in separately as client@neonlaw.com / password and confirm the same matter in /app/projects through the client lens. The client account's detail files are empty until an exercise creates them. If both lists behave that way, the local room is stocked.
  3. Seat each attendee — a Rauthy identity and a Navigator person on the same email. The two stock accounts are for a local dry run only. A class cohort still needs its own identities and matching People: sign-in is operator-mediated: an authenticated email with no pre-seeded person is refused, so pre-provisioning is the only door in. For each attendee, create a Rauthy user and a Navigator person (/admin/people/new) that share the same email address — email is the join key. Seed them as client; the promotion comes next. Attendee emails are real contact data, so they live in the running environment only and never in the repository.
  4. Promote and disclose membership through the people surfaces. Promote each attendee to lawyer from the people console, then add them to the Henderson matter through the project's people surface. The participation ledger is the access grant: record a firm-side participation for every lawyer or Clerk before they open the matter; the accountable lawyer is the one whose participation row carries the is_lawyer_dri marker, so naming the lawyer DRI and recording their participation are one act. Do not treat role promotion or a disclosure/conflict record as a substitute for Project participation. Assignment is deliberate: a lawyer user with no project participation sees an empty workbench — only an admin sees every matter unassigned. Assigning the attendee to the seeded matter is what turns "work an existing matter" from a slogan into a populated screen.
  5. Verify before the doors open. Have each lawyer attendee sign in once and confirm the lawyer workbench lists the Henderson matter. Verify the Virgo client lens separately: it lists the matter, while empty client-file sections are expected until an exercise creates approved client-facing artifacts. A green login and the scoped lawyer workbench are the signal that the room is ready.
29. Seat every attendee before the first login
8

Chapter 8

Wrap Up

Share what you built

When your three-minute demo is finished, send the markdown of your template — and the one kaizen improvement you found — to support@neonlaw.org.

30. Share what you built

You finished — claim your certificate

Enter your name and email and the Neon Law Foundation will send a PDF certificate of completion.

We use your email only to send this certificate.

Neon Law
BlogContactFoundationNavigatorPresentationsWorkshops
Contact us — contact@neonlaw.com+1 510 800 2080
  • Nevada
    5150 Mae Anne AveSte 405-9002Reno, NV 89523
  • New York
    12 E 49th St18th FloorNew York, NY 10017
  • Washington
    720 Seneca StSte 107-715Seattle, WA 98101

© 2026 Shook Law PLLC and Neon Law Foundation

This is attorney advertisement. Nothing on this site is legal advice. Neon Law is the trade name of Shook Law PLLC, and an attorney-client relationship begins only with a signed retainer between you and Shook Law PLLC. Published flat fees cover the scope each one names and do not include third-party filing fees. Every legal matter is different, and past results do not guarantee a similar result.

Shook Law PLLC is a proud supporter of the Neon Law Foundation , a 501(c)(3) nonprofit.

Neon Law Foundation is a Nevada nonprofit corporation and a 501(c)(3) tax-exempt organization. It does not practice law and cannot represent you.

Nothing on this site is legal advice, and nothing here creates an attorney-client relationship.

5150 Mae Anne Ave Ste 405-9999, Reno, NV 89523
support@neonlaw.orgTransparency & public disclosures

Powered by Neon Law Navigator #26.8.20-hotfix.4

Open source — neon-law-foundation/navigator GitHub stars 2