I replaced the one-page Upwork cover letter with a 13-module dashboard the client can scan in 90 seconds and read in detail in five minutes. I build each one in about an hour of supervised Claude Code work and review every word before it goes out.
The dashboard answers the four questions every prospect actually asks before hiring (what do you do first, what is the exposure, what does it cost, what happens past day one) in formats they can see at a glance instead of extracting from prose. The format is dense by design, so the rest of this page lives in collapsed sections below. Open any one to read it; Expand all if you want a linear read.
13-module dashboard
HTML attached to the Upwork message. Renders in the client's browser. Sticky nav, expandable sections, scope and budget visible up top.
~1 hour per dashboard
Most of that hour is me reading and revising, not the AI generating. Step 4 (line-by-line review and verb scan) is the longest and the only one that decides whether it goes out.
CA RPC + Bar 2023 + ABA Op 512
Same supervision rules as brief-writing. No confidential client data before engagement. Every citation verified. Every verb scanned for scope drift before send.
Why I rebuilt my Upwork proposal as a dashboard posture
For most of the time I have been on Upwork I sent the same thing every Upwork attorney sends: a cover letter. Three or four paragraphs of credentials and a flat fee at the bottom. It works fine. It also looks identical to every other proposal in the prospective client's inbox.
The proposals I lost most often were not the proposals where my pricing was wrong or my credentials were thin. They were the proposals where the prospect could not tell, from a paragraph of prose, what I was actually going to do for them in the first 24 hours, what the risk picture looked like, what they were going to receive at the end, and how the engagement would unfold past day two. They could not tell because cover-letter format does not give the reader a way to see those things at a glance. So they hired the attorney who told the simplest story, which was often the cheapest one.
The change I made is structural. Instead of describing my engagement in paragraphs, I render it as a one-screen interactive dashboard the client can scan in 90 seconds and read in detail in five minutes. The same dashboard answers the four questions every prospective client actually asks before hiring: what will you do first, what is the exposure, what will it cost, and what happens past the first deliverable. The dashboard is built in HTML attached to the Upwork message, so the client opens it in their browser, scrolls, and clicks through the same way they would scroll through any product page. It looks like a project workspace, because it is one.
I write each dashboard with Claude Code. I do not have it write proposals for me. I have it help me build them faster than I could alone, with a consistent architecture across matter types, and with the supervision protocols a California attorney is required to maintain over any AI assistance.
Important context: Claude Code is the developer-facing CLI of Anthropic's Claude product, run from a terminal on my own computer with read/write access to my own files. It is the same general-purpose model my fellow lawyers use through the web app, but the CLI form lets me hand it specific files (job posts, prior proposals, terms.law hub pages I authored, court records I pulled) and have it operate on them in a controlled, auditable way. Nothing about the tool changes my obligations under California Rules of Professional Conduct 1.1, 1.6, 5.3, 1.4, or the November 2023 California Bar Practical Guidance on Generative AI.
Old cover letter vs. new dashboard format comparison
3-4 paragraphs in the Upwork message body
- Reader has to extract structure from prose
- Cannot see scope, exposure, schedule at a glance
- Looks identical to every other proposal
- Indistinguishable from the cheapest competing bid
- No way to demonstrate depth without bloating the letter
- Hires go to whoever told the simplest story
HTML attachment rendered in the client's browser
- 13 modules answer the questions clients ask before hiring
- Scope, risk, budget, schedule each visible in one click
- Looks like a product page, because it is one
- Demonstrates engagement architecture, not just credentials
- Doctrine depth lives in accordions, not in the front matter
- Hires go to the attorney whose architecture is clearest
The thirteen modules I build into every proposal module library
Each module answers a different question the prospective client has not yet asked out loud. I do not always include every module on every proposal. A short consultative engagement will skip the multi-phase architecture; a large defense engagement will lead with it. But these are the building blocks.
Letterhead + bar-number link
Name, CA bar number, clickable link to State Bar profile. Verifiable in three seconds.
Hero block
One-sentence matter framing in the client's own words, not in marketing language.
Sticky module nav
Pill bar fixed at top. Client jumps straight to budget or schedule without scrolling.
Command Center
Five tiles: Objective, First Result (24 hrs), Full Draft (2 business days), Estimated Scope, Upload to Begin. The 30-second answer to "what am I buying."
Practice-posture card
One sentence on how I approach this matter type for a client this size. Distinguishes thinking from template-running.
Engagement architecture
Phase list (Phase 1 Now, Phase 2 If needed, etc.) with status badges. Shows I have thought past day one.
Defense / claim strategy board
Accordion of 2-4 collapsed sections with the doctrines and cases. Depth lives behind a click, not on the front page.
Risk Console
5-factor green / yellow / red spectrum. Each band has a short pattern label and an expand-for-why.
Exposure / pressure console
What I would verify from documents, mapped to the four pressure points driving timing. Labeled illustrative pressure estimate, never amount owed.
Drafting sample
Short non-committal paragraph in the voice I would write the actual deliverable in. Builds tone confidence.
Scope and budget card
Flat fee with inclusions/exclusions, or hourly band with range estimate. No bait-and-switch, no price-anchor surprise.
Schedule + evidence vault
Timeline on the left, upload checklist on the right. Both when and what you send me in one panel.
Research library
Four tiles linking to my terms.law hub pages on the exact doctrine. Each has a "why this matters for your case" expand-for-why.
Plus an Engage card at the bottom (Upwork primary CTA + paid-consultation secondary CTA) and a footer with the bar-number link and attorney-advertising disclaimer. Those are not numbered because they appear on every proposal regardless of matter type.
The Claude Code workflow, end to end 6 steps · ~1 hr
This is the actual sequence I run when a new Upwork invitation lands. The first time I built a dashboard from scratch it took most of an afternoon. With the modules and an established CSS toolkit, the current cycle is about an hour from invitation to send. Most of that hour is me reading and revising, not the AI generating.
Step 1 (5-10 min): Read the invitation. Skim my own prior proposals folder.
Before I open Claude Code I read the invitation in full, including any sample documents the client attached. I check whether I have done a comparable matter recently and pull that proposal as a starting reference. If the matter is truly new, I pull the closest hub page I have authored on the topic so I have a single source of authoritative doctrine open.
Step 2 (10-15 min): Brief Claude Code on the matter and the dashboard framework.
In a terminal session I describe the invitation, the closest comparable matter type, the prospective client's apparent budget signal, the practice posture I want to take, and which of the thirteen modules I think apply. I share the prior comparable proposal as a structural reference. I do not paste the client's confidential documents unless and until they are formally engaged and I have run conflict-and-scope. I also point Claude Code at the terms.law hub pages I want it to cite under Research Library so the links are accurate.
Step 3 (10-15 min): Claude Code drafts the modules and the HTML scaffolding.
Claude Code drafts the dashboard in HTML, using the CSS and the module library I have built up over time. It pulls doctrine and citations from the hub pages I pointed it at, and from its general legal training to the extent that information is non-confidential and verifiable from the sources cited. The draft includes inline comments where Claude flagged something it was unsure about, which is how it tells me what to double-check.
Step 4 (20-30 min): I read the entire draft word by word and revise.
This is the longest step and the only one that determines whether the proposal goes out. I check every citation. I rewrite anything that reads like AI-generated marketing language. I tighten the scope statements so I am not over-committing. I run a verb scan for "I will" language and confirm everything I am promising is actually within the scope I am quoting. I delete anything I am not personally confident saying to opposing counsel under my bar number.
Step 5 (5 min): Sanity-check pass against my standing rules.
I run a final check: no em dashes (it is a personal stylistic rule), no "we" / "our" pronouns, no phone-number leak, no "free consultation" language, no over-promised representation scope, the Upwork CTA wording is correct, the consultation link is the current canonical one. These are mechanical checks that catch the recurring small mistakes.
Step 6 (2 min): Attach the HTML to the Upwork message and send.
Upwork renders HTML attachments cleanly in the client's browser. I attach the file, write a short two-or-three-sentence cover paragraph in the Upwork message itself, and send. Total time from invitation to send is usually under 60 minutes for a familiar matter type, up to two hours for a new one.
Worked example: a fictional Acme Roasters, LLC proposal demo dashboard
This is what one of these dashboards looks like in compact form. The fictional client is Acme Roasters, LLC, a hypothetical small California coffee-roaster facing a demand letter from a former co-packer alleging missed monthly minimums under a 2024 supply agreement. The client, the matter, the documents, and the numbers are entirely invented for this example. I am showing the architecture, not a real engagement.
Defense-Side Response to a $42,000 Breach-of-Contract Demand Letter from a Former Co-Packer
Preliminary framework based on the demand letter as forwarded. The final dashboard would be populated after I review the underlying supply agreement, your production records, and any prior correspondence with the co-packer.
Command Center module 4
Defense Posture module 5
For a small operator like Acme, my approach is not to escalate the dispute into litigation in the response letter. The goal is to protect the response deadline, surface the genuine factual disputes (whether the alleged minimums were ever met by the co-packer's own performance, whether the 2024 agreement was modified by course of dealing, whether the demanded $42,000 actually represents the contract measure of damages), and leave room for either a negotiated resolution or litigation if the demand is unsupported. I treat this as a single-demand response first, with multi-round negotiation or litigation evaluated separately.
Risk Console module 8
Drafting Sample module 10
The opening reservation paragraph is the consistent voice. Customization layers in the specific agreement language, the actual monthly-volume record, and any prior course-of-dealing emails.
Scope & Budget module 11
$575 flat fee. Attorney response letter on firm letterhead, USPS certified mail plus email, up to two pre-send revision rounds, review of the counterparty's first substantive response with a short next-step recommendation, and a narrow counter-response if strategically appropriate. Multi-round negotiation, settlement-agreement review, complaint filing, arbitration initiation, court appearance, and discovery are separately scoped if the matter develops past initial response.
Engagement Architecture module 6
Phase 1 (this scope): Initial response letter + review of first substantive reply. Phase 2 (if needed): Pre-litigation negotiation phase. Phase 3 (later): Complaint preparation, filing, discovery. Phase 4 (later): Trial or settlement posture. Most small-business breach disputes resolve in Phase 1 or Phase 2.
Schedule & Evidence Vault module 12
Day 0: Engagement accepted, upload begins. Within 24 hours: deadline calendar, document gap list, preliminary defense map. Within 2 business days: draft response letter. Evidence to upload: the demand letter, the supply agreement and any amendments, monthly production and invoice records for the period in dispute, all email correspondence with the counterparty about volumes or pricing, and the contact details of the counterparty's counsel if any.
The full version of this proposal would also include the sticky module navigation, the Practice Fit credentials tiles, the FAQ accordion, the Research Library, and the Engage CTA card. I trimmed those here so the example fits on one screen. Every module on a real dashboard is collapsible or expandable so the client controls how much detail they want at any moment.
Folded scan-first variant (Claude Design influence) design iteration
When I was iterating on the dashboard format inside Claude Design (the canvas product), the strongest variation it surfaced was an information-architecture pass, not a visual-polish pass. The fix for "wall of text" turned out to be folding the six dense sections behind one-line previews and giving the skim-reader a hero band, a three-cell glance card, and a CTA above the fold. The variant below is a compact version of that idea applied to the same fictional Acme matter. The same folding pattern is also what I just applied to the rest of this page.
Defense-side response to a $42,000 breach-of-contract demand letter from a former co-packer.
A skim-reader has everything they need above the fold: deliverables, fee, engagement, CTA. The dense content lives in six collapsed sections with one-line previews. Click any section to expand; Expand all if you want a linear read.
01PostureProtect the response deadline, surface factual disputes, leave room for negotiation or litigationset
For a small operator like Acme, my approach is not to escalate the dispute into litigation in the response letter. The goal is to protect the response deadline, surface the genuine factual disputes (whether the alleged minimums were ever met by the co-packer's own performance, whether the 2024 agreement was modified by course of dealing, whether the demanded $42,000 actually represents the contract measure of damages), and leave room for either a negotiated resolution or litigation if the demand is unsupported.
02DeliverablesFirst result in 24 hrs, full draft in 2 business days, revisions includedset
Within 24 hours: deadline calendar, document gap list, preliminary defense map.
Within 2 business days: draft response letter on firm letterhead, USPS certified + email delivery, with a short next-step recommendation. Up to two pre-send revision rounds. Review of the counterparty's first substantive response with a short next-step recommendation and a narrow counter-response if strategically appropriate.
03DefensesMaterial breach by counterparty, modification by course of dealing, mitigation, damages-measure disputestrong
- Material breach by counterparty. Whether the co-packer's own performance shortfalls excused Acme's minimums.
- Modification by course of dealing. Whether the 2024 written terms were modified by subsequent emails or oral discussions about volume.
- Failure to mitigate. Whether the co-packer pursued alternative purchasers as required.
- Damages measure. Whether the $42,000 actually reflects the Cal. Com. Code section 2708 / 2710 measure for an aggrieved seller, or whether it is a lost-profits or liquidated-damages claim the contract does not support.
04Risk mapFive-factor green / yellow / red console, sensitive to the documents you uploadmixed
Five factors set the overall posture: (1) written agreement clarity, (2) production / invoice records, (3) counterparty's own performance, (4) course-of-dealing evidence, (5) damages calculation. Each factor maps to a green / yellow / red band; the document upload pins each one before the response letter is drafted. The risk console is a live read of the matter, not a sales pitch.
05Voice sampleOpening reservation paragraph in the actual letter voicequoted
Based on the materials presently available, Acme Roasters, LLC does not concede that the May 2024 supply agreement obligated it to purchase the monthly volumes asserted in your March 14, 2026 letter, nor that the $42,000 demand reflects the contract measure of damages under California Commercial Code section 2708 or section 2710. Acme reserves all defenses, including but not limited to material breach by the counterparty, modification by course of dealing, failure to mitigate, and the absence of any liquidated-damages provision in the operative agreement.
06ProcessDay 0 acceptance, Day 1 calendar + gap list, Day 2 draft letter, then reply review6 steps
Day 0: Engagement accepted, evidence upload begins. Day 1: Deadline calendar, document gap list, preliminary defense map. Day 2: Draft response letter circulated for revisions. Day 3: Pre-send revisions and certified-mail send. After their reply: Review and short next-step recommendation, with a narrow counter-response if strategically appropriate. Multi-round negotiation, settlement-agreement review, complaint preparation, arbitration initiation, and court appearance are separately scoped.
Credit: the folded-iteration pattern (hero band + 3-cell glance card + 6 collapsed sections with status tags and one-line previews) is borrowed from a Claude Design canvas pass on this same fictional matter. The information-architecture insight (the fix for "wall of text" is folding, not more visual polish) is the part worth stealing. The same pattern can be ported to any of the dashboard variants.
The ethics and supervision guardrails I follow CA RPC + ABA Op 512
The California Rules of Professional Conduct and the November 2023 California Bar Practical Guidance on Generative AI apply to my proposal workflow the same way they apply to my brief-writing workflow. ABA Formal Opinion 512 (July 2024) is the same standard nationally. The mechanical practices I follow:
- I do not feed prospective-client confidential information to the model before engagement. The job post, sample documents shared publicly through the Upwork interface, and the matter type are all I work with at proposal stage. Conflict-and-scope clearance happens before any privileged documents enter the workflow.
- I verify every citation. If the dashboard cites Greenley v. Kochava or Henry Schein v. Archer & White, I have either personally read the case or it appears in a hub page I authored after personally reading the case. I do not let the model cite cases I have not read.
- I never let the model promise outcomes. Every framing is "illustrative pressure estimate," "preliminary framework," "depends on documents." If the model drifts into outcome-language during drafting, I rewrite it.
- I run a verb scan on the final draft. Every "I will" sentence has to match scope I am actually committing to. This catches the most common AI failure mode: enthusiastic over-commitment dressed up as professional language.
- I review every word before send. No proposal goes to a prospective client without me reading it from top to bottom. The AI accelerates the production; it does not replace the supervision.
- I disclose AI assistance when asked. If a client asks whether I use AI in my practice, I say yes and walk them through this exact workflow. The dashboard format is itself a transparency artifact: the architecture of how I think about a matter is visible to the client before they hire me.
What this is not expectation control
This page exists so prospective clients and other attorneys can understand what I do. It is not a sales pitch for an AI product, and it is not a template you can pick up and run with by yourself unless you have already built the rest of the supervision protocol around it.
- It is not "AI writes my proposals." The AI drafts the scaffolding. I review every word and rewrite anything I am not personally confident saying under my bar number.
- It is not generic. Each dashboard is built for the specific matter type and the specific prospective client. The fictional Acme Roasters example above looks structurally similar to a real dashboard, but every line on a real one is drafted for that engagement.
- It is not a shortcut around competence (RPC 1.1). If I do not understand the matter type at the level the dashboard implies, the dashboard does not save me. The hub pages I cite are research I did over years before any AI was involved.
- It is not free of error. AI assistance occasionally introduces a citation issue, a date issue, or an over-promise. That is why every draft goes through a human review pass before any prospective client sees it.
- It is not the right fit for every practice. A solo or small firm that handles five matters a year does not need this. The break-even on building a dashboard library is somewhere around twenty to thirty proposals a year, and the format works best on matter types where the prospective client benefits from seeing the architecture before hiring (defense engagements, complex transactional work, multi-phase projects).
When this approach is worth implementing for your firm
If you are a solo or small-firm attorney who sends more than thirty proposals a year, deals primarily with small-business or consumer-side clients who shop on architecture rather than on relationship, and wants to use AI in a way that survives a bar audit, the dashboard format is a real upgrade over the one-page cover letter. The implementation work is mostly upfront: building the CSS toolkit, building the module library, and writing a workflow protocol that captures the supervision steps so they happen on every proposal.
If you want me to help you implement this for your firm, that is what the $2,500 AI Implementation Package covers, scaled to your matter types. The audit version (audit + written policy + one workflow documented) is enough for many solos; the implementation version (audit + policy + dashboard template + Claude Code project setup) is the full lift. Either way, the end product is a workflow you own and can run yourself, not a subscription to my time.
Related
- AI Implementation Package overview
- Claude for Legal Review (Anthropic's May 2026 launch)
- AI for Solo Lawyers: The 2026 Ethics-First Guide
- My AI stack (what I actually use day to day)
- AI implementation case studies (anonymized engagements)
- AI firm-audit self-tool (free)
This page is informational and does not establish an attorney-client relationship. The "Acme Roasters, LLC" example is fully fictional and does not reference any actual client, matter, or engagement. Attorney advertising. Sergei Tokmakov, Esq. is admitted in California (Bar #279869).