Skip to content

Anytype PKM layout — three Spaces in one Vault

Terminology (Anytype docs): one Vault; multiple Spaces (Channels) inside it (Vault, Channels, Spaces API).

This document records the agreed navigation model and MCP write policy. Job-hunt content for any one company/role is a subset of the broader agent graph, not a separate vault.


The three Spaces

# Space name (suggested) Who uses it Purpose
1 Agent · LLM wiki Agent (primary); you review Top-level graph the agent manages via MCP + PKM skills. Acts as the Anytype-native LLM wiki: partition with Collections as needed (e.g. Collection · Job hunt prep, Collection · Readiness, Collection · Practice bank). Job-hunt prep objects live here when the agent creates or curates them.
2 Job hunt You (primary); agent read; agent write only with your explicit approval Two top-level Collections: (A) Company & role — JDs, interviews, post-mortems, offers, recruiter/HM notes by company → role. (B) Reusable prep — Go, Swift, system design, behavioral STAR index, anything not tied to one employer.
3 Sensitive · Human only You only NDA interview detail, comp, offer letters, anything that must never be read or written by agents or MCP.

Naming: Adjust titles to taste (e.g. Job Hunt vs Job hunt · Main). Keep Sensitive obviously distinct so you never confuse it with Agent space.


Job hunt Space — collection structure

Job hunt (Space)
├── Collection · Company & role
│     └── Company → Role → (pages/notes per artifact)
└── Collection · Reusable prep
      └── Study tracks, language notes, generic question banks

Acme Corp / Platform Security example (under Collection · Company & role):

  • Company — Acme Corp
  • Role — Platform Security
  • Children: JD, interview rounds, post-mortem (if any), decision — same as before; see Minimum live-test objects below.

Reusable prep (under second collection): Golang, Swift, system design, behavioral — link out to Agent space when the agent generates a practice pack; keep canonical study notes authored by you here unless you prefer them only in Agent space (your call over time).


Agent · LLM wiki Space — role in the system

  • Canonical agent-owned graph in Anytype for structured objects the MCP can create, list, link, and search.
  • Collections are the agent’s primary partitioning tool (job hunt is one partition among others).
  • Markdown repo wiki (knowledge/agent-wiki/) stays a parallel artifact: start with summaries + anytype:<id> pointers into this Agent space (and Job hunt where appropriate); evolve format as you learn what works.

Cross-reference: ../agent-wiki/README.md and ../agent-wiki/AGENTS.md.


Sensitive · Human only Space

Intent: No agent and no MCP automation reads or writes this Space.

Reality check (Local API): API keys are described as granting access to your vault for trusted integrations (security notice). Public docs do not clearly document per-space API key ACLs. Until Anytype exposes space-scoped keys, treat enforcement as layered:

  1. Process: Never pass this Space’s space_id into MCP tools; never ask the agent to open or search it.
  2. Cursor: Treat writes to Sensitive as human-only; do not approve MCP or agent edits targeting that space.
  3. Strong isolation (optional): If you ever need cryptographic / account-level separation, use a second Anytype vault or account for Sensitive only (heavier operational cost).

Store offer letters, comp bands, NDA interview notes, and similar only in Sensitive (or in Job hunt Company & role if you decide that is human-only too—pick one rule and stay consistent).


MCP and agent write policy (agreed)

Space Agent / MCP read Agent / MCP write
Agent · LLM wiki Full Full (subject to skills + your normal bounded-edit loop)
Job hunt Full (for context, summaries, linking) Only with your explicit approval in chat for each write or batch
Sensitive · Human only None (by policy) None

Implementation notes for Cursor:

  • PKM skills (pkm-capture, pkm-link, pkm-summarize) should default captures and agent-authored artifacts to Agent · LLM wiki unless you direct otherwise.
  • Any MCP tool call that would create/update objects in Job hunt should be approval-gated (aligns with your bounded task loop).
  • Sensitive: never target; if a tool returns objects from all spaces, post-filter or restrict queries by space_id once IDs are fixed.

Markdown wiki vs Agent Space (agreed v1)

  • Start with: summaries in markdown + anytype:<id> links to Anytype objects.
  • Revisit later if you need richer mirroring (e.g. duplicate study cards). Document changes in agent-wiki/log.md.

Minimum live-test objects (Acme Corp / Platform Security)

Under Job hunt → Collection · Company & role:

  1. Company — Acme Corp
  2. Role — Platform Security (linked to Acme Corp)
  3. Note/Page — JD or link + date
  4. Interview — current stage + date

Under Agent · LLM wiki:

  1. One ReadinessSnapshot or Note — “MCP smoke test” dated today

Sensitive: create an empty page “Reserved — human only” so the space exists; do not add MCP references to it.


MCP live-test checklist (updated)

  1. List spaces — confirm three Spaces exist with stable names.
  2. Note each Space’s id (from API or UI) for use in scoped search / writes.
  3. Create objects in Agent and Job hunt via MCP; confirm Sensitive is never listed in agent workflows.
  4. Attempt a read-only query scoped to Job hunt space_id for Platform Security / Golang.
  5. With approval, one write to Job hunt (e.g. tag or link); without approval, confirm agent does not write.
  6. Append a line to ../runbooks/audit-log.md for each approved cross-space or job-hunt write.

Decisions recorded (from your answers)

Topic Decision
“Vault” vs Spaces Three Spaces inside one local Vault.
Agent primary wiki Agent · LLM wiki Space = top-level LLM-managed graph; Collections partition; job hunt is a subset.
Job hunt structure One Job hunt Space with two Collections: company/role vs reusable prep.
MCP writes Full R/W in Agent Space; Job hunt writes only with human approval; Sensitive: no agent read/write (policy + operational enforcement).
Markdown wiki v1: summaries + anytype:<id>; evolve as needed.

Optional next steps

  • Add Anytype tags or a Status property for hunt:acme-platform-security across Job hunt + linked Agent objects.
  • Extend ../schemas/object-types.md with Company, Role, StudyTrack, ReadinessSnapshot when you stabilize shapes.
  • If Anytype later documents space-scoped API keys, add a runbook step to mint a key limited to Agent + Job hunt only and keep Sensitive on a separate key or vault.