Rensei docs

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-app

Example 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-02

project 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|viewer
rensei project members add sara@acme.com --role admin

project members update

Change a project member's role.

rensei project members update <email> --role <role>
rensei project members update sara@acme.com --role viewer

project 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 --yes

Repositories

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/frontend

The 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>]
FlagDescription
--path-idNew repository, as owner/repo, github.com/owner/repo, or a clone URL. Stored canonically as github:owner/repo.
--display-nameNew friendly name shown in listings.
--providerNew provider (for example github).
--roleNew role hint for this binding (for example primary).
--projectProject 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>]
ArgumentDescription
<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)
FlagDescription
--provider(Required) Tracker provider: linear, jira, etc.
--display-nameFriendly name shown in listings
--projectTarget 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>]
FlagDescription
--teamLinear 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-idLinear team path identifier (e.g. ENG). Required when binding the tracker.
--projectProject slug to bind the tracker to (defaults to active project).
--no-bindSkip the project-tracker binding step; only establishes the org-level OAuth.
--display-nameFriendly name for the tracker binding.
--timeoutMaximum 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    active

project 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). Use rensei host project enable and rensei project repo add (the two commands above) instead.
  • rensei project credentials <repo-url> had the same deadline and was removed in v0.14.0. Use rensei 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

FlagDescription
--project <slug>Target a specific project instead of the active one
--org <slug>Target a specific org
--jsonEmit machine-readable JSON output
--no-interactiveDisable prompts for CI/non-TTY use

See Global flags for the full set.


On this page