Skip to content

Feature: agent bootstrap entry point at /ai - #3

Open
akshaysasidrn wants to merge 8 commits into
mainfrom
feature/agent-bootstrap
Open

Feature: agent bootstrap entry point at /ai#3
akshaysasidrn wants to merge 8 commits into
mainfrom
feature/agent-bootstrap

Conversation

@akshaysasidrn

@akshaysasidrn akshaysasidrn commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

📝 What this does

Gives a coding agent a single copyable instruction — Fetch https://stackdome.com/ai and follow the instructions — that bootstraps it into deploying the user's repo on their Stackdome. Along the way it fixes a set of URLs that pointed at a host which has never existed, which an end-to-end test proved made the documented path unrunnable.

🏗️ Architecture

Agents fetch raw HTML, so /ai is a static file rather than an SPA route. One instructions node serves both audiences: hidden by default for machines, revealed by the humans/agents toggle so a visitor can read exactly what their agent is being told.

sequenceDiagram
    participant U as User
    participant A as Coding agent
    participant W as stackdome.com
    participant S as Skills registry
    U->>A: pastes the fetch instruction
    A->>W: GET /ai
    W-->>A: agent-instructions block
    A->>S: install stackdome-deploy skill
    A->>W: GET /cli (302 to installer)
    A->>U: asks for instance URL + API token
    A->>A: init, validate, deploy --wait
    A-->>U: live app URL
Loading

🔀 Changes

  • Added a static /ai page with a humans/agents toggle, copy block, and FAQ, served by an explicit nginx location.
  • Added a hidden pointer on the homepage so agents fetching the bare domain find /ai.
  • Added a quiet agent hand-off line to Get started, deliberately not a third button so the two-route fork stays intact.
  • Repointed every URL at hosts that resolve, replacing a subdomain that was never in DNS.
  • Made /install.sh return 404 instead of falling through to the SPA, and stopped the FAQ advertising a command that fails.

🧪 How to test

  • Build the site and preview it locally.
  • Open /ai.html and confirm the human view reads cleanly.
  • Switch to the agents tab and confirm the instructions appear.
  • Click Copy and confirm it flips to Copied.
  • View source on the homepage and confirm the hidden pointer is present.
  • Scroll to Get started and check the hand-off line in both light and dark themes.
  • Confirm curl -fsSL <host>/install.sh fails cleanly rather than returning HTML.

akshaysasidrn and others added 6 commits August 7, 2026 01:12
Static page (not an SPA route) that AI coding agents fetch as raw HTML:
a tabbed human/agent view with the golden-path deploy instructions, plus
matching nginx location and _redirects rules for /ai -> /ai.html.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
get.stackdome.com never resolves (NXDOMAIN) and docs.stackdome.io is
unreachable (custom domain not wired). Repoint install/CLI links at
stackdome.com and the docs base at the live stackdome.mintlify.app,
and add a /cli vanity redirect (nginx + _redirects) to the CLI repo's
raw install.sh so it resolves once that repo goes public.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
stackdome.com/install.sh has no dedicated route, so it fell through
the nginx and Netlify/Cloudflare catch-alls to index.html with a 200.
`curl -fsSL .../install.sh | sh` would pipe that HTML into a shell
instead of failing. Return 404 explicitly in both nginx.conf and
public/_redirects (kept in sync per the existing comment), and stop
the /ai FAQ from advertising an install command that currently 404s —
point readers at the self-host guide instead.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Bare `stackdome deploy` returns before the release finishes, so an
agent following this page can't observe a terminal Released state.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@netlify

netlify Bot commented Aug 7, 2026

Copy link
Copy Markdown

Deploy Preview for stackdome ready!

Name Link
🔨 Latest commit c90c2e6
🔍 Latest deploy log https://app.netlify.com/projects/stackdome/deploys/6a76539dac99a00008639c7f
😎 Deploy Preview https://deploy-preview-3--stackdome.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

…rap pages

llms.txt pointed at unreachable hosts and a wrong GitHub org, and dropped a
competitor comparison the site avoids elsewhere; add a pointer to /ai so
agents fetching it can find the bootstrap page. index.html's hidden
agent-instructions div reads as cloaking now that llms.txt carries the same
pointer, so it becomes a plain HTML comment. GetStarted's and ai.html's clipboard
writes were unguarded and silently did nothing on failure; both now fall back
to selecting the command text. ai.html's tab toggle used aria-selected, which
browsers ignore on a <button>; switched to aria-pressed. ai.html's install
step is honest that the CLI isn't published yet. public/_redirects is dropped
since production serves via nginx and the file's Cloudflare-Pages-only
install.sh rule was never exercised there.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@akshaysasidrn
akshaysasidrn force-pushed the feature/agent-bootstrap branch from 6fbb11e to 3504674 Compare August 7, 2026 20:04
Replace stackdome.mintlify.app references with the canonical
docs.stackdome.com domain in ai.html and llms.txt.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant