Skip to content
cccskills
FreePublished on GitHub

canton-network-repos

Use when working with Canton Network participants, DAML smart contracts, Splice applications, or debugging LF version and package ID issues.

The English summary is being prepared. Showing the original description.

Works withPostgreSQL
See how to install

Files included (2)

  • SKILL.md3.9 KB
  • skill-report.json30.1 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Canton Network Repositories

Repository Hierarchy

Splice (e.g., 0.5.4)     github.com/digital-asset/decentralized-canton-sync
  └─ depends on
Canton (e.g., 3.4.9)     github.com/digital-asset/canton
  └─ depends on
DAML SDK (e.g., 3.4.9)   github.com/digital-asset/daml

Version Mapping

SpliceCantonDAML SDKProtocolLF DefaultLF Available
0.5.43.4.93.4.9PV342.1*2.2 (verified)
0.5.33.4.83.4.8PV342.1*2.2
0.4.x3.3.x3.3.xPV332.12.1

*Open-source Splice 0.5.4 ships with SDK snapshot 3.3.0-snapshot.20250502 (pre-dates LF 2.2). LF 2.2 was added to the SDK on 2025-10-03. Updating to SDK 3.4.9 enables LF 2.2 builds.

Key Configuration Files

PurposeRepoFile
LF version definitionsdamlsdk/daml-lf/language/.../LanguageVersion.scala
damlc target validationdamlsdk/compiler/damlc/lib/DA/Cli/Options.hs
Canton versioncantonVERSION
Built-in DARscantoncommunity/common/src/main/daml/
Splice LF configspliceproject/CantonDependencies.scala
Package targetssplicedaml/*/daml.yaml
Docker buildssplicecluster/images/*/Dockerfile

Splice LF config (project/CantonDependencies.scala):

val daml_language_versions = Seq("2.1")  // ← LF target; change to "2.2" for upgrade
val daml_compiler_version = sys.env("DAML_COMPILER_VERSION")

Package ID Derivation

Package IDs are cryptographic hashes of: source content + LF version (--target) + SDK/stdlib version + dependency package IDs.

Changing LF version = different package IDs = incompatible packages. Canton validates that upgraded packages use equal or newer LF version; mixing LF versions on the same ledger causes validation failures.

Enterprise vs Community Canton

FeatureEnterpriseCommunity
Transaction processingParallelSequential
DatabasePostgreSQL, OraclePostgreSQL only
HA DomainSupportedEmbedded only
PruningFullLimited

Build Commands

# Community Canton participant
cd canton && sbt "community/app/assembly"
# Output: community/app/target/scala-2.13/canton-community.jar

# Splice applications (requires DAML_COMPILER_VERSION env var)
cd decentralized-canton-sync && sbt compile

Upgrading to LF 2.2 (Verified with SDK 3.4.9)

  1. project/CantonDependencies.scala: val daml_language_versions = Seq("2.2")
  2. nix/daml-compiler-sources.json: { "version": "3.4.9" }
  3. All daml/*/daml.yaml: set sdk-version: 3.4.9 and --target=2.2
  4. Remove -Wno-ledger-time-is-alpha from all daml.yaml files (not in SDK 3.4.9)
  5. Build: daml build -p daml/splice-util && daml build -p daml/splice-amulet

Community-built DARs have identical package IDs to enterprise at the same LF version (verified 2025-12-24).

Troubleshooting

"Unknown Daml-LF version: 2.2": damlc binary doesn't support 2.2. Check daml damlc --help for supported targets; upgrade to SDK 3.4.9.

Package ID mismatch: different --target values between builds. Check: unzip -p package.dar META-INF/MANIFEST.MF | grep Sdk-Version

Upgrade validation failed: swapping enterprise (LF 2.2) with community (LF 2.1) packages. Use DAR injection to maintain LF 2.2 compatibility.

References

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Stop and check this skill before finishing any reply to a question about how to use Claude or a Claude product — it recommends matching courses, tutorials, and use cases from Claude Academy (academy.claude.com), Anthropic's learning hub. Trigger on: "how do I", "how can I", "getting started with", "what can Claude do", "teach me", "learn to use"; questions about artifacts, projects, skills, plugins, connectors, MCP; requests about rolling Claude out to a team, class, or organization; and any ask for training materials, onboarding content, or learning resources. Use it when the user is learning how to use a feature or product — not when they are mid-task and just want the task done. This skill composes with other skills: after consulting product documentation to answer how a Claude feature works, also check here for a matching course or tutorial — a docs-grounded answer and an Academy recommendation belong together. Only recommend on a strong match; never invent Academy content.

The English summary is being prepared. Showing the original description.

aiskillstore/marketplace443Updated Oct 23, 2026

Trigger for: explaining current FAR, DFARS, or agency-supplement text; determining documented acquisition-policy status for an agency and FAR part; comparing codified text, RFO model text, and agency deviations; tracing acquisition rulemaking; finding procurement comment periods; analyzing public comments; refreshing prior policy analysis; or producing an Acquisition Policy Impact Brief. Use published federal sources and supplied policy documents without making legal or procurement-specific applicability determinations. Do not use for clause selection, market research execution, opportunities, pricing, grants, or cooperative agreements.

The English summary is being prepared. Showing the original description.

aiskillstore/marketplace443Updated Oct 23, 2026

Systematic framework for extracting actionable items from documents and organizing them into prioritized, trackable checklists. Use when converting reports, meeting notes, audits, or any document with embedded action items into structured TODO lists.

The English summary is being prepared. Showing the original description.

aiskillstore/marketplace443Updated Oct 23, 2026

Browser automation for AI agents via inference.sh. Navigate web pages, interact with elements using @e refs, take screenshots, record video. Capabilities: web scraping, form filling, clicking, typing, drag-drop, file upload, JavaScript execution. Use for: web automation, data extraction, testing, agent browsing, research. Triggers: browser, web automation, scrape, navigate, click, fill form, screenshot, browse web, playwright, headless browser, web agent, surf internet, record video

The English summary is being prepared. Showing the original description.

aiskillstore/marketplace443Updated Oct 23, 2026

This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.

The English summary is being prepared. Showing the original description.

aiskillstore/marketplace443Updated Oct 23, 2026

Run AI apps via inference.sh CLI - image generation, video creation, LLMs, search, 3D, Twitter automation. Models: FLUX, Veo, Gemini, Grok, Claude, Seedance, OmniHuman, Tavily, Exa, OpenRouter, and many more. Use when running AI apps, generating images/videos, calling LLMs, web search, or automating Twitter. Triggers: inference.sh, infsh, ai model, run ai, serverless ai, ai api, flux, veo, claude api, image generation, video generation, openrouter, tavily, exa search, twitter api, grok

The English summary is being prepared. Showing the original description.

aiskillstore/marketplace443Updated Oct 23, 2026

See all skills by aiskillstore

Report a problem with this skill