|
| 1 | +# Code of Conduct |
| 2 | + |
| 3 | +## Purpose |
| 4 | + |
| 5 | +LocalControl provides a local command path for Limnoria bots. Access to its UNIX |
| 6 | +socket or optional TCP listener is equivalent to owner-level bot access, so this |
| 7 | +project has a stronger security and operator-safety focus than a normal utility |
| 8 | +plugin. |
| 9 | + |
| 10 | +This Code of Conduct sets expectations for respectful community behaviour and |
| 11 | +responsible handling of LocalControl's control surface. |
| 12 | + |
| 13 | +## Community Standards |
| 14 | + |
| 15 | +Contributors, operators, and users are expected to: |
| 16 | + |
| 17 | +- Treat other people with respect and patience. |
| 18 | +- Give and accept technical feedback constructively. |
| 19 | +- Avoid harassment, intimidation, personal attacks, and discriminatory language. |
| 20 | +- Avoid publishing private information without explicit permission. |
| 21 | +- Keep discussion focused on improving the plugin and its safe operation. |
| 22 | + |
| 23 | +Unacceptable behaviour includes abuse, harassment, sustained disruption, and |
| 24 | +conduct that would reasonably make other people feel unsafe or unwelcome. |
| 25 | + |
| 26 | +## Responsible Control Access |
| 27 | + |
| 28 | +LocalControl must be treated as an owner-control channel, not as a general |
| 29 | +remote administration interface. Contributors and operators should assume that |
| 30 | +anyone who can connect to the socket or enabled listener can issue powerful bot |
| 31 | +commands. |
| 32 | + |
| 33 | +Responsible use includes: |
| 34 | + |
| 35 | +- keeping socket paths and parent directories restricted to trusted local users; |
| 36 | +- preserving owner-only socket permissions; |
| 37 | +- keeping the TCP listener disabled unless it is deliberately needed; |
| 38 | +- keeping TCP loopback-only unless the deployment is explicitly isolated; |
| 39 | +- avoiding command examples that encourage exposing owner-level access. |
| 40 | + |
| 41 | +Changes that broaden access should explain the operational need, document the |
| 42 | +risk, and include tests or review notes for the relevant safeguard. |
| 43 | + |
| 44 | +## Security-Sensitive Contributions |
| 45 | + |
| 46 | +Contributors should preserve safeguards that reduce accidental control-channel |
| 47 | +exposure, including: |
| 48 | + |
| 49 | +- hostmask-based owner mapping through Limnoria; |
| 50 | +- owner-only socket mode; |
| 51 | +- bounded client timeouts; |
| 52 | +- serialised dispatch where needed for stable bot interaction; |
| 53 | +- minimal request logging by default; |
| 54 | +- redaction when full command logging is explicitly enabled. |
| 55 | + |
| 56 | +Do not add behaviour that logs secrets, passwords, tokens, private command text, |
| 57 | +or sensitive bot output by default. |
| 58 | + |
| 59 | +## Privacy And Logs |
| 60 | + |
| 61 | +LocalControl can send commands and receive replies that may include private bot |
| 62 | +state, channel data, hostmasks, configuration values, or operational details. |
| 63 | +Operators should keep logs restricted and enable full command logging only for |
| 64 | +short, deliberate debugging sessions. |
| 65 | + |
| 66 | +If a report includes logs, redact secrets, credentials, private hostmasks, and |
| 67 | +unrelated channel content before sharing it publicly. |
| 68 | + |
| 69 | +## Operator Responsibilities |
| 70 | + |
| 71 | +Operators are responsible for configuring LocalControl appropriately for their |
| 72 | +machine and bot account. This includes filesystem permissions, synthetic |
| 73 | +hostmask setup, TCP listener settings, SSH or wrapper access, and log handling. |
| 74 | + |
| 75 | +Operational guidance belongs in the README and security reports belong in the |
| 76 | +[Security Policy](SECURITY.md). General conduct concerns may be reported to |
| 77 | +@Alcheri on GitHub. |
| 78 | + |
| 79 | +## Enforcement |
| 80 | + |
| 81 | +Project maintainers may remove comments, reject contributions, close issues, |
| 82 | +block users, or decline support when behaviour conflicts with this Code of |
| 83 | +Conduct or creates avoidable safety risk. |
| 84 | + |
| 85 | +Enforcement should be proportionate, documented where practical, and mindful of |
| 86 | +the privacy and security of people reporting concerns. |
| 87 | + |
| 88 | +## Attribution |
| 89 | + |
| 90 | +The community standards and enforcement structure are informed by the |
| 91 | +[Contributor Covenant](https://www.contributor-covenant.org/), version 2.0, and |
| 92 | +adapted for a security-sensitive Limnoria control plugin. |
0 commit comments