Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.selftune.dev/llms.txt

Use this file to discover all available pages before exploring further.

Usage

As a skill user (sharing preferences)

selftune contributions <subcommand>
SubcommandDescription
statusShow current sharing preferences for discovered skills
preview <skill>Preview what signals would be shared for a skill
upload [--dry-run]Flush staged relay signals to the cloud endpoint
approve <skill>Opt in to sharing signals for a specific skill
revoke <skill>Opt out of sharing signals for a skill
default <ask|always|never>Set default sharing behavior for new skills
resetReset all sharing preferences

As a skill creator (receiving signals)

selftune creator-contributions <subcommand>
SubcommandDescription
statusShow which of your skills accept creator-directed signals
enable --skill <name>Enable signal sharing for a skill
enable --all [--prefix <value>]Enable for all skills (optionally filtered by prefix)
disable --skill <name>Disable signal sharing for a skill
Creator contributions require a creator_id that is the creator’s cloud user UUID. Pass --creator-id <uuid> or enroll in alpha so cloud_user_id is available automatically. selftune creator-contributions enable rejects non-UUID creator ids and unsupported signal names at config creation time.

How sharing works

  1. Skill creators bundle a selftune.contribute.json config with their skill, declaring which signals they want to receive
  2. When a user installs the skill, selftune contributions status shows it as available for opt-in
  3. The user approves sharing with selftune contributions approve <skill> for a discovered installed skill that ships a valid selftune.contribute.json
  4. During selftune sync (or selftune run), privacy-safe relay rows are staged locally in SQLite
  5. selftune run automatically flushes staged rows to the cloud relay endpoint (POST /api/v1/signals). You can also flush manually with selftune contributions upload.

Privacy

Contributions are anonymized before upload:
  • No raw user prompts are sent
  • Only aggregate signal patterns (query categories, trigger/miss counts)
  • Source keys are deterministic SHA-256 hashes — the relay can deduplicate without identifying users
  • PII patterns are stripped via regex before transmission
  • selftune contribute — Export an anonymized community bundle (separate from relay signals)
  • selftune alpha upload — Personal cloud upload cycle (separate from creator-directed sharing)