by lanes-sh
(RENAME desktop-app) Lanes makes parallel AI coding your unfair advantage
# Add to your Claude Code skills
git clone https://github.com/lanes-sh/appLast scanned: 5/30/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-05-30T15:40:46.922Z",
"npmAuditRan": true,
"pipAuditRan": true
}app is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by lanes-sh. (RENAME desktop-app) Lanes makes parallel AI coding your unfair advantage. It has 259 GitHub stars.
Yes. app passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/lanes-sh/app" and add it to your Claude Code skills directory (see the Installation section above).
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh app against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
You have five AI coding agents running across eight terminal tabs. One is waiting for input. One finished ten minutes ago and you didn't notice. Two are doing overlapping work. The only thing keeping it all together is your short-term memory, and it just failed.
AI agents got powerful. The workflow around them didn't.
Lanes is a native desktop app that puts every AI coding session on an issue board. Each card is a task. Each task can have a live agent terminal attached. You see what's running, what's blocked, what's waiting, and what shipped, in one window, at a glance.
No context switching. No lost terminals. No wondering what that tab was doing. Just drag work through your pipeline while your agents execute.
It's the layer that was missing between you and your fleet of AI agents.
brew install --cask lanes-sh/lanes/lanes && open -a Lanes
Requires macOS Ventura or later. Native on Apple Silicon and Intel.
Join our Discord community for updates, to share feedback, ask questions, and connect with other users. We're iterating fast and Discord is the best way to stay in the loop.
Drag issues through workflow columns, Planning, Implementation, Review, Done, plus Backlog and Misc. Multi-select with Shift+Click and Cmd+Click for bulk operations. Right-click context menus, sorting options, and collapsible columns. Board tabs scoped per project directory and worktree.
Every issue runs an AI session in a real PTY-backed terminal. Start sessions in plan mode or implement mode. Resume Claude sessions across restarts. Drag files onto the terminal to inject paths. Real-time status detection: busy, awaiting input, stopped, exited, error.
Auto-create git worktrees per issue with generated branch names, or select existing worktrees. Status overview in the status bar showing uncommitted and unmerged state. Auto-cleanup on issue completion. Per-project base branch detection with manual override.
Create, rename, and assign labels with 13 color options. Filter the board by label, working directory, or workflow step. Clear all filters in one action.
Link issues as dependencies via a multi-select picker. Cycle detection prevents circular chains. Dependent issues stay blocked until all prerequisites reach Done.
Preset and custom commands with keyboard shortcuts Cmd+Alt+1–9. Two types: claude (injected into CLI session) and terminal (run as shell command). Built-in defaults shipped with new installs, fully customizable in Settings.
Sidebar file tree for the selected issue's working directory. Monaco editor with tabbed editing, dirty file tracking, syntax highlighting, and save on Cmd+S.
Diff view with two modes: Changes (uncommitted working tree diff) and History (committed diffs). Monaco-powered inline diff viewer. Automatic branch detection from the issue's worktree.
Discover running CLI processes across the system. Three-way classification: Tracked (managed by Lanes), Orphan (has issue ID but no active session), External (unrelated). Kill individual processes or stop all sessions at once.
Claude Code, Anthropic's CLI for Claude.
Support for Codex CLI, Gemini CLI, and other terminal-based AI tools is on the roadmap.
Lanes ships a built-in Model Context Protocol server so agents like Claude Code and Codex can read your board and drive sessions directly. Enable it in Settings > Local MCP, then click Connect Claude Code or Connect Codex for one-click config injection.
| Server name | lanes-desktop (older lanes-local and lanes entries still work; see Renamed from lanes-local) |
| Transport | SSE (Server-Sent Events) |
| Endpoint | http://localhost:5353/sse |
| Protocol version | 2024-11-05 |
| Server version | 1.0.0 |
| Tool count | 30 (18 workspace + 6 GitHub + 6 Linear) |
| Auth | None — localhost-only, never leaves your machine |
lanes-localThe server used to register as lanes-local, and before that as bare lanes. Both keep working indefinitely, and nothing is renamed unless you ask for it — an MCP server's config name is also the prefix on its tool names, so renaming it resets every permission you had granted and breaks anything referring to the server by name.
When you do want the new name, Settings > Local MCP shows a button per agent:
lanes-local → lanes-desktop, carrying your permissions across. In Claude Code, your mcp__lanes-local__* grants in ~/.claude.json and ~/.claude/settings.json are rewritten to match. In Codex, per-tool approvals are already nested under the server entry, so they move with it. Restart the agent afterwards.lanes → lanes-desktop, which frees lanes for the hosted Lanes Forms MCP. Permissions are not carried across here: mcp__lanes__* is ambiguous between the two servers, so you re-approve when prompted.Removing and re-adding the connection by hand also works, and gets the new name. Cursor is renamed that way only — the desktop app never writes Cursor's config, and /lanes-desktop:setup-mcp deliberately leaves existing entries alone.
Permissions granted in a project's own .claude/settings.local.json live in your repos rather than your home directory, so they aren't rewritten either way. Update them by hand or re-approve when prompted.
| Tool | Description |
|---|---|
lanes_list_issues |
List issues from the Lanes board with optional filters (step, tags, componentId, search). |
lanes_get_issue |
Get a single issue by its numeric ID, including full details and session history. |
lanes_create_issue |
Create a new Lanes issue. Returns the created issue with its assigned ID. |
lanes_update_issue |
Patch an existing issue. Only the fields you supply are updated. |
lanes_delete_issue |
Permanently delete an issue and all its attachments. |
lanes_move_issue |
Move an issue to a different board column. |
| Tool | Description |
|---|---|
lanes_start_session |
Start a Claude Code, Codex, or shell session for an issue. Handles worktree creation, plan mode, custom prompts, and extra CLI flags or env vars. |
lanes_stop_session |
Stop the running terminal session for an issue. |
lanes_resume_session |
Re-attach to a stopped Claude or Codex session (the UI 'Resume Session' button). Disambiguate with an optional session (UUID / slot / name). |
lanes_delete_session |
Permanently delete a session: stops it if still running, then removes the record. |
lanes_get_session_status |
Get status (running/stopped, CLI tool, timestamps, PTY state) for all sessions, or filter to one issue. |
lanes_delete_worktree |
Remove the git worktree created for an issue's session. |
| Tool | Description |
|---|---|
lanes_get_issue_changes |
Get the list of files changed (git diff) in the issue's working directory. |
lanes_get_issue_history |
Get Claude session conversation history for an issue, paginated. |
lanes_read_terminal |
Read the last N lines of terminal scrollback for a session. Works with any CLI; ANSI codes stripped. |
lanes_get_session_stats |
Get token usage and tool usage stats for an issue's Claude session. |
| Tool | Description |
|---|---|
lanes_list_labels |
List all board labels (UUID, name, color). Call before tagging to resolve names to UUIDs. |
lanes_list_components |
List all project components (UUID, name, project ID). Call before setting componentId. |
Full parameter schemas and example prompts: lanes.sh/docs/local-mcp.
This repo is also a Claude Code plugin marketplace with two plugins.
lanes-desktop — skills and a setup command for driving the Lanes desktop app (the issue board and its local MCP) from Claude Code:
lanes-sessions — the lanes_* tools through chat: creating issues, starting/inspecting sessions, batch-launching, worktrees, terminal output, label/component lookups. See plugins/lanes-desktop/skills/lanes-sessions/SKILL.md.github-lanes-bridge / linear-lanes-bridge — importing GitHub or Linear issues into Lanes for local execution, decomposing tickets, and pushing PR links / comments back. See plugins/lanes-desktop/skills/./lanes:setup-mcp — slash command that connects Claude Code to the running Lanes app and verifies the SSE endpoint is live.lanes-forms — a skill for Lanes Forms: provision a live form endpoint with one POST (no signup), and fill in a form on a user's behalf. See plugins/lanes-forms/skills/lanes-forms/SKILL.md.
In any Claude Code session:
/plugin marketplace add lanes-sh/app
/plugin install lanes-desktop@lanes # the issue board + MCP
/plugin install lanes-forms@lanes # Lanes Forms
/lanes:setup-mcp