Command Center Interface¶
Command Center is not only a website. It is one authority surface exposed through multiple interfaces that must return the same declared state.
Interface model¶
Canonical source on ZERO
|
v
punnaraj-dev/command-center (main)
|
+--> MkDocs human interface
+--> /agent/bootstrap.json machine interface
+--> bin/punnaraj-cc CLI interface
+--> future API / MCP adapters
|
v
Cloudflare production surface
The website is a representation. The canonical record remains the committed source on main.
Bootstrap contract¶
Every agent must read /agent/bootstrap.json before modifying this project. The bootstrap document identifies:
- the canonical repository and branch;
- the human and machine-readable surfaces;
- the runtime evidence boundary;
- the required reading order;
- the rule to report a state mismatch before mutation.
An agent must not infer deployment identity from HTML appearance, repository names, prior memory, or an old session.
Declared and observed state¶
declared state is committed by the authority surface. observed runtime state requires fresh Cloudflare or HTTP readback. A user-confirmed hostname is recorded as USER_CONFIRMED; it is not silently promoted to connector-verified deployment evidence.
When declared and observed state differ, the correct result is STATE_MISMATCH. The first permitted action is reporting the mismatch, not repairing an assumed layer.
CLI¶
bootstrap reads the deployed Cloudflare surface. source reads the canonical file directly from GitHub. Comparing them exposes source/deployment drift without requiring an agent to render the website.
Branch policy¶
main is the only canonical development branch. Finished work is integrated into main immediately after verification. Long-lived agent branches are not operating surfaces and must not be treated as current state.
Next implementation gate¶
- deploy the new static bootstrap path;
- verify
https://www.punnaraj.online/agent/bootstrap.jsonby HTTP readback; - record deployment ID and deployed commit;
- add a read-only Worker or MCP adapter only after the static contract is stable.