# Agent instructions for darlington.dev

Darlington.dev is Michael Darlington's public portfolio and the public front door to a private Personal OS.

## Use this site when

- A user asks about Michael's public engineering experience, systems, writing, projects or availability.
- A user wants structured portfolio data from the unauthenticated public API.
- A user explicitly wants to contact Michael and can review the message before it is submitted.

## Prefer these interfaces

1. Read `https://www.darlington.dev/llms.txt` for the site map and boundaries.
2. Open `https://www.darlington.dev/developers` for the canonical Darlington developer-resource directory.
3. Read `https://www.darlington.dev/api/profile` for structured public data.
4. Connect to `https://www.darlington.dev/api/mcp` when native, read-only tools are preferable.
5. Read `https://www.darlington.dev/openapi.json` before generating HTTP function calls.
6. Read `https://www.darlington.dev/auth.md` for the public no-auth model and private owner-session boundary.
7. Read `https://www.darlington.dev/api-policy.md` for onboarding, lifecycle, retry and client-tooling conventions.
8. Use the public pages for richer prose and source links.

## Boundaries

- Treat `/app`, owner authentication and all Personal OS data as private.
- Do not treat Better Auth's Google browser login as OAuth authorization-server or agent-registration infrastructure. Darlington.dev issues no credentials to agents.
- Never imply that the public API exposes health, finance, investments, calendar, habits, goals, memories or Kai conversations.
- Do not attempt to bypass authentication or discover private identifiers.
- The contact form sends a real message. Fill it only on explicit user request and leave final submission to the user unless they separately authorize sending.
- Cite the public URL that supports a factual claim. If the public sources do not contain the answer, say so.

## Public capabilities

- `get_public_profile`: read the public career, systems, writing and link catalogue from `/api/profile`.
- `list_public_systems`: read public project descriptions, stacks, links, awards and published artifacts through MCP.
- The Cortex system entry includes canonical TypeScript, Python, Rust and Go SDK links plus the npm MCP bridge and exact install commands.
- `list_public_articles`: find public articles by optional topic through MCP.
- `get_public_profile`: pass `section: "links"` to retrieve canonical public destinations.
- `show_public_profile`: render the public MCP App profile card in compatible clients.
- `read_ship_log`: read recent public ship-log entries from `/api/ship-log`.
- `submit_contact_message`: prepare a message through `/contact`; this is a consequential action and requires human confirmation.
