diff --git a/src/kaizen_agentic/cli.py b/src/kaizen_agentic/cli.py index 9d6e64d..586405a 100644 --- a/src/kaizen_agentic/cli.py +++ b/src/kaizen_agentic/cli.py @@ -135,8 +135,14 @@ def safe_cli_wrapper(): _FEEDBACK_CHANNELS = { "issues": "https://gitea.coulomb.social/coulomb/kaizen-agentic/issues", "issue_templates": "https://gitea.coulomb.social/coulomb/kaizen-agentic/issues/new/choose", - "feedback_guide": "https://gitea.coulomb.social/coulomb/kaizen-agentic/src/branch/main/docs/FEEDBACK.md", - "contributing": "https://gitea.coulomb.social/coulomb/kaizen-agentic/src/branch/main/CONTRIBUTING.md", + "feedback_guide": ( + "https://gitea.coulomb.social/coulomb/kaizen-agentic/" + "src/branch/main/docs/FEEDBACK.md" + ), + "contributing": ( + "https://gitea.coulomb.social/coulomb/kaizen-agentic/" + "src/branch/main/CONTRIBUTING.md" + ), } @@ -154,7 +160,10 @@ def feedback(as_json: bool): payload = { "channels": _FEEDBACK_CHANNELS, "templates": ["bug_report", "feature_request", "feedback"], - "cli_hint": "Use Gitea issue templates or State Hub messages for cross-repo coordination", + "cli_hint": ( + "Use Gitea issue templates or State Hub messages " + "for cross-repo coordination" + ), } if as_json: click.echo(json.dumps(payload, indent=2, sort_keys=True)) @@ -794,11 +803,11 @@ def disable(name: str, target: str): click.echo(f"❌ Extension not found: {name}") -@extensions.command() +@extensions.command("remove") @click.argument("name") @click.option("--target", "-t", default=".", help="Target directory (default: current)") @click.confirmation_option(prompt="Are you sure you want to remove this extension?") -def remove(name: str, target: str): +def remove_extension(name: str, target: str): """Remove an extension.""" from .extensions import ExtensionManager @@ -1173,7 +1182,8 @@ def metrics_optimize(agent_name: Optional[str], target: str, min_samples: int): ) else: click.echo( - f" Note: {len(records)} record(s) — need {min_samples} for actionable recommendations" + f" Note: {len(records)} record(s) — " + f"need {min_samples} for actionable recommendations" ) click.echo() diff --git a/src/kaizen_agentic/extensions.py b/src/kaizen_agentic/extensions.py index 98ffed0..e9adb34 100644 --- a/src/kaizen_agentic/extensions.py +++ b/src/kaizen_agentic/extensions.py @@ -438,7 +438,10 @@ version: {extension.version} agent_content += "---\n\n" agent_content += f"# {extension.name}\n\n" agent_content += f"{extension.description}\n\n" - agent_content += f"This agent extends **{extension.base_agent}** with project-specific functionality.\n\n" + agent_content += ( + f"This agent extends **{extension.base_agent}** " + f"with project-specific functionality.\n\n" + ) if extension.configuration.get("custom_instructions"): agent_content += "## Custom Instructions\n\n" diff --git a/src/kaizen_agentic/migration.py b/src/kaizen_agentic/migration.py index 17b7d4d..7af777b 100644 --- a/src/kaizen_agentic/migration.py +++ b/src/kaizen_agentic/migration.py @@ -2,9 +2,8 @@ import json import shutil -import yaml from pathlib import Path -from typing import Dict, List, Optional, Set, Tuple +from typing import Dict, List, Optional from dataclasses import dataclass from enum import Enum