Documentation Site¶
Local Preview¶
Open http://localhost:8000.
Auto-deploy¶
Docs auto-publish to GitHub Pages on every push to main that touches docs/, mkdocs.yml, or the workflow itself. Workflow file: .github/workflows/docs.yml.
The workflow:
- Checks out the repo.
- Installs Python 3.12 and
mkdocs-material(+mkdocstrings[python]for future API extraction). - Runs
mkdocs build(non-strict — see warnings below). - Uploads the
site/artifact to GitHub Pages. - Deploys via
actions/deploy-pages@v4.
Published at https://brandonwerner.com/entraclaw-identity-research/. GitHub Pages is configured with build_type=workflow; re-enable via:
gh returns 409 GitHub Pages is already enabled when Pages is already on — that's expected and safe to ignore.
Build warnings¶
mkdocs build --strict currently fails because some in-repo docs reference source files via ../../src/... and ../../scripts/.... MkDocs can't validate those because they live outside docs/. The workflow runs without --strict to keep the build green. The links work at GitHub-rendered Markdown level (they point at real files in the repo tree).
If you add new docs, keep cross-tree links pointing at real source paths so reading on GitHub still works. Inside docs/, prefer relative links so MkDocs can validate them.
Adding new pages¶
- Create the markdown file in the appropriate
docs/subdirectory. - Add it to the
nav:section inmkdocs.yml. - Cross-link from related pages.
- Run
mkdocs buildlocally and check for new warnings.
Layout¶
docs/getting-started/— onboarding pages (quickstart).docs/guides/— how-to guides for operators.docs/architecture/— system design docs, four-pagers, plan documents.docs/reference/scripts/— one page per script category.docs/reference/api/— Python API surface (MCP tools, storage, auth, identity, audit, efferent-copy, body prompt).docs/decisions/— ADRs.docs/runbooks/— operational runbooks and hard-won learnings.docs/platform-learnings/— vendor-platform notes (Entra, Teams, MCP, A365, etc.).docs/developer/— contributor-facing docs (this file, QA log, engineering status).docs/plans/,docs/prompts/,docs/clients/— supporting material.