Project
Project CRUD and trackers connect linear.
rensei project manages everything scoped to a single Rensei project from the CLI: members and roles, connected repositories, issue-tracker integrations (including the Linear OAuth wizard), runtime tokens, and sandbox access controls.
Members
project members list
rensei project members list [<project-slug>]rensei project members list
rensei project members list --project my-fintech-appExample output:
EMAIL ROLE JOINED
mark@acme.com admin 2024-11-01
sara@acme.com member 2025-01-14
agent-ci@acme.com viewer 2025-03-02project members add
Add a member to the project. The user must already be an org member (see rensei org invites create to invite new org members first).
rensei project members add <email> --role member|admin|viewerrensei project members add sara@acme.com --role adminproject members update
Change a project member's role.
rensei project members update <email> --role <role>rensei project members update sara@acme.com --role viewerproject members remove
Remove a member from the project. Does not affect their org membership.
rensei project members remove <email> [--yes]rensei project members remove former-contractor@acme.com --yesRepositories
Repositories connected to a project are cloned into agent workareas before each session. Multiple repos can be connected; agents receive all of them.
project repo list
rensei project repo list [--project <slug>]project repo add
Connect a repository to the project.
rensei project repo add <url>rensei project repo add https://github.com/acme/backend-api
rensei project repo add https://github.com/acme/frontendThe platform detects the VCS provider (GitHub, GitLab, Bitbucket) from the URL and uses the OAuth credential configured for that provider. Ensure the integration is connected first (rensei project trackers connect github, rensei project trackers connect linear, or via the web UI).
project repo update
Rebind a connected repository: point it at a different remote, rename it, or
change its provider or role hint. The positional argument is the repository
resource id from project repo list, not a URL.
rensei project repo update <repoId> [--path-id <repo>] [--display-name <name>] [--provider <provider>] [--role <role>] [--project <slug>]| Flag | Description |
|---|---|
--path-id | New repository, as owner/repo, github.com/owner/repo, or a clone URL. Stored canonically as github:owner/repo. |
--display-name | New friendly name shown in listings. |
--provider | New provider (for example github). |
--role | New role hint for this binding (for example primary). |
--project | Project slug. Defaults to the active project. |
rensei project repo update repo_abc123 --display-name "Backend API"Clone strategy is not a property of the platform repository binding. It is a
per-host daemon setting. The deprecated command that exposed a one-off
--clone-strategy override was removed in v0.14.0; platform repository
bindings continue to use the host's configured/default clone posture.
project repo remove
Disconnect a repository. Does not delete any existing workareas.
rensei project repo remove <url> [--yes]Issue trackers
Issue trackers connect the project to Linear, Jira, GitHub Issues, Asana, or other supported systems. Agents use the tracker to read work items, post comments, and update issue status.
project trackers list
rensei project trackers list [--project <slug>]project trackers add
Bind an issue tracker by its path ID (e.g. the Linear team key or Jira project key) to a project.
rensei project trackers add <pathId> [<project-slug>] --provider <provider> [--display-name <name>]| Argument | Description |
|---|---|
<pathId> | Provider-specific identifier, e.g. the Linear team key (ENG) or Jira project key (ACME) |
<project-slug> | Project slug (optional; defaults to the active project) |
| Flag | Description |
|---|---|
--provider | (Required) Tracker provider: linear, jira, etc. |
--display-name | Friendly name shown in listings |
--project | Target project slug (alternative to positional slug argument) |
rensei project trackers add ENG --provider linear
rensei project trackers add ACME --provider jira --display-name "Acme Jira"To connect Linear with full OAuth (recommended for AgentSession activity), use project trackers connect linear instead. See below.
project trackers connect linear
Run the guided Linear OAuth flow. This is the recommended way to connect Linear; it provisions full app:assignable + app:mentionable scopes required for AgentSession activity.
rensei project trackers connect linear \
[--team <linear-team-uuid>] \
[--path-id <TEAM>] \
[--project <slug>] \
[--no-bind] \
[--display-name <name>] \
[--timeout <seconds>]| Flag | Description |
|---|---|
--team | Linear team UUID to subscribe webhook for (or RENSEI_LINEAR_TEAM_ID). Omit to subscribe to all public teams (not recommended for first-time setup). |
--path-id | Linear team path identifier (e.g. ENG). Required when binding the tracker. |
--project | Project slug to bind the tracker to (defaults to active project). |
--no-bind | Skip the project-tracker binding step; only establishes the org-level OAuth. |
--display-name | Friendly name for the tracker binding. |
--timeout | Maximum time in seconds to wait for OAuth completion (default: 300). |
The CLI opens a browser to the Linear OAuth consent screen (or prints the URL if --no-interactive is set).
After you approve, Linear redirects back with an auth code. The CLI exchanges it for an OAuth token.
The token is stored in the platform credential store for this project. Agents running under this project use the platform proxy - they never receive the OAuth token directly.
Using project trackers add with a plain path ID (non-OAuth) provisions user-scope credentials (read,write,issues:create,comments:create) that do not include app:assignable or app:mentionable. AgentSession activity (agent thoughts, responses visible in the Linear UI) requires the OAuth flow via connect linear. See Linear integration for details.
project trackers update
Update tracker configuration (e.g., rotate a credential).
rensei project trackers update <tracker-id>project trackers remove
Disconnect a tracker.
rensei project trackers remove <tracker-id> [--yes]Runtime tokens
Project tokens (rsp_live_*) are used to register daemon workers to a specific project. Each token is long-lived and should be treated like a service account credential.
project tokens list
rensei project tokens list [<project-slug>]Example output:
ID CREATED LAST USED STATUS
tok-abc123 2025-06-01 2 hours ago active
tok-def456 2025-09-14 14 days ago activeproject tokens create
Create a new project token.
rensei project tokens create [--project <slug>]The full token value (rsp_live_*) is shown exactly once. Copy it immediately and store it in your secret manager. Install the local service with rensei host install, then enable the project on that host with rensei host project enable <slug>.
project tokens revoke
Permanently revoke a project token. Any daemon registered with the revoked token will stop receiving work immediately.
rensei project tokens revoke <token-id> [--yes]Sandbox allow-list
Enabling a project on a host and binding a repository to a project are two separate steps:
rensei host project enable <project-slug>
rensei project repo add <repo-url> --project <project-slug>host project enable adds the project to this host's daemon allowlist
(~/.rensei/daemon.yaml); the daemon reloads on SIGHUP or restart. Repository
binding is handled by project repo add (above) - a project can be enabled
before it has a repository. Install the service separately with rensei host install, then use these two commands to add host admission and a repository
binding explicitly.
Two verbs that used to live on this page were removed in v0.14.0:
rensei project allow <repo-url>(positional argument was a repo URL, not a project slug) was deprecated since v0.8.2 and removed in v0.14.0 (the removal slipped past its original v0.12.0 deadline while the smoke harness still exercised the verb). Userensei host project enableandrensei project repo add(the two commands above) instead.rensei project credentials <repo-url>had the same deadline and was removed in v0.14.0. Userensei project repo credentials <repo-url>instead.
Both ran through v0.13.x printing a deprecation notice naming their replacement; neither exists in v0.14.0 or later.
Global flags
| Flag | Description |
|---|---|
--project <slug> | Target a specific project instead of the active one |
--org <slug> | Target a specific org |
--json | Emit machine-readable JSON output |
--no-interactive | Disable prompts for CI/non-TTY use |
See Global flags for the full set.
Related pages
- Org - org-level membership, invites, and API keys
- Linear integration - OAuth scopes, AgentSession lifecycle, webhook setup
- Host daemon - register the local daemon to a project with
host install - Sandbox providers - capacity pools - pool assignment and substrate resolution
- Auth - API keys -
rsk_live_*vsrsp_live_*token shapes