god-code 0.6.0__tar.gz → 0.6.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {god_code-0.6.0 → god_code-0.6.1}/PKG-INFO +1 -1
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/cli.py +53 -1
- {god_code-0.6.0 → god_code-0.6.1}/pyproject.toml +1 -1
- {god_code-0.6.0 → god_code-0.6.1}/.github/workflows/publish.yml +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/.gitignore +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/AGENTS.md +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/CHANGELOG.md +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/CLAUDE.md +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/CONTRIBUTING.md +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/LICENSE +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/README.md +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/agents/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/agents/configs.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/agents/dispatcher.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/agents/results.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/collision_planner.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/consistency_checker.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/dependency_graph.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/gdscript_linter.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/impact_analysis.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/pattern_advisor.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/project.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/resource_validator.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/scene_parser.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/scene_writer.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/godot/tscn_validator.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/llm/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/llm/adapters/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/llm/adapters/anthropic.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/llm/adapters/base.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/llm/adapters/openai.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/llm/client.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/llm/streaming.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/llm/types.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/llm/vision.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/mcp_server.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/prompts/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/prompts/assembler.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/prompts/build_discipline.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/prompts/godot_playbook.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/prompts/image_templates.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/prompts/knowledge_selector.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/prompts/skill_library.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/prompts/skill_selector.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/prompts/system.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/py.typed +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/auth.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/config.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/context_manager.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/design_memory.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/engine.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/error_loop.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/events.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/gameplay_reviewer.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/modes.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/oauth.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/playtest_harness.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/providers.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/quality_gate.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/reviewer.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/runtime_bridge.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/scenario_specs/hud_feedback.json +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/scenario_specs/player_movement.json +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/scenario_specs/scene_transition.json +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/runtime/session.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/security/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/security/classifier.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/security/hooks.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/security/policies.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/security/protected_paths.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/security/tool_pipeline.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/testing/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/testing/scenario_runner.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/analysis_tools.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/base.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/editor_bridge.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/file_ops.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/git.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/godot_cli.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/image_gen.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/list_dir.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/memory_tool.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/registry.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/scene_tools.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/screenshot.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/script_tools.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/search.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/shell.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tools/web_search.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tui/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tui/display.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/godot_agent/tui/input_handler.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/skills/god-code-setup/SKILL.md +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/agents/test_dispatcher.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/agents/test_playtest_analyst.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/e2e/test_planner_worker_reviewer_flow.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/e2e/test_policy_enforcement.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/e2e/test_scenario_runner.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/test_collision_planner.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/test_consistency.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/test_dependency_graph.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/test_impact_analysis.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/test_linter.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/test_pattern_advisor.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/test_project.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/test_resource_validator.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/test_scene_parser.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/test_scene_writer.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/godot/test_tscn_validator.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/llm/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/llm/test_adapters.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/llm/test_client.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/llm/test_vision.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/prompts/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/prompts/test_knowledge_selector.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/prompts/test_prompt_assembler.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/prompts/test_skill_selector.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/prompts/test_system_prompt.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_config.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_context_manager.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_design_memory.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_engine.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_error_loop.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_gameplay_reviewer.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_mode_restrictions.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_multi_agent_flow.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_playtest_harness.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_quality_gate.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_reviewer.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_runtime_bridge.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/runtime/test_session.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/security/test_classifier.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/security/test_hooks.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/security/test_permissions.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/security/test_tool_pipeline.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/test_cli_config_flow.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/test_e2e.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/test_package_compatibility.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/test_runtime_switch_commands.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/__init__.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_analysis_tools.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_editor_bridge.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_file_ops.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_git.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_godot_cli.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_list_dir.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_memory_tool.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_registry.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_scene_tools.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_script_tools.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_search.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tools/test_shell.py +0 -0
- {god_code-0.6.0 → god_code-0.6.1}/tests/tui/test_input_handler.py +0 -0
|
@@ -702,7 +702,7 @@ def _run_setup_wizard(config_path: Path | None = None) -> None:
|
|
|
702
702
|
click.echo()
|
|
703
703
|
|
|
704
704
|
|
|
705
|
-
_VERSION = "0.6.
|
|
705
|
+
_VERSION = "0.6.1"
|
|
706
706
|
|
|
707
707
|
|
|
708
708
|
def _check_update() -> None:
|
|
@@ -1680,5 +1680,57 @@ def mcp_command(project: str):
|
|
|
1680
1680
|
run_mcp_server(project_path=project)
|
|
1681
1681
|
|
|
1682
1682
|
|
|
1683
|
+
@main.command()
|
|
1684
|
+
def tools():
|
|
1685
|
+
"""List all available MCP tools with descriptions."""
|
|
1686
|
+
from rich.console import Console
|
|
1687
|
+
from rich.table import Table
|
|
1688
|
+
from rich.panel import Panel
|
|
1689
|
+
|
|
1690
|
+
console = Console()
|
|
1691
|
+
|
|
1692
|
+
try:
|
|
1693
|
+
from godot_agent.mcp_server import mcp as mcp_instance
|
|
1694
|
+
mcp_tools = mcp_instance._tool_manager._tools
|
|
1695
|
+
except Exception:
|
|
1696
|
+
console.print("[red]MCP not available. Install with: pip install god-code[mcp][/]")
|
|
1697
|
+
return
|
|
1698
|
+
|
|
1699
|
+
t = Table(show_header=True, padding=(0, 1))
|
|
1700
|
+
t.add_column("#", style="dim", width=3)
|
|
1701
|
+
t.add_column("Tool", style="green bold")
|
|
1702
|
+
t.add_column("Description", style="dim")
|
|
1703
|
+
|
|
1704
|
+
for i, (name, tool) in enumerate(sorted(mcp_tools.items()), 1):
|
|
1705
|
+
desc = (tool.description or "").split("\n")[0][:80]
|
|
1706
|
+
t.add_row(str(i), name, desc)
|
|
1707
|
+
|
|
1708
|
+
console.print(Panel(t, title=f"[cyan]God Code MCP Tools ({len(mcp_tools)})[/]", border_style="cyan"))
|
|
1709
|
+
console.print()
|
|
1710
|
+
console.print("[dim]Use these tools via MCP in Claude Code, or directly in god-code chat.[/]")
|
|
1711
|
+
|
|
1712
|
+
|
|
1713
|
+
@main.command("update-skill")
|
|
1714
|
+
def update_skill():
|
|
1715
|
+
"""Download/update the god-code-setup skill for Claude Code."""
|
|
1716
|
+
from pathlib import Path
|
|
1717
|
+
import httpx
|
|
1718
|
+
|
|
1719
|
+
skill_dir = Path.home() / ".claude" / "skills" / "god-code-setup"
|
|
1720
|
+
skill_dir.mkdir(parents=True, exist_ok=True)
|
|
1721
|
+
skill_file = skill_dir / "SKILL.md"
|
|
1722
|
+
url = "https://raw.githubusercontent.com/888wing/god-code/main/skills/god-code-setup/SKILL.md"
|
|
1723
|
+
|
|
1724
|
+
click.echo(f"Downloading skill from {url}...")
|
|
1725
|
+
try:
|
|
1726
|
+
resp = httpx.get(url, timeout=10, follow_redirects=True)
|
|
1727
|
+
resp.raise_for_status()
|
|
1728
|
+
skill_file.write_text(resp.text)
|
|
1729
|
+
click.secho(f"Skill updated: {skill_file}", fg="green")
|
|
1730
|
+
click.echo("Restart Claude Code to activate.")
|
|
1731
|
+
except Exception as e:
|
|
1732
|
+
click.secho(f"Failed: {e}", fg="red")
|
|
1733
|
+
|
|
1734
|
+
|
|
1683
1735
|
if __name__ == "__main__":
|
|
1684
1736
|
main()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|