Getting Started

Get up and running with VCP in 5 minutes.

Edit this page on GitHub

What is VCP?

The Value Context Protocol (VCP) is a standard for encoding user preferences, constraints, and context in a privacy-preserving format that AI systems can use to personalize responses without exposing sensitive information.

"Your context stays yours. Private reasons stay private."

Quick Start

1. Define a VCP Context

A VCP context contains your preferences, constraints, and privacy settings:

import type { VCPContext } from 'vcp';

const context: VCPContext = {
  vcp_version: "1.0",
  profile_id: "user_001",

  // Reference a constitution (behavioral guidelines)
  constitution: {
    id: "learning-assistant",
    version: "1.0",
    persona: "godparent",
    adherence: 3
  },

  // Public preferences - shared with all stakeholders
  public_profile: {
    goal: "learn_guitar",
    experience: "beginner",
    learning_style: "visual"
  },

  // Portable preferences - follow you across platforms
  portable_preferences: {
    noise_mode: "quiet_preferred",
    session_length: "30_minutes",
    budget_range: "low"
  },

  // Private context - influences AI but NEVER exposed
  private_context: {
    _note: "Values here shape recommendations but are never transmitted",
    work_situation: "unemployed",
    housing_situation: "living_with_parents"
  }
};

2. Encode to CSM-1 Token

The CSM-1 (Compact State Message) format is a human-readable token that encodes your context:

import { encodeContextToCSM1 } from 'vcp';

const token = encodeContextToCSM1(context);

// Output:
// VCP:1.0:user_001
// C:learning-assistant@1.0
// P:godparent:3
// G:learn_guitar:beginner:visual
// X:<i class="fa-solid fa-volume-xmark" aria-hidden="true"></i>quiet:<i class="fa-solid fa-coins" aria-hidden="true"></i>low:<i class="fa-solid fa-stopwatch" aria-hidden="true"></i>30minutes
// F:none
// S:<i class="fa-solid fa-lock" aria-hidden="true"></i>work|<i class="fa-solid fa-lock" aria-hidden="true"></i>housing

3. Share with Stakeholders

The token tells AI systems what they need to know, while keeping private details hidden:

LineMeaningAI Sees
G:learn_guitar:beginner:visualGoal + skill level + style Full detail
X:quiet:lowNoise + budget constraints Flags only
S:work|housingPrivate context exists Categories only

The AI knows that work and housing context influenced the recommendations, but not what that context is. This enables personalization without surveillance.

Key Concepts

Privacy Levels

  • Public — Always shared (goals, experience level)
  • Consent — Shared when you approve (specific preferences)
  • Private — Never transmitted, only influences locally (sensitive reasons)

Constitutions

Constitutions define AI behavioral guidelines. They specify what an AI should prioritize, avoid, and how it should interact. VCP contexts reference constitutions to ensure consistent behavior.

Personas

Different interaction styles built into constitutions:

  • Godparent — Nurturing, supportive, patient
  • Sentinel — Cautious, protective, conservative
  • Ambassador — Professional, diplomatic, balanced
  • Anchor — Stable, grounding, realistic
  • Nanny — Structured, directive, safe

Next Steps