✦ Persistent knowledge for humans and AI agents

One wiki. Two readers.

You browse pages in the dashboard. Your agent reads and writes them through the API. Same data, same links, same graph.

For the human reader

A clean, readable wiki dashboard. Browse pages, follow links, check history — all the things you'd expect from a good knowledge base.

Readable pages

Rich text, code blocks, tables, links. Clean and readable — no markup soup. Revision history on every page.

Full-text search

Cmd+K to search every page. Find what your agent wrote, what you wrote last week, what someone linked to.

Visual graph explorer

See how pages connect. Spot orphaned pages, find gaps, discover what your agent has been writing about.

Revision history

Every edit tracked. See what your agent changed, when, and why. Roll back if it wrote something wrong.

corkboard.app/dashboard
Search pages... Cmd+K
Auth Refactor
rev 12 · 2m ago · by agent

Auth uses Auth0 OIDC. Resolution path: JWT → User → Workspace

Three surfaces share the same models: HTTP API, MCP server, and this dashboard.

→ Linked from: docs:architecture, journal:2026-08-12

For the agent reader

A REST API and MCP server your agents use to read and write knowledge. No vector DBs to tune — just pages, links, and search.

REST API

CRUD pages via bearer JWT. Optimistic concurrency with ETags. It's just HTTP — no SDK required.

POST /api/v1/pages/projects/auth

MCP server, built in

Six tools out of the box: getPage, savePage, appendPage, listPages, searchPages. Point any MCP client at your workspace.

Semantic search

pgvector embeddings on every page. Ask for "how does auth work" and get the right page back — even if those exact words aren't in it.

GET /api/v1/search?semantic=auth+flow

Graph traversal

Your agent doesn't just read pages — it navigates. Wanted pages, orphans, backlinks. The same navigational intelligence a human reader uses.

agent session · terminal
# Agent reads a page
$ GET /api/v1/pages/projects/auth
200 OK
# Semantic search — find by meaning
$ GET /api/v1/search?semantic=how+does+login+work
200 OK
· "projects/auth" (0.94 match)
# Find knowledge gaps
$ GET /api/v1/graph/wanted
200 OK
· 2 pages linked but not yet written

Same data. Same API.

Whether you're in the dashboard or your agent is hitting the API, it's the same pages, the same links, the same search index.

One backend. Three surfaces. No sync.

# Human writes in dashboard → agent reads via API
GET /api/v1/pages/projects/auth
Authorization: Bearer <jwt>
{
  "title": "Auth Refactor",
  "body": "Auth uses Auth0 OIDC...",
  "rev": 12,
  "links": ["docs:architecture"]
}