This file mirrors the root AI entrypoint for tools that prefer CLAUDE.md.
README.mddocs/index.htmlconfigs/repo_positioning.jsonconfigs/docs_nav_registry.jsonAGENTS.md
- keep diffs small and auditable
- run real verification commands before claiming success
- keep docs and code synchronized
- keep runtime output out of tracked source
- anchor root AI entrypoints to public routes, config manifests, and receipts
instead of archived internal markdown under
docs/ - keep public test/probe fixtures free of maintainer-local absolute paths and
raw token-shaped literals; prefer generic workspace roots plus synthetic
string assembly, keep placeholder security URIs pinned to the exact
example.comcontract, preserve.jsonltemp-report hints in portable scan scratch names, fail closed on tracked direct email/phone markers plus forbidden runtime files, fail closed on open GitHub secret/code scanning alerts in local hooks and pre-push while GitHub-hostedtrusted_pr,untrusted_pr, and hosted-firstpush_mainQuick Feedback / hosted policy lanes stay advisory under integration-token and first-analysis timing limits, keep workflow static security (actionlint+zizmor), canonical secret scanning, and Trivy dependency scanning wired into repo-owned entrypoints, and sync the root/docs entrypoints when that contract shifts - host-process safety is fail-closed: worker/test/orchestrator paths must not
use
killall,pkill, process-group kills, negative/zero PID signals, or AppleScriptSystem Events; terminate only recorded child handles and stop with manual cleanup instructions when stale repo-owned runtime state already exists - repo-owned
scripts/*.pyentrypoints must keep shared helper imports usable when they are executed directly or throughbash scripts/run_governance_py.sh; do not assume the repo root is already present onPYTHONPATH - host-compatible pre-commit hooks that execute repo-owned
scripts/*.pyentrypoints must use the same wrapper path (or an equivalentpython3 -Bcontract) so clean hook runs do not leave repo-local__pycache__residue - keep public CI hosted-first: fork PRs stay low-privilege on GitHub-hosted lanes, and sensitive verification stays on protected manual dispatch lanes
- GitHub repo-first pushes may hand CI an all-zero base SHA; repo-owned
doc-drift/doc-sync gates must skip
ci-diffcomparison in that case instead of failing before the repository has a real baseline commit - treat
configs/github_control_plane_policy.jsonas the machine SSOT for required check names, and point human-facing summaries back to the rootREADME.mdinstead of duplicating the list here GitHub Control Planeworkflow should prefer the repo secretGH_ADMIN_TOKENwhen it needs to prove admin-only repository APIs, because the default workflow token cannot read Actions permissions, branch protection, or vulnerability-alert endpoints on the live control plane- protected upstream/live-smoke receipts are route-exempt on
trusted_pr,untrusted_pr, and hosted-firstpush_main; those routes must not fail solely because manual closeout/provider credentials are absent - hosted
push_maingovernance closeout also treatsupstream_report,upstream_same_run_report, andcurrent_run_consistencyas advisory when the manifest already marks upstream/live smoke route-exempt - when dashboard dependency lock refreshes land, keep the app-local dashboard lockfile aligned with the root workspace lock updates and document the change
- the current security-only dashboard lock refresh keeps
lodash-es@4.18.1pinned through the repo-owned override layer solighthouse@13.0.3does not drift back onto the vulnerablelodash-es@4.17.23transitive path, without expanding this maintenance slice into a broader Lighthouse upgrade - when dashboard or desktop lock maintenance changes the shipped dependency contract, update the root docs entrypoints in the same patch so doc-sync and closeout gates describe the live state
- when one closeout patch touches both dashboard and desktop packaging, mirror that decision in the root docs entrypoints instead of relying on module docs alone
- when the live public GitHub surface moves or changes repository URLs, sync
the root docs/security/storefront entrypoints in the same patch so
repo-side links do not drift behind the published
OpenVibeCodingsurface - when security reporting wording changes, keep
SECURITY.md,SUPPORT.md, issue template contact links, and the root README aligned in the same patch - when security-scan or fixture-hygiene changes touch tracked test literals or
scan wrappers, keep this file,
AGENTS.md, and the root/docs entrypoints aligned in the same patch; current examples include generic workspace roots instead of maintainer-local absolute paths, runtime-built token-like fixtures, and BSD-safe temp-file naming inscripts/security_scan.sh - when dashboard/operator wording or intake/runtime contracts change, sync the root AI/docs entrypoints in the same patch so doc-sync gates keep following the live English-first dashboard surface and the current intake/probe rules
- when runtime-provider compatibility changes the orchestrator client contract,
sync the root AI/docs entrypoints in the same patch; current examples include
the Switchyard runtime-first
/v1/runtime/invokeadapter, the forcedchat_completionsmode on chat-only intake/operator paths, and the fail-closed rule that keeps MCP tool execution on tool-capable providers; Quick Feedback-safe helper extraction, dead-code-cleanprovider_resolutioncompatibility exports, and env-governance allowlist updates for read-only runtime-capability summaries follow the same rule - when role-contract / prompt-ref / handoff-summary semantics change the
orchestrator contract or preview surfaces, sync the root AI/docs entrypoints
in the same patch; current examples include resolved
role_contract, intakerole_contract_summary, summary/risk-only handoff, and the governance-backed metadata inpolicies/agent_registry.jsonplusconfigs/env_direct_read_allowlist.json - when Prompt 4-style binding/read-surface work extends those role-contract
surfaces, keep the root AI/docs entrypoints aligned in the same patch;
current examples include contract-derived
role_binding_summaryin PM-facingrun_intake(...)responses plus the same summary persisted into run manifests, alongside registry-backed SEARCHER/RESEARCHERmcp_bundle_refhardening inpolicies/agent_registry.json - when CI maintenance changes the Python dependency audit contract or the
tracked runtime report namespaces, sync the root AI/docs entrypoints in the
same patch; current examples include
.runtime-cache/test_output/ci/andconfigs/pip_audit_ignored_advisories.json, plus the dashboard and desktop install-time ENOSPC recovery knobs plus the Docker daemon precheck retry knobs registered inconfigs/env.registry.json, and the bounded transient npm registry socket-timeout retries insidescripts/install_dashboard_deps.shplusscripts/install_desktop_deps.sh; current CI credential/evidence examples also include the upstream receipt refresh fallback toscripts/verify_upstream_slices.py --mode smokeand the strict live-provider rule that resolves process env first and~/.codex/config.tomlsecond while keeping dotenv and shell-export fallbacks disabled on mainline; staged dashboard UI-audit workspaces must also keep package-local frontend sources inside the temporary workspace root instead of relying on out-of-root symlinks that Turbopack rejects, and repeated pnpmERR_PNPM_ENOENTrecovery should escalate to workspace-local store recovery instead of repeating the same failing fresh-store copy path - when retention and space-governance contracts change, sync the root AI/docs
entrypoints in the same patch; current examples include retention
log_lane_summary+space_bridge, serial-only heavy cleanup ordering, cleanup inventory consistency checks, and the rule that~/.cache/openvibecodingis the repo-external strong-related root while shared ecosystem layers stay observe-only; current Docker runtime lane changes must keep cleanup scoped to OpenVibeCoding-owned images/containers/volumes while workstation-global Docker/cache totals stay audit-only; current machine-temp examples also include~/.cache/openvibecoding/tmp/docker-ci/runner-temp-*,~/.cache/openvibecoding/tmp/clean-room-machine-cache.*, and~/.cache/openvibecoding/tmp/clean-room-preserve.*, which stay repo-external-related under wave3 instead of defaulting to DarwinTMPDIR; current closeout slices also includemachine_cache_summary+machine_cache_auto_prunein the retention/space-governance bridge, the structured Docker runtime receipt at.runtime-cache/openvibecoding/reports/space_governance/docker_runtime.json, repo-owned buildx local cache under~/.cache/openvibecoding/docker-buildx-cache/, plus the repo-owned singleton Chrome root under~/.cache/openvibecoding/browser/chrome-user-data/thatallow_profilenow attaches to over the fixed CDP endpoint instead of reusing the default Chrome root; CI / docker / clean-room lanes still fail closed back toephemeral - when workflow-case / proof-pack / compare / task-pack / queue-scheduling
contracts change, sync the root AI/docs entrypoints in the same patch; the
current examples are
.runtime-cache/openvibecoding/workflow-cases/,proof_pack.json, dedicated run-compare surfaces, desktop Flight Plan preview, and timezone-safe queue scheduling inputs - when Version B closeout work changes the public front door, shared locale
substrate, read-only MCP exposure, or operator-copilot surfaces, sync
README.md,docs/index.html,configs/docs_nav_registry.json,apps/orchestrator/README.md, and the root AI entrypoints in the same patch so doc-drift and doc-sync gates keep following the live Command Tower / Workflow Cases / Proof & Replay contract - when ecosystem-binding, builder-entrypoint, or distribution-facing surfaces
change, sync the root AI/docs entrypoints in the same patch; current examples
include
configs/docs_nav_registry.json, the package-facingfrontend-api-client/frontend-sharedREADMEs, and the dashboard home/docs landing sections that explain Codex / Claude Code / read-only MCP plus the first-run -> proof -> share loop - when a follow-up builder/adoption slice adds a legal contract-package guide
or surfaces integrations/skills adoption more directly on the dashboard home,
keep this file,
AGENTS.md, and the root/docs entrypoints aligned in the same patch; current examples includepackages/frontend-api-contract/README.md, the dashboard-home integrations section inapps/dashboard/components/DashboardHomeStorySections.tsx, and the docs-base resolver now honoring/integrations/and/skills/ - when a later ecosystem-adoption slice adds copy-paste starter kits or
ecosystem-native example configs, keep this file,
AGENTS.md, and the root/docs entrypoints aligned in the same patch; current examples includedocs/agent-starters/index.html,examples/coding-agents/README.md, the shared read-only MCP example underexamples/coding-agents/mcp/, and the local plugin-bundle manifests underexamples/coding-agents/plugin-bundles/that stay starter-only rather than official marketplace artifacts - when a later Phase 2 wave adds dedicated public sub-entrypoints (for example
/ecosystem/,/builders/,/use-cases/,/compatibility/) or moves additional dashboard home hero/ecosystem/AI/builder copy into the shared locale substrate, sync the root AI/docs entrypoints in the same patch so doc-sync gates can trace the new discoverability surfaces without guessing - when a follow-up Phase 2 wave adds new public discoverability hubs such as
/ai-surfaces/or makes the dashboard-home locale toggle drive server-rendered copy through cookie-backed preference sync, update the root AI/docs entrypoints and release-facing docs in the same patch so doc-sync gates can follow both the public wording and the locale-contract change; current examples includedocs/ai-surfaces/index.html, the extractedapps/dashboard/components/DashboardHomeStorySections.tsxnarrative layer, and the AI Work Command Tower wording now shared by the dashboard metadata and the public Pages landing copy - when that wave also moves the dashboard-home story into a dedicated
shared-copy component, keep this file,
AGENTS.md, andCHANGELOG.mdaligned in the same patch so quick-feedback gates can trace the locale-aware rendering path instead of inferring it from page-local literals - keep the root wording aligned when the dashboard home mixes cookie-backed locale SSR with client-side locale refresh, because that split is easy to miss when only the page diff is inspected
- the current concrete examples are
docs/ai-surfaces/index.html,apps/dashboard/components/DashboardHomeStorySections.tsx,packages/frontend-shared/uiLocale.ts, and dashboard metadata that now says "AI Work Command Tower for Codex, Claude Code, and MCP" - when the next Phase 2 wave hardens desktop
Run Detail/Overviewoperator wording through the shared locale and shared status-presentation substrate, keep this file,AGENTS.md, and the desktop/module docs aligned in the same patch; current examples includeapps/desktop/README.md,packages/frontend-shared/uiCopy.ts, and locale-aware desktop tests forRunDetailPage/OverviewPagepackages/frontend-shared/uiLocale.ts, and dashboard metadata that now says "AI Work Command Tower for Codex, Claude Code, and MCP" - when a later Phase 2 wave hardens desktop
Run Detail/Overviewoperator-surface locale coverage or moves more desktop strings onto@openvibecoding/frontend-shared, keep the root AI entrypoints aligned in the same patch; current examples include locale-aware desktop status labels, shared-copy Run Detail table/action chrome, and zh-CN regression coverage - when a front-door discoverability wave adds or reprioritizes public
integration/skills/SEO entrypoints, keep this file,
AGENTS.md, and the root/docs entrypoints aligned in the same patch; current examples includedocs/integrations/index.html,docs/compatibility/index.html,docs/skills/index.html,docs/robots.txt,docs/sitemap.xml, the docs-navigation registry move that now treats ecosystem/use-cases/AI/MCP/API/builders/compatibility as primary public entrypoints, and the skills quickstart CTA shift toward in-page adoption/maintainer anchors instead of a dead public-repo tree link - when dashboard route-level discoverability or Workflow Case list locale
coverage changes, keep this file,
AGENTS.md, and the root/docs entrypoints aligned in the same patch; current examples include route metadata onapps/dashboard/app/command-tower/page.tsx,apps/dashboard/app/workflows/page.tsx, andapps/dashboard/app/workflows/[id]/page.tsx, plus the shared-copy workflow list substrate and the matching metadata/locale regression coverage inapps/dashboard/tests/command_tower_page_ssr_query_repro.test.ts,apps/dashboard/tests/workflow_detail_page.test.tsx, andapps/dashboard/tests/workflows_queue_page.test.tsxlist substrate now carried throughpackages/frontend-shared/uiCopy.tsandpackages/frontend-shared/uiCopy.js - when dashboard home discoverability grows a new integrations/skills adoption
layer or package-contract CTA path, keep this file,
AGENTS.md, and the root/docs entrypoints aligned in the same patch; current examples includeapps/dashboard/components/DashboardHomeStorySections.tsx, the public-docs resolver allowlist inapps/dashboard/lib/env.ts, the matching env/home regression coverage, and the repo-ownedpackages/frontend-api-contract/README.mdguide that now sits between the public API quickstart and the raw generated.d.tsfiles - when a later discoverability wave adds a public compatibility/adoption
matrix, keep this file,
AGENTS.md, and the root/docs/dashboard entrypoints aligned in the same patch; current examples includedocs/compatibility/index.html,configs/docs_nav_registry.json,docs/sitemap.xml, the dashboard public-docs allowlist inapps/dashboard/lib/env.ts, and the dashboard-home integration layer now pointing teams toward a compatibility ladder before they choose protocol, skills, builders, or proof-first onboarding - when a follow-up discoverability wave adds public copy-paste starter kits or
local bundle examples for Codex / Claude Code / OpenClaw, keep this file,
AGENTS.md, and the root/docs entrypoints aligned in the same patch; current examples includedocs/agent-starters/index.html,docs/examples/agent-starters/,examples/coding-agents/,configs/root_allowlist.json, and the root/docs wording that now separates host-platform plugin reality from OpenVibeCoding's own publication state - when a later polish wave compresses the public homepage or dashboard-home
discovery stack into a clearer route page, keep this file,
AGENTS.md, and the root/docs/dashboard entrypoints aligned in the same patch; current examples include the homepage mini-nav, reduced hero CTA set, compatibility-first routing, and the dashboard-home adoption layer consolidating ecosystem / integrations / AI / builders into one smaller decision surface - when a follow-up CTA polish slice changes that dashboard adoption layer
again, keep this file,
AGENTS.md,README.md,CHANGELOG.md,docs/index.html, andapps/dashboard/README.mdaligned in the same patch; current examples include keeping/compatibility/as the main routing card, restoring a lighter/use-cases/proof-first side door, and updating the adoption-nav accessibility label so the dashboard no longer advertises the old integration-only action group - when the next Phase 2 wave deepens public
MCP/APIdiscoverability, keep this file,AGENTS.md, and the root/docs entrypoints aligned in the same patch; current examples includedocs/mcp/index.html,docs/api/index.html, the dashboard-home AI CTA, and root navigation that points readers toward read-only MCP and API quickstarts without implying hosted/write-capable MCP shared-copy Run Detail table/action chrome, and zh-CN regression coverage - when Prompt 6-style skills-bundle and workflow/control-plane read-model work
lands, keep this file,
AGENTS.md,README.md, and the orchestrator/docs entrypoints aligned in the same patch; current examples includepolicies/skills_bundle_registry.json, enrichedrole_binding_summary.skills_bundle_refmetadata, andworkflow_case_read_modelon workflow/control-plane reads that remain explicitly read-only - when a Prompt 7-style frontend slice projects those same read models onto
dashboard or desktop Workflow Case detail surfaces, keep this file, the root
AI entrypoints, and the module READMEs aligned in the same patch; current
examples include the read-only
Workflow read modelcards onapps/dashboard/app/workflows/[id]/page.tsxandapps/desktop/src/pages/WorkflowDetailPage.tsx, plus the typed frontendRoleBindingReadModel/WorkflowCaseReadModelsurfaces that stay belowtask_contract - when a Prompt 8-style slice converges the OpenAPI/frontend-contract
generation chain or projects
role_binding_read_modelonto dashboard/desktop Run Detail surfaces, keep this file, the root AI/docs entrypoints, and the module READMEs aligned in the same patch; current examples includedocs/api/openapi.openvibecoding.json, generated@openvibecoding/frontend-api-contractread-model types, and the read-only Run Detail operator summaries that continue to treattask_contractas execution authority - when a Prompt 9-style slice turns role / bundle / runtime truth into
dashboard/desktop
Agents+Contractsoperator catalog surfaces, keep this file, the root AI/docs entrypoints, and the module READMEs aligned in the same patch; current examples include the registry-backed/api/agentsrole catalog, the normalized/api/contractsinspector payload, and the same read-only authority/advisory wording carried through both web and desktop operator shells - when a Prompt 10-style slice turns those read-only catalog surfaces into a
repo-owned role-configuration control plane, keep this file, the root
AI/docs entrypoints, and the module READMEs aligned in the same patch;
current examples include
policies/role_config_registry.json, the role-config preview/apply routes under/api/agents/roles/{role}/config*, the generated frontend contract bindings for those routes, and the rule thatAgentsbecomes the control desk whileContractsstays inspector-first andtask_contractremains the only execution authority - when a Prompt 10 follow-up slice adds derived runtime capability posture to
intake previews, run manifests, operator-copilot briefs, or the
dashboard/desktop
ContractsandRun Detailsurfaces, keep this file, the root AI/docs entrypoints, and the module READMEs aligned in the same patch; current examples includeexecution_plan_report.runtime_capability_summary,role_binding_read_model.runtime_binding.capability, the shared dashboard/desktop runtime-capability copy, and the fail-closed wording that keeps chat-compatible lanes separate from tool execution parity - when a Prompt 10 closeout fix changes how contract package entrypoints load
on CI/governance paths, keep this file, the root AI/docs entrypoints, and
the relevant module/docs READMEs aligned in the same patch; current examples
include lazy-loading
openvibecoding_orch.contractsoContractValidatorimports and schedule-boundary checks stay below runtime-provider dependencies such ashttpxon Quick Feedback lanes - when a Prompt 10 Wave 3 slice hardens builder/client entrypoints into a
repo-owned starter path, keep this file, the root AI/docs entrypoints, and
the package/docs entrypoints aligned in the same patch; current examples
include
packages/frontend-api-client/examples/control_plane_starter.local.mjs, the package-facingcreateControlPlaneStarter(...)bootstrap flow, and the rule that the starter remains a repo-owned integration edge rather than a hosted SDK or marketplace claim - when dashboard dependency verification learns about new runtime-critical
packages for quick/clean-room lanes, keep this file,
AGENTS.md, and the relevant package/docs entrypoints aligned in the same patch; current examples includescripts/install_dashboard_deps.shverifying thatjsdomitself loads successfully so partial dashboard installs fail fast before the quick lane claims success - when the Final-100 / Wave 4 follow-up slice adds hosted pilot readiness or
queue-first mutation groundwork, keep this file,
AGENTS.md, and the root AI/docs entrypoints aligned in the same patch; current examples includerender.yaml,configs/docs_nav_registry.json, the hostedOPENVIBECODING_API_ALLOWED_ORIGINSenv wiring across.env.example,apps/orchestrator/.env.example,configs/env.registry.json, andconfigs/env_direct_read_allowlist.json, plus the rule thatapps/orchestrator/src/openvibecoding_orch/mcp_queue_pilot_server.pyand queue preview/cancel routes remain repo-owned operator groundwork instead of live hosted proof or public write-capable MCP - when a Final-100 hosted/operator follow-up only moves governance,
queue-pilot, or API posture files after the public docs already moved, keep
this file and
AGENTS.mdupdated in the same patch so the ci-diff doc-sync gate can see the root AI navigation layer refresh aboveconfigs/env_direct_read_allowlist.json,render.yaml, and the guarded queue preview/cancel operator surfaces instead of flagging logic-only drift - when staged dashboard smoke builds change their dependency-install behavior
or the
apps/dashboard/lib/types.tsexport bridge, keep this file and the root/module docs aligned in the same patch so UI-audit / pre-push failures stay attributable to staging drift vs real dashboard regressions - when clean-room recovery changes the package-local install order for
frontend-api-client, keep this file and the root docs aligned in the same patch so recovery gates fail on product regressions instead of missing local package installs - when clean-room recovery changes the ordering between workspace cleanup and
broad runtime deletion, keep this file and the root docs aligned in the same
patch; current examples include running
scripts/cleanup_workspace_modules.shbefore the clean-roomrm -rfsweep, plus quarantining stubborn dashboard module residue when recursive delete alone is not enough, so the recovery lane does not abort early on transient bind-mounted trees
npm run bootstrapnpm run cinpm run ci:strictnpm run testnpm run test:quicknpm run scan:host-process-risksnpm run space:auditnpm run docker:runtime:auditbash scripts/check_repo_hygiene.shnpm run scan:workflow-securitynpm run scan:trivynpm run security:scan:closeoutpre-commit run --all-files
- trust flow:
ci-trust-boundary -> quick-feedback -> hosted policy/core slices -> pr-release-critical-gates -> pr-ci-gate - hosted policy/core slices:
policy-and-security, core-tests - untrusted PR path:
quick-feedback -> untrusted-pr-basic-gates -> pr-ci-gate - protected sensitive lanes:
workflow_dispatch -> owner-approved-sensitive -> ui-truth / resilience-and-e2e / release-evidence - canonical machine SSOT:
configs/ci_governance_policy.json
- authoritative release-truth builders must consume
.runtime-cache/openvibecoding/reports/ci/current_run/source_manifest.json. - the live current-run authority verdict belongs to
python3 scripts/check_ci_current_run_sources.pyand.runtime-cache/openvibecoding/reports/ci/current_run/consistency.json. - current-run builders:
artifact_index/current_run_index,cost_profile,runner_health,slo,portal,provenance. - docs and wrappers must not hand-maintain live current-run status; they must point readers back to the checker receipts.
- if the current-run source manifest is missing, authoritative current-run reports must fail closed or run only in explicit advisory mode.
- repo coverage snapshot unavailable
- run
npm run coverage:repoto refresh this fragment.