Problem
CONTRIBUTING.md describes pip install -e . only and says nothing about the
actual stack: uv sync, ruff, mypy, bandit, the CI matrix, or how to add a
new tool/slash command. New contributors can't validate their work locally
without reverse-engineering CI.
Proposed approach
- Document
uv sync --extra dev setup and the exact check commands CI runs
(ruff check, ruff format --check, mypy gcode, bandit, compileall).
- Add a "add a new tool / slash command" end-to-end checklist with the files
involved (tools.py, TOOL_MAP, _SLASH_COMMANDS, _print_help, README).
- Link the
good first issue and help wanted labels.
Where to look
CONTRIBUTING.md
.github/workflows/ci.yml:30-38
gcode/ui.py:23-36 (_SLASH_COMMANDS), gcode/cli.py:33-55 (_print_help)
Acceptance criteria
- A newcomer can go from clone to green local checks using the doc alone.
- New-tool checklist is accurate against the current code.
Difficulty
Low — good first issue (docs).
Problem
CONTRIBUTING.md describes
pip install -e .only and says nothing about theactual stack:
uvsync, ruff, mypy, bandit, the CI matrix, or how to add anew tool/slash command. New contributors can't validate their work locally
without reverse-engineering CI.
Proposed approach
uv sync --extra devsetup and the exact check commands CI runs(
ruff check,ruff format --check,mypy gcode,bandit,compileall).involved (
tools.py,TOOL_MAP,_SLASH_COMMANDS,_print_help, README).good first issueandhelp wantedlabels.Where to look
CONTRIBUTING.md.github/workflows/ci.yml:30-38gcode/ui.py:23-36(_SLASH_COMMANDS),gcode/cli.py:33-55(_print_help)Acceptance criteria
Difficulty
Low — good first issue (docs).