LikeC4 Syntax Sync

SkillDev tools

Sync the local LikeC4 syntax guide with the upstream LikeC4 skills repository (github.com/likec4/likec4/tree/main/skills/likec4-dsl). Use when the user asks to update, sync, or check the LikeC4 syntax guide, when upstream LikeC4 DSL changes are suspected, or when mentioning likec4 syntax sync, DSL drift, or syntax guide update.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the LikeC4 Syntax Sync skill

What this skill tells your AI

The instructions your AI receives, as published by erode-app/erode in .agents/skills/likec4-syntax-sync/SKILL.md and read by ahel’s review.

Keep packages/core/src/adapters/likec4/prompts/likec4-syntax-guide.md in sync with the canonical upstream LikeC4 DSL skill at likec4/likec4.

Our guide is injected into every model-patch prompt via {{syntaxGuide}}, so it must stay both accurate and concise (under 40 lines).

Step 1: Fetch Upstream

Fetch the relevant upstream files using gh api:

gh api repos/likec4/likec4/contents/skills/likec4-dsl/SKILL.md --jq '.content' | base64 -d
gh api repos/likec4/likec4/contents/skills/likec4-dsl/references/model.md --jq '.content' | base64 -d
gh api repos/likec4/likec4/contents/skills/likec4-dsl/references/identifier-validity.md --jq '.content' | base64 -d
gh api repos/likec4/likec4/contents/skills/likec4-dsl/references/specification.md --jq '.content' | base64 -d

Only these files contain model-patching-relevant syntax. Skip all others.

Step 2: Compare

Read the local file at packages/core/src/adapters/likec4/prompts/likec4-syntax-guide.md and compare against upstream for changes in these areas:

  • Identifiers: validity rules, allowed characters, start-with constraints
  • Elements: syntax forms (ID = KIND and KIND ID), nesting, property order
  • Relationships: implicit/explicit source, typed (-[KIND]->, .REL_KIND), this/it
  • Properties: title, summary, description, notes, technology, #tag, link, metadata
  • Strings: quoting styles, escaping, triple-quote multi-line markdown
  • Extend patterns: extend FQN { } for elements, extend SOURCE -> TARGET for relationships
  • Anti-patterns: dots in identifiers, parent-child relationships, redefinition vs extend

Explicitly skip (not relevant to model-patching): views, deployment, CLI commands, styling/shapes/colors/icons, dynamic views, predicates, wildcards, project configuration, response discipline, eval guidance.

Step 3: Update

Apply changes to the local file following these rules:

  • Keep under 40 lines total
  • Preserve the existing section structure and ## LikeC4 DSL SYNTAX REFERENCE heading
  • Use terse reference-card style, not explanatory prose
  • Only add information that affects model-patching correctness
  • Do not duplicate existing content

Step 4: Verify

npm run test

Confirm:

  • Tests pass
  • File starts with ## LikeC4 DSL SYNTAX REFERENCE
  • File is under 40 lines

Signals

GitHub stars
37
Forks
2
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
likec4-syntax-sync
Source
github.com/erode-app/erode