For members
Terminal integration (CLI & MCP)
Install Twindem MCP 0.7.1 and its skills for Codex and Claude Code on a Mac. Sign in with your own Twindem account to access your projects, tasks and Docs. No desktop app, Python, Rust or GitHub access is required for this download.
Install on macOS
Install Codex and/or Claude Code first. In a terminal, run the commands below. They download the package for the terminal architecture, verify its SHA-256 checksum, and run the local installer. No administrator access is needed.
mkdir -p ~/Downloads/twindem-terminal-0.7.1
cd ~/Downloads/twindem-terminal-0.7.1
arch="$(uname -m)"
file="twindem-terminal-0.7.1-macos-$arch.zip"
base="https://twindem.ai/terminal/0.7.1"
curl --fail --location --remote-name "$base/$file"
curl --fail --location --remote-name "$base/$file.sha256"
shasum -a 256 -c "$file.sha256" && unzip -q -o "$file" && bash "twindem-terminal-0.7.1-macos-$arch/install.sh"
Direct downloads: Apple Silicon (SHA-256) · Intel (SHA-256).
The installer places the binary at ~/.twindem/bin/twindem-mcp, installs skills for both clients and registers the twindem MCP entry in clients found on your PATH. Other MCP entries are preserved; existing Twindem files and configuration are backed up under ~/.twindem/backups/. Use --client codex, --client claude or --no-register if needed.
Connect and sign in
Restart or reconnect your MCP client. Invoke $twindem in Codex or /twindem in Claude Code. The agent asks whether to connect, opens browser sign-in when needed, and offers your accessible projects and boards. Approve the device in your browser. Tokens stay in the MCP process memory; reconnecting may require sign-in again.
Your account's projects and board history are available from another Mac. Conversation histories, local code and folder-to-project mappings are not transferred by this installer. Choose the project explicitly when the new folder is not mapped. Each conversation keeps its own selection.
Commands
Use $ in Codex and / in Claude Code. The complete command forms are listed below. Replace STORY with a task key such as DB-0042, and person with a member name, email or ID. Task commands can use the active task when it is unambiguous.
| Codex | Claude Code | What it does |
|---|---|---|
$twindem | /twindem | Connect Twindem and select a project/board. |
$twindem off | /twindem off | Disable Twindem for this conversation. |
$twd-context | /twd-context | Read the project/task briefing. |
$twd-status | /twd-status | Show the current task, activity, review state and open-story counts. |
$twd-members | /twd-members | List active project members eligible for assignment. |
$twd-assign STORY person | /twd-assign STORY person | Assign by unambiguous name, email or member ID. |
$twd-unassign STORY | /twd-unassign STORY | Clear the assignee; preserve owner, claim and status. |
$twd-time STORY | /twd-time STORY | Show cumulative calendar time per canonical status, including return visits. |
$twd-workflow | /twd-workflow | Coordinate tracked delivery, documentation, meaningful comments and phase conditions. |
$twd-review STORY | /twd-review STORY | Review a task and record a verdict. |
$twd-address-review STORY | /twd-address-review STORY | Address recorded review findings. |
$twd-review-start-all | /twd-review-start-all | Enable automatic review and start/resume eligible reviews in this conversation. |
$twd-review-stop-all | /twd-review-stop-all | Stop current reviewers and queued reviews; preserve findings and automatic-review policy. |
$twd-review-off-all | /twd-review-off-all | Stop reviews and disable automatic launches in this conversation. |
$twd-design STORY | /twd-design STORY | Create a visual UI proposal. |
$twd-architecture STORY | /twd-architecture STORY | Create an architecture diagram. |
$twd-seq-diagram STORY | /twd-seq-diagram STORY | Create a sequence diagram. |
Example: $twd-review DB-0042. Review controls depend on the client's subagent capabilities and do not coordinate independent terminals. Installing the package does not turn on automatic review.
MCP tools and workflow
After sign-in and board selection, the opening summary shows open stories and the subset assigned to you. Other work-item types are counted separately. Terminal columns determine closure. Status durations are calendar time, not active agent effort or billable hours; custom columns are grouped by canonical phase, and incomplete histories are labeled.
The server exposes 18 MCP tools. The agent calls these tools when you request an action in natural language or invoke a skill above; they are not additional $// commands.
| MCP tool | What it does |
|---|---|
twindem_session | Enable, disable or resolve this conversation’s project and board. |
twindem_login | Start, poll or cancel browser sign-in. |
project_context | Read the board briefing, personal counts and project Docs index. |
board_summary | Refresh open-story and all-work-item counts, including those assigned to you. |
list_project_members | Read eligible project members and the authenticated user ID. |
list_work_items | List items on the selected board, optionally filtered by phase. |
get_work_item | Read a task and its comment history. |
create_work_item | Create a work item in Inbox. |
assign_work_item | Set an eligible member as assignee, or pass null to unassign. |
work_item_time | Calculate cumulative calendar time per canonical phase. |
post_comment | Record an authorized decision, blocker or outcome. |
post_review | Record an approve/request-changes verdict and findings; request-changes findings stay open and block Done until resolved. |
resolve_finding | Close a verified review finding (fixed/resolved) or dismiss it with a note; open findings block the move to Done. |
update_phase | Change a task’s phase with a reason; respect human acceptance gates. Entering in-progress suggests the task’s conventional branch (twd/<key>-<slug>). |
list_doc_pages | List project Docs pages. |
get_doc_page | Read a page’s content, ID, status and current version. |
create_doc_page | Create a root draft in the default Docs space. |
update_doc_page | Edit a page’s title/content using its expected version. |
Ask naturally to save a requirement, comment on a task or update its specification. The delivery workflow tells the agent when to reuse a task/document, when to create one, and when to record outcomes or change phase. UAT and Done retain human acceptance gates. These are agent instructions, not an independent background scheduler.
New Docs pages are root drafts in the backend-default Docs space. Page edits require the version returned by a fresh read and preserve fields not supplied. Editing a published page leaves it published. This release does not provide selecting another space/parent, publishing or archiving pages, or creating boards/spaces.
Manual registration
If you installed files with --no-register or add a client later:
codex mcp add twindem -- "$HOME/.twindem/bin/twindem-mcp"
claude mcp add --scope user twindem -- "$HOME/.twindem/bin/twindem-mcp"
Updates and scope
Install the new version using the same procedure, then reconnect MCP. This is the terminal package, not a signed/notarized desktop app update. An older Twindem desktop app can re-register its own bundled integration; update that app or rerun the terminal installer after provisioning. No OS security settings are changed.
The previous Python terminal client is a legacy integration. Its /twindem-* commands and knowledge resource are not part of this Rust MCP package.