Four evidenced observations from kiewit.com's public surface, read the way an AI agent reads it, and a concrete concept for the layer Kiewit's own head start points at: machine-verified proof of safe work, per task, for the self-perform craft the company already owns.
curl headers, fetched-HTML JSON-LD counts + @type inventory, robots/llms/well-known reads with a soft-404 control). No scanning, no probing, no authentication, no bot walls routed around. Trademarks referenced descriptively. Every statistic is cited and dated; live sources override any number printed here.llms.txt (the file AI assistants read first) (HTTP 200, 2,495 bytes, text/plain, Yoast SEO v26.9-generated) when Turner, Skanska, Bechtel, and Home Depot all return 404. Its homepage and careers page carry an Organization JSON-LD node (the invisible labels search engines and AIs read) (fuller than Bechtel's generic graph). The estate is solid: WP Engine origin behind Cloudflare, HSTS preload (max-age 31536000), X-Frame-Options SAMEORIGIN, nosniff, a Cloudflare Transform Rule enforcing "Mandatory Security Headers." And its own llms.txt proudly surfaces ecological-restoration projects: Salton Sea Species Conservation Habitat, "Cleaning the Creek," "Protecting What Lies Below." The findings below are not "your site is broken", they are about the room behind a door Kiewit already opened, and a proof layer that fits a self-perform, employee-owned contractor better than anyone.
No jargon. Every observation below points at the same money: Kiewit already opened the AI door its peers haven’t, here is what walking through it is worth.
Kiewit is the one contractor whose site AI assistants can already read; giving them something to actually do there means that head start turns into projects and hires instead of stopping at “nice to know.”
Your careers page can’t be read as real job listings by an AI recruiter today, so a hungry craft-hiring pipeline quietly misses candidates who are actively looking; structured jobs put Kiewit in front of them at the moment they search.
“Nobody Gets Hurt” lives only in page copy today; a per-task proof of safe completion turns the self-perform craft you already own into a record that stands up to any client, insurer, or owner who asks, and for employee-owners, the proof is the pride.
llms.txt door is open, but the room behind it is a passive content index, not an actionable surface.Kiewit's live llms.txt is Yoast-generated: lists of Pages, Articles, Projects, and Topics. It advertises no capabilities, no agent actions, and no verification layer, and the actionable half of the agent spec is missing: an agent card (the file that lets an AI assistant use you correctly) at /.well-known/agent-card.json is a 404, and /ai.txt is a 404 too. An agent can read about Kiewit; it cannot do anything or verify anything.
llms.txt proves the intent; the missing agent card + tool schemas + verification are the difference between "AI can find us" and "AI can transact with us and verify our work." Kiewit is the one giant positioned to close that gap first./careers/ is the entry point to one of North America's largest self-perform craft workforces (~34,500 craft and staff, employee-owned). It loads fine (HTTP 200) but carries only the Yoast SEO graph: Organization, WebSite, WebPage, BreadcrumbList. There is no JobPosting schema: an AI career agent can't read Kiewit's open craft roles as structured jobs.
JobPosting data is table stakes, and one rung below it is the real prize: a verified record of the safe, completed work a craftsperson has actually done.Kiewit's safety substance is genuine: "Safety first. No exceptions."; the goal of "zero fatalities"; Craft Voice in Safety ("craft are taking care of craft, in partnership with management"); Life-Saving Actions; the Operations Start Card job-hazard-analysis tool. All of it lives in page copy and PDFs, the sustainability page alone is 35× "sustainability," 7× "safety", with only the Yoast graph underneath. No machine-verifiable "was this task done safely?" object exists.
Kiewit's public Content-Security-Policy is comparatively light: it sets frame-ancestors 'self' and a worker-src/report-uri, but no script-src nonce policy (unlike Bechtel's). It also loads front-end libraries (Bootstrap 5.3.3, Swiper 11) from the public jsdelivr CDN. Stated for completeness: a hardening opportunity, not a vulnerability; HSTS-preload, XFO, and nosniff are all present.
script-src and self-hosted or SRI-pinned libraries would bring the header posture up to the Bechtel/Turner bar. Noted only so the brief is complete and honest.EcoWealth runs the Ecological Work Protocol (EWP), a funded, proof-verified, on-chain-settled work-packet layer, live on Base mainnet today (contract 0x76c17C…A14B, source-verified; first packet settled end-to-end as workId 14). Pointed at Kiewit's self-perform world, one packet = one craft task with safety made structural:
The pilot deploys entirely on EcoWealth infrastructure first: the Agent Kit (see the kit page) upgrades Kiewit's existing public llms.txt into an actionable surface (agent card + tools) read-only, and one safety-verified craft packet, or one Restore-ladder ecological packet shaped like a Kiewit habitat project, is funded and settled end-to-end on our live board, before anything touches Kiewit's stack.
| # | Claim | Source | Observed | Re-verify |
|---|---|---|---|---|
| 1 | llms.txt LIVE (200, text/plain, 2495b, Yoast v26.9 content index) | /llms.txt | 200 · 2495b | curl -s -o /dev/null -w '%{http_code} %{content_type} %{size_download}' …/llms.txt |
| 2 | agent-card.json + ai.txt true 404 (control 404 confirmed) | /.well-known/agent-card.json, /ai.txt | 404 each | curl -sI …/.well-known/agent-card.json ; curl -sI …/this-is-a-soft404-control-xyz123.txt |
| 3 | Home + careers ld+json = 1 (Yoast graph incl. Organization); no JobPosting | /, /careers/ | 1 block each | curl -s …/careers/ | grep -oE '"@type":"[^"]*"' | sort -u |
| 4 | "140 years of self-perform … integrated EPC" verbatim in Kiewit's own llms.txt | /llms.txt | present | curl -s …/llms.txt | head -3 |
| 5 | Nobody Gets Hurt / Craft Voice in Safety / zero fatalities (prose) | /safety/ | page copy | WebFetch kiewit.com/safety/ for the safety quotes |
| 6 | Sustainability prose: ld+json=1, sustainability×35 / safety×7 in copy | /about-us/our-commitments/sustainability/ | 1 block | curl -s …/sustainability/ | grep -c 'application/ld+json' |
| 7 | Ecological-restoration projects surfaced in own llms.txt (Salton Sea, Cleaning the Creek) | /llms.txt | listed | curl -s …/llms.txt | grep -iE 'salton|creek|below' |
| 8 | Light CSP (frame-ancestors only, no script-src nonce); Bootstrap/Swiper via jsdelivr | response headers + home source | present | curl -sI …/ | grep -i content-security-policy |
| 9 | Scale: ~$18.2B 2025 rev; employee-owned; ~34,500 craft+staff; ENR Top 400 top-5 (~#4); one of NA's largest self-perform | Kiewit / ENR / public profiles | public record | search "Kiewit 2025 revenue employee-owned 34,500 self-perform ENR" |
| 10 | EWP live: Base contract 0x76c17C…A14B, workId 14 settled; board 7,624 postings / $671,012; x402 lanes priced | BaseScan · vealth.net/labor/stats · /.well-known/x402 | live | BaseScan + curl vealth.net/labor/stats |
work-packet x402 call (x402 = a web-native way for AI agents to pay per use) against our live endpoint right now, menu at vealth.net/.well-known/x402, contract 0x76c17C…A14B. The on-chain receipt lands in seconds; that receipt is the whole pitch.