diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 12309868..a86ffe4a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -291,6 +291,44 @@ claude # Start Claude Code /deepwork.define ``` +### 5. Test a Feature Branch with One-Off Nix Shell + +You can test a feature branch directly from GitHub without cloning or modifying your local environment. This is useful for: +- Reviewing someone else's PR +- Testing a feature branch before merging +- Trying out experimental changes without affecting your setup + +```bash +# Run DeepWork CLI directly from a feature branch +nix run github:Unsupervisedcom/deepwork/feature-branch-name -- --help + +# Enter a development shell with a specific branch +nix develop github:Unsupervisedcom/deepwork/feature-branch-name + +# Run a specific command from a feature branch +nix develop github:Unsupervisedcom/deepwork/feature-branch-name --command deepwork install --platform claude + +# Test against a specific commit +nix run github:Unsupervisedcom/deepwork/abc1234 -- --version + +# Test against a PR from a fork +nix run github:pr-author/deepwork/feature-name -- --help +# Or if the PR is from a branch in this repository: +nix run github:Unsupervisedcom/deepwork/feature-name -- --help +``` + +For example, to test a branch named `feat/new-parser`: + +```bash +# Quick test of the CLI +nix run github:Unsupervisedcom/deepwork/feat/new-parser -- install --platform claude --dry-run + +# Or enter a full development shell to run tests and run a specific test +nix develop github:Unsupervisedcom/deepwork/feat/new-parser --command pytest tests/unit/core/test_parser.py -v +``` + +**Note**: The first run will take longer as Nix fetches and builds the branch. Subsequent runs use the cached build. + ## Running Tests DeepWork has a comprehensive test suite with 568+ tests.