Features & workflows
Collaboration Features
langctl gives every teammate a role, and a draft/publish and review workflow keeps unfinished translations out of your app.
Role-Based Access
| Role | Can Do |
|---|---|
| Owner | Everything, including deleting the organization |
| Admin | Projects, keys, import/export, team members and API keys |
| Member | Edit translations and keys, import and export |
| Viewer | Read-only access to projects and translations |
See the full permission matrix.
Team Workflows
Workflow 1: Review Process
# 1. a developer adds a key (drafts by default)
langctl keys create my-app feature.title --value en="Title"
# 2. a reviewer lists what's waiting for review
langctl keys list my-app --drafts
# 3. publish the reviewed keys
langctl keys publish my-app feature.title In the dashboard, reviewers use the Draft and Needs review filters on the Translations page, approve AI translations, and publish keys - individually or in bulk.
Workflow 2: Divide Work by Module
Sarah -> auth module
John -> dashboard module
Maria -> settings module Managing the Team from the Terminal
langctl team list
langctl team invite maria@company.com --role member
langctl team update-role maria@company.com admin
langctl team invitations Team commands need an API key with the org:admin scope.
Seeing Who Changed What
- Key history - the History tab of a key shows every change to its translations with before and after text, and lets members restore an earlier version. See Key History.
- Activity log - owners and admins can see everything that happened in the organization under Activity. See Activity Log.
Tip
Divide work by modules to avoid conflicts - langctl doesn’t lock keys while someone edits them, and the last save wins. Use the draft -> review -> publish workflow for quality control.
Next Steps
- Team Management - Invite and manage team
- Publishing Workflow - Draft/published states
- Module Organization - Organize by module