CLI: Organizations & Projects
Overview
Organizations are team workspaces. Projects are secret containers inside an organization. You can belong to multiple orgs — each with its own projects, members, and roles.
Context & Roles
Active organization determines where new projects are created. Active project is the default target for secret commands — use windkeep projects switch to change it, or pass -p on windkeep run and windkeep pull to override.
Each organization member has one of these roles:
- OWNER: Full control over the org, its projects, and members.
- ADMIN: Manage projects and secrets; cannot delete the organization.
- MEMBER: View and use secrets in assigned projects.
Organizations: List
List every organization you belong to, along with your role and which one is currently active.
Example & Output:
windkeep orgs listID NAME ROLE ACTIVE
cm123abc456 My Organization OWNER ✓
cm789def012 Team Workspace ADMIN
cm456ghi789 Client Project MEMBEROrganizations: Create
Create a new organization. You become the owner and it is set as your active org.
windkeep orgs create "My Company"Arguments:
NAME: Organization name (required).
Organizations: Switch
Set the active organization for future commands. Switching orgs also clears your active project, since projects belong to a single organization.
Run windkeep orgs list to find organization IDs.
Example & Output:
windkeep orgs switch cm789def012✓ Switched to organization 'Team Workspace'Arguments:
ORG_ID: Target org ID (optional — omit to open an interactive selector).
Organizations: Update
Rename your active organization. Requires OWNER or ADMIN.
# Switch to the org you want to rename (if it is not already active)
windkeep orgs switch cm123abc456
# Update the name
windkeep orgs update "New Company Name"Arguments:
NAME: New organization name (required).
Projects: List
List all projects in your active organization, including secret counts.
Example & Output:
windkeep projects listID NAME SLUG SECRETS
cm111aaa111 My Project my-project 5
cm222bbb222 API Service api-service 12Projects: Create
Create a project in your active organization. The slug is auto-generated from the name, and the new project becomes active.
windkeep projects create "My Project"
windkeep projects create "API Service" -d "Backend API"Arguments:
NAME: Project name (required).
Flags:
-d, --description: Optional description.
Projects: Switch
Set the active project for secret commands and windkeep run. Only projects from the active organization are shown.
Run windkeep projects list to find project slugs.
Example & Output:
windkeep projects switch api-service✓ Switched to project 'API Service' (slug: api-service)Arguments:
PROJECT_SLUG: Target slug (optional — omit to open an interactive selector).
Projects: Update
Update a project's name, slug, or description. At least one flag is required.
windkeep projects update my-project \
--name "API Service v2" \
--slug api-service-v2 \
--description "Updated backend API"Arguments:
PROJECT_SLUG: Project to update (required).
Flags:
-n, --name: New name.-s, --slug: New slug.-d, --description: New description.
Projects: Delete
Permanently delete a project and all of its secrets. This cannot be undone.
windkeep projects delete old-project --confirmArguments:
PROJECT_SLUG: Project to delete (required).
Flags:
--confirm: Skip the confirmation prompt.
Common Workflows
# Bootstrap a new org and project
windkeep orgs create "My Startup"
windkeep whoami
windkeep projects create "Backend API"
# Switch between orgs and projects
windkeep orgs list
windkeep orgs switch cm789def012
windkeep projects list
windkeep projects switch my-project
# Work across orgs (each line sets context, then runs your app)
windkeep orgs switch cm123abc456 && windkeep projects switch personal-app && windkeep run npm run dev
windkeep orgs switch cm789def012 && windkeep projects switch work-api && windkeep run --env prod npm start
# Create a project and add your first secret
windkeep whoami
windkeep projects create "My App" -d "My application"
windkeep secrets create DATABASE_URL --dev "postgres://localhost:5432/dev"Migrating Projects Between Orgs
Projects cannot be moved between organizations via the CLI. Use this sequence instead:
Example sequence:
# Switch to the source org and project
windkeep orgs switch cm123old
windkeep projects switch old-project
# Export secrets locally
windkeep pull .env.backup -e production
# Create the project in the target org
windkeep orgs switch cm456new
windkeep projects create "Migrated Project"
# Import secrets and clean up
windkeep push .env.backup -e production
windkeep orgs switch cm123old
windkeep projects delete old-project --confirm- Export secrets from the old project (via the dashboard or windkeep pull).
- Create a new project in the target organization.
- Import secrets into the new project (via the dashboard or windkeep push).
- Delete the old project when you are done.
Related Documentation
- Secrets Management: Manage secrets within projects.
- Guides & Troubleshooting: Workflows and troubleshooting.