Skip to content

Conversation

@x85446
Copy link

@x85446 x85446 commented Sep 22, 2025

Summary

Thank you for maintaining this excellent voice interaction tool! This PR streamlines the documentation by consolidating related content and reducing duplication between the development and contribution guides.

Changes

  • Updated development-setup.md: Corrected uv workflow with proper virtual environment steps and added troubleshooting section
  • Enhanced CONTRIBUTING.md: Added contribution workflow and consolidated all contribution-related content
  • Cross-references: Each document now links to the other where appropriate

Benefits

  • Removes ~120 lines of duplicated content
  • Clearer separation between technical setup (development-setup.md) and contribution process (CONTRIBUTING.md)
  • Easier navigation for new contributors

Testing

Verified all commands work as documented, including the various ways to run pytest.

This follows the project's conventional commit format. Happy to make any adjustments you'd like!

@mbailey
Copy link
Owner

mbailey commented Sep 22, 2025

Thanks Travis!

In the 105 days since first releasing VoiceMode it's had 859 commits and 95 releases. The docs got big and outdated so I did a massive cull and rewrite but added notes that they need review. I've been focused on other things (testing install scripts on fresh OS installs, new features, my day job, etc) so really appreciate you putting the time into docs).

I did a quick review and overall it looks good. There is the "mcp" command in there that I've never heard of. I've been using "voicemode converse" as a really powerful way to test and see what's going on. I'll need to find some time to review but appreciate you pushing it forward a bit.

Copy link
Owner

@mbailey mbailey left a comment

Choose a reason for hiding this comment

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

Thanks for your contribution.
Added a few questions

uv run pytest

# Method 3: Using the Makefile
make test
Copy link
Owner

Choose a reason for hiding this comment

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

Any reason to put make test last?

Copy link
Author

Choose a reason for hiding this comment

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

No. I just interpred that would be your preference based on when I think the Makefile was added to the project. (My personal preference is Makefile's should be the entry to all things.) Lets move it up to the top!

Copy link
Author

@x85446 x85446 Sep 26, 2025

Choose a reason for hiding this comment

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

Updated in commit 4573d25. make test and make commands in general are the primary recommendation.

Copy link
Author

Choose a reason for hiding this comment

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

Hi @mbailey want any more changes? I can resolve these conversations if you like.

cd voicemode

# Install in development mode
uv tool install -e .
Copy link
Owner

Choose a reason for hiding this comment

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

Why do you prefer this over uv tool install -e .?

Copy link
Author

@x85446 x85446 Sep 22, 2025

Choose a reason for hiding this comment

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

I don't necessarily. (My end goal here was to figure out a particular bug I am having in Livekit and submit a fix. But I had a tough time figuring out best practices on the dev environment.) So I merged from several docs, to come up with this. If uv tool install -e . is best practice, lets go with that.

Copy link
Author

Choose a reason for hiding this comment

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

actually, Yes, if you want to have a virtual environment we need the uv venv and activate line. Because this is development mode, we should keep use the uv pip install -e .[dev,test] and drop the uv pip install -e .

Copy link
Owner

Choose a reason for hiding this comment

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

uv tool install

  • creates a self contained venv
  • puts all scripts in your path

Copy link
Author

Choose a reason for hiding this comment

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

updated in c9136a2.

## Contributing
2. **Run `mcp` to test the connection**
```bash
mcp test voice-mode
Copy link
Owner

Choose a reason for hiding this comment

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

What is mcp command?

Copy link
Author

Choose a reason for hiding this comment

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

Bad AI recommendation that I forgot to get rid of. New commit comming.

Copy link
Owner

Choose a reason for hiding this comment

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

It happens. :-)

Copy link
Owner

Choose a reason for hiding this comment

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

It happens. :-)

Copy link
Author

Choose a reason for hiding this comment

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

removed in 4573d25.

@x85446 x85446 requested a review from mbailey October 9, 2025 04:16
@mbailey
Copy link
Owner

mbailey commented Oct 14, 2025

I haven't forgotten this but my personal time has been focussed on other issues (replaced install.sh with uvx voice-mode-install

Are you using VoiceMode with Livekit?

@x85446
Copy link
Author

x85446 commented Oct 19, 2025

I was starting to look into live kit but other stuff unfortunately is taking my time.

…cation

- Update development-setup.md with correct uv workflow
  - Replace `uv tool install -e .` with proper venv creation steps
  - Replace `uv add --dev pytest` with `uv pip install -e .[dev,test]`
  - Add virtual environment activation steps
  - Document multiple methods to run pytest

- Reorganize content between guides
  - Move code style, commit conventions, and PR process to CONTRIBUTING.md
  - Add comprehensive contribution workflow section to CONTRIBUTING.md
  - Replace duplicated sections with cross-references

- Establish clear document purposes
  - CONTRIBUTING.md: contribution workflow, conventions, and process
  - development-setup.md: technical setup, environment, and tools
  - Each document now has a distinct focus area

- Enhance developer experience
  - Add troubleshooting section for common pytest issues
  - Document pyenv/VIRTUAL_ENV conflict resolution
  - Include verification steps for installation

This simplifies the documentation by consolidating related information
and removing duplication, making it easier for contributors to navigate
and find the information they need.
- Make `make dev-install` the primary recommended setup method
- Add new section on testing service installations in temp directories
  - Consolidate Makefile commands reference for better discoverability
  - Emphasize `make help` for comprehensive target list
  - Add VOICEMODE_BASE_DIR override example for isolated testing
- Brought back the more efficient `uv tool install` instead of sourcing .venv
@x85446 x85446 force-pushed the docs/consolidate-development-docs branch from 0804ef2 to b6fa7c6 Compare October 19, 2025 06:13
@mbailey mbailey added the documentation Improvements or additions to documentation label Oct 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants