We welcome contributions to the Team Provisioning System! TPS is built to be a robust, secure kernel for Agent OS development.
TPS is built with TypeScript and Bun.
# Clone the repository
git clone https://github.com/tpsdev-ai/tps.git
cd tps
# Install dependencies
bun install
# Build the CLI
bun run build
# Run tests
bun testBefore contributing, please read the ARCHITECTURE.md. TPS uses a strict hub-and-spoke topology and isolates communication across three channels (Mail, Git, APIs).
When modifying the branch daemon or transport layers, keep the following security boundaries in mind:
- Never expose the Host's private key.
- Always validate inputs on cross-boundary messaging.
- Fail closed on authentication or permission errors.
- We use Biome for linting. Run
bun run lintbefore committing. - Ensure all tests pass (
bun test). We aim for high test coverage, especially insrc/utils/identity.ts,src/utils/relay.ts, and the transport layers. - Write tests for new features.
- Fork the repository.
- Create a feature branch (
git checkout -b feature/my-new-feature). - Make your changes and commit (
git commit -am 'feat: add some feature'). - Push to the branch (
git push origin feature/my-new-feature). - Open a Pull Request.
Please describe the problem your PR solves and the approach you took. For significant architectural changes, consider opening an issue first for discussion.