Source reference
The architecture explains the connected services; the UX guide explains their interactions. source-index.json contains every indexed definition, source line and route handler. Anonymous callbacks remain beside their call sites.
Manufacturer workspace
| Module | Named definitions | Responsibility |
|---|---|---|
| harness/verticals/manufacturer/manufacturer_agent_edits.py | 8 | Bounded agent views and server-side edits of the existing complete snapshot. |
| harness/verticals/manufacturer/manufacturer_chatwoot.py | 35 | Company-bound headless Chatwoot CE application API (v4.18.0). |
| harness/verticals/manufacturer/manufacturer_chatwoot_routes.py | 9 | Private configuration, native admission and signature-first Chatwoot ingress. |
| harness/verticals/manufacturer/manufacturer_conversation_routes.py | 19 | Authenticated human service/customer conversations for a manufacturer workspace. |
| harness/verticals/manufacturer/manufacturer_conversations.py | 43 | Company-bound human correspondence and immutable customer request reviews. |
| harness/verticals/manufacturer/manufacturer_customer_portal.py | 38 | Narrow customer review and phone capabilities, separate from workspace access. |
| harness/verticals/manufacturer/manufacturer_email_analysis.py | 9 | Funded, bounded reply analysis and narrow exact-version assent admission. |
| harness/verticals/manufacturer/manufacturer_fulfillment.py | 12 | Human-reported fulfillment, independent of the read-only source's reservations. |
| harness/verticals/manufacturer/manufacturer_host.py | 61 | Manufacturer vertical installation, native admission and company-scoped HTTP routes. |
| harness/verticals/manufacturer/manufacturer_mail.py | 41 | Owned-domain customer email, isolated from workspace membership and agent authority. |
| harness/verticals/manufacturer/manufacturer_mail_routes.py | 26 | Private per-workspace email commissioning, signed ingress and bounded delivery worker. |
| harness/verticals/manufacturer/manufacturer_manual_orders.py | 2 | Admitted staff orders: deterministic validation and the company's Orders command. |
| harness/verticals/manufacturer/manufacturer_order.py | 4 | Read-only order presentation shared by the two independently packaged consumers. |
| harness/verticals/manufacturer/manufacturer_order_files.py | 6 | Read original order attachments through the workspace's exact company binding. |
| harness/verticals/manufacturer/manufacturer_preview.py | 9 | Isolated previews of saved configurator documents using a pinned real widget renderer. |
| harness/verticals/manufacturer/manufacturer_publish.py | 5 | Deliver a saved company version to its commissioned Orders receiver and retain its receipt. |
| harness/verticals/manufacturer/manufacturer_seed.py | 1 | Explicit synthetic QA source for a fresh, isolated manufacturer workspace. |
| harness/verticals/manufacturer/manufacturer_source.py | 11 | Deterministic manufacturer request briefs and company-scoped customer records. |
| harness/verticals/manufacturer/manufacturer_source_files.py | 7 | Company source documents, stored in native ChatFiles and read with native file tools. |
| harness/verticals/manufacturer/manufacturer_source_http.py | 13 | Company-bound read transport to the owning Orders service, without database file access. |
| harness/verticals/manufacturer/manufacturer_source_reader.py | 1 | Bounded subprocess for inert source-document extraction; never imports the app. |
| harness/verticals/manufacturer/manufacturer_store.py | 33 | Owned manufacturer drafts and a read-only adapter for the public CompanyStore schema. |
| harness/verticals/manufacturer/manufacturer_tools.py | 5 | Native manufacturer tools use the same admitted document store as manual editing. |
| harness/verticals/manufacturer/origin_config.py | 1 | The recipient's exact Orders origin; plain HTTP is limited to loopback development. |
| harness/verticals/manufacturer/research_queue.py | 38 | Order evidence in the native agent ledger, consumed by the native scheduler. |
| harness/verticals/manufacturer/research_tools.py | 5 | Admitted company research tools for the Organization and its saved agents. |
| harness/verticals/manufacturer/web/manufacturer-conversations.js | 17 | |
| harness/verticals/manufacturer/web/manufacturer-customer-portal.js | 17 | |
| harness/verticals/manufacturer/web/manufacturer-customers.js | 30 | |
| harness/verticals/manufacturer/web/manufacturer-files.js | 13 | |
| harness/verticals/manufacturer/web/manufacturer-new-order.js | 22 | |
| harness/verticals/manufacturer/web/manufacturer-order-files.js | 8 | |
| harness/verticals/manufacturer/web/manufacturer-order-review.js | 10 | |
| harness/verticals/manufacturer/web/manufacturer-preview.js | 2 | |
| harness/verticals/manufacturer/web/manufacturer-products.js | 32 | |
| harness/verticals/manufacturer/web/manufacturer-shell.js | 15 | |
| harness/verticals/manufacturer/web/manufacturer-tabs.js | 98 |
Orders and public widget
| Module | Named definitions | Responsibility |
|---|---|---|
| app/src/prototypes/orders/agent_host.py | 17 | Private local manufacturer agent host. Optional dependency: requirements-agent.txt. |
| app/src/prototypes/orders/build_preview.py | 7 | Build the orders preview: each company's homepage with its order page on top. |
| app/src/prototypes/orders/commission.py | 2 | Initialize a company's persistent store from a reviewed built catalogue, once. |
| app/src/prototypes/orders/configurator_versions.py | 12 | Authenticated, company-bound immutable configuration publication for the native platform. |
| app/src/prototypes/orders/customer_details.py | 6 | Validate public checkout context retained with the customer's order. |
| app/src/prototypes/orders/customer_mail.py | 37 | Private customer links and a held, threaded transactional email outbox. |
| app/src/prototypes/orders/customer_page.py | 1 | Private capability-backed customer order page; served without customer data. |
| app/src/prototypes/orders/examples/make_constellation.py | 9 | Write the example drawing for laser cutting: the two Dippers in a round steel plate. |
| app/src/prototypes/orders/harness_launcher.py | 7 | Isolated manufacturer tool host using the native harness's actual pack and registry. |
| app/src/prototypes/orders/laser.py | 71 | Read a drawing a customer uploads for laser cutting and say what a workshop needs to know. |
| app/src/prototypes/orders/laser_quote.mjs | 4 | |
| app/src/prototypes/orders/laser_quote.py | 5 | The laser-cutting estimate: one formula, written here and in laser_quote.mjs. |
| app/src/prototypes/orders/mail_relay.py | 8 | Private HTTPS-to-Gmail relay; OAuth remains with the commissioned local operator. |
| app/src/prototypes/orders/mail_transport.py | 12 | Authenticated HTTPS boundary for the private transactional-mail outbox. |
| app/src/prototypes/orders/manufacturer.py | 8 | The executable manufacturer stage contract and its generated readable playbook. |
| app/src/prototypes/orders/manufacturer_host.py | 22 | Native harness composition for one bound manufacturer company database. |
| app/src/prototypes/orders/order_assistant.py | 6 | Bounded Responses requests for customer specification and proposal text. |
| app/src/prototypes/orders/order_files.py | 22 | Private design-file staging and order attachment access. |
| app/src/prototypes/orders/orders_tools.py | 6 | Manufacturer family in the native harness's specs/read/call contract. |
| app/src/prototypes/orders/origin_config.py | 1 | The recipient's exact Orders origin; plain HTTP is limited to loopback development. |
| app/src/prototypes/orders/packs/manufacturer/web/manufacturer_orders.js | 10 | |
| app/src/prototypes/orders/pipeline/ask.py | 22 | Check a company's questionnaire against its catalogue, at build time. |
| app/src/prototypes/orders/pipeline/bundle.py | 7 | Bundle the shared widget with one company's config into a single script. |
| app/src/prototypes/orders/pipeline/catalog.py | 12 | Read a company's published price list into the catalogue the order page ships with. |
| app/src/prototypes/orders/pipeline/check.py | 10 | Open the built preview in a browser and order something, at desktop and at phone width. |
| app/src/prototypes/orders/pipeline/check_business_flow.py | 4 | Prove literal specification quantities and deliberate proposal choices in disposable local state. |
| app/src/prototypes/orders/pipeline/check_capture.py | 5 | Prove questionnaire needs survive a real checkout in a disposable local store. |
| app/src/prototypes/orders/pipeline/check_embed.py | 4 | Copy the public script onto a separate origin; inspect the real chooser without order writes. |
| app/src/prototypes/orders/pipeline/check_pick.py | 5 | Walk a real specification-first widget and its company API at desktop and phone widths. |
| app/src/prototypes/orders/pipeline/clean.py | 6 | Clean a mirrored page for a private preview. |
| app/src/prototypes/orders/pipeline/common.py | 9 | Shared paths and company loading for the orders pipeline. |
| app/src/prototypes/orders/pipeline/freeze.py | 6 | Freeze a client-rendered homepage into static markup. |
| app/src/prototypes/orders/pipeline/homepage.py | 8 | Choose what the preview publishes for one company: its homepage and that page's requisites. |
| app/src/prototypes/orders/pipeline/imagery.py | 6 | Validate anonymous image observations before admitting catalogue material inputs. |
| app/src/prototypes/orders/pipeline/media.py | 4 | Make small renditions of the heavy media a homepage shows. |
| app/src/prototypes/orders/pipeline/mirror.py | 20 | Mirror a company's public website into the cache, politely. |
| app/src/prototypes/orders/pipeline/new_company.py | 1 | Start a company folder from its website address. |
| app/src/prototypes/orders/pipeline/pick.py | 11 | Validate company-owned picker data, source coverage and self-contained drawings. |
| app/src/prototypes/orders/pipeline/posters.py | 2 | Draw one poster per catalogue category, so the menu shows every product before three.js loads. |
| app/src/prototypes/orders/pipeline/prefix.py | 13 | Move a mirrored page under its company prefix. |
| app/src/prototypes/orders/pipeline/questionnaire_conditions.py | 4 | Prepare a condition-only update for an existing versioned configurator configuration. |
| app/src/prototypes/orders/pipeline/studio/main.py | 1 | Company-scoped CLI for immutable plans, stage gates and native transport receipts. |
| app/src/prototypes/orders/pipeline/studio/delivery.py | 4 | Validate reviewed angled product images before installing a private company cache. |
| app/src/prototypes/orders/pipeline/studio/frames.py | 3 | Describe-derived frames and explicit geometry/material composition roles. |
| app/src/prototypes/orders/pipeline/studio/geometry/catalogue.py | 5 | Pure catalogue validation and render planning; safe to import outside Blender. |
| app/src/prototypes/orders/pipeline/studio/geometry/cli.py | 2 | CLI for dry runs and one-family technical-reference renders. |
| app/src/prototypes/orders/pipeline/studio/geometry/scene.py | 52 | Studio renders of metal stock with Cycles (offline path tracing), built parametrically. |
| app/src/prototypes/orders/pipeline/studio/materials.py | 3 | Evidence-backed surface-zone contract shared by all three product views. |
| app/src/prototypes/orders/pipeline/studio/planning.py | 2 | Adapter-independent ownership reconciliation and three-shot coverage planning. |
| app/src/prototypes/orders/pipeline/studio/queue.py | 11 | Two-lane, receipt-first queue; unknown submissions are held, never auto-retried. |
| app/src/prototypes/orders/pipeline/studio/schema.py | 9 | Versioned studio ledger. Company data and provider credentials remain outside Git. |
| app/src/prototypes/orders/pipeline/studio/transport.py | 1 | Provider adapter execution boundary; persist receipt before fetching output bytes. |
| app/src/prototypes/orders/places.py | 23 | Address search for the order page's delivery step, with hard ceilings on what it may cost. |
| app/src/prototypes/orders/platform_orders.py | 1 | Authenticated staff intake into the same authoritative company order store. |
| app/src/prototypes/orders/platform_source.py | 8 | Read-only order presentation shared by the two independently packaged consumers. |
| app/src/prototypes/orders/prepare_native_harness.py | 8 | Prepare one private native manufacturer harness artifact without starting a model turn. |
| app/src/prototypes/orders/propose.py | 8 | Choose catalogue-backed, compatible articles before requesting narrative text. |
| app/src/prototypes/orders/public_catalogue.py | 3 | Select the reviewed sales collection while preserving the full company catalogue. |
| app/src/prototypes/orders/quote.py | 1 | Compute trusted server totals with the browser's shared pricing engine. |
| app/src/prototypes/orders/refresh.py | 12 | Bounded source refresh and deterministic ready-time maintenance for one company. |
| app/src/prototypes/orders/release_catalogue.py | 3 | Apply one reviewed built catalogue while retaining the existing company's order store. |
| app/src/prototypes/orders/reviewed_orders.py | 19 | Atomic operator review and exact customer assent for held order requests. |
| app/src/prototypes/orders/serve.py | 29 | The orders preview's server: the built pages, and the capped address search beside them. |
| app/src/prototypes/orders/spec.py | 20 | Source-backed specification parsing, with bounded private-document extraction. |
| app/src/prototypes/orders/spec_receipts.py | 2 | Server-retained allocation readings bind confirmation to the submitted original. |
| app/src/prototypes/orders/spec_workbook.py | 9 | Bounded XLSX cell extraction and arithmetic for customer allocation matrices. |
| app/src/prototypes/orders/store.py | 50 | Private per-company SQLite record. Current projections and immutable evidence coexist. |
| app/src/prototypes/orders/supply.py | 7 | One deterministic, timezone-aware ready-window engine for tools and HTTP callers. |
| app/src/prototypes/orders/tool_cli.py | 1 | Local operator CLI. Filesystem access to the private DB is the trust boundary. |
| app/src/prototypes/orders/tools/seed_praktiker_demo.py | 2 | Create the commissioned synthetic Praktiker order, once, with a real file attachment. |
| app/src/prototypes/orders/tools.py | 8 | Shared harness/API/CLI tool registry; caller assigns an authenticated role. |
| app/src/prototypes/orders/widget/ask.js | 46 | |
| app/src/prototypes/orders/widget/core.js | 21 | |
| app/src/prototypes/orders/widget/embed.js | 2 | |
| app/src/prototypes/orders/widget/engine3d.js | 27 | |
| app/src/prototypes/orders/widget/geom.js | 1 | |
| app/src/prototypes/orders/widget/laser.js | 34 | |
| app/src/prototypes/orders/widget/pick.js | 75 | |
| app/src/prototypes/orders/widget/pricing.js | 26 | |
| app/src/prototypes/orders/widget/shop.js | 208 |
Shared SDK and runtime
| Module | Named definitions | Responsibility |
|---|---|---|
| harness/deploy/build_preview.py | 9 | Copy tracked Rocoto runtime and shared UI assets into an explicit ignored artifact. |
| harness/deploy/chatwoot/prepare_instance.py | 2 | Generate a private customer instance package. Creates files; starts no services. |
| harness/layout.py | 8 | Source and asset paths for one Rocoto harness process, using only the standard library. |
| harness/mechanics/access.py | 13 | One-use environment codes and 24-hour private browser sessions. |
| harness/mechanics/agent_bridge.py | 65 | Workspace chat bridge with managed OpenAI turns and admitted harness tools. |
| harness/mechanics/agent_catalogue.py | 5 | Ready-made agents of the vertical this process serves (pack.py). |
| harness/mechanics/agent_invocation.py | 1 | One foreground chat can invoke one owned agent run with current host authority. |
| harness/mechanics/agent_kind_policy.py | 4 | Declared class authority follows saved conversations and native descendants. |
| harness/mechanics/agent_wakes.py | 20 | Durable wake requests from authenticated host adapters. |
| harness/mechanics/attachments.py | 2 | Validated private image attachments for every workspace. |
| harness/mechanics/background_agents.py | 47 | Durable, explicitly activated agents with declared workspace inputs. |
| harness/mechanics/builtin_capabilities.py | 6 | Workspace-owned optional communication services, without startup provider effects. |
| harness/mechanics/business_context.py | 17 | Workspace business profiles, authorship and immutable revision history. |
| harness/mechanics/business_maps.py | 19 | Owned, immutable map data published from generated JSON, with no network IO. |
| harness/mechanics/business_scope.py | 7 | Current workspace membership and actor authority shared by every vertical. |
| harness/mechanics/capability_providers.py | 44 | Optional company-owned Viber, email and bounded voice transports. |
| harness/mechanics/capability_spend.py | 7 | Explicit account-bound email/voice allowances in the existing message ledger. |
| harness/mechanics/catalogue_providers.py | 12 | Host-reviewed authentication for original, pinned remote MCP packages. |
| harness/mechanics/chat_files.py | 20 | Private generated documents, bound by the host to a company, owner and chat. |
| harness/mechanics/chat_permissions.py | 20 | Explicit per-person chat ownership and durable pin/archive preferences. |
| harness/mechanics/chat_stream.py | 4 | Bounded live subscriber for a host-owned, persistently recorded native turn. |
| harness/mechanics/company_usage.py | 41 | Immutable company money events, distinct from provider credit admission. |
| harness/mechanics/conversation_tools.py | 6 | Common conversation tools supplied by the workspace host. |
| harness/mechanics/custom_connectors.py | 31 | Owner-scoped connector source packages and encrypted, write-only credentials. |
| harness/mechanics/custom_coordinator.py | 44 | Host lifecycle for fixed custom adapters, observed HTTPS and durable cleanup. |
| harness/mechanics/custom_execution.py | 53 | Host-only custom adapter authority and test receipts; executes no source. |
| harness/mechanics/custom_http.py | 32 | Scoped read-only HTTPS for isolated custom adapters; secrets stay on the host. |
| harness/mechanics/custom_routes.py | 9 | Owner controls over exact proposed targets and host-tested connector versions. |
| harness/mechanics/custom_runtime.py | 9 | Host-commissioned custom runtime, verified against the installed broker. |
| harness/mechanics/custom_setup.py | 4 | Public target proposals; only the authenticated owner's action grants access. |
| harness/mechanics/custom_tool_contracts.py | 4 | Original-source adapter manifests and proposals exposed to the native harness. |
| harness/mechanics/custom_worker.py | 8 | Fixed stdlib entrypoint for the network-isolated custom read adapter profile. |
| harness/mechanics/delegated_jobs.py | 14 | Named, funded read jobs that run in separate OpenAI-managed sessions. |
| harness/mechanics/document_preview_contract.py | 4 | Host-only fixed profile and output claims; never parses Office or PDF data. |
| harness/mechanics/document_preview_readiness.py | 3 | Fresh root-receipt checks for the separately commissioned document renderer. |
| harness/mechanics/document_preview_routes.py | 9 | Authenticated local page-preview routes. Host registration enables no decoder. |
| harness/mechanics/document_preview_worker.py | 8 | Fixed Office/PDF conversion. Execute only in the isolated document profile. |
| harness/mechanics/document_previews.py | 17 | Private derived pages over exact ChatFiles originals; decoding stays in gVisor. |
| harness/mechanics/document_rendering.py | 10 | Bounded document creation from text, using standard document libraries. |
| harness/mechanics/harness_routes.py | 3 | The page asks the harness what it serves: GET /api/harness. |
| harness/mechanics/harness_tools.py | 30 | The harness describes itself: one read tool, get_harness, on every tool surface. |
| harness/mechanics/intake_instructions.py | 2 | Host-selected standing instructions for canonical company conversations. |
| harness/mechanics/local_workspace.py | 3 | Company-only tools for a host operator using the local MCP entrypoint. |
| harness/mechanics/managed_connections.py | 8 | Managed function calls reuse workspace connection approvals and effect receipts. |
| harness/mechanics/managed_mcp.py | 30 | Revocable, session-bound MCP reads for OpenAI's managed agent harness. |
| harness/mechanics/managed_sessions.py | 35 | Durable managed-session identity, submissions and local effect receipts. |
| harness/mechanics/managed_usage.py | 16 | Agents API allowances inside the workspace's existing immutable money ledger. |
| harness/mechanics/mcp_access.py | 11 | Durable host-issued MCP read grants. Tokens are returned once and stored hashed. |
| harness/mechanics/mcp_connections.py | 79 | Host-owned, principal-scoped remote MCP reads and OAuth consent. |
| harness/mechanics/mcp_host.py | 9 | Authenticated browser grants and host-only company resolution for public MCP. |
| harness/mechanics/mcp_server.py | 6 | Local MCP reads from the same selected workspace registry as hosted chat. |
| harness/mechanics/messaging.py | 62 | Scoped phone-channel enrollment, one-attempt delivery and verified reply admission. |
| harness/mechanics/messaging_composition.py | 2 | Compose optional channels into one message outbox and ordinary reply ingress. |
| harness/mechanics/messaging_config.py | 8 | Private host commissioning for one explicit workspace and company. |
| harness/mechanics/messaging_provider.py | 34 | Channel adapters for participant phone chat. Credentials never enter public records. |
| harness/mechanics/messaging_signals.py | 7 | Verified provider messages enter the workspace's existing signal ledger. |
| harness/mechanics/native_custom_broker.py | 32 | Fixed custom-read jobs inside the privileged native broker. |
| harness/mechanics/native_custom_client.py | 14 | Private host client for immutable, credential-free custom adapter jobs. |
| harness/mechanics/organization_chats.py | 11 | Canonical company conversations, without adopting any person's history. |
| harness/mechanics/phone_chat.py | 31 | Participant phone chat of a participant-reach agent: who it reaches and on which channel. |
| harness/mechanics/phone_delivery.py | 41 | Host alert delivery of participant phone chat (CHANNELS.md, "Host alert delivery"). |
| harness/mechanics/phone_routes.py | 12 | The phone block of one Tracking Agent over HTTP (CHANNELS.md, "HTTP interface"). |
| harness/mechanics/phone_spend.py | 9 | The spend bound of participant phone chat: daily caps, Stop and fail-closed reads. |
| harness/mechanics/private_records.py | 1 | Bounded owner-only operator records, shared by funding and provider adapters. |
| harness/mechanics/profile_activity.py | 12 | Read-only activity from owned chats, durable runs and measured API receipts. |
| harness/mechanics/profile_cover_generation.py | 16 | Bounded, company-funded generation of decorative profile artwork. |
| harness/mechanics/profile_cover_host.py | 11 | Narrow host integration for profile artwork and its parent-chat tools. |
| harness/mechanics/profile_cover_routes.py | 2 | Authenticated, uncached profile cover reads; all identities come from the host. |
| harness/mechanics/profile_covers.py | 9 | Private profile artwork published from an owned, immutable chat artifact. |
| harness/mechanics/profile_image_usage.py | 4 | Images API receipts settled into the existing company OpenAI funding pool. |
| harness/mechanics/provider_configuration.py | 4 | Host configuration for a company's OAuth applications and remote MCP policies. |
| harness/mechanics/provider_credentials.py | 14 | Encrypted provider credentials and explicit quiescent legacy migration. |
| harness/mechanics/provider_outputs.py | 9 | Standard provider resources become scoped output metadata, never URL fetches. |
| harness/mechanics/provider_policy.py | 7 | Host-commissioned MCP authority; upstream packages remain unchanged. |
| harness/mechanics/public_mcp.py | 29 | Own-domain, read-only MCP transport over existing company retrieval services. |
| harness/mechanics/public_urls.py | 2 | Strict public HTTPS URL syntax; DNS admission remains at connection time. |
| harness/mechanics/recipe_runs.py | 12 | Durable, conversation-scoped progress through a vertical's job recipe. |
| harness/mechanics/registered_oauth.py | 11 | Private host registrations for reviewed providers, never customer token import. |
| harness/mechanics/scope_host.py | 15 | Common workspace membership, conversation authority and resource-policy admission. |
| harness/mechanics/signal_chain.py | 26 | One workspace signal ledger: bounded chains, daily budgets and effect receipts. |
| harness/mechanics/signal_dispatcher.py | 6 | One dispatcher routes saved signals to an agent job or an ordinary conversation. |
| harness/mechanics/signal_endpoints.py | 16 | Owner-registered signed HTTPS effects in the workspace's signal ledger. |
| harness/mechanics/signal_screening.py | 8 | A single funded Responses classification inside the existing signal chain. |
| harness/mechanics/signal_sources.py | 15 | Reviewed timers and signed webhooks feeding the workspace's one signal ledger. |
| harness/mechanics/skills.py | 23 | Company-scoped instruction skills with immutable revisions and explicit installation. |
| harness/mechanics/source_icons.py | 5 | Bounded public favicon reads with DNS pinning and a small process cache. |
| harness/mechanics/source_media.py | 84 | Fixed, isolated media preparation broker. This module never decodes media. |
| harness/mechanics/stored_media.py | 2 | Signature classification and range playback for bounded, owned output bytes. |
| harness/mechanics/title_stream.py | 3 | Project a streamed display title from the first assistant commentary. |
| harness/mechanics/transfer_budget.py | 17 | Durable demo egress budget and fail-closed HTTP response middleware. |
| harness/mechanics/wake_tools.py | 6 | Conversation-bound tools for signed webhooks and finite self-set wakes. |
| harness/mechanics/web_mount.py | 14 | Mount the real workspace and Orders HTTP service below one deployment path. |
| harness/mechanics/workspace_auth.py | 25 | Hosted WorkOS identity admission into the harness's existing workspace sessions. |
| harness/mechanics/workspace_auth_routes.py | 11 | Small hosted-login routes; the caller retains the native session middleware. |
| harness/mechanics/workspace_billing.py | 35 | Workspace subscriptions and settled credit receipts, separate from agent spending. |
| harness/mechanics/workspace_billing_routes.py | 15 | Shared workspace billing HTTP boundary and private per-workspace commissioning. |
| harness/mechanics/workspace_capabilities.py | 4 | Host-owned connection and execution readiness shared by all verticals. |
| harness/mechanics/workspace_identity.py | 8 | Private, portable company identity shared by stores and provider pools. |
| harness/run.py | 1 | Run a harness command through the active vertical's source layout. |
| harness/runtime/agent_auth.py | 8 | Host-selected native authentication and company-bound metered API leases. |
| harness/runtime/api_smoke.py | 2 | One explicit, tiny commissioning request through the actual company gateway. |
| harness/runtime/hosted_capabilities.py | 17 | Exact installed capabilities packaged for OpenAI's managed environment. |
| harness/runtime/hosted_install.py | 2 | Acquire unchanged public plugin archives for OpenAI-hosted execution. |
| harness/runtime/managed_children.py | 7 | Project provider-attested managed subagents into scoped Rocoto conversations. |
| harness/runtime/managed_codex.py | 47 | Agents API v1 transport, verified against official documentation on 2026-10-11. |
| harness/runtime/managed_diagnostics.py | 2 | Bounded operator diagnostics beside state, separate from conversation history. |
| harness/runtime/managed_files.py | 6 | Retain stock hosted artifacts in the owning conversation's existing Files store. |
| harness/runtime/managed_policy.py | 15 | Workspace funding and revocable tool authority around OpenAI-managed execution. |
| harness/runtime/managed_runtime.py | 31 | Funded managed turns, session recovery and controls for the shared harness. |
| harness/runtime/managed_spend.py | 7 | Opt-in token estimates and a persisted wall deadline for managed execution. |
| harness/runtime/managed_turn.py | 10 | Managed Agents protocol projected through Rocoto's admitted workspace tools. |
| harness/runtime/native_approvals.py | 40 | Host-bound native MCP approval intents; this module performs no provider I/O. |
| harness/runtime/native_events.py | 10 | Project public Codex items; authentication and thread admission belong to the host. |
| harness/runtime/native_executor.py | 70 | Host-owned native Codex worker broker and its narrow Unix-socket client. |
| harness/runtime/native_install_broker.py | 28 | Fixed offline installer operations inside the existing privileged broker. |
| harness/runtime/native_install_client.py | 12 | Scoped native package materializer using the fixed privileged installer. |
| harness/runtime/native_install_readiness.py | 2 | Fresh, allocation-free native installer readiness for authenticated hosts. |
| harness/runtime/native_install_source.py | 5 | Pinned public source acquisition for the offline native installer. |
| harness/runtime/native_install_worker.py | 9 | Fixed offline native CLI materializer. Run only inside its quota sandbox. |
| harness/runtime/native_mcp.py | 25 | Inherited native Codex tools through the standard MCP Streamable HTTP protocol. |
| harness/runtime/native_package_mount.py | 11 | Root-side validation of bounded original plugin trees; no account credentials. |
| harness/runtime/native_packages.py | 39 | Original Codex packages, private selections, and verified worker-mount inputs. |
| harness/runtime/native_plugins.py | 14 | Host-only native Codex plugin management, isolated per company and person. |
| harness/runtime/native_provider_relay.py | 25 | Original provider tools under host authority and a consenting owner. |
| harness/runtime/native_provider_write.py | 18 | One approved native MCP mutation, fixed credentials and durable outcome. |
| harness/runtime/native_questions.py | 21 | Durable ordinary Codex questions, scoped to a host-admitted worker generation. |
| harness/runtime/native_skills.py | 12 | Pinned original skill references resolved into actual native skill inputs. |
| harness/runtime/openai_gateway.py | 25 | Company-bound, loopback Responses transport with prepaid request admission. |
| harness/runtime/plugin_catalogue.py | 19 | Pinned upstream plugin reference data, independent from account connections. |
| harness/runtime/plugin_routes.py | 26 | Private, host-commissioned native package selection and durable removal. |
| harness/runtime/provider_tool_policy.py | 1 | Host-reviewed approval hints for original provider tool schemas. |
| harness/sdk/agent_inputs.py | 25 | Input provider contract for the shared saved-agent store and scheduler. |
| harness/sdk/capability_contract.py | 1 | The optional communication capabilities a vertical selects from the harness. |
| harness/sdk/display_presentation.py | 33 | Shared display kit: bounded presentations, output bindings and safe page projections. |
| harness/sdk/display_runs.py | 27 | Durable display cadence, leases and run history shared by every vertical. |
| harness/sdk/display_scripts.py | 24 | Bounded script execution supplied by Rocoto's SDK. |
| harness/sdk/host.py | 35 | Composition and admission contracts for one selected vertical on the harness. |
| harness/sdk/job_recipes.py | 6 | Vertical job instructions and bounded role declarations for managed delegation. |
| harness/sdk/layers.py | 9 | Rocoto source ownership and the remaining imports into the active vertical. |
| harness/sdk/pack.py | 87 | The vertical this harness process serves: one validated manifest and the files it names. |
| harness/sdk/tool_families.py | 17 | Validated workspace tools and host-owned authority shared by every transport. |
| harness/server.py | 148 | One workspace host for the Rocoto harness and its selected vertical. |
| harness/web/app.js | 396 | |
| harness/web/business-map.js | 24 | |
| harness/web/business-summary.js | 5 | |
| harness/web/display-canvas.js | 104 | |
| harness/web/display-charts.js | 67 | |
| harness/web/harness-shell.js | 6 | |
| harness/web/messaging-settings.js | 62 | |
| harness/web/plugin-settings.js | 4 | |
| harness/web/profile-settings.js | 9 | |
| harness/web/question-box.js | 12 | |
| harness/web/rich-content.js | 19 | |
| harness/web/rich-diagram.js | 1 | |
| harness/web/settings-shell.js | 3 | |
| harness/web/tool-trail.js | 15 | |
| harness/web/wake-controls.js | 5 | |
| harness/web/workspace-account.js | 13 | |
| harness/web/workspace-extensions.js | 2 | |
| harness/web/workspace-home.js | 1 | |
| harness/web/workspace-settings.js | 12 | |
| harness/web/workspace-tabs.js | 7 |
Recipient tools and journal
| Module | Named definitions | Responsibility |
|---|---|---|
| backend/realtime/configuration.py | 25 | Typed Rocoto Real-time configuration; activation requires actual source evidence. |
| backend/realtime/continuity.py | 30 | Host-receipted continuity of stock tracker state across camera file rotations. |
| backend/realtime/contracts.py | 18 | Small, versioned contracts shared by realtime workers and the host. |
| backend/realtime/identity.py | 9 | Explicit binding of a verified supplier identity to an imported operator. |
| backend/realtime/import_stream.py | 16 | Host-reviewed migration of admitted stream history through the maintained SDK. |
| backend/realtime/import_tracker_run.py | 38 | Host import of retained complete tracker runs as historical tracker reports. |
| backend/realtime/locations.py | 49 | A retail location's trackers, records, outputs, schedule and runs behind the company wall. |
| backend/realtime/media.py | 2 | Resolve host-published media against current maintained camera authority. |
| backend/realtime/module_store.py | 27 | Durable source-scoped snapshots for maintained core processing modules. |
| backend/realtime/modules.py | 11 | Maintained retail projections over admitted, explicitly bound observations. |
| backend/realtime/provision.py | 6 | Explicit host migration of saved video identity into the existing tenant registry. |
| backend/realtime/provision_host.py | 14 | Host command: import one saved video company identity through the owner migration role. |
| backend/realtime/read_contract.py | 2 | Bounded public projection wire shared by authenticated Rocoto hosts. |
| backend/realtime/replay.py | 18 | Pure, bounded replay compiler for previously admitted observation records. |
| backend/realtime/replay_store.py | 17 | Durable observation replay through the ordinary scoped admission service. |
| backend/realtime/replay_worker.py | 5 | Bounded replay admission plus core projection orchestration. |
| backend/realtime/routes.py | 7 | Maintained, tenant-authenticated reads for realtime projections. |
| backend/realtime/store.py | 20 | Tenant-scoped admission and durable work. The host authenticates every context. |
| backend/realtime/subjects.py | 22 | Source-backed, non-biometric identities and exact event-subject associations. |
| deploy/development/contract.py | 4 | Shared validation for development-preview target manifests. |
| tools/bind.py | 1 | Bind one recipient workspace to its own Orders service. |
| tools/check_browser.py | 2 | Check the owned local first result with Playwright, without calling external services. |
| tools/configure.py | 1 | Save recipient keys through hidden terminal input. |
| tools/dev.py | 5 | Run the actual order service and native workspace with an isolated authored sample. |
| tools/offline.py | 6 | Offline first-result boundary; recipient-connected service deployment is separate. |
| tools/private.py | 3 | Recipient-owned private settings; credential values stay outside source and stdout. |
| tools/sample_build.py | 1 | Create an owned sample manufacturer using the real Orders store and widget bundle. |
| tools/serve.py | 1 | Serve one recipient-owned process with explicit state and private credentials. |
HTTP handlers
These are literal decorated FastAPI paths. The public Orders server also uses explicit dispatch in serve.py; its handler methods are indexed above. Authentication and capability checks remain in the implementation.
| Method | Path | Handler |
|---|---|---|
| GET | /manufacturer/orders |
register_routes.orders_page |
| GET | /manufacturer/orders.css |
register_routes.orders_style |
| GET | /manufacturer/orders.js |
register_routes.orders_script |
| GET | /api/manufacturer/orders |
register_routes.orders_api |
| GET | /api/manufacturer/orders/{order_id}/files/{file_id} |
register_routes.order_file |
| GET | /sources/{source_id}/assets/{asset_id}/snapshot |
source_snapshot |
| GET | /sources/{source_id}/epochs/{epoch_id}/snapshot |
epoch_snapshot |
| GET | /replays/{run_id} |
replay_status |
| GET | /api/connections/custom/{connector_id}/execution |
register_custom_routes.execution |
| POST | /api/connections/custom/{connector_id}/execution/target |
register_custom_routes.target |
| POST | /api/connections/custom/{connector_id}/execution/activate |
register_custom_routes.activate |
| POST | /api/connections/custom/{connector_id}/execution/test |
register_custom_routes.test |
| POST | /api/connections/custom/{connector_id}/execution/revoke |
register_custom_routes.revoke |
| POST | /api/connections/custom/{connector_id}/execution/stop |
register_custom_routes.stop |
| GET | /api/files/{file_id}/page-preview |
register_document_preview_routes.metadata |
| POST | /api/files/{file_id}/preview |
register_document_preview_routes.prepare |
| GET | /api/files/{file_id}/pages/{page} |
register_document_preview_routes.page |
| GET | /api/harness |
register_harness_routes.harness |
| GET | /api/mcp/connections |
MCPHost.register_routes.connections |
| POST | /api/mcp/connections |
MCPHost.register_routes.create_connection |
| DELETE | /api/mcp/connections/{key} |
MCPHost.register_routes.revoke_connection |
| GET | /api/agents/{agent_id}/phone |
register_phone_routes.phone_block |
| POST | /api/agents/{agent_id}/phone/participants |
register_phone_routes.phone_add |
| POST | /api/agents/{agent_id}/phone/participants/{member_id}/remove |
register_phone_routes.phone_remove |
| POST | /api/agents/{agent_id}/phone/participants/{member_id} |
register_phone_routes.phone_participant |
| POST | /api/agents/{agent_id}/phone/delivery |
register_phone_routes.phone_delivery_state |
| POST | /api/agents/{agent_id}/phone/contact-request |
register_phone_routes.phone_contact_request |
| GET | /api/profile-covers/{cover_id} |
register_profile_cover_routes.cover |
| GET | /api/auth/config |
register_workspace_auth.auth_config |
| GET | /auth/login |
register_workspace_auth.login |
| GET | /auth/callback |
register_workspace_auth.callback |
| GET | /api/workspaces |
register_workspace_auth.workspaces |
| GET | /api/workspaces/access |
register_workspace_auth.workspace_access |
| POST | /api/workspaces/select |
register_workspace_auth.select |
| POST | /api/workspaces/invitations |
register_workspace_auth.invite |
| GET | /api/billing/status |
register_workspace_billing.status |
| POST | /api/billing/checkout |
register_workspace_billing.checkout |
| POST | /api/billing/credits |
register_workspace_billing.credits |
| POST | /api/billing/portal |
register_workspace_billing.portal |
| POST | /hooks/stripe/{environment} |
register_workspace_billing.webhook |
| GET | /api/plugins/installed |
register_plugin_routes.installed |
| POST | /api/plugins/{plugin_id}/install |
register_plugin_routes.install |
| DELETE | /api/plugins/{plugin_id}/installation |
register_plugin_routes.remove |
| GET | /api/organization/chats |
create_app.organization_chats |
| POST | /api/organization/chats |
create_app.organization_chat |
| GET | /api/messaging |
create_app.messaging_status |
| POST | /api/messaging/verification |
create_app.messaging_verification |
| POST | /api/messaging/verification/confirm |
create_app.messaging_confirm |
| POST | /api/messaging/hello |
create_app.messaging_hello |
| POST | /hooks/in/{environment}/{hook_id} |
create_app.incoming_hook |
| POST | /api/hooks/{environment}/{hook_id} |
create_app.incoming_hook |
| GET | /api/wakes |
create_app.wake_sources |
| POST | /api/wakes/endpoints/{endpoint_id}/secret |
create_app.endpoint_secret |
| POST | /api/wakes/hooks/{hook_id}/secret |
create_app.reveal_wake_secret |
| POST | /hooks/{channel}/{environment} |
create_app.messaging_webhook |
| GET | /hooks/{channel}/{environment} |
create_app.messaging_webhook |
| POST | /api/messaging/webhook/{environment}/{channel} |
create_app.messaging_webhook |
| GET | /api/plugins/catalogue |
create_app.plugins_catalogue |
| GET | /api/plugins/{plugin_id} |
create_app.plugin_details |
| GET | /api/connections |
create_app.connections |
| GET | /api/connections/custom |
create_app.custom_connections |
| POST | /api/connections/custom |
create_app.create_custom_connection |
| GET | /api/connections/custom/{connector_id} |
create_app.custom_connection |
| GET | /api/connections/custom/{connector_id}/package |
create_app.custom_connection_package |
| POST | /api/connections/custom/{connector_id}/secrets |
create_app.custom_connection_secret |
| DELETE | /api/connections/custom/{connector_id}/secrets/{name} |
create_app.custom_connection_secret_remove |
| POST | /api/connections/{provider}/connect |
create_app.connect_provider |
| GET | /api/connections/flows/{flow_id} |
create_app.connection_flow |
| DELETE | /api/connections/{provider} |
create_app.disconnect_provider |
| GET | /api/connections/oauth/callback |
create_app.oauth_landing |
| GET | /oauth-callback.js |
create_app.oauth_script |
| POST | /api/connections/oauth/callback |
create_app.oauth_callback |
| GET | / |
create_app.home |
| GET | /app.js |
create_app.script |
| GET | /question-box.js |
create_app.question_box_script |
| GET | /question-box.css |
create_app.question_box_style |
| GET | /brand/rocoto-mark.svg |
create_app.logo |
| GET | /fonts/fraunces/fraunces-latin-500-700.woff2 |
create_app.wordmark_font |
| GET | /connection-brands/{filename} |
create_app.connection_brand |
| GET | /vendor/{filename:path} |
create_app.vendor |
| GET | /assets/chat-dreamscape.png |
create_app.workspace_artwork |
| GET | /assets/search-dreamscape.png |
create_app.workspace_artwork |
| GET | /assets/monet-water-lilies.jpg |
create_app.empty_state_artwork |
| GET | /style.css |
create_app.style |
| GET | /business-summary.js |
create_app.interface_component |
| GET | /business-summary.css |
create_app.interface_component |
| GET | /settings-shell.js |
create_app.interface_component |
| GET | /settings-shell.css |
create_app.interface_component |
| GET | /harness-shell.js |
create_app.interface_component |
| GET | /workspace-tabs.js |
create_app.interface_component |
| GET | /workspace-extensions.js |
create_app.interface_component |
| GET | /wake-controls.js |
create_app.interface_component |
| GET | /wake-controls.css |
create_app.interface_component |
| GET | /workspace-tabs.css |
create_app.interface_component |
| GET | /workspace-home.js |
create_app.interface_component |
| GET | /workspace-home.css |
create_app.interface_component |
| GET | /display-charts.js |
create_app.interface_component |
| GET | /display-charts.css |
create_app.interface_component |
| GET | /display-canvas.js |
create_app.interface_component |
| GET | /display-canvas.css |
create_app.interface_component |
| GET | /tool-trail.js |
create_app.interface_component |
| GET | /tool-trail.css |
create_app.interface_component |
| GET | /rich-content.js |
create_app.interface_component |
| GET | /rich-content.css |
create_app.interface_component |
| GET | /rich-diagram.js |
create_app.interface_component |
| GET | /profile-settings.js |
create_app.interface_component |
| GET | /profile-settings.css |
create_app.interface_component |
| GET | /plugin-settings.js |
create_app.interface_component |
| GET | /plugin-settings.css |
create_app.interface_component |
| GET | /messaging-settings.js |
create_app.interface_component |
| GET | /messaging-settings.css |
create_app.interface_component |
| GET | /workspace-settings.js |
create_app.interface_component |
| GET | /workspace-settings.css |
create_app.interface_component |
| GET | /business-map.js |
create_app.interface_component |
| GET | /business-map.css |
create_app.interface_component |
| GET | /rich-diagram.html |
create_app.diagram_component |
| GET | /static/vendor/{filename:path} |
create_app.shared_vendor |
| GET | /api/source-icon |
create_app.source_icon |
| GET | /theme.css |
create_app.theme |
| GET | /healthz |
create_app.health |
| GET | /api/session |
create_app.session_info |
| POST | /api/session |
create_app.login |
| POST | /api/session/demo |
create_app.demo_session |
| DELETE | /api/session |
create_app.logout |
| POST | /api/session/company |
create_app.select_environment |
| POST | /api/environment |
create_app.select_environment |
| GET | /api/observers |
create_app.observers |
| POST | /api/observer |
create_app.observe |
| DELETE | /api/observer |
create_app.end_observation |
| GET | /api/status |
create_app.status |
| GET | /api/business |
create_app.business |
| GET | /api/business/map |
create_app.business_map |
| POST | /api/business/profile |
create_app.business_profile |
| POST | /api/business/onboarding |
create_app.onboarding |
| GET | /api/profile/activity |
create_app.profile_activity |
| GET | /api/usage |
create_app.usage |
| POST | /api/usage/settings |
create_app.usage_settings |
| GET | /api/skills/catalogue |
create_app.skills_catalogue |
| GET | /api/skills |
create_app.skills_installed |
| POST | /api/skills/install |
create_app.skills_install |
| GET | /api/ready-agents |
create_app.agent_catalogue |
| GET | /api/agents/catalogue |
create_app.agent_catalogue |
| GET | /api/workspace/capabilities |
create_app.workspace_capabilities |
| GET | /api/agents |
create_app.agents_list |
| POST | /api/agents |
create_app.agents_create |
| GET | /api/agents/{agent_id} |
create_app.agent_details |
| POST | /api/agents/{agent_id}/update |
create_app.agent_update |
| POST | /api/agents/{agent_id}/activate |
create_app.agent_activate |
| POST | /api/agents/{agent_id}/run |
create_app.agent_run |
| POST | /api/agents/{agent_id}/pause |
create_app.agent_pause |
| GET | /api/agents/{agent_id}/runs/{run_id}/report |
create_app.agent_report |
| POST | /api/chat |
create_app.chat |
| GET | /api/chats |
create_app.chats |
| POST | /api/chats/{chat_id}/metadata |
create_app.chat_metadata |
| GET | /api/chats/{chat_id} |
create_app.child_chat |
| POST | /api/chats/{chat_id}/approvals/{request_id} |
create_app.answer_native_approval |
| POST | /api/chats/{chat_id}/questions/{request_id} |
create_app.answer_native_question |
| POST | /api/chats/{chat_id}/credential-requests/{request_id} |
create_app.answer_credential_request |
| POST | /api/chat/{chat_id}/stop |
create_app.stop_chat |
| POST | /api/chat/{chat_id}/steer |
create_app.steer_chat |
| POST | /api/attachments |
create_app.attachment |
| GET | /attachments/{attachment_id}.png |
create_app.attachment_image |
| GET | /api/files |
create_app.list_files |
| GET | /api/files/{file_id} |
create_app.get_file |
| GET | /api/files/{file_id}/content |
create_app.file_content |
| PATCH | /api/files/{file_id} |
create_app.rename_file |
| POST | /api/files/{file_id}/opened |
create_app.mark_file_opened |
| GET | /api/files/{file_id}/download |
create_app.download_file |
| GET | /api/files/{file_id}/preview |
create_app.preview_file |
| GET | /api/manufacturer/communication/status |
register_chatwoot.status |
| GET | /api/manufacturer/orders/{order_id}/review |
register_conversations.get_review |
| POST | /api/manufacturer/orders/{order_id}/review |
register_conversations.prepare_review |
| GET | /api/manufacturer/service-conversation |
register_conversations.get_service |
| POST | /api/manufacturer/service-conversation/messages |
register_conversations.send_service |
| GET | /api/manufacturer/conversations/{customer_id} |
register_conversations.get_customer |
| POST | /api/manufacturer/conversations/{customer_id}/messages |
register_conversations.send_customer |
| GET | /api/manufacturer/service-conversation/archive |
register_conversations.service_archive |
| GET | /api/manufacturer/conversations/{customer_id}/archive |
register_conversations.customer_archive |
| POST | /api/manufacturer/customers/{customer_id}/review-links |
register_customer_portal.mint_review |
| POST | /api/manufacturer/customers/{customer_id}/phone-links |
register_customer_portal.mint_phone |
| POST | /api/manufacturer/customer-links/{capability_id}/revoke |
register_customer_portal.revoke_link |
| POST | /api/manufacturer/customer-portal/{environment}/{action} |
register_customer_portal.operation |
| GET | /api/manufacturer/orders/{order_id}/fulfillment |
register_fulfillment.get_progress |
| POST | /api/manufacturer/orders/{order_id}/fulfillment |
register_fulfillment.set_progress |
| POST | /api/manufacturer/files |
register_routes.upload_source |
| GET | /api/manufacturer/overview |
register_routes.overview |
| GET | /api/manufacturer/orders |
register_routes.overview |
| POST | /api/manufacturer/orders |
register_routes.create_order |
| GET | /api/manufacturer/orders/{order_id} |
register_routes.order |
| GET | /api/manufacturer/orders/{order_id}/files |
register_routes.order_files |
| GET | /api/manufacturer/orders/{order_id}/files/{file_id} |
register_routes.order_file |
| GET | /api/manufacturer/orders/{order_id}/files/{file_id}/page/{page} |
register_routes.order_file_page |
| GET | /api/manufacturer/customers |
register_routes.customers |
| GET | /api/manufacturer/customers/{customer_id} |
register_routes.customer |
| GET | /api/manufacturer/configurator |
register_routes.configurator |
| POST | /api/manufacturer/configurator |
register_routes.save_configurator |
| GET | /api/manufacturer/configurator/versions |
register_routes.versions |
| GET | /api/manufacturer/configurator/versions/{version_id} |
register_routes.version |
| POST | /api/manufacturer/configurator/versions/{version_id}/restore |
register_routes.restore_version |
| POST | /api/manufacturer/configurator/restore |
register_routes.restore |
| GET | /api/manufacturer/preview/{version_id} |
register_routes.preview |
| GET | /api/manufacturer/team |
register_routes.team |
| POST | /api/manufacturer/team |
register_routes.update_team |
| GET | /api/manufacturer/email/status |
register_mail.status |
| GET | /api/manufacturer/email/review |
register_mail.reviews |
| POST | /api/manufacturer/email/drain |
register_mail.drain |