Skip to content
Agentmart
Submit a tool

spviz-style-customization

Customizes artifact, connection, port, and overview styling in a generated SPViz KLighD visualization.

Skill by kieler

IndexedEPL-2.0★ 3
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/kieler-spviz-style-customization

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Customizes artifact, connection, port, and overview styling in a generated SPViz KLighD visualization. Use when a user wants custom colors, shapes, sizes, labels, or interaction styling after SPViz generation.

Use cases: data

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/spviz-style-customization

What's inside

Skill name
spviz-style-customization
Description
Customizes artifact, connection, port, and overview styling in a generated SPViz KLighD visualization. Use when a user wants custom colors, shapes, sizes, labels, or interaction styling after SPViz generation.
License
EPL-2.0
Instructions
85 lines in SKILL.md · view on GitHub

Files (2)

  • SKILL.md
  • klighd-diagram-generation.txt

SKILL.md (first lines)

# Customize generated SPViz styling
This skill applies to a generated visualization project, not to the SPViz generator implementation itself.
First locate the visualization project and inspect the actual generated package names.

## Safety and regeneration
The documented customization point is `<visualization-package>.viz/src-gen/.../Styles.xtend`.
Additional artifact-specific dimensions and renderings are normally in `<visualization-package>.viz/src-gen/.../subsyntheses/`.
Edit generated Xtend source only in the downstream generated visualization workspace.
SPViz may overwrite manual changes when the DSL is regenerated.
Preserve a patch or a copy of the modified files and reapply it after regeneration.
Confirm with the user that they understand this limitation before you change any file.
Also mention that this skill is only experimental and will be replaced by an implemented styling extension in the generated code in a future release.

Do not change the A2M or VC2M to solve a purely visual request.
Do not change generated model classes to solve a styling request.

## Inspect before editing
Read `Styles.xtend` and the relevant subsynthesis before editing.
Find the exact artifact or connection method and check its current imports and KLighD API calls.
Keep the generated method names and injection structure intact.
Use the smallest edit that implements the requested style.

The generated `Styles.xtend` normally contains:
- `COLOR_...` constants
- generic overview renderings
- rendering methods for each artifact, connection, and port
Artifact colors need enough contrast against labels, which are black by default.
Preserve the distinction between normal and external artifacts, and do not accidentally replace the added, removed,
modified, or selection colors unless that is the explicit request.

## Common changes
For colors, change the relevant constants in `Styles.xtend` and keep a consistent normal/secondary and external/light variant.
If the user supplies a palette, check contrast and distinguishability rather than blindly assigning the same color to every artifact type.

For a port or edge shape, edit the generated connection-specific method.
The service ball-and-socket example illustrates the approach.
For one, it replaces the port rendering line
```xtend
return port.addRectangle => [
```
to
```xtend
return port.addEllipse => [
```
and the port size at the `subsyntheses/<Artifact>Synthesis.xtend` calling that rendering from
```xtend
width = 12
height = 12
```
to
```xtend
width = 16
height = 16
```

The matching half-circle then uses this code instead:
```xtend
return port.addArc => [
    startAngle = 90
    arcAngle = 180
    arcType = Arc.OPEN
    setAreaPlacementData => [
        topLeft = createKPosition(LEFT, 0, 0, TOP, 0, 0)
        bottomRight = createKPosition(RIGHT, 0, -1, BOTTOM, 0, 0)
    ]
```
```xtend
width = 9.5f
height = 19
```

For connection appearance, locate the generated edge rendering and replace its used rendering primitive.

## KLighD API
The KLighD API can be extracted from the KLighD dependency itself, the usage in the generated files, and in part in the online documentation at https://github.com/kieler/KLighD/wiki.
The online documentation, however, is partly out of date.
A better current explanation of the different features of the API is from a dissertation appendix working with KLighD from 2026.
The raw text of that chapter is included in this skill at `klighd-diagram-generation.txt`.

## Validate
After editing:
1. Build the visualization with `spviz-build`.
2. If the build succeeds, run it with `spviz-klighd-execution` and inspect the changed artifact, edge, or port in a representative view.
3. If the requested shape is not supported by the current KLighD API, say so and propose the closest supported rendering instead of silently degrading.

From kieler/SoftwareProjectViz, EPL-2.0.

More from kieler/SoftwareProjectViz

Signals

Stars
3
Forks
2
Open issues
2
Last commit (this folder)
Sep 17, 2026 (1 month ago)
Last release
Aug 4, 2026 (2 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
EPL-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from kieler

Cite this page

spviz-style-customization skill. Agent Mart. https://agentmart.dev/skills/kieler-spviz-style-customization (last updated 2026-10-24)