.ysl (Yasumu Schema Language) files that work perfectly with version control systems like Git.
Why Yasumu works great with teams
- No cloud accounts required: Everything lives in your repository
- Standard Git workflow: Commit, push, pull, branch, and merge like any other code
- Readable diffs:
.yslfiles are text-based and produce clean, reviewable diffs - Secure by design: Secrets stay local, never committed to version control
- Offline-first: No internet connection needed for collaboration
- Version history: Full audit trail of all changes through Git
File structure for collaboration
When collaborating, your repository includes:Setting up collaboration
Set up environments
Create environments with variables, but keep secret values empty in shared environments:
Configure .gitignore (optional)
While
.ysl files are designed to be committed, you may want to exclude certain patterns:Managing secrets in teams
The secret management pattern
Yasumu separates variables (shared) from secrets (local):Sharing secret structure
Commit the secret keys (so the team knows what’s needed) but not the values:Git workflow for Yasumu
Adding new requests
Updating existing requests
Creating feature branches
Reviewing changes
Because.ysl files are text-based, reviews are straightforward:
- See exactly what changed
- Understand the API modifications
- Suggest improvements
- Approve or request changes
Team collaboration patterns
Shared base environments
Create base environments that the whole team uses:Personal environments
Team members can create personal environments:.gitignore:
Standardized request groups
Organize requests into logical groups:workspace.ysl.
Synchronization and conflict resolution
Pulling team changes
Handling merge conflicts
If two team members modify the same request:Avoiding conflicts
- Communicate: Let team know what you’re working on
- Small commits: Commit frequently to reduce conflict likelihood
- Feature branches: Use branches for experimental changes
- Clear naming: Use descriptive names for requests and environments
Programmatic collaboration workflows
Workspace synchronization
Validating workspace structure
Onboarding automation
Documentation and onboarding
Team documentation
Create aYASUMU.md in your repository:
Best practices for teams
Communication
- Announce changes: Let the team know about major API changes
- Document decisions: Use Git commit messages to explain why
- Review together: Use pair programming for complex API workflows
Organization
- Consistent naming: Agree on naming conventions for requests and environments
- Logical grouping: Organize requests by feature or domain
- Clean structure: Regularly review and refactor request organization
Security
- Never commit secrets: Always keep secret values empty in Git
- Rotate regularly: Update shared secrets periodically
- Access control: Use Git repository permissions to control access
- Audit trail: Review Git history for secret-related changes
Maintenance
- Remove obsolete requests: Delete outdated API requests
- Update documentation: Keep environment setup docs current
- Sync regularly: Pull latest changes frequently
- Test before pushing: Verify requests work before committing
Troubleshooting
Secret values not persisting
If secrets reset after Git operations:- Ensure secret values are set after pulling changes
- Check that
.yslfiles aren’t being overwritten - Consider using personal environment files not tracked by Git
Workspace not loading after pull
Merge conflicts in .ysl files
Resolve like any text file:- Open the file in your editor
- Look for conflict markers (
<<<<<<<,=======,>>>>>>>) - Choose which changes to keep
- Remove conflict markers
- Commit the resolution
Next steps
Creating workspaces
Learn about workspace structure
Environment variables
Master environment configuration