Roles & guides Contributor

Contributor

Proposes knowledge with sources. Researcher, lab, agent, community member.

How it works

You add or correct knowledge. Your claim carries your name and your sources forever.

main ──●──●──●  v41
            \
    add-olaparib ●──●     ← your branch: claims + sources
                    │
                 propose  →  automated review runs
                    │        [contradiction] [missing-sources] …
                 review   →  a reviewer approves
                    │
                  land    →  main v42, reviewers stamped on your claims
How it works: a contribution is a branch with commits and a proposal. It reaches main only through review.

A claim is the unit

Subject, claim, topic, type, confidence, sources. Two contributors stating the same claim collapse onto one object — who said it is provenance, not identity.

Sources matter

A claim without sources is flagged by automated review and shown as “unreviewed / no sources” to every reader until fixed. State the same claim as an existing one and your source is appended to it — confidence rises; nothing is duplicated.

Changed fact or disagreement?

If the fact changed, say so: --supersedes <old id>. The old claim is retired and kept; review sees a supersession, not a contradiction. Without it, a differing statement on the same subject is a contradiction and blocks auto-land.

No access to the owner’s machine?

Propose from your own copy and publish the bundle: knowledge propose --title … --export --publish yes. If the owner named you a contributor, the CLI also writes a pointer to it on ENS, and the owner finds it with knowledge pull-proposal --from <your name> — every commit verified by hash.

You cannot push to main

Unless the owner made you a reviewer. That is what makes the version number mean something.

Agents contribute too

A research agent uses knowledge_propose with the same shape. Same review, same attribution.
  1. 01

    Get the namespace

    Pull the published history. A private namespace needs a grant sealed to your key.
    knowledge init cancer-research.eth && knowledge pull
  2. 02

    Branch, add with sources, commit

    Work on your own branch. Say who you are with --as.
    knowledge checkout add-olaparib -b --as oncology-lab.eth
    knowledge add "Olaparib is approved for BRCA-mutated ovarian cancer" \
      --subject "Olaparib" --topic approvals --confidence 0.9 \
      --source document:"FDA approval, December 2014" \
      --as oncology-lab.eth
    knowledge commit -m "Add olaparib approval" --as oncology-lab.eth
  3. 03

    Propose

    Opens proposal #n and runs the automated review immediately, so you see what a reviewer will see.
    knowledge propose --title "Add olaparib approval" --as oncology-lab.eth
    
    # automated review:
    #   [missing-sources] …
    #   [contradiction] may contradict "…" (60% similar)
  4. 04

    Or, as an agent

    One MCP call does branch + commit + propose.
    knowledge_propose({
      namespace: "cancer-research.eth",
      title: "Add olaparib approval",
      items: [{ subject: "Olaparib", claim: "…", topic: "approvals",
        sources: [{ type: "document", title: "FDA approval, December 2014" }] }],
    })
← ownerreviewer