Build it. Use it. Review it.

Your local website generator,
inside Agent OS.

Read the large text aloud. Follow the “On screen” line. Scroll to the next step. Website Generator now lives in the Design OS tab bar. Start with installation, then follow a real patio website from brief to saved draft.

Built with this generator

Three examples in Julian’s niches

Technical SEO, editorial link building and small business AI automation. Each has distinct content and imagery. These are noindex concept previews with demonstration forms; no rankings have been measured.

Download all three websites + research notes

In the local app: Design OS → Website Generator → Your niche examples. Use a saved example’s brief to create another site.

01
Build it

Check the existing setup

I’m adding this to an existing Agent OS app. Fresh website copy uses its configured Codex account. The patio example also lets me inspect the design before I connect a writer.

On screen: Check the app is running locally, Python 3.9+ is installed, and Codex is connected for fresh generation.

Check: The existing Agent OS opens. The module uses the app’s connection; account limits still apply.

Existing Agent OS+ Website Generator moduleConfigured Codex → fresh copyPython → linked website filesSetup diagram · not a recording of installation
02
Build it

Give the agent the source and brief

I’m giving my coding agent the module source and an exact build brief. It adds the new screen and menu entry while preserving the rest of my app.

On screen: Open the source package and INSTALL.md, then use Copy build brief. Run it in your existing Agent OS project.

Check: The agent adds Website Generator to the menu and reports the installation checks. The source package is an add-on, not the entire app.

Module sourceMerge into existing appMenu + form + saved previewsInstallation diagram · actual source is linked below

Download module source · Read installation instructions

View the full build brief
Add the Website Generator module to this existing Agent OS app using the supplied website-generator-source.zip. Read the app instructions first. Preserve existing user changes. Inspect the supplied source before merging.

Copy the new src/app/website-generator, src/app/api/website-generator, src/components/WebsiteGenerator.tsx and .css, src/lib/websiteGenerator.ts, scripts/website-generator and scripts/website-generator-check.cjs into matching paths. Add src/lib/designOrigin.ts only if absent; otherwise verify and reuse the existing helper. Reuse the app's existing config.codex and installed dependencies. If config.codex is missing, implement equivalent executable discovery and configuration; do not hardcode the original author's paths.

Add Website Generator as a tab in DesignOS.tsx using the existing WebsiteGenerator component, supporting /design-os?view=website-generator on reload. Preserve the standalone route and existing navigation. Do not replace either whole file. Use the navigation snippets in INSTALL.md. Keep the app bound to localhost. The Python worker needs Python 3.9+ and the configured, signed-in Codex CLI for fresh copy. No new package dependencies are required for the supplied app version.

Run the Python worker tests and TypeScript check. Start the app, open /website-generator, and use Open patio example. Then run the endpoint check against the actual local port. Generate one fresh fictional brief and verify linked service pages, mobile layout, notes and ZIP contents. Confirm saved drafts survive a page reload. Keep previews noindex and forms in demonstration mode. Report failures and untested items accurately. Do not publish a site or connect live enquiries as part of installation.
03
Build it

Prove the installation works

I’m checking the worker and page routes, then opening the included example. A clean test result and a working preview give me evidence that the installation is ready for a fresh brief.

On screen: Use the verification commands below. In Website Generator, choose Open patio example.

Check: Draft ready appears with 15 pages for the included example. Verify a service link and the ZIP. Our tested app passed; other app versions may need adaptation.

Verified in the current local app

PASS · Worker tests, input validation, origin rejection, linked pages, assets, ZIP, reports and preview containment.

TypeScript · No errors found.

Test summary from actual runs on 20 September 2026. Fresh installation on another machine has not been tested.
Verification commands
python3 scripts/website-generator/test_worker.py
npx tsc --noEmit
# After Open patio example finishes:
AGENT_OS_URL=http://127.0.0.1:3737 node scripts/website-generator-check.cjs
04
Use it

Write a useful business brief

I’m describing a fictional patio site for small backyards in Austin. I’m explaining the shade and daylight choices, and I’m stating which business facts are unknown.

On screen: Fill Website / business name, Target city or area, Services to feature, the audience box and Verified facts and source links.

Check: The brief contains three distinct services and a useful angle. No invented contractor credentials are supplied.

Real app · automated typing into a fictional business brief. Open larger ↗
05
Use it

Start a fresh website

I’m choosing Generate my website. The job is saved while the writer works. I can leave this page, but the local system must keep running.

On screen: Choose Generate my website once. Wait for Draft ready in Saved website.

Check: Creating your website… appears, followed by a saved draft. One build runs at a time. The start and completion recordings omit the waiting interval.

Real app · generation starts. The waiting interval is omitted before the completion clip in the next step. Open larger ↗
06
Use it

Review desktop and mobile

I’m checking the six-page draft in both widths. I can see the layout before choosing what needs editing. A finished draft still needs its facts and business setup reviewed.

On screen: Use Desktop preview and Mobile preview. Reload the page and select the draft from Saved website.

Check: The six-page draft remains saved. The preview resizes; the desktop and phone controls show the selected state.

Real app · completed fresh generation, then desktop and mobile preview. Open larger ↗
07
Use it

Inspect the actual website

I’m opening the website itself. The service choices link to separate pages, and the photo labels make clear that these are concept images.

On screen: Choose Open website preview. Follow a service link and inspect the contact page.

Check: The service page loads. The form remains a demonstration and does not deliver enquiries. Concept images are not a portfolio.

Real generated website · scrolling through the home page. Follow a service link yourself to check navigation. Open larger ↗
08
Use it

Review evidence and export

I’m reading Research & SEO notes and the launch checks before carrying the files forward. The package keeps the pages and project notes together.

On screen: Choose Research & SEO notes, inspect Before this goes live, then choose Download website ZIP.

Check: The package contains website files and project notes. Source claims still need review. Hosting, live forms and recurring SEO are not connected by this action.

Real app · launch checklist and saved research notes. Export is a separate action described above. Open larger ↗
Setup reference, limitations and troubleshooting

Full installation instructions · Plain-text build brief

Missing writer: connect the Codex CLI account through the app’s existing setup. This module uses config.codex. The example needs no writer account. No additional AI provider key is required when Codex is already configured.

Python not found: install Python 3.9+ or set AGENTIC_OS_PYTHON_BIN to its executable path before starting Agent OS.

Stopped generation: inspect the saved job, confirm the local machine is awake, and use Retry saved brief. Only one build runs at a time. Writing has a ten-minute limit; the image stage has a thirty-minute limit.

Saved work: jobs persist in ~/.agentic-os/website-generator. They contain the brief, generated content, research notes, audit and website package. Do not share private business briefs without permission.

Originality: fresh text is drafted for the brief. With the default image option, new hero and service images are generated too; the theme can repeat. The first Austin test had no exact body-section matches against the included Dallas example. This is not a web-wide originality check. Research is best-effort: the first fresh test explicitly reported no web research.

Launch: review real business identity, provider role, domain, source claims, image rights, privacy notice and actual enquiry delivery. Drafts are noindex. Weekly workflow notes are documentation, not an enabled automation. Search rankings are not guaranteed.

Port: links assume this guide is served by the same Agent OS app. Use your app’s actual port in verification commands. The reference recordings were made on port 3737.

Sources and verification notes

Current local application and generated projects inspected on 20 September 2026. Recordings use automated browser actions in the actual app, not voice control. Build-it diagrams are illustrative; this module was tested in the existing app, not on a fresh machine.

Search policy references: Google’s guidance on generative AI content, Google Search spam policies, and Business Profile eligibility. Google’s eligibility page lists lead-generation agents and companies as ineligible. The reference layout came from Temecula Patio Covers; our text and concept imagery are separate assets.