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 / Skill / Wiki Ghost Pages

Wiki Ghost Pages

Category wikis ยท Version 5.5

Server-generated federated-wiki pages that appear in the lineup but are never stored on disk โ€” produced dynamically from an html-item form submission. Activates when building a ghost page, an html form story item, or a FastAPI handler returning page JSON. Kept by the Librarian ๐Ÿ—ƒ๏ธ in the Tower's Wikis.

A ghost page appears in the wiki lineup but is never stored on disk. It is generated dynamically by a server and returned as page JSON in response to a form submission from an html story item. The wiki displays it in the lineup just like any stored page.

The Mechanism

The wiki-plugin-html handles form submission inside an html item:

  1. User submits the form
  2. Plugin serialises all named inputs as a flat JSON object
  3. POSTs (or GETs) to the form action URL
  4. Expects page JSON back from the server
  5. Calls wiki.showResult() โ€” the page appears to the right in the lineup

The server never writes anything to disk. The page exists only in the browser.

html Item Pattern

Add an html story item containing a standard HTML form:

{
  "type": "html",
  "id": "a1b2c3d4e5f60001",
  "text": "<form action=\"https://guide.agentprivacy.ai method=\"POST\">\n  <input name=\"query\" placeholder=\"enter anythingโ€ฆ\">\n  <button type=\"submit\">Generate</button>\n</form>"
}

Key rules:

  • action is the full URL of the server endpoint
  • method is POST (default) or GET
  • All named inputs are collected and sent as a flat JSON object
  • Double-quotes inside the JSON text field must be escaped as \"
  • The html plugin sanitises with DOMPurify โ€” standard form elements are always permitted

FastAPI Handler

The endpoint receives form params as a plain dict and returns page JSON:

import uuid

def make_id():
    return uuid.uuid4().hex[:16]

@app.post("/ghost")
def ghost(params: dict):
    query = params.get("query", "").strip()
    return {
        "title": f"Result: {query}",
        "story": [
            {
                "type": "paragraph",
                "id": make_id(),
                "text": f"Generated from: {query}"
            }
        ]
    }

Minimum valid page JSON: a dict with title and story. No journal is needed for ghost pages.

Named Buttons

Multiple submit buttons with name and value let one form trigger different behaviours:

<form action="https://guide.agentprivacy.ai method="POST">
  <button type="submit" name="action" value="summarise">Summarise</button>
  <button type="submit" name="action" value="expand">Expand</button>
</form>

FastAPI receives {"action": "summarise"} or {"action": "expand"}.

Ghost Pages Can Reference Real Pages

Return reference items in the story to point back to real wiki pages the user can fork:

{
    "type": "reference",
    "id": make_id(),
    "site": "localhost",
    "slug": "fast-caddy",
    "title": "Fast Caddy",
    "text": "Optional synopsis"
}

Requirements

  • Fast Caddy โ€” Caddy routing api to FastAPI on :8000
  • FastAPI โ€” running with uvicorn main:app --port 8000 --reload
  • CORS middleware enabled on FastAPI (allow_origins=["*"])

Related Skills

  • agentprivacy-wiki-claude-ghost โ€” ghost pages whose body is written live by Claude
  • agentprivacy-wiki-page โ€” creating stored pages
  • agentprivacy-wiki-journal โ€” cleaning page history

Verify: agentprivacy.ai ยท kept by the Librarian ๐Ÿ—ƒ๏ธ in the Tower's Wikis (the git-less onboarding layer)
Upstream: skill.fedwiki.club/ghost-pages-skill โ€” vendored + re-framed; not original agentprivacy authorship

Provenance

Forkable skill page migrated from the agentprivacy skills repo (persona/agentprivacy-wiki-ghost-pages, v5.5).
Source of truth: agentprivacy-skills-v5. Fork this page to materialize a local SKILL.md via fedwiki-to-skill.

origin: 0xagentprivacy ยท author: Mitchell Travers

Assets

๐Ÿ“Ž wiki-ghost-pagesSKILL.md

Navigation

โ† Welcome Visitors ยท The Wikis