Contributing Guidelines¶
SimpleContext is a community-driven ecosystem. Contributions to any of the five repositories are welcome.
Ways to Contribute¶
| What | Where |
|---|---|
| Bug fixes, features | SimpleContext |
| New agent YAML | SimpleContext-Agents |
| New plugin | SimpleContext-Plugin |
| Bot improvements | SimpleContext-Bot |
| Docs improvements | SimpleContext-Docs |
General Process¶
- Fork the relevant repository
- Create a branch:
git checkout -b feat/my-feature - Build your contribution
- Test it works
- Open a Pull Request with a clear description
Contribution Types¶
🤖 New Agent¶
Agents are the easiest contribution — just YAML, no Python required.
Requirements: - Valid YAML that parses without errors - Unique name (lowercase, underscores) - At least 5 domain-specific trigger keywords - personality.default — clear, focused system prompt - personality.indonesian — recommended for bilingual support - Skills with description fields
See the full guide: Create an Agent
🔌 New Plugin¶
Plugins require Python but follow a clear structure.
Requirements: - Inherits BasePlugin with name, version, description - All hooks return correct types - No hardcoded credentials - README.md with install, config, and example - Tested with SimpleContext v4.3+
See the full guide: Develop a Plugin and Plugin Tutorial
🐛 Bug Fix¶
- Open an issue describing the bug
- Reference the issue in your PR
- Include a test that would have caught the bug
📖 Documentation¶
This docs site is in SimpleContext-Docs.
git clone https://github.com/zacxyonly/SimpleContext-Docs
cd SimpleContext-Docs
pip install -r requirements.txt
mkdocs serve # live preview at localhost:8000
Code Style¶
For Python contributions (core, plugins, bot):
- Python 3.10+ type hints where appropriate
- Docstrings on public methods
- No external dependencies in core (
simplecontext/) - Plugins may use stdlib only, unless dependency is clearly documented
Commit Message Format¶
type(scope): short description
feat(plugins): new feature in plugin system
fix(memory): bug fix in memory module
docs(readme): documentation update
chore(deps): dependency update
refactor(core): code refactor without behavior change
test(context): add or update tests
Questions?¶
Open an issue in the relevant repository. For general questions, use SimpleContext.