LLM_POLICY.md
This is a policy for how LLMs can (and can't) be used in the development of VirtualBuddy. It’s based on the policy adopted by the Rust project.
Using LLMs while contributing to VirtualBuddy is conditionally allowed, when done with care. LLMs are not a substitute for thought, and I do not allow them to be used in ways that risk losing our shared social and technical understanding of the project.
The policy's guidelines are roughly as follows:
1 - It's fine to use LLMs to answer questions, analyze, distill, refine, check, suggest, review. But not to create. 2 - LLMs work best when used as a tool to write better, not faster.
This policy does not aim to be exhaustive.
If you have a use of LLMs in mind that isn't on this list, talk about it in the discussions, and judge it in the spirit of this overview:
The following are allowed:
The following are banned:
These uses are allowed on a case-by-case basis, under the rules below. If you are a new contributor, you should expect to be scrutinized more heavily than existing contributors, since you haven't yet established trust with your reviewers.
All uses under "⚠️ Allowed with caveats" must disclose that an LLM was used.
Your contributions are your responsibility; you cannot place any blame on an LLM.
This document uses the phrase "originally created by an LLM" to mean "text that was generated by an LLM (and then possibly edited by a human)". No amount of editing can change how it was originally created; the origin sets the initial style, and that style is very hard to change once it's set.
This policy makes no distinction between LLM output that comes from a chat interface and output that comes from editor auto-completion. In most cases the output is "trivial" (see above under ⚠️), but regardless, it is not treated specially by this policy.