Skip to content

Enhancement/claude agents#120

Merged
MarcSkovMadsen merged 4 commits into
mainfrom
enhancement/claude-agents
Jan 24, 2026
Merged

Enhancement/claude agents#120
MarcSkovMadsen merged 4 commits into
mainfrom
enhancement/claude-agents

Conversation

@MarcSkovMadsen

Copy link
Copy Markdown
Owner

No description provided.

Copilot AI review requested due to automatic review settings January 24, 2026 15:48
@MarcSkovMadsen MarcSkovMadsen merged commit 6e8a1f9 into main Jan 24, 2026
10 of 16 checks passed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds first-class support for Claude Code agents alongside existing Copilot agents and updates documentation and assets to reflect the new “Architect” agent naming and workflows.

Changes:

  • Introduces Claude-specific agent configurations and a new holoviz-mcp install claude CLI command (with project/user scopes and optional skills installation).
  • Refactors configuration and CLI code to support tool-scoped agents directories (copilot vs claude) while keeping existing behavior for other resources.
  • Updates tutorials, getting-started docs, navigation, and screenshots to use the new HoloViz DataViz Architect and DataApp Architect agents for both Copilot and Claude Code.

Reviewed changes

Copilot reviewed 21 out of 25 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
tests/test_cli.py Adds CLI and entrypoint tests ensuring the new install claude subcommand is wired correctly and exposes the expected help text.
src/holoviz_mcp/config/resources/agents/copilot/holoviz-dataviz-architect.agent.md Renames and refines the Copilot data visualization planning agent to “HoloViz DataViz Architect” with updated role description.
src/holoviz_mcp/config/resources/agents/copilot/holoviz-dataapp-architect.agent.md Renames and refines the Copilot app-planning agent to “HoloViz DataApp Architect” with an architecture-focused role description.
src/holoviz_mcp/config/resources/agents/claude/holoviz-dataviz-architect.md Adds a Claude-specific “holoviz-dataviz-architect” agent definition and guidance, mirroring the Copilot DataViz Architect behavior for Claude Code.
src/holoviz_mcp/config/resources/agents/claude/holoviz-dataapp-architect.md Adds a Claude-specific “holoviz-dataapp-architect” agent definition describing responsibilities and output format for application architecture planning.
src/holoviz_mcp/config/models.py Extends HoloVizMCPConfig.agents_dir to accept an optional tool (“copilot” or “claude”), enabling separate agent subdirectories under resources/agents/.
src/holoviz_mcp/cli.py Updates install_copilot to use the copilot agents subdirectory and adds a new install_claude command that installs Claude agents and shared skills to either project or user-level .claude directories.
mkdocs.yml Adjusts navigation labels to use “Copilot” / “Claude” rather than editor-specific names, clarifying which tutorials target which assistant.
docs/tutorials/weather-dashboard-copilot-vscode.md Updates references and screenshots to use the “HoloViz DataApp Architect” agent instead of the deprecated “HoloViz App Planner” name.
docs/tutorials/stock-analysis-copilot-vscode.md Updates terminology and images to refer to the “HoloViz DataViz Architect” agent and tweaks wording accordingly.
docs/tutorials/stock-analysis-claude-code.md Revises prompts and code fences to better reflect Claude Code usage patterns and updates a panel serve command.
docs/tutorials/getting-started-copilot-vscode.md Renames the agent usage section and references to “HoloViz DataApp Architect” and updates the associated screenshot.
docs/tutorials/getting-started-claude-code.md Adds an optional “Install Claude Agents” step documenting holoviz-mcp install claude (with --scope user and --skills) and renumbers later sections.
docs/index.md Tweaks the feature bullets to emphasize “Agents and Skills” and “Display” as distinct capabilities.
docs/how-to/configure-claude-code.md Documents new holoviz-mcp install claude commands (project/user scopes and skills) and links to the getting-started guide section.
docs/assets/images/stock-analysis-holoviz-architect.png Adds an updated screenshot illustrating the DataViz Architect workflow for the stock analysis tutorial.
docs/assets/images/holoviz-mcp-architect.png Adds an image asset representing the HoloViz MCP architect experience.
docs/assets/images/copilot-holoviz-app-architect.png Adds a new screenshot for the Copilot HoloViz DataApp Architect UI.
.github/prompts/ruff_check.prompt.md Removes an obsolete Ruff-specific prompt configuration no longer needed in the .github/prompts directory.
.github/prompts/holoviz.prompt.md Removes a HoloViz development guidelines prompt file from .github/prompts.
.github/prompts/developer_guide.prompt.md Removes an old developer guide prompt file that referenced external documentation.
.github/agents/holoviz-app-planner.agent.md Deletes the legacy “HoloViz App Planner” agent definition in favor of the new architect agents.
.claude/agents/holoviz-dataviz-architect.md Adds a repository-local Claude agent definition for holoviz-dataviz-architect (parallel to the config resources entry).
.claude/agents/holoviz-dataapp-architect.md Adds a repository-local Claude agent definition for holoviz-dataapp-architect, mirroring the configuration under src/holoviz_mcp/config/resources/agents/claude/.

Comment thread src/holoviz_mcp/cli.py
Comment on lines +111 to +145
@install_app.command(name="claude")
def install_claude(
agents: bool = True,
skills: bool = False,
scope: Annotated[str, typer.Option("--scope", help="Installation scope: 'project' for .claude/agents/, 'user' for ~/.claude/agents/")] = "project",
) -> None:
"""Install HoloViz MCP resources for Claude Code.

Installs agent files to Claude Code's expected directory structure.

Parameters
----------
agents : bool, default=True
Install agent files
skills : bool, default=False
Install skills files
scope : str, default="project"
Installation scope: 'project' installs to ./.claude/agents/,
'user' installs to ~/.claude/agents/
"""
from pathlib import Path

from holoviz_mcp.config.loader import get_config

config = get_config()

if agents:
source = config.agents_dir("default", tool="claude")

# Determine target based on scope
if scope == "user":
target = Path.home() / ".claude" / "agents"
else: # project
target = Path.cwd() / ".claude" / "agents"

Copilot AI Jan 24, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The scope option is documented as accepting only 'project' or 'user', but it is typed as a free-form str and any unexpected value falls through to the else branch and is treated as 'project' without feedback. This can lead to confusing behavior if a user mistypes the value (e.g. --scope User), as the command will "succeed" but install to the project-level path instead of the intended location. Consider constraining the option to explicit choices (e.g. Literal["project", "user"] or typer.Choice(["project", "user"])) and/or validating and erroring on invalid values.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants