diff --git a/AGENTS.md b/AGENTS.md
index 89d7366..24fc502 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -195,3 +195,16 @@ bin/pyauto-pulse fetch [--instance K] # ingest + receipt only
```
Before a PR: `ruff check . && ruff format --check . && pytest -q tests && bin/pyauto-pulse check --offline`.
+
+
+## Shared standards
+
+Before changing a shared interface, consult the applicable
+[organism standard](https://github.com/PyAutoLabs/PyAutoBrain/blob/main/docs/standards.md)
+on demand, identify affected consumers, and validate their adoption. Change
+generated guidance at its canonical source and regenerate.
+
+For board changes, follow the applicable sizing, navigation and orchestration
+standards and reuse Brain’s shared components. Keep domain data, prompt meaning
+and approval boundaries with the board’s owner.
+
diff --git a/pulse/board.py b/pulse/board.py
index cbea3a5..07c0a72 100644
--- a/pulse/board.py
+++ b/pulse/board.py
@@ -571,10 +571,16 @@ def render_html(views, now: str | None = None, campaign_data: dict | None = None
],
)
+ ""
- + campaigns.render_html(campaign_data if campaign_data is not None else campaigns.load())
+ + campaigns.render_html(
+ campaign_data if campaign_data is not None else campaigns.load(),
+ work_links=[
+ {"label": "PyAutoPulse", "href": REPO_URL},
+ *({"label": v.instance.repo, "href": v.instance.github_url} for v in views),
+ ],
+ )
+ "".join(content)
+ ""
- + f"