Features › Core Features
Projects
Overview
Projects is a lightweight collaboration space that lets you organize related tasks under a single container. Instead of managing context across scattered task lists, a project gives you a hierarchical view of everything tied to one initiative, with shared credits, members, and a clear big-picture status.
Info
Projects are designed for solo builders in the current release. Team collaboration features are planned for a future update.
How Projects Differ from Teams
| Teams | Projects | |
|---|---|---|
| Roles | Admin, Member | Owner, Member |
| Status on creation | Pending (requires payment setup) | Active immediately |
| Subscription | Requires its own subscription | Inherits the owner's personal plan |
| Credits | Paid directly | Manually transferred from owner's wallet |
| Creation limit | 1 per user | Unlimited |
The key distinction: Projects are zero-friction to spin up. There is no payment flow and no waiting. The owner funds the project by transferring credits from their own personal wallet.
Getting Started
Create a Project
- Navigate to your dashboard and select New Project
- Enter a name and optional description
- Your project is immediately active with no payment step required
Add Tasks to a Project
When creating a new task, you can:
- Keep it orphaned (no project association)
- Add it to a new project
- Add it to an existing project
Warning
Once a task is assigned to a project, it cannot be moved to a different project. Plan your project structure before assigning tasks.
Invite Members
Only the project owner can invite members. Members can view the project, see all tasks inside it, and use the project's credits to run tasks.
Managing Credits
Projects run on a credit pool funded by the owner. Credits flow in one direction: from the owner's personal wallet into the project's ECU pool.
Deduction order from the owner's wallet:
Monthly credits
Deducted first if available
ECU credits
Deducted second
Daily credits
Deducted last
All credit transfers are logged to both Postgres and BigQuery for full auditability.
Forking Inside a Project
When you fork a task that lives inside a project, the forked task inherits that project by default. You can override this behavior at fork time and choose to:
- Keep the fork orphaned
- Add the fork to a new project
- Add the fork to a different existing project
The same choices apply when forking an orphaned task.
Access Control
| Action | Owner | Member | Non-member |
|---|---|---|---|
| View project | Yes | Yes | No |
| View plan | Yes | Yes | No |
| Transfer credits | Yes | No | No |
| Invite members | Yes | No | No |
| Use credits to run tasks | Yes | Yes | No |
Task Relationships
Projects follow a strict 1:N mapping: one task can belong to only one project, and one project can contain many tasks. There is no cross-project task sharing.
To view orphaned tasks (tasks not assigned to any project), use the ungrouped tasks view in your dashboard.
Current Limitations
The following capabilities are not yet available and are planned for a future release:
- Moving or removing a task from a project after assignment
- Cloning a project with or without its tasks
- Inviting collaborators with different roles (Editor vs Viewer), dependent on the Teams feature
- Filtering or searching tasks by project within the task list
- Auto-transferring credits when the project balance falls below a threshold
Pricing
Info
Creating projects does not consume any credits. Projects are a free organizational layer on top of your existing plan.
Your project inherits the plan of the owner's personal account. There are no separate subscription requirements or per-project fees.
API Reference
Create a Project
POST /org/create
{ "name": "My Project", "organization_type": "PROJECT" }
Response
{ "id": "org_<uuid>", "name": "My Project", "created_by": "user_123", "created_at": "2025-01-07T10:30:00Z", "role": "OWNER" }
Info
organization_type defaults to "TEAM" for backward compatibility. Always pass "PROJECT" explicitly when creating a project.
Transfer Credits to a Project
POST /org/{organization_id}/credits/transfer
{ "amount": 50.0 }
Get Project Plan
GET /org/{organization_id}/plan
Response
{ "project_id": "org_<uuid>", "project_name": "My Project", "owner_id": "user_123", "plan_name": "Pro", "plan_status": "active", "monthly_credit_limit": 1000.0 } ## What's Coming Next - **Auto-transfer credits:** set a threshold so the project wallet tops up automatically when the balance drops below a configured amount, with daily transfer limits - **Collaborator roles:** invite team members with Editor or Viewer permissions - **Clone a project:** duplicate a project with or without copying its tasks - **Move or remove tasks:** reassign tasks between projects after initial creation
