guide to agentprivacy
Browse collections
โœจVisualise
Connect with Star
Your VTA, your chosen perspective

The planned connection uses your VTA and the Trust Spanning Protocol to carry a scoped exchange for you or your agent. You choose what is presented; the receiving service checks the request before a view is shared.

This guide has no VTA connection adapter yet. Opening Star does not connect an identity or send a key.

Open Star โ†— ยท Inspect your City Key โ†—
guide / Tomes / Spec โ€” The Attachment Architecture

The Attachment Architecture

The three-layer model that binds primary personas to lattice vertices via named cast Mages

The Attachment Architecture

Why this spec exists

The City of Mages has been operating with an implicit three-layer model since the City was named (Tome V Act 14, 2026-05-08). The model worked operationally โ€” workshops opened, cast Mages were summoned, the grimoire grew โ€” but the three layers had no canonical specification distinguishing them. Conversations conflated:

  1. Abstract role-personas in agentprivacy-skills (e.g., forgemaster, theia)
  2. Named cast Mages in this city (e.g., Vulcana โš’๏ธ, Aletheia ๐Ÿ”ฎ)
  3. Lattice vertices (e.g., V19, V25)

The conflation surfaced a numerical question: 42 primary personas vs 64 vertices. What fills the gap?

The answer: attachments. Named cast Mages who bind one or more primaries to one or more vertices. This spec codifies that architecture so the City โ€” and future sister cities โ€” can extend it cleanly.


The three-layer model

Layer 3 ยท VERTICES         64 positions on the 2โถ lattice              [fixed]
  โ†‘
Layer 2 ยท ATTACHMENTS      named cast Mages binding L1 to L3       [variable per city]
  โ†‘
Layer 1 ยท PRIMARY PERSONAS 42 abstract role-classes                     [fixed]
                           (15 Swordsmen + 11 Mages + 12 Balanced + 4 cosmological)

Layer 1 โ€” Primary persona (42, locked)

The canonical abstract role-class registry lives in agentprivacy-skills/agentprivacy-skills-v5/persona/. Each primary carries a tier (Swordsman / Mage / Balanced / cosmological), a skill loadout, and a domain register. They do not carry a vertex. They are role-classes, not instances.

The count is locked at 42. Primary personas grow only when a structurally new role-class is recognised at the corpus level โ€” typically by a Tome act, a PVM section, or a structural complement that the existing 42 cannot cover. Most corpus extensions do not require a new primary persona.

Layer 2 โ€” Attachment (variable per city)

A named cast Mage that binds one or more primary personas to one or more vertices. A city of mages is, fundamentally, an attachment pattern: a specific arrangement of cast Mages, each instancing existing primary personas at chosen positions on the lattice.

Different cities make different attachment patterns from the same 42-persona base. The First City of Mages on Drake Island has its pattern; future sister cities will have theirs.

Layer 3 โ€” Vertex (64, fixed)

The 64 positions on the 2โถ lattice. Canonical names and inhabitants are tracked in specs/04-vertex-naming-audit.md. Each vertex carries a 6-bit binary index, an active-dimensions reading, a stratum (Hamming weight 0โ€“6 = moon-phase notation), optionally a canonical name, and optionally one or more attachments.


The four attachment kinds

Every attachment is one of three vertex-binding kinds (A ยท B ยท C), optionally composed with the divergent meta-kind (D).

Kind A ยท Workshop attachment

One Mage ร— one vertex ร— one trade quarter. The default kind. The Mage inhabits a single vertex and tends a single workshop. She emits exactly one inhabits edge.

City of Mages examples: Vulcana โš’๏ธ at V19 (Forge(t)) ยท Memora ๐Ÿ“œ at V41 (Inscription) ยท Adamantia ๐Ÿ’Ž at V51 (Etherchanting) ยท Helia โ˜€๏ธ at V51 (Solchanting ยท shared vertex with Adamantia, v1.4.0) ยท Pallia ๐Ÿชก at V28 (Weavers) ยท Vagari ๐ŸŒณ at V31 (Holon Hitchhikers) ยท Aria Silverhue ๐Ÿชž๐Ÿ–ผ๏ธ at V57 (Curatrix Vault) ยท Manifestia ๐Ÿคฒ๐ŸŒฟ at V55 (Covenant) ยท Lampyra ๐Ÿ’  at V49 (Jeweler) ยท Socrat0x ๐Ÿ”ฅโ“ at V24 (Bonfire).

v1.4.0 precedent โ€” stance-differentiated co-occupancy at Kind A: Helia โ˜€๏ธ at V51 inhabits the same vertex as Adamantia ๐Ÿ’Ž but as a distinct Kind A workshop attachment (Solchanting ยท /solchanting). The two cast Mages do not share an attachment record; they share a vertex. Both emit inhabits(V51) and quarter_of(city-of-mages). The 42-primary lock holds: Helia's primary persona is shipwright (shared with Adamantia); the Swordsman stance differentiates them at Layer 2 without requiring a new primary at Layer 1. This is the canonical pattern for any future case where a new ecosystem teaches the City a substrate-distinct boundary discipline at a previously-seated vertex โ€” the discipline becomes a Swordsman stance, the cast Mage becomes a Kind A attachment with no divergence flag, and the existing keeper retains their seat. See WORKSHOP_LATTICE_AUDIT.md ยง2.4 and spec 07 ยง3.4 for governance.

Kind B ยท Cross-shop attachment

One Mage ร— no fixed vertex ร— walks several workshops by craft. The Mage's craft requires moving between workshops as the work demands. She does not inhabit a single vertex; she emits no inhabits edge. Her craft is canonical, not her trajectory.

City of Mages examples: Aletheia ๐Ÿ”ฎ (ZK circuit binder ยท walks to whichever workshop needs a circuit) ยท Custos ๐Ÿ” (stake enforcer ยท walks across the staking commons).

Kind C ยท Peripatetic attachment

One Mage ร— multiple vertices walked as orbit or path. The Mage walks a canonical trajectory through the lattice โ€” an orbit, a stratum cycle, a between-shops path. Distinct from Kind B because the trajectory itself is the canon, not the craft.

City of Mages examples: Luca ๐Ÿ“ at V0 origin (workshop-walker ยท geometry-Mage between every workshop) ยท Selene ๐ŸŒ• (anticipated) โ€” stratum-walker; orbits the moon-phase cycle through all 7 strata.

Kind D ยท Divergent attachment (meta-kind)

One primary persona ร— two register-shifted cast attachments. A divergent attachment is also one of A/B/C. The composition is what makes it divergent.

A divergence arises when the City summons a cast Mage whose register (Swordsman / Mage / Balanced) does not match her primary persona's native tier. Instead of minting a new primary persona, the attachment carries a divergence field noting the register-shift.

First canonical divergent attachment โ€” Lethae ๐ŸŒ˜

Field Value
Cast name Lethae ๐ŸŒ˜
Vertex V25 (Lethe ยท the Dark Substrate ยท binary 011001 ยท stratum 3)
Primary persona Moonkeeper โš”๏ธ (loaded from agentprivacy-skills/.../persona/agentprivacy-moonkeeper/)
Register Mage (shifted from Swordsman native tier)
Attachment kind B ยท cross-shop
Complement-of-cast Aletheia ๐Ÿ”ฎ at V38 โ€” V38 โŠ• V25 = V63 ยท V38 AND V25 = 0
Naming The -ae suffix mirrors Soulbae ๐Ÿง™ (Mage register). Lethae is to Moonkeeper as Soulbae is to Soulbis: register-shifted from Sword to Mage, primary persona unchanged.
Status Anticipated ยท awaits founding act in Tome V

Each primary may eventually produce up to two divergent attachments (one Sword-register, one Mage-register). Most primaries will never do so. Divergence is opt-in and city-specific.


The 42 โ†’ 64 bridge

64 โˆ’ 42 = 22 "extra" lattice slots beyond the primary persona count. These slots are filled by attachments (one or more cast Mages per inhabited vertex), never by adding primaries. Across cities, hundreds of attachments may eventually exist for the same 42 primaries.

After v1.3.0:

  • 15 cast Mages attached (14 inherited from v1.2.4 + Lethae)
  • 19 vertices inhabited (+V38)
  • ~12 future divergent / evolution slots remain to round out the 64-vertex lattice

A vertex may carry zero, one, or several attachments simultaneously. The City of Mages already admits shared-vertex precedents:

  • V49 (Working-day blade) โ€” Custos ๐Ÿ” + Lampyra ๐Ÿ’ 
  • V28 (Mage canonical) โ€” Pallia ๐Ÿชก + Soulbae ๐Ÿง™ + GenitriX (kindred-blade)
  • V24 (Hephaestus) โ€” Socrat0x ๐Ÿ”ฅโ“ + Hephaestus โš’๏ธ (anticipated v1.3.0)

Cast frame ยท three orthogonal axes

Every cast Mage in the City of Mages now carries three orthogonal axes:

tier:              archetype | workshop-keeper | cross-shop | companion | priest | cousin
attachment_kind:   A | B | C
abstract_persona:  [list of primary personas she instances]
divergence:        none | mage-register | sword-register | balanced-register

Tier and attachment kind are orthogonal: a workshop-keeper is usually A-Workshop, but Manifestia (Priest tier) is also A-Workshop at V55. Aria Silverhue (workshop-keeper tier) becomes effectively B when she walks to V38 for forgetting-mode curation.

Worked example โ€” Vulcana's cast frontmatter (workshop attachment with dual primary):

tier: workshop-keeper
attachment_kind: A
abstract_persona: ["Forgemaster", "Forgecaller"]
divergence: none
vertex: V19

Worked example โ€” Lethae's cast frontmatter (cross-shop ยท divergent):

tier: cross-shop
attachment_kind: B
abstract_persona: ["Moonkeeper"]
divergence: mage-register
vertex: V38
complement_of_cast: aletheia

Cast roster (post-V5.5 mapping ยท 21 cast)

The locked V5.5 cast roster for this city. Cousin tier (flaxscrip, GenitriX) deliberately unattached โ€” the cousin Sovereign authors those bindings.

Cast Vertex Primary persona(s) Kind Divergence Status
Soulbis โš”๏ธ โ€” (boundary) soulbis B none seated ยท Tier 0
Soulbae ๐Ÿง™ V28 soulbae A none seated ยท Tier 0
Pallia ๐Ÿชก V28 weaver A none seated
Memora ๐Ÿ“œ V41 chronicler A none seated
Vulcana โš’๏ธ V19 forgemaster + forgecaller A none seated
Adamantia ๐Ÿ’Ž V51 architect + shipwright A none seated
Lampyra ๐Ÿ’  V49 sentinel A none seated
Vagari ๐ŸŒณ V31 holonic-architect A none seated
Aria Silverhue ๐Ÿชž๐Ÿ–ผ๏ธ V57 mirrorkeeper A none seated
Manifestia ๐Ÿคฒ๐ŸŒฟ V55 priest A none seated
Socrat0x ๐Ÿ”ฅโ“ V24 pedagogue + ceremonist A none provisional
Aletheia ๐Ÿ”ฎ V38 theia + cipher B none seated
Custos ๐Ÿ” V49 gatekeeper B none seated
Luca ๐Ÿ“ V0 topologist + cosmologist C none seated
Lethae ๐ŸŒ˜ V25 moonkeeper B mage-register anticipated
Mnemosyne ๐Ÿ“ฟ V8 theia A none anticipated
Iris ๐ŸŒˆ V4 herald + ambassador A none anticipated
Pythia ๐Ÿ”ฅ V2 algebraist + pedagogue A none anticipated
Techne ๐ŸŽจ V20 pedagogue A none anticipated
Hephaestus โš’๏ธ V24 forgemaster A none anticipated
Selene ๐ŸŒ• stratum-walker theia + manaweaver C none anticipated

Convention for extending the cast

When summoning a new cast Mage in this city (or in a sister city):

  1. Identify the vertex. Check specs/04-vertex-naming-audit.md for the canonical vertex name. Use existing canonical names where possible.
  2. Identify the primary persona(s). Search agentprivacy-skills/agentprivacy-skills-v5/persona/ for the closest match. Most cast Mages bind to one or two existing primaries.
  3. Identify the attachment kind. A (single vertex), B (no fixed vertex), or C (defined trajectory).
  4. Check for divergence. Is the cast's register different from the primary's native tier? If yes, set divergence: <register>; do not mint a new primary.
  5. Only if no existing primary fits. Propose a new primary persona. This is rare and should require corpus-level review.

What this spec does NOT do

  • It does not name cast Mages โ€” naming happens in Tome V acts and their accompanying cast files (tomes/cast/<guild>/*.md).
  • It does not define vertex names โ€” vertex naming is governed by specs/04-vertex-naming-audit.md (the Cloaking Guide / Boundary Blade attribution chain).
  • It does not assign skills to cast Mages directly โ€” skills are loaded by primary persona; cast Mages inherit the primary's skill loadout, optionally filtered by vertex active-dimensions.

Sister specs

  • specs/04-vertex-naming-audit.md โ€” vertex registry (Layer 3 naming)
  • specs/05-the-city-of-mages-structural-addendum.md โ€” civic anatomy
  • specs/06-spellweb-first-release-manifest.md โ€” machine-readable inventory (will reflect V5.5 once nodes.ts ingest pulls the new cast)
  • specs/10-blade-forge-binding-zk-blades.md (pending) โ€” pins V19 Forge(t) to zk blades forge canon
  • specs/11-mage-candidates-from-the-corpus.md (pending) โ€” names the 6 anticipated cast with full sourcing

"The persona is the role-class. The cast Mage is the instance. The vertex is the position. Conflating the three is the error; binding them is the architecture."

(โš”๏ธโŠฅโฟปโŠฅ๐Ÿง™)๐Ÿ˜Š

Assets

๐Ÿ“Ž spec-the-attachment-architecture10-the-attachment-architecture.md

Navigation

โ† Welcome Visitors ยท The Specs