Documentation

Deployment

This page explains the public-site deployment boundary for AgentHub Home and docs. It deliberately omits private host paths, SSH aliases, rollback commands, and secrets.

Private operations boundary

Public docs can describe build outputs, release source worktrees, smoke-test shape, and public URLs. Host-specific copy paths, backup directories, rollback commands, credentials, and server inventory belong only in the private server workspace.

Release Source

Build and package AgentHub Home from the registered clean release worktree in the TokenDance workspace governance docs. Do not deploy from a dirty default worktree or from an older design-preview worktree.

SourceRequirement
Git branchFast-forwarded to the commit being released
WorktreeClean except intended release changes
Package lockNot changed unless dependency work is in scope
Static outputProduced by pnpm build
Discovery filesrobots.txt, sitemap.xml, and llms.txt included in output

Product Deployment Status

This page is only the AgentHub Home static-site deployment guide. It is not a public production deployment manual for Hub Server, Edge Server, Web workbench, Remote/Cloud Edge, or Feishu/Lark Gateway.

ComponentPublic deployment statusPublic rule
AgentHub HomeStatic export can be deployed publiclyBuild from the registered release source, then smoke-test public routes
AgentHub DocsStatic export can be deployed publiclyKeep bilingual routes, metadata, search, sitemap, and llms.txt aligned
AgentHub DesktopLocal preview / packaging in progressPublic docs can describe local preview and UI evidence, not a production rollout
Local EdgeLocal previewPublic docs can describe local health checks and workspace policy, not private host setup
Hub ServerIn progressPublic docs describe architecture and authorization boundaries; production details stay private
Web workbenchIn progressPublic docs describe Hub-backed behavior and missing evidence, not general availability
Feishu/Lark GatewayIn developmentPublic docs describe the setup checklist and callback rules; real tenant config stays private
Remote/Cloud EdgeIn developmentPublic docs describe safety requirements only until device proof and routing evidence exist

If a reader wants to run the product locally, point them to Installation and Quickstart. If an operator needs production details, use the private server workspace and do not copy those paths or commands into this repository.

Local Build

Run from the site release source:

powershell
pnpm test
pnpm build
pnpm lint

Expected evidence:

  • tests pass with the current docs registry and search index;
  • the static export completes;
  • the generated out/ contains localized home and docs routes;
  • lint reports no new errors.

Static Export Checks

After the build, check the generated files:

powershell
# Build artifact checks; public routes remain extensionless.
# Next static export emits .html files plus companion route data directories.
Test-Path .\out\zh\index.html
Test-Path .\out\en\index.html
Test-Path .\out\zh\docs\index.html
Test-Path .\out\en\docs\index.html
Test-Path .\out\zh\docs\product-status.html
Test-Path .\out\zh\docs\identity-login.html
Test-Path .\out\zh\docs\design-system.html
Test-Path .\out\zh\docs\deployment.html
Test-Path .\out\sitemap.xml
Test-Path .\out\llms.txt

Live Smoke

Use cache-busting query strings after deployment:

RouteWhat to confirm
/zh?v=<version>Current homepage, no old hero, mock visible, TokenDance Blue
/en?v=<version>English homepage, language copy correct
/zh/docs?v=<version>Docs body, sidebar, search, and TOC render
/zh/docs/product-status?v=<version>Product status table renders as a table
/zh/docs/design-system?v=<version>Design rules and tokens render
/zh/docs/deployment?v=<version>Deployment boundary warning renders
/llms.txt?v=<version>New docs links are present
/sitemap.xml?v=<version>New localized routes are present

Release Evidence Template

Keep public release evidence compact and repeatable:

Text
commit: <git-sha>
tag: <release-tag>
package: <public-safe package name, no private path>
build: test / lint / build result
routes: /zh, /en, /zh/docs, /en/docs, changed deep docs routes
seo: robots.txt / sitemap.xml / llms.txt / manifest content type
visual: desktop + mobile screenshots or reason visual QA was blocked
smoke: cache-busting live URLs and body keywords
private state: updated in server workspace, without copying private paths here

If a field is missing, state the missing proof explicitly. Do not replace missing proof with optimistic release language.

Documentation Completeness Gate

Every public docs change should answer this checklist before deployment:

CheckRequired evidence
Bilingual page parityEnglish and Chinese MDX carry the same status, boundaries, and examples
NavigationSidebar, previous/next, and TOC include new or changed sections
Searchsrc/lib/search-index.ts includes terms users will actually search for
Discoveryllms.txt, sitemap, and public route metadata stay aligned
Public/private splitNo secret, host inventory, SSH alias, web root, backup path, or rollback command
Status languagePreview, in progress, and in development are not described as generally available
ChangelogThe docs change is recorded with an absolute date

Cache And Stale Page Triage

If the live site still shows an older hero, old mock, missing docs body, or stale navigation:

  1. Confirm the local release worktree commit.
  2. Confirm the package was built from that worktree.
  3. Confirm the deployed static files contain the expected route.
  4. Request the route with a cache-busting query string.
  5. Check whether /zh, /en, /zh/docs, and deep docs routes disagree.
  6. Only then investigate web-tier cache or deployment copy issues in private ops docs.

Deployment Notes

  • Public docs can mention the package filename and commit/tag when they are user-visible release evidence.
  • Public docs must not include live filesystem paths, server usernames, SSH aliases, backup paths, or rollback commands.
  • If deployment is blocked by credentials or private server access, state that the site build is ready but not deployed.
  • Update the operations state in the private server workspace after live smoke passes.