This offline handbook was checked against the implementation in origin/release-0825, not inferred from commands in older documentation. The CLI implementation baseline is 0.7.3.
This page lists repository-relative paths maintainers can use for verification. An ordinary developer does not need to read this internal source code to build an Agent. When the website or CLI changes, documentation maintainers should recheck commands, fields, states, and screenshots from these implementation entry points.
| Topic | Current implementation location | What this handbook verifies there |
|---|---|---|
| CLI 0.7.3 | services/oasn-supply-service/src/main/resources/developer-cli/oasn-sa-dev.py | Command tree, bounded arguments, credential storage, OAuth, SSH key and connect behavior, source selection, Workspace status/resume, WebUI ports, portal allow-list, outputs, and error codes |
| Developer home | frontend/openagent-official-website/apps/web/app/pages/developer/index.vue | My OpenAgents and the Create entry point |
| Agent details | frontend/openagent-official-website/apps/web/app/pages/developer/agents/[agentId]/index.vue | Agent/version lists and Online/Offline action entry points |
| Version workspace | frontend/openagent-official-website/apps/web/app/pages/developer/agents/[agentId]/versions/[versionId].vue | Program, Agent Card, Pricing, Save Draft, Publish, and Build With Local Agent |
| Agent Card editing | frontend/openagent-official-website/apps/web/app/pages/developer/agents/[agentId]/versions/[versionId].vue | Version-workspace editing and validation for avatar, name, description, one category, and MOM |
| Models / Resources | DeveloperModelModal.vue, DeveloperResourceModal.vue | Model capabilities and CPU/Memory compute-specification UI |
| Pricing | DeveloperDirectCostModal.vue, the version workspace, and the Publish pricing gateway | cost_plus, integer Gross margin, and Minimum Starting Balance denominated in Credits |
| Local Agent guidance | DeveloperLocalAgentModal.vue | The interaction for copying the complete trusted prompt |
| Trusted fixed-Skill prompt | services/oasn-website-bff-service/src/main/java/com/oasn/website/developer/DeveloperSandboxService.java | The fixed Skill URL on the website's primary path, Agent ID/Version ID binding, and operation=build |
| Workspace lifecycle | DeveloperWorkspaceService.java, DeveloperWorkspaceMapper.java | Source-aware creation, active and terminal states, status/resume/connect boundaries, connection material, and expiration semantics |
| WebUI port declaration and proxy status | services/oasn-supply-service/src/main/java/com/oasn/supply/domain/DeveloperWebuiPortsService.java, HttpDeveloperWorkspaceWebchatGatewayClient.java, and services/oasn-webui-gateway/src/main/java/com/oasn/webuigateway/domain/WebuiGatewayService.java | sync_status, proxy_status, current webui_urls, link refresh, and 410/502 proxy behavior |
| Strict WebUI output projection | openagent_developer_wrapper/openclaw/final-reply-adapter/workspace-output.mjs, oasn_agent_wrapper/openclaw/final-reply-adapter/projection.mjs, and services/oasn-webui-gateway/src/main/java/com/oasn/webuigateway/api/DeveloperWorkspaceWebuiProjector.java | Exact lowercase oasn-webui fence, four-field JSON schema, URL safety, port mapping, url-to-uri projection, and fail-closed errors |
| Publish jobs | DeveloperPublishJobService.java, DeveloperPublishJobMapper.java | Job/Publication states and the default Offline state after publishing |
| Public page and client installation | frontend/openagent-official-website/apps/web/app/pages/agents/[agent_id]/index.vue, services/oasn-website-bff-service/src/main/java/com/oasn/website/developer/DeveloperPortalRouteBuilder.java | user_agent_url=/agents/<publicSlug> and the Use in ChatGPT, Claude, and WorkBuddy entry points; a public URL is never guessed from an internal Agent ID |
Page capabilities are also checked against adjacent *.test.ts files, while publish and Workspace behavior is checked against neighboring server-side tests. Tests are regression evidence, but if a fixture conflicts with production code, the observable behavior and service contract on the current production path take precedence.
frontend/openagent-official-website/apps/web/app/pages/developer/**/*.test.tsfrontend/openagent-official-website/apps/web/app/components/developer/*.test.tsservices/oasn-supply-service/src/test/python/test_oasn_sa_dev_cli.py and test_developer_portal_cli.py, plus Developer Workspace, Sandbox, WebUI-port, and Publish Job tests under services/oasn-supply-service/src/test/**openagent_developer_wrapper/openclaw/final-reply-adapter/test/workspace-output.test.mjs, oasn_agent_wrapper/openclaw/final-reply-adapter/test/projection.test.mjs, and WebUI Gateway projection/proxy testsThe screenshots in this handbook were generated from the current website frontend with sanitized local E2E fixtures. They illustrate control placement and state transitions without real accounts, Tokens, SSH keys, or production data. Regenerate them after UI copy or layout changes; an old screenshot cannot prove that a new feature exists.
| Image | Description |
|---|---|
06-agent-card.png | Agent Card fields |
07-pricing.png | Pricing fields |
09-publish-confirm.png | Publish confirmation |
10-publish-progress.png | Publish Job progress |
11-offline-go-online.png | Offline state after publishing and the Go Online action |
portal operations (including publishing), workspace sources, workspace resume, workspace connect, and version webui-ports get/set/refresh. Older statements that these commands do not exist are obsolete.close command, generic file sync command, or raw URL/method passthrough. The website form still has no WebUI-port field; the verified CLI is the public port-management surface.argparse command tree and portal allow-list.assets/content.js, open index.html through file://, click every page, run searches, and inspect images.Every command, state, and button must trace back to the current implementation. If a capability cannot be verified in the public UI or CLI, document it as a limitation instead of inventing a plausible-looking step.