Thanks for contributing to Graphlink.
- The UI product name is Graphlink, but many modules and folders still use Graphite.
- The app is currently developed primarily on Windows.
- The repository is script-oriented, so the launch working directory matters.
py -m venv .venv
.venv\Scripts\Activate.ps1
pip install --upgrade pip
pip install -r requirements.txt
cd graphite_app
python graphite_app.pyIf you prefer Visual Studio, open graphite_app.sln.
- Launch the app from
graphite_app/, not from the repo root. - Prefer editing the real implementation modules in:
graphite_app/graphite_plugins/graphite_app/graphite_nodes/graphite_app/graphite_canvas/graphite_app/graphite_ui_dialogs/
- Treat top-level wrapper modules such as
graphite_plugin_code_review.pyas compatibility facades unless the change is specifically about import stability. - Keep changes focused. UI cleanup, plugin behavior, persistence updates, and provider changes should be easy to review independently.
Please include:
- A clear summary of the problem being solved.
- A concise explanation of the implementation approach.
- Notes about any architectural tradeoffs.
- Screenshots or short recordings for visible UI changes.
- Manual verification steps.
There is not yet a broad automated test suite, so please do at least the following when relevant:
- Launch the app successfully.
- Create or load a chat session.
- Exercise the area you changed.
- Verify the app still saves and reloads without obvious breakage.
- Run a Python compile smoke check:
python -m compileall -q graphite_appThese areas are especially valuable for contributors:
- UI consistency and polish
- plugin ergonomics
- cross-platform cleanup
- settings and secret-storage improvements
- test coverage and CI expansion
- documentation
Use the GitHub issue templates when possible:
- Bug report for defects or regressions
- Feature request for product and workflow improvements
If the issue is security-sensitive, avoid posting exploit details publicly first.