Skip to main content

Publishing Packages

Share your extracted knowledge with the community by publishing CCX packages to the Lexicon Hub.

Prerequisites

  1. Authenticate — Run chaoscypher lexicon login to connect to the Hub (see Authentication)
  2. Export — Create a CCX package from your knowledge graph

Creating a Package

Before publishing, export your knowledge graph as a CCX package:

# Export everything
chaoscypher graph package export --output my-knowledge.ccx

# Export only templates (share your schema)
chaoscypher graph package export --output my-templates.ccx \
--no-knowledge --no-workflows

# Export only knowledge (share your data)
chaoscypher graph package export --output my-data.ccx \
--no-templates --no-workflows

# Export from a specific database
chaoscypher graph package export -d research -o research-export.ccx

Inspecting Before Publishing

Review what's in your package before uploading:

chaoscypher lexicon info ./my-knowledge.ccx --local
Package: my-knowledge.ccx

╭───────────── Package Info ─────────────╮
│ my-knowledge.ccx │
│ Compressed: 245.3 KB │
│ Uncompressed: 1.2 MB │
╰────────────────────────────────────────╯

Files: (12 total)
- manifest.json
- graph/entities.jsonld
- graph/relationships.jsonld
- templates/person.json
- templates/organization.json
... and 7 more

Archive size: 245.3 KB

Publishing

# Publish as public (default)
chaoscypher push my-knowledge.ccx

# Publish with a release message
chaoscypher push my-knowledge.ccx --message "Initial release — medical ontology v1"

# Publish as private
chaoscypher push my-knowledge.ccx --private

# Skip confirmation prompt
chaoscypher push my-knowledge.ccx --force
Pushing package: my-knowledge
File: my-knowledge.ccx
Size: 245.3 KB
Visibility: Public

Proceed with upload? [Y/n]: y

Uploading my-knowledge... ━━━━━━━━━━━━━━━━━━━━━ 245.3 KB

✓ Published my-knowledge v1.0.0
URL: https://lexicon.example.com/packages/my-knowledge

Share with:
chaoscypher pull my-knowledge

Visibility

VisibilityWho can see itWho can download it
PublicEveryoneEveryone
PrivateOnly youOnly you

Public packages appear in search results and can be downloaded by anyone. Private packages are only visible and downloadable by the authenticated owner.

Versioning

Each upload creates a new version of the package. The Lexicon Hub tracks version history, so users can pull specific versions:

# Users can pull any published version
chaoscypher pull your-username/package-name --version 1.2.0

Best Practices

  • Write clear descriptions — Help others understand what your package contains and what domain it covers
  • Use tags — Add relevant tags so your package is discoverable in filtered searches
  • Include templates — Sharing templates alongside knowledge helps others understand your schema
  • Version meaningfully — Publish new versions when you add significant new data or fix extraction issues
  • Start public — Public packages grow the community; use private only for proprietary data