Projects
A project groups all the agents and prompts for a single product, service, or application.
What a Project Is
Think of a project as one deployable application — your main product, an internal tool, a microservice, or an API. Each project has:
- Its own set of agents and prompts
- Three default environments (Development, Staging, Production)
- Its own API keys, one per environment
A single organization can have multiple projects. For example, you might have a "Main App" project and a "Internal Tools" project.
Environments
Every project is created with three default environments:
| Environment | Purpose |
|---|---|
| Development | For active development. Connect your local app here. |
| Staging | For pre-production testing and QA. |
| Production | Live traffic. Promote prompts here only after validation. |
Each environment is independent — a prompt can be on v3 in Production while Development is testing v5. You can also create custom environments and reorder them. See Environments for the full promotion workflow.
API Keys
API keys are scoped to one project and one environment. A key for the Development environment only serves Development prompts. A key for Production only serves Production prompts.
To connect your application to a specific environment:
- Go to Settings > API Keys inside the project.
- Create a key for the target environment.
- Pass the key to the SDK:
new Raison({ apiKey: "rsn_production_xxx" }).
Project-Level Roles
Members can have project-level roles in addition to their organization role:
| Role | Access |
|---|---|
| Admin | Full access to the project — agents, prompts, environments, API keys. |
| Member | Can view and edit agents and prompts, but cannot manage API keys or project settings. |
Organization owners and admins automatically have admin access to all projects.