Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

⚠ Test release — please do not use it yet. This is one of corkern's first uploads to PyPI, published only to try the release process. It is not meant for use. A proper version is planned for the coming weeks.

corkern

Collective knowledge for Claude Code — across projects, devices and people.

Claude Code keeps what it learns about you and your work in per-project memory files on one machine. corkern turns that into a synced knowledge base: a private git repository that every machine you use reads from and writes to, so what was learned in one project, on one laptop, is there the next time — anywhere.

Install — once per machine

uv tool install corkern        # or: pipx install corkern
corkern setup --clone git@github.com:<you>/<your-private-knowledge-repo>.git
corkern signing                # this machine's signing (+ push) key — asks first
corkern init-device --apply    # wire Claude Code — shows the plan, asks first
corkern doctor                 # check the installation

First machine without a knowledge repo yet: corkern setup --create-github <you>/<name> creates it as a private GitHub repository (--new keeps it local).

corkern is meant to be installed exactly once per user, as a tool. A copy inside a project's virtual environment refuses to act (only --version, --help, doctor and status run) — corkern doctor shows every copy it finds.

What it does

  • Syncs memories between machines through a private git repository you own: pulled when a Claude session starts, committed as memories are written, pushed when Claude finishes a reply.
  • Brings context into every session: open reminders, recent session notes and important memories are shown to Claude at session start.
  • Keeps concurrent edits side by side: when two machines change the same memory, both versions are kept (<name>.conflict-<host>-<time>.md) and reported. Memory indexes and the project registry merge line by line.
  • Stays out of Claude's way: the hooks always exit successfully; sync problems are recorded and shown by corkern status.
  • One key per machine: each machine signs its memory commits with its own key and can push with a deploy key limited to the knowledge repository.
  • Accepts only what your devices signed (opt-in, corkern trust): incoming memories signed by any other key, or unsigned, are held back until you accept them.
  • Keeps secrets out of the repository: before every commit, known token formats, private keys and password = …-style values are replaced by a marker; the original stays on that machine. The scan is pattern-based: a secret in a format it does not know can still get through.
  • Warns when MEMORY.md outgrows what Claude Code loads (200 lines / 25 KB).
  • Uses Claude Code's own setting (autoMemoryDirectory) to point each project's memory at the knowledge repository.

What corkern writes on your machine

File What corkern adds
~/.config/corkern/machine.conf this machine's knowledge repository (machine-local)
~/.local/share/corkern/hooks/ its hook scripts, copied from the package
~/.claude/settings.json one hook each for SessionStart, PostToolUse, Stop, SessionEnd — merged, a backup first
~/.claude/CLAUDE.md one line: @~/.corkern/global/CLAUDE.md
~/.claude/commands/corkern-*.md four slash commands
<project>/.claude/settings.local.json autoMemoryDirectory (kept out of the project's git)

What goes into ~/.claude is the same on every machine ($HOME-relative, a no-op where corkern is not installed), so it works with dotfile managers such as yadm, chezmoi or stow. A file that is a symlink is never written through.

Status

corkern was built by one developer for his own machines and personal use, but it might be useful for others too. Team use has only been simulated (10 Docker containers, three teams, one untrusted intruder). Use it at your own risk; when something goes wrong, corkern tries its best to report it and keeps both versions rather than overwriting.

Memories leave the machine only through git, to the knowledge repository you configure — and, when you run corkern distill or corkern harvest, to Claude for the analysis.

For Claude Code there is an open request for built-in sync of user config and memory: anthropics/claude-code#87027.

Licence

MIT

Metadata

Release files for corkern 2.0.0rc3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for corkern 2.0.0rc3
File Size Uploaded
corkern-2.0.0rc3.tar.gz 96.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for corkern 2.0.0rc3
File Interpreter ABI Platform
corkern-2.0.0rc3-py3-none-any.whl Python 3 none any Details

Total release size: 219.8 kB

Release files / corkern-2.0.0rc3.tar.gz

Download URL corkern-2.0.0rc3.tar.gz
Size 96.2 kB
Tags Source
SHA-256 checksum
How to use checksums
3290f278679523045846a9d411b3baeb59a0c2e98a52ff4dd4813576125504b4
BLAKE2b-256 checksum
How to use checksums
72c981cdc77fe889b62b2b737ff508c8157a752a36f40f8b2069fa40eb628833
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / corkern-2.0.0rc3-py3-none-any.whl

Download URL corkern-2.0.0rc3-py3-none-any.whl
Size 123.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d89fb5c104b94ee0e3cdedbed836e73be50de6ead3151565b714c295b2c41c84
BLAKE2b-256 checksum
How to use checksums
1e88747d92b5ad46830c8565b15f49618b29deb4f309c34954f464f423c1da2b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.0.0rc3 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page