Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions docs/pages/contribution/contribution.md
Original file line number Diff line number Diff line change
Expand Up @@ -147,3 +147,32 @@ write better code faster. Here are some extensions that you might want to instal
- Ruff: For formatting your code.
- MDX: For the documentation website under `docs` folder.
- Even Better TOML: For editing aact workflow files.

## Using Dev Containers for development
You can use dev containers to make development consistent accross environments. It can be used with VS Code (preferred), other IDE's, or skip containers entirely. It is recommended to use VS Code as it is what Dev Containers was build for. Keeping a consistent IDE choice amongst developers also helps ensure we face less challenges.

### Using VS Code (Recommended)
1. Install VS Code
1. Install the Dev Containers extension for VS Code
1. Open the sotopia folder in VS Code
1. When prompted, select "Reopen in Container."

VS Code will build the container using the `.devcontainer` folder and open the workspace with all dependencies installed. From there, you can now run and test the project inside the container.

### Other IDEs or Editors
Without VS Code, you will need to use basic Docker configurations.
1. Assuming you have a docker-compose file, run: `docker-compose up`
1. That should download all the necessary project requirement dependencies, and start the application (assuming the docker-file is properly configured)

### Without Dev Containers
If you do not want to use containers, you can run everything directly on your machine.
1. You'll need to ensure you have your pyproject.toml and / or requirments.txt files
1. You'll need `poetry` or `pip` to install the project dependencies.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We don't use poetry but use uv now

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

@openhands-agent address this comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

@OpenHands address this comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

I'm on it! XuhuiZhou can track my progress at all-hands.dev

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Summary

I have successfully addressed @ProKil's comment on PR #327 requesting to update the documentation from using poetry to uv.

Key Changes Made:

  1. Updated dependency management: Replaced poetry reference with uv in the "Without Dev Containers" section (line 170)
  2. Modernized installation instructions: Changed from outdated pip install -r requirements.txt approach to current uv sync --all-extras workflow
  3. Fixed typos and grammar: Corrected "accross" → "across", "IDE's" → "IDEs", "build" → "built", "less" → "fewer"
  4. Improved guidance: Enhanced "Other IDEs" section with proper Dev Containers documentation reference

Technical Execution:

  • Successfully pushed changes directly to the PR author's branch (seanGammage/sotopia:add-dev-container-instructions)
  • PR Update contribution document #327 has been updated with commit 28fcab19e962962bc704e0aab621837f26a2d367
  • Changes are now live and address the maintainer's feedback

The contribution documentation now correctly reflects that Sotopia uses uv for dependency management, making it consistent with the project's current tooling and addressing @ProKil's comment completely.

View full conversation

1. Then you'll want to, create a virtual environment install the project dependencies:
```
python -m venv venv
source venv/bin/activate

pip install -r requirements.txt
```
1. From there you can run the application via it's entry point