Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "vulca",
"version": "0.23.0",
"version": "0.23.1",
"description": "Vulca visual-control plugin for Claude Code: discovery, brainstorm, spec, plan, evaluate, and decompose workflows backed by Vulca MCP tools.",
"homepage": "https://github.com/vulca-org/vulca-plugin",
"license": "Apache-2.0",
Expand Down
19 changes: 19 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,24 @@
# Changelog

## v0.23.1 (2026-05-11)

Patch release for the NB2/Gemini masked-edit adapter.

### Fixes

- Rendered RGBA edit masks as visible black/white coordinate masks before
sending them to Gemini/NB2 image-edit calls, while preserving the public
`inpaint_with_mask` API contract.
- Tightened the Gemini adapter prompt so the visible mask is treated as edit
guidance, not output content.

### Verification

- Focused redraw/provider suite: 143 passed, 5 warnings.
- `ruff check src/vulca/providers/gemini.py tests/test_gemini_image_size.py`:
passed.
- `git diff --check`: passed.

## v0.23.0 (2026-05-01)

First public PyPI release after v0.19.0. This release bundles the v0.20-v0.22
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ Claude: 5 layers extracted — each person figure isolated, drapery and ground s
### Path A — plugin install (recommended)

```bash
pip install vulca[mcp]==0.23.0
pip install vulca[mcp]==0.23.1
claude plugin install vulca-org/vulca-plugin
```

Expand All @@ -90,15 +90,15 @@ Then in Claude Code: `> /decompose /path/to/your_image.jpg`
### Path B — no plugin (power user)

```bash
pip install vulca[mcp]==0.23.0
pip install vulca[mcp]==0.23.1

# Register MCP server — add to ~/.claude/settings.json:
# {"mcpServers": {"vulca": {"command": "uvx", "args": ["--from", "vulca[mcp]==0.23.0", "vulca-mcp"]}}}
# {"mcpServers": {"vulca": {"command": "uvx", "args": ["--from", "vulca[mcp]==0.23.1", "vulca-mcp"]}}}

# Install the /decompose skill:
mkdir -p ~/.claude/skills/decompose
curl -o ~/.claude/skills/decompose/SKILL.md \
"https://raw.githubusercontent.com/vulca-org/vulca/v0.23.0/.claude/skills/decompose/SKILL.md?utm_source=github-readme&utm_medium=oss&utm_campaign=refresh-2026-05-01"
"https://raw.githubusercontent.com/vulca-org/vulca/v0.23.1/.claude/skills/decompose/SKILL.md?utm_source=github-readme&utm_medium=oss&utm_campaign=refresh-2026-05-11"
```

<p align="center">
Expand Down Expand Up @@ -287,7 +287,7 @@ Custom traditions via YAML — `vulca evaluate painting.jpg --tradition ./my_sty
## Apple Silicon / MPS quickstart

```bash
pip install vulca[mcp,tools]==0.23.0
pip install vulca[mcp,tools]==0.23.1
# Local stack: ComfyUI + Ollama, full MPS support
```

Expand Down
2 changes: 1 addition & 1 deletion plugins/vulca/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "vulca",
"version": "0.23.0",
"version": "0.23.1",
"description": "Agent-native visual control for discovery, prompt structure, image generation routing, semantic layers, redraw, and cultural evaluation.",
"author": {
"name": "Vulca maintainers",
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "hatchling.build"

[project]
name = "vulca"
version = "0.23.0"
version = "0.23.1"
description = "Agent-native cultural art SDK for image generation, L1-L5 evaluation, layer editing, visual discovery, and cultural traditions. Agents drive creative decisions; Vulca provides hands + eyes."
readme = "README.md"
license = "Apache-2.0"
Expand Down
2 changes: 1 addition & 1 deletion src/vulca/_version.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = "0.23.0"
__version__ = "0.23.1"
2 changes: 1 addition & 1 deletion tests/test_visual_discovery_docs_truth.py
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ def test_codex_plugin_package_has_installable_metadata():
root_mcp_config = json.loads((ROOT / ".mcp.json").read_text(encoding="utf-8"))

assert manifest["name"] == "vulca"
assert manifest["version"] == "0.23.0"
assert manifest["version"] == "0.23.1"
assert manifest["skills"] == "./skills/"
assert manifest["mcpServers"] == "./.mcp.json"
assert "[TODO:" not in json.dumps(manifest)
Expand Down