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 Skill Vs Library

Wiki Skill Vs Library

Category wikis ยท Version 5.5

The distinction between a prompt-based skill (probabilistic, judgment, slow) and an executable library (deterministic, fast, no LLM), and when to graduate a skill into a library. Activates when deciding skill-vs-code, designing an onboarding/automation pipeline, or judging whether a task needs an LLM. An onboarding-judgment skill kept by the Librarian ๐Ÿ—ƒ๏ธ.

A skill is a text prompt โ€” instructions, examples, and rules given to an LLM that shape how it behaves on a task. A library is executable code that runs directly, without LLM involvement. Both can accomplish the same outcome. The question of which to use, and when to graduate a skill into a library, is one of the core design decisions in an AI-augmented workflow.

What a Skill Actually Is

A skill file (like ~/.claude/skills/fedwiki-page/SKILL.md) contains no executable code. It is loaded into the LLM's context window and shapes the model's next output. When Claude creates a wiki page using the fedwiki-page skill, it is:

  1. Reading the rules and examples in the skill file
  2. Interpreting your natural language request
  3. Generating JSON that follows those rules

The skill is probabilistic โ€” Claude understands the pattern and applies judgment. It handles ambiguity, fills in missing details, and adapts to context. It is also slow (LLM inference time) and not guaranteed to produce identical output twice.

What a Library Actually Is

A library function like create_page(title, story_items) runs deterministically. Given the same inputs it produces the same output, instantly, with no API call. The fedwiki pattern already has embryonic library code:

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

This is a one-line library. A fuller fedwiki.py module could offer make_page(), make_item(), make_journal() โ€” the entire JSON-building pattern extracted from the skill into importable functions.

When They Do the Same Thing

The fedwiki-page skill and a hypothetical fedwiki.py library can both produce valid wiki page JSON. They overlap when:

  • The task is well-defined โ€” the output structure is known and fixed
  • The inputs are structured โ€” a title string and a list of content items
  • There is no judgment required โ€” no need to decide what the content should be

In this zone, the skill is over-engineered. You are using an LLM to do something a ten-line Python function could do faster, cheaper, and more reliably.

When a Skill Is the Right Tool

Use a skill when the task requires understanding and judgment:

  • Natural language input โ€” "write a page about router models" requires Claude to decide content, structure, examples, and emphasis. No function can do this.
  • Ambiguity โ€” the user hasn't fully specified the output. The skill guides Claude to fill in the gaps sensibly.
  • One-off creative work โ€” pages written once by a human collaborating with Claude, not generated programmatically at scale.
  • Pattern is still evolving โ€” you are still learning what good output looks like. A skill is easy to edit; refactoring library code is harder.

When to Graduate a Skill into a Library

Graduate a skill to a library when:

  1. The pattern has stabilised โ€” you know exactly what valid output looks like and the skill has stopped changing
  2. Volume โ€” you need to generate many pages programmatically (bulk import, API responses, data pipelines)
  3. Reliability matters โ€” a ghost page endpoint must always return valid JSON. A library guarantees structure; a skill might hallucinate a wrong ID or forget a field under load
  4. Composition โ€” you want to call the operation from other code, chain it with other functions, or test it with unit tests
  5. Speed โ€” library calls are microseconds; skill invocations are seconds

The Right Division of Labour

Task Skill Library
Decide what a page should say โœ… โœ—
Build valid page JSON from known content โœ— โœ…
Strip and rewrite a journal โœ… (judgment on what to keep) โœ… (if always strip-to-create)
Generate IDs โœ— โœ…
Write the file to disk โœ— โœ…
Reindex a wiki domain โœ— โœ…
Interpret a user's natural language request โœ… โœ—

A well-designed system has skills calling library functions: Claude authors the content, the library assembles and stores it correctly.

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

Provenance

Forkable skill page migrated from the agentprivacy skills repo (persona/agentprivacy-wiki-skill-vs-library, 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-skill-vs-librarySKILL.md

Navigation

โ† Welcome Visitors ยท The Wikis