So sell before you build. lfm gives your coding agent the process: your buyers' real posts first, then one checked page with your payment link. Build the product once someone pays.
Paste this into your agent
Free, MIT license, no account. The link is a plain skill file: your agent installs one checksummed binary from the GitHub releases into ~/.local/bin, then runs lfm in a new project folder. Read it first.
Comment PROMPT and I'll DM you.
No DM. The line above is the whole prompt. Your agent reads the rest from the link in it.
The usual receipt
Auth, billing, dashboarddone
The feature nobody asked fordone
Landing pagenight before
Launch postsent
Repliesnone
Sales$0.00
Shipping got fast. The silence after launch did not: zero users, zero replies, $0. Building feels like progress because a build answers in seconds. A launch post answers in days, if at all, so the next feature always wins.
Sell it first. Build it when someone pays.
Research60+ real posts
Conceptevery choice cited
Page104 checks
Payment linkyours
Selling2 or 3 days
Totala sale or a no
Demand first, product second. Your agent collects what buyers actually write, at least 60 posts from 5 platforms and 12 competing pages, decides the page from that evidence and builds it. You put your offer and a payment link on it and start with the sale: post where the research found your buyers, deliver the first orders by hand. Nobody pays, and you lost days instead of months. Someone pays, and you know what to build.
One founder made $0 for 90 days because the buy buttons still opened a "payments coming soon" box. Remove the waitlist copy the day checkout works; lfm flags a checkout link that is missing or hidden.
After you paste
Agent installs lfm1 binary
Agent reads buyers60+ posts
Agent writes concept.mdcited
Agent builds the page0 warnings
You add a payment linkStripe
You upload output/any host
Your part2 steps
The agent asks you only what you decide: the product, the price, how it is delivered and your legal pages. The research needs web access; the agent uses search, a browser or connectors when it has them and tells you what it could not reach. For this page that was 120 posts and 20 competing pages in under an hour, with four readers in parallel.
Rung up: the page your agent writes by default
We asked an agent with no research and no lfm for a landing page for a made-up Slack summarizer. One sentence in, one file out. Then lfm compiled it.
Void
The agent's page at phone width, as it wrote it.
Main button text2.55:1
release.layout, and 9 more texts under 4.5:1
Label over every heading×6
design.eyebrows
Pill badge over the headline×1
design.hero
Italic accent, pills, blur8 tells
design.defaults: generator defaults combined
No canonical URLerror
seo.metadata: search engines cannot tell which copy is the page
No share preview×1
seo.social
Two links, one label×1
a11y.link-purpose
output/not written
1 error and 10 warnings from the first compile, plus the contrast finding of the browser audit. Each is printed with its fix, so your agent repairs them before anyone sees the page. Read the full report and the agent's file.
Won't it just make the lfm look?
House stylenone
This pagea till receipt
Why a receiptbuyers post their $0
Colors the buyers mockpurple, beige
Your buyersyour page
Lookfrom the research
Every fix for AI slop turns into a look of its own once everyone installs it. lfm ships no style to copy. Each project decides its look in concept.md from its own research: what the buyers post and mock, what every competing page already does. The compiler then holds the page to those decisions. This page chose a receipt because builders keep posting their zeros; its concept shows every choice and the posts behind it.
What lfm does not do
It brings no traffic and hosts nothing. The research shows where your buyers talk; the page gives the visitors you send a clear way to pay. If every visitor already knows you, a plain page sells too, and lfm keeps that plain page fast, findable and correct.
Run lfm init <offer-name>, then lfm skills install inside it.
Run lfm compile after every change and do what its last line says until it says deploy.
lfm compile --json returns the same result as JSON, with next.phase and next.skill. Exit 0 means output/ was written. Also here: llms.txt.
On Grok Bot, add the lfm.cash bot: it installs lfm on its own computer and runs these steps, asking you only what you decide.
Install it yourself
curl -fsSL https://lfm.cash/install.sh | sh
macOS and Linux, Intel and ARM. The script checks the download against the release checksums and puts one binary in ~/.local/bin, without sudo. With Go 1.26 or newer:
The skills land in .agents/skills for Codex, Cursor, OpenCode and GitHub Copilot, or .claude/skills for Claude Code. Chrome is optional for lfm compile --release, which scrolls the page at phone and desktop sizes and saves every frame. Docs: authoring a project, source on GitHub.
This page's receipt
Buyer posts120 from 7 sites
Competing pages20
Directions10, 1 kept
Checks104, 0 warnings
Frames looked at48
HTML9 KB gzip
Fonts and imagesunder 140 KB
Lighthouse4 × 100
Sales today$0.00
lfm is free, so this total stays at zero. Yours does not have to. The buyer posts, the competitor pages and the concept behind this page are in the repository.