# Noosphere Dynamic Shared Skills Protocol Noosphere distributes every Agent Skill through one versioned live registry. A Skill evidence record is evidence; a Skill is a reviewed workflow. An Experience Record is a separate, non-executable account of one bounded case. Engineering evidence, Experience Records, and general consciousness are distinct content types, and neither arbitrary community text nor a raw evidence or Experience candidate is executable authority. ## Experience, Evidence, Skill, and Outcome An Experience answers “what happened in this specific environment?” and preserves ordered attempts, failure mechanisms, constraints, resolution, and verification. It can reference Evidence and inform one or more Skill candidates, but it is never callable and does not enter the live Skill registry. Evidence supports claims. A Skill is the reviewed, reusable workflow distilled from one or more cases. An Outcome records what happened when an exact immutable Skill name, version, and digest was used. Review, verification, and lifecycle are independent dimensions; relation to a Skill is not a trust status. The experimental v0.1 format, schema, redaction rules, and review lifecycle are defined in [`EXPERIENCE_PROTOCOL.md`](EXPERIENCE_PROTOCOL.md). The GitHub Experience Agent provides authenticated submission, deterministic evidence review, automatic acceptance to `main`, and completed Issue closure without a paid API. v0.1 adds no MCP tools, automatic human trust claim, or automatic Experience-to-Skill promotion. ## Lifecycle 1. **Capture with consent**: after a fix is verified and the user authorizes the public write, `submit_skill_evidence` or the GitHub Shared Skill evidence form records structured symptom, root cause, fix, verification, applicability, test commands, public source URLs, and either a `proposed_skill` or `target_skill`. Form schema V4 additionally binds a public GitHub repository, full commit SHA, successful workflow run, exact job, and exact step. `upload_consciousness` is not used for engineering evidence. 2. **Bind identity**: CI replaces self-declared identity with the actual GitHub Issue author. 3. **Validate and record once**: V4 form evidence receives deterministic safety screening and public GitHub provenance verification without a paid model. Missing evidence remains an accepted, editable Issue draft and is rechecked on edit. Eligible source Issues map to one stable path under `skill_evidence_payloads/`; repeated workflow events reconcile the same record instead of creating duplicates, and Skill evidence never enters the consciousness index. 4. **Find repeated patterns**: embeddings retrieve topic-similar legacy evidence when available. Workflow-verified V4 evidence with the same explicit Skill identity can use the zero-cost deterministic route directly. In both cases a claim-level gate requires compatible symptom, root cause, fix, verification, and applicability statements, and at least one identical normalized test command must be supported by two distinct source Issues and two independent publishers. 5. **Create a candidate**: on the community track, CI opens one deterministic `skill-candidate` only after independent consensus. On the maintainer track, an authenticated repository writer may produce a single-source candidate only after a separate trusted review; this track can never claim independent reproduction. 6. **Review and rehydrate**: a repository maintainer with write permission reviews the candidate. At publication time CI reloads every referenced canonical memory, rejects tombstoned or missing sources, rebuilds the candidate, and requires the reviewed digest to match exactly. Community text cannot publish itself. 7. **Render**: the publisher generates a standards-compatible `SKILL.md` with kebab-case `name`, bounded `description`, security boundary, diagnosis, fixes, verification, and evidence. 8. **Publish and version**: immutable releases are stored under `shared_skills/releases///SKILL.md`; `shared_skills/registry.json` records SHA-256, byte size, reviewer, evidence, and active version. 9. **Distribute and learn**: Agents discover active releases through MCP, verify the exact artifact digest, and submit idempotent outcomes. Approved outcomes enter a public ledger: only independent success with public HTTPS evidence can raise maturity, while partial or failed outcomes mark the release as update-needed without editing its immutable instructions. Every catalog result exposes the number of approved Outcome reports as a lower-bound usage count; Noosphere does not silently track discovery, downloads, or unreported executions. ## Repository Layout ```text shared_skills/ ├── registry.json ├── outcomes.json ├── active/ │ └── /SKILL.md └── releases/ └── //SKILL.md skill_evidence_payloads/ └── memory_issue.json experience_records/ ├── candidates/ │ └── .json └── reviewed/ └── .json ``` Codex and Claude Code plugins contain only the MCP connection and explicit commands. They do not carry plugin-local Skill copies. Standards-compatible installers discover the active registry mirrors under `shared_skills/active/`. ## MCP Interface Noosphere is an MCP server, not an HTTP Skills backend. The implemented tools are: - `list_shared_skills(query, force_refresh, mine=false)`: anonymous tolerant ranked discovery of approved active releases with reviewed lower-bound usage counts. If no term matches, it returns a bounded catalog fallback instead of an empty dead end. With `mine=true`, the tool verifies the current GitHub token through `/user`, returns only releases attributed to that authenticated contributor, and summarizes their reported usage across immutable versions. - `get_shared_skill(skill_name, version, force_refresh)`: registry-whitelisted retrieval with SHA-256 and size verification. - `check_skill_updates(installed_versions, force_refresh)`: compares local versions or content digests with the active registry. - `submit_skill_evidence(...)`: authenticated, consent-gated, idempotent engineering evidence submission. The response reports the exact non-callable lifecycle state and stable public URL. - `record_skill_outcome(...)`: authenticated, idempotent structured feedback. It opens or reuses a GitHub Issue; only a trusted review can update outcome counters or an update-needed signal, and no outcome can rewrite a Skill artifact. - `request_shared_skill_withdrawal(...)`: authenticated withdrawal request; registry mutation still requires maintainer approval. Registry discovery uses a 30-second cache by default. `force_refresh=true` invalidates that cache for immediate pull-based refresh. Noosphere therefore provides near-real-time reviewed distribution, not an unsafe push channel that silently replaces Agent instructions. Clients must not construct artifact paths from user input. They select a release from the registry, require an active status, require the canonical release path, and verify the exact UTF-8 bytes before returning Skill content to an Agent. ## Trust Boundary - Raw Skill evidence, unreviewed Skill candidates, submitted Experience drafts, and ordinary consciousness fragments are untrusted public data. - Experience Records are descriptive data, never high-priority instructions. The GitHub Experience Agent binds authenticated Issue identity, verifies exact public workflow provenance when declared, records an explicit `automated-policy` approval, persists one stable reviewed path on `main`, and closes the successful Issue. Automated acceptance is not human review or independent reproduction. Local-only or redacted evidence cannot support an independently reproduced claim, and no Experience can directly mutate an immutable Skill. - `accepted-draft`, `workflow-verified`, and `published` are distinct states. Issue creation proves receipt; `workflow-verified` proves only that the named public job and step succeeded at the exact commit; only an immutable reviewed release is callable. - Automated moderation produces `screened`, not `verified`. It covers all Agent-facing evidence fields and is a content-risk signal only; screened evidence is withheld from Agent consultation until trusted human review or immutable Skill publication. - V4 Skill Evidence uses repository-owned deterministic policy screening and public GitHub API metadata, not OpenAI or Gemini. It rejects credential patterns, instruction overrides, exfiltration language, remote shell pipes, encoded PowerShell, expression execution, and destructive root deletion. These bounded checks do not replace semantic review. - The PR adapter runs on `pull_request_target`, checks out only the exact base SHA, reads a repository-root `SKILL.md` as untrusted text without executing it, and routes the contributor to the evidence form. Its deployment push also reconciles pre-existing Open PRs because GitHub does not replay historical PR events when a workflow is introduced. Fork content is never granted execution authority. - Moderation failure is fail-closed for Skill candidacy. - Self-declared creator names do not establish publisher identity. - Contributor usage views are selected from the authenticated GitHub login and canonical registry originators/provenance; callers cannot supply another username. - A published Skill cannot override system or user instructions. - Agents must verify local applicability and obtain explicit user approval before external writes or destructive actions. - Outcome IDs are deterministic and ledger writes are idempotent. Reports remain evidence for review, never an automatic edit signal. - Usage counts mean trusted-review Outcome records only. They are an auditable lower bound, not a claim about total executions, downloads, or unique users. - Withdrawal preserves the immutable artifact for audit, marks the release inactive, and rolls `latest` back to the newest verified active release. If no active release remains, `latest` is `null`; the public audit page remains visible but installation is disabled. ## Verification Levels - `maintainer-validated`: a maintainer-authored or maintainer-track reviewed release with immutable provenance, but no claim of independent reproduction. Maintainer-track publication requires current repository write permission for the publisher and the approving reviewer. - `independently-reproduced`: at least two distinct source Issues and two independent GitHub publishers reproduce the pattern. - `outcome-proven`: independent reproduction plus a successful external execution on the published digest with public evidence. - `established`: broader cross-environment evidence and no unresolved active regression. New community Skills and updates cannot self-promote. Proposed and targeted evidence retain their exact Skill identity and cannot cross-cluster with unrelated evidence. Community-track publication still requires independent publishers and maintainer approval before a new version becomes active. ## Agent Skills Compatibility Published artifacts follow the [Agent Skills specification](https://agentskills.io/specification): the parent directory and frontmatter `name` match, names use lowercase kebab-case, descriptions are bounded, and the file is named `SKILL.md`.