diff --git a/.gitignore b/.gitignore index 71b732f..b5b7719 100644 --- a/.gitignore +++ b/.gitignore @@ -52,3 +52,6 @@ test_*.md # Generated diagrams (keep examples/diagrams/ for documentation) diagrams/ + +# Documentation symlink (points to project-docs) +docs diff --git a/src/discussions/runner.py b/src/discussions/runner.py index 5b76a7a..c799959 100644 --- a/src/discussions/runner.py +++ b/src/discussions/runner.py @@ -800,6 +800,9 @@ def run_turn( # Step 3: Call each participant responses_for_appender = [] + # Determine diagrams directory relative to discussion file + diagrams_dir = discussion_path.parent / "diagrams" + for alias in participants_to_call: tool_name = f"discussion-{alias}" log(f"Calling {alias}...") @@ -809,6 +812,8 @@ def run_turn( args.extend(["--callout", callout]) if provider: args.extend(["--provider", provider]) + # Always pass diagrams-dir relative to discussion file + args.extend(["--diagrams-dir", str(diagrams_dir)]) try: participant_result = _call_tool(tool_name, discussion_content, args) diff --git a/src/discussions/ui/gui.py b/src/discussions/ui/gui.py index 2eb643e..5ed17ec 100644 --- a/src/discussions/ui/gui.py +++ b/src/discussions/ui/gui.py @@ -2544,11 +2544,13 @@ class DiscussionGUI: except Exception as e: self._show_error(f"Failed to create discussion: {e}") - # Determine initial output directory + # Determine initial output directory - default to discussions/ subdirectory if self.current_discussion: initial_dir = self.current_discussion.path.parent else: - initial_dir = self.discussions_dir if self.discussions_dir else Path.cwd() + base_dir = self.discussions_dir if self.discussions_dir else Path.cwd() + # Default to discussions/ subdirectory (like CLI does) + initial_dir = base_dir / "discussions" with dpg.window(label="New Discussion", tag=window_tag, width=550, height=550, pos=[400, 150], no_collapse=True):